[英]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 /核心數在開始時作為環境變量給出,您可以在兩個位置設置它:
conf/spark-env.sh
為SPARK_WORKER_CORES
。 --cores 4
啟動工作器守護程序時的命令行參數。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.