-
Notifications
You must be signed in to change notification settings - Fork 28
/
power_run_gpu_iceberg.template
49 lines (46 loc) · 2.76 KB
/
power_run_gpu_iceberg.template
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#
# SPDX-FileCopyrightText: Copyright (c) 2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
# SPDX-License-Identifier: Apache-2.0
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# 1. The iceberg-spark-runtime-3.1_2.12:0.13.2 only works on Spark 3.1.x
# Please refer to https://iceberg.apache.org/releases/ for other Spark versions.
# 2. The Iceberg catalog/tables is expected to be in current directory.
# see `spark.sql.catalog.spark_catalog.warehouse`.
source base.template
export CONCURRENT_GPU_TASKS=${CONCURRENT_GPU_TASKS:-2}
export SHUFFLE_PARTITIONS=${SHUFFLE_PARTITIONS:-200}
export SPARK_CONF=("--master" "${SPARK_MASTER}"
"--deploy-mode" "client"
"--conf" "spark.driver.maxResultSize=2GB"
"--conf" "spark.driver.memory=${DRIVER_MEMORY}"
"--conf" "spark.executor.cores=${EXECUTOR_CORES}"
"--conf" "spark.executor.instances=${NUM_EXECUTORS}"
"--conf" "spark.executor.memory=${EXECUTOR_MEMORY}"
"--conf" "spark.sql.shuffle.partitions=${SHUFFLE_PARTITIONS}"
"--conf" "spark.sql.files.maxPartitionBytes=2gb"
"--conf" "spark.sql.adaptive.enabled=true"
"--conf" "spark.executor.resource.gpu.amount=1"
"--conf" "spark.executor.resource.gpu.discoveryScript=./getGpusResources.sh"
"--conf" "spark.task.resource.gpu.amount=0.0625"
"--conf" "spark.plugins=com.nvidia.spark.SQLPlugin"
"--conf" "spark.rapids.memory.host.spillStorageSize=32G"
"--conf" "spark.rapids.memory.pinnedPool.size=8g"
"--conf" "spark.rapids.sql.concurrentGpuTasks=${CONCURRENT_GPU_TASKS}"
"--packages" "org.apache.iceberg:iceberg-spark-runtime-3.2_2.12:0.13.2"
"--conf" "spark.sql.extensions=org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions"
"--conf" "spark.sql.catalog.spark_catalog=org.apache.iceberg.spark.SparkSessionCatalog"
"--conf" "spark.sql.catalog.spark_catalog.type=hadoop"
"--files" "$SPARK_HOME/examples/src/main/scripts/getGpusResources.sh"
"--jars" "$SPARK_RAPIDS_PLUGIN_JAR,$NDS_LISTENER_JAR")