【问题标题】:Setting spark running in local multiple threads mode, why only one cpu is running?设置spark在本地多线程模式下运行,为什么只有一个cpu在运行?
【发布时间】:2016-01-21 11:09:25
【问题描述】:

我使用参数 --master local[6] 提交 spark 作业以在本地机器上运行。但是,当我监控 Spark UI 时,我发现 spark.master 设置为本地而不是本地 [6]。我追踪了cpu状态,也显示只有一个cpu在工作,详情如下。

Tasks: 157 total,   1 running, 155 sleeping,   1 stopped,   0 zombie
%Cpu0  :  0.3 us,  0.3 sy,  0.0 ni, 99.3 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu1  :  0.0 us,  0.3 sy,  0.0 ni, 99.7 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu2  : 99.7 us,  0.3 sy,  0.0 ni,  0.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu3  :  0.0 us,  0.0 sy,  0.0 ni,100.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu4  :  0.0 us,  0.3 sy,  0.0 ni, 99.7 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu5  :  0.3 us,  0.3 sy,  0.0 ni, 99.3 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu6  :  0.0 us,  0.0 sy,  0.0 ni,100.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu7  :  0.0 us,  0.3 sy,  0.0 ni, 99.7 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem:  49463808 total, 43074276 used,  6389532 free,   225860 buffers
KiB Swap:  4194300 total,        0 used,  4194300 free.  8510192 cached Mem

【问题讨论】:

    标签: apache-spark


    【解决方案1】:

    原因是我在程序中调用 setMaster("local") 错误地覆盖了参数。删除此 setMaster() 语句后,它在多个内核上运行,并且 spark.master = local[6] 在 spark UI 中运行。

    【讨论】:

    • 如果这是您问题的解决方案,您可能希望将其作为最终答案。
    【解决方案2】:

    我首先想到的是,您实际上并没有多个分区中的数据。

    如果您在代码中的某处执行sc.parallelizesc.textFile 或类似操作,请确保您在许多分区中都有数据。您可以通过 SparkUI 进行检查。

    如果没有,请提供有关您的工作的更多详细信息。

    【讨论】:

    • 感谢您的回复。我发现问题是我通过在代码中调用 setMaster() 覆盖了属性。
    【解决方案3】:

    将master设置为“local[i]”表示i个工作线程,与使用i个CPU是不一样的。

    【讨论】:

    • 这就是 Spark 的文档中关于主 URL (spark.apache.org/docs/latest/…) 的说明。可以将 local[3] 解释为运行 3 个工作线程,这些工作线程可以只使用 1 个 CPU。
    • 在文档中没有看到该部分。好吧,它有“local[K] 使用 K 个工作线程在本地运行 Spark(理想情况下,将其设置为您机器上的内核数)。”如果 i 小于可用 CUP 的总数,它将生成 i 个 CPU。当然,如果 i 比那个大,那么它最多只能使用 i 个 CPUS。
    猜你喜欢
    • 2017-06-24
    • 2023-03-28
    • 1970-01-01
    • 2020-05-01
    • 2015-06-29
    • 1970-01-01
    • 1970-01-01
    • 2018-02-02
    • 1970-01-01
    相关资源
    最近更新 更多