diff --git a/graph/src/main/scala/org/apache/spark/graph/Analytics.scala b/graph/src/main/scala/org/apache/spark/graph/Analytics.scala index 59af021c8d04d4992bf681d9ceb1df6f0c1eff39..6aa6f50317cc3cc7986d802dd5d9485dec9ac8fd 100644 --- a/graph/src/main/scala/org/apache/spark/graph/Analytics.scala +++ b/graph/src/main/scala/org/apache/spark/graph/Analytics.scala @@ -161,11 +161,15 @@ object Analytics extends Logging { case "cc" => { var numIter = Int.MaxValue + var numVPart = 4 + var numEPart = 4 var isDynamic = false options.foreach{ case ("numIter", v) => numIter = v.toInt case ("dynamic", v) => isDynamic = v.toBoolean + case ("numEPart", v) => numEPart = v.toInt + case ("numVPart", v) => numVPart = v.toInt case (opt, _) => throw new IllegalArgumentException("Invalid option: " + opt) } @@ -182,7 +186,8 @@ object Analytics extends Logging { println("======================================") val sc = new SparkContext(host, "ConnectedComponents(" + fname + ")") - val graph = GraphLoader.textFile(sc, fname, a => 1.0F) + //val graph = GraphLoader.textFile(sc, fname, a => 1.0F) + val graph = GraphLoader.textFile(sc, fname, a => 1.0F, numEPart).withPartitioner(numVPart, numEPart).cache() val cc = Analytics.connectedComponents(graph, numIter) //val cc = if(isDynamic) Analytics.dynamicConnectedComponents(graph, numIter) // else Analytics.connectedComponents(graph, numIter)