【发布时间】:2016-04-17 01:48:39
【问题描述】:
我不太明白spark.task.cpus 参数。在我看来,“任务”对应于执行程序中的“线程”或“进程”,如果您愿意的话。假设我将“spark.task.cpus”设置为 2。
一个线程如何同时使用两个 CPU?难道它不需要锁并导致同步问题吗?
我正在查看 deploy/executor/Executor.scala 中的
launchTask()函数,在这里我没有看到“每个任务的 CPU 数量”的任何概念。那么 Spark 最终在哪里/如何为独立模式下的任务分配多个 cpu?
【问题讨论】:
标签: multithreading scala apache-spark