【发布时间】:2019-07-21 17:20:57
【问题描述】:
我正在使用具有 60 GB 数据的 Apache Spark(独立模式)ALS 推荐算法,问题是算法启动时 CPU 峰值达到 100% 如何在 spark 中设置限制 CPU 使用率? 例如仅使用 50% 的 CPU。
我尝试过使用更少的 CPU 内核,但它并没有改变任何关于 CPU 使用率的内容。
我在具有以下配置的服务器中以独立模式运行 spark:
#System information :
OS Name: Microsoft Windows Server 2016 Standard
OS Version: 10.0.14393 N/A Build 14393
System Type: x64-based PC
Processor(s): 1 Processor(s) Installed.
Cores: 6
Total Physical Memory: 262,030 MB
Available Physical Memory: 178,164 MB
Virtual Memory: Max Size: 300,942 MB
Virtual Memory: Available: 215,377 MB
#Spark
version 2.4.3
#Java
java version "10.0.2" 2018-07-17
Java(TM) SE Runtime Environment 18.3 (build 10.0.2+13)
Java HotSpot(TM) 64-Bit Server VM 18.3 (build 10.0.2+13, mixed mode)
我已经使用以下配置设置了我的 spark 会话:
spark_session = SparkSession \
.builder \
.appName("ALSRecommendation") \
.config("spark.driver.memory","60G")\
.config('spark.cores.max', 5)\
.config("spark.driver.cores",5)\
.getOrCreate();
【问题讨论】:
-
@JohnSmith,我已经研究过了,它没有帮助。是关于如何设置 CPU Core ,而不是如何限制它。
-
阿拉什,
spark.cores.max是一个limit选项。在这种情况下,您将其限制为 5 个核心。请详细说明您的问题。 -
Arash,你有没有:Apache Hadoop YARN?
-
@JohnSmith,不,我以独立模式运行它,用于测试目的。
标签: apache-spark