HTCondor вытесняет задания пользователя с более высоким приоритетом для выполнения заданий пользователя с более низким приоритетом

#condor #preemption

Вопрос:

Я новичок в Condor и в настоящее время играю с MiniCondor, используя изображение htcondor/mini из Docker Hub.

Я хочу провести несколько экспериментов с механизмом вытеснения. Я цитирую документацию:

При рассмотрении приоритетов пользователей переговорщик не будет отменять задание, выполняемое на данной машине, если выражение PREEMPTION_REQUIREMENTS не примет значение True, и у владельца неработающего задания будет лучший приоритет, чем у владельца выполняемого задания.

Поэтому первое, что я сделал, это зашел в файл конфигурации, установил значение PREEMPTION_REQUIREMENTS в True и запустил condor_reconfig . Затем я создал нового пользователя под названием priouser и дал ему Реальный приоритет пользователя 1.0 при использовании condor_userprio -setprio . Затем я изменил приоритет существующего пользователя-отправителя на 1.000.000.

Изображение MiniCondor может одновременно выполнять только 4 задания, поэтому я отправляю 4 задания с помощью submituser (просто сплю 60 секунд и выхожу), затем отправляю еще одно с помощью priouser.

Ожидаемое поведение Кондора состоит в том, чтобы вытеснить одно из заданий от отправителя и сначала запустить задание от приора. И сначала происходит вот что: первое задание от отправителя возвращается в режим ОЖИДАНИЯ, а задание от приоусера начинает выполняться. Но через 5 секунд задание от приоузера переходит в режим ОЖИДАНИЯ, а то, которое было остановлено, перезапускается… В течение 5 секунд, прежде чем их снова остановят, чтобы позволить другим работать, и так далее, пока не появятся свободные слоты для их одновременного запуска. Хотя свободных слотов нет, эти два задания продолжают убивать друг друга каждые 5 секунд.

Вот скриншот того, как это происходит: Задание Prio остановлено через 5 секунд для запуска более низкого задания prio

Тем не менее, когда я сначала отправляю задание с priouser, а затем 4 задания с submituser, последнее задание от submituser вежливо ждет, когда закончится задание prio, чтобы начать запуск.

Что заставляет задание prio останавливаться через 5 секунд после отмены задания с более низким приоритетом ?