簡體   English   中英

如何更改每個工作程序在Spark Standalone模式下使用的CPU數量?

[英]How to change the number of CPUs each worker uses in Spark Standalone mode?

我可以在具有OS Windows 7,8核CPU和16 GB RAM的機器上以Spark Standalone模式運行主節點和從節點。

現在我正在嘗試改變這台機器上的工人數量。

正如我在Spark網站上看到的那樣,Windows操作系統目前不支持啟動腳本。 所以我手動啟動主人和工人。

在驅動程序中我定義:

SparkConf conf = new SparkConf().setAppName("myapplication")
  .setMaster("spark://fujitsu11:7077")
  .setJars(new String[] {"target/maven1-0.0.1-SNAPSHOT-driver.jar"})
  .set("spark.home","D:/spark")
  .set("spark.executor.memory", "2g")
  .set("spark.worker.instances","2")
  .set("spark.worker.cores", "4"); // I allocate four cores for each worker
JavaSparkContext sc = new JavaSparkContext(conf);

然后在Cygwin,我開始手動掌握守護進程和兩名工人。

但是,當我運行我的應用程序並按照http:// localhost:8080時,我看到,兩個工作人員都試圖使用所有8個核心......

在此輸入圖像描述

我怎樣才能更改實例使用的核心數量?

工作人員使用的CPU /核心數在開始時作為環境變量給出,您可以在兩個位置設置它:

  1. conf/spark-env.shSPARK_WORKER_CORES
  2. 作為--cores 4啟動工作器守護程序時的命令行參數。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM