The assignment is to parallelize an implementation of betweenness centrality using Cilk. The harness is a subset of the HPC Graph Analysis suite from http://www.graphanalysis.org/benchmark/index.html We have modified the code to make it a bit simpler to read. You do not need to understand the entire code, just betweennessCentrality.c BC references: http://www.cs.ucsb.edu/~cs240a/bc.html Building ======== Type "make" on the command line. This needs to be done on a system which has Cilk installed. Usage ===== Usage: ./BC is the order of magnitude for the number of nodes in the graph. n = 2^SCALE. 2 = tiny graph, 27 = huge graph. If is nonempty then the serial calculation of betweenness centrality will be run instead of your parallel one. Use this to see how much faster your parallel version is. In other words, you control the size of the graph for which BC is computed and whether or not to use your parallel or original serial version. For example: ./BC 10 will compute BC on a graph with 1024 nodes using your parallelized code. ./BC 10 1 will compute BC on a graph with 1024 nodes using the original serial code. The graph used is shaped like a torus, so every node has an equal number of neighbors. What to do ========== Parallelize betweennessCentrality() in betweennessCentrality.c using Cilk. The important part is the main loop, which is marked in the file. What to turn in =============== Since you are only modifying one file, please only submit your new betweennessCentrality.c along with your report. Report ====== Go over your strategy for parallelizing the code as well as any challenges you faced. Include a comparison of the runtime differences between the serial and parallel versions. Graphs would be helpful here.