sge Все очереди сброшены из-за перегрузки или переполнения - PullRequest
0 голосов
/ 27 мая 2018

Я собираюсь запустить миллион пакетных заданий с помощью "sge".

Приблизительно 10000 заданий выполняются хорошо, но через час выполнения они перестают выполняться.

После примерноЧерез час процесс замедляется и в конечном итоге останавливается.

Проверка сообщения об ошибке не подтверждает никаких ошибок.

Я могу проверить только приведенное ниже сообщение.

"Всеочереди сброшены из-за перегрузки или переполнения "

Как настроить макет для нормальной работы?

есть один главный сервер и четыре общих клиента и файлы с использованием nfs, и каждая система работает на докереи docker-swirm

do qstat, когда скорость выполнения задания замедлена

$qstat -j
queue instance "peteris.q@sge00" dropped because it is full
queue instance "peteris.q@sge02" dropped because it is full
queue instance "peteris.q@sge03" dropped because it is full
queue instance "peteris.q@sge01" dropped because it is full
All queues dropped because of overload or full

подробные сообщения

$qstat -j 1595799
=============================================================
job_number:                 1595799
exec_file:                  job_scripts/1595799
submission_time:            Sun May 27 08:08:10 2018
owner:                      root
uid:                        0
group:                      root
gid:                        0
sge_o_home:                 /root
sge_o_path:                         /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
sge_o_workdir:              /data/23andMe
sge_o_host:                 sge
account:                    sge
cwd:                        /data/23andMe
mail_list:                  root@sge
notify:                     FALSE
job_name:                   python3
jobshare:                   0
env_list:
job_args:                   lineage.py,makeShell/1009_user3130_user3600.list
script_file:                python3
usage    1:                 cpu=00:00:02, mem=0.59503 GBs, io=0.03963,     vmem=493.180M, maxvmem=493.180M
scheduling info:            queue instance "peteris.q@sge00" dropped because     it is full
                        queue instance "peteris.q@sge02" dropped because it is full
                        queue instance "peteris.q@sge03" dropped because it is full
                        queue instance "peteris.q@sge01" dropped because it is full
                        All queues dropped because of overload or full

sge config

algorithm default
schedule_interval 0:0:10
maxujobs 0
queue_sort_method load
job_load_adjustments np_load_avg=100.0
load_adjustment_decay_time 0:7:30
load_formula np_load_avg
schedd_job_info true
flush_submit_sec 2
flush_finish_sec 2
params none
reprioritize_interval 0:0:0
halftime 168
usage_weight_list cpu=1.000000,mem=0.000000,io=0.000000
compensation_factor 5.000000
weight_user 0.250000
weight_project 0.250000
weight_department 0.250000
weight_job 0.250000
weight_tickets_functional 0
weight_tickets_share 0
share_override_tickets TRUE
share_functional_shares TRUE
max_functional_jobs_to_schedule 200
report_pjob_tickets TRUE
max_pending_tasks_per_job 50
halflife_decay_list none
policy_hierarchy OFS
weight_ticket 0.500000
weight_waiting_time 0.278000
weight_deadline 3600000.000000
weight_urgency 0.500000
weight_priority 0.000000
max_reservation 0
default_duration INFINITY

конфигурация очереди sge

qname                 peteris.q
hostlist              @allhosts
seq_no                0
load_thresholds       NONE
suspend_thresholds    NONE
nsuspend              1
suspend_interval      00:00:05
priority              0
min_cpu_interval      00:00:05
processors            UNDEFINED
qtype                 BATCH INTERACTIVE
ckpt_list             NONE
pe_list               make
rerun                 FALSE
slots                 20
tmpdir                /tmp
shell                 /bin/bash
prolog                NONE
epilog                NONE
shell_start_mode      posix_compliant
starter_method        NONE
suspend_method        NONE
resume_method         NONE
terminate_method      NONE
notify                00:00:01
owner_list            NONE
user_lists            NONE
xuser_lists           NONE
subordinate_list      NONE
complex_values        NONE
projects              NONE
xprojects             NONE
calendar              NONE
initial_state         default
s_rt                  INFINITY
h_rt                  INFINITY
s_cpu                 INFINITY
h_cpu                 INFINITY
s_fsize               INFINITY
h_fsize               INFINITY
s_data                INFINITY
h_data                INFINITY
s_stack               INFINITY
h_stack               INFINITY
s_core                INFINITY
h_core                INFINITY
s_rss                 INFINITY
h_rss                 INFINITY
s_vmem                INFINITY
h_vmem                INFINITY

1 Ответ

0 голосов
/ 29 мая 2018

Похоже, вы достигли практического ограничения на количество активных заданий, которые очередь может обрабатывать в любой момент времени.Я не могу подтвердить, где максимум определяется SGE, но, вероятно, это так:

max_jobs

Количество активных (не завершенных) заданий, одновременно разрешенных в Sun Grid Engine, контролируетсяпо этому параметру.Значение больше 0 определяет предел.Значение по умолчанию 0 означает «неограниченно».Если предел max_jobs превышен отправкой задания, то команда отправки завершается со статусом выхода 25 и соответствующим сообщением об ошибке.Изменение max_jobs вступит в силу немедленно.Это значение является только глобальным параметром конфигурации.Он не может быть перезаписан локальной конфигурацией узла выполнения.

From: http://gridscheduler.sourceforge.net/htmlman/htmlman5/sge_conf.html?pathrev=V62u5_TAG

Если это правильно, значение не ограничено;тем не менее, SGE, скорее всего, не справится с задачей, пытаясь управлять ~ 1 миллионом активных заданий, поэтому проблема, скорее всего, возникла у вас.Я бы порекомендовал вам использовать массивы заданий , так как это является целью этого типа задания, т. Е. Управлять и запускать множество почти идентичных задач .

Существует многоресурсы онлайн для массивов вакансий в SGE, такие как этот:

http://wiki.gridengine.info/wiki/index.php/Simple-Job-Array-Howto

http://talby.rcs.manchester.ac.uk/~ri/_linux_and_hpc_lib/sge_array.html

https://wiki.duke.edu/display/SCSC/SGE+Array+Jobs

Я радпомогите, если вы отредактируете свой вопрос с конкретными требованиями для каждой задачи.Например, для каждой из ~ 1 миллиона задач требуется один или несколько параметров в качестве входных данных?

...