我有一个使用Spark的独立程序,我希望使用不同数量的内核获得运行时间结果。无论我一直在尝试什么,我得到相同的运行时值!
这是我在创建Spark上下文之前设置核心数量的代码部分:
System.setProperty("spark.cores.max","96")
我拥有的核心总数是252。
答案 0 :(得分:2)
一个建议是尝试使用SparkConf().setMaster(local[numCores])
进行设置。例如,它将其设置为4个核心:
val conf = new SparkConf().setAppName("app").setMaster("local[4]")
val sc = new SparkContext(conf)
详情请见https://spark.apache.org/docs/latest/api/scala/index.html#org.apache.spark.SparkConf
答案 1 :(得分:0)
要完成langkilde答案,您可以使用spark.cores.max
属性并将其设置在SparkConf
上(不在系统的属性中...)或将其传递为参数spark-submit
。顺便说一句,您还可以阅读文档:https://spark.apache.org/docs/1.2.0/configuration.html。
并非Spark的所有方面都有详细记录,但配置肯定是。