Как настроить параметр искровой работы в соответствии с доступными узлами?
Как я могу установить --num-executors, --executor-cores а также --executor-memory через задание по сланму в следующем сценарии:
Предположим, у меня есть 2 узла с 32 ядрами и 128 г каждый. Лучшая конфигурация (я думаю) будет:
- Давайте назначим 4 ядра
per executors=>--executor-cores = 4, - Покидать
1 core per nodeдля демонов Hadoop/Yarn => Количество ядер, доступных для каждого узла = 32-1 = 31. Таким образом, общее количество доступных ядер в кластере = 31 x 2 = 62 - Количество доступных исполнителей = (общее количество ядер / num-core-per-executor) = 62/4 = 15
- Оставив 1 исполнителя для ApplicationManager =>
--num-executors = 14 - Количество исполнителей на узел = 15/2 = 7
- Память на исполнителя = 127 ГБ /7 = 18 ГБ
- Отсчет кучи накладных расходов = 7% от 18 ГБ = 1,26 ГБ ~ 2g. Итак, актуально
--executor-memory = 18 - 2 = 16GB
Итак, используя эту (оптимальную) конфигурацию, как я могу настроить эти параметры в задании Slurm?