Graph Connected Component Analysis with Bulk-Synchronous-Parallel Processing

In an undirected graph, a connected component is a subgraph in which any two vertices are connected to each other by paths. Usual algorithms build a graph where each vertex is labeled with its component number. They use a search from an unclassified vertex to build the connected component containing…

Continue reading

Trick of the day: monitoring the Linux filesystem changes in “real time”

Ever wanted to monitor the filesystem changes ? Since Linux 2.6.25, the kernel provides us with a signal driven I/O notification API and the inotify-tools RPM provides a set of tools to interact with the kernel. inotify in action: a simple way to test this API is to run the…

Continue reading

Trick of the day: prefetching a callback into the QApplication event loop

Qt provide a standard mechanism (aboutToQuit() signal) to insure that a callback is executed at the end of the QApplication event loop. This is typically used to add some cleanup code to your application. Infortunately, Qt does not provide a “aboutToRun()” if you want to execute an initializing code just…

Continue reading

The Bulk Synchronous Parallel model for graph processing

The BSP Model The Bulk Synchronous Parallel (BSP) is a model for designing parallel algorithms. The BSP model was developed by Leslie Valiant of Harvard University during the 1980s and published in 1990. Computation proceeds as a sequence of iterations, called supersteps. Each superstep involves a phase of parallel computations,…

Continue reading