4

我在通过spark-ec2.sh脚本设置的 EC2 集群上运行Spark 。我启动的 5 个从属实例共有 40 个核心,但每个实例无法利用所有核心。

从从属日志中,我可以看到从属似乎一个接一个地执行任务。我在从属实例上运行 top,cpu 大约是 100% 而不是 800%。

我打开了 spark.mesos.coarse 模式。并且数据被分成40个块。当我在本地以独立模式运行 Spark 时,它可以使用 8 个内核。

我能做些什么来让 Spark 从站利用所有可用的内核吗?

4

1 回答 1

0

Try setting spark.cores.max let's say to 8 before creating SparkContext

in Spark 0.9:

val conf = new SparkConf() 
   .setMaster("...")
   .set("spark.cores.max", "8")
val sc = new SparkContext(conf)
于 2014-03-21T12:48:28.050 回答