gpt4 book ai didi

out-of-memory - YARN 未使用 Google Dataproc 实例中的所有可用内存

转载 作者:行者123 更新时间:2023-12-04 05:56:26 24 4
gpt4 key购买 nike

我正在使用 h1-highmem-16 机器运行 Dataproc 作业,每台机器都有 104 GB 内存。

我仔细检查了 Google 控制台中实例的大小,所有工作人员和主服务器确实是 h1-highmem-16

然而,我得到这个错误:

Container killed by YARN for exceeding memory limits. 56.8 GB of 54 GB physical memory used. Consider boosting spark.yarn.executor.memoryOverhead.

为什么 YARN 没有使用全部 104 GB 内存?

最佳答案

Dataproc 配置内存设置以适应每台机器 2 个 Spark 执行器,因此每个容器的容量应该是每个 NodeManager 容量的一半。

您可以选择性地覆盖 spark.executor.memoryspark.yarn.executor.memoryOverhead 以及 spark.executor.cores 以更改将执行程序打包到每台机器上的方式。 spark.executor.cores 将默认为机器内核的一半,因为机器内存的一半分配给每个执行程序。在您的情况下,这意味着每个 Spark 执行程序尝试在同一进程中并行运行 8 个任务。

您可以通过减少执行器内核但保持其他一切不变来有效地增加每个任务的内存,例如 spark.executor.cores=6 将每个任务的内存增加 33%,即使你让其他一切保持不变。这些可以在作业提交时指定:

gcloud dataproc jobs submit spark --properties spark.executor.cores=6

关于out-of-memory - YARN 未使用 Google Dataproc 实例中的所有可用内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41742743/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com