Slurm
Slurm Workload Manager
Slurm Workload Manager (ранее Slurm был известен, как утилита Linux для управления ресурсами). Slim является бесплатным планировщиком задач с открыто исходным кодом для Linux и Unix-подобных систем, которые используют многие мировые суперкомпьютеры и компьютерные кластеры.Slurm начал свое развитие еще в 2001 году, тогда он развивался в качестве проекта Национальной лаборатории Лоуренса Ливермора, SchedMD, Linux Networx, Hewlett-Packard, а также Bull Group в качестве менеджера ресурсов на основе свободного программного обеспечения. Только уже позднее он смог превратится в сложный планировщик задач, который способен удовлетворить различные требования многих крупнейших вычислительных центров, которые на данный момент используются очень часто. Cотрудники LLNL Morris (Moe) Jette и Danny Auble включили в 2010 году SchedMD LLC в развитие и продажу Slurm.
Структура Slurm
Конструкция Slurm, которая состоит из множества модулей с десятками дополнительных плагинов, очень проста в конфигурации, не требуя больших временных затрат. Благодаря этому Slurm можно установить и настроить всего за пару минут. Более сложные конфигурации могут удовлетворить потребности планирования заданий в вычислительных центрах мирового класса и полагаться на базу данных MySQL для архивации учетных записей, для управления лимитами ресурсов пользователем или банковским счетом, а также для поддержки сложных алгоритмов приоритезации заданий.
Уникальность Slurm
Что касается Slurm, то у него есть уникальные моменты, которые его отличают от других утилит:
- Высокая масштабируемость (планирование до 100 000 независимых заданий на 100 000 сокетов IBM Sequoia)
- Высокая производительность (до 1000 отправленных заданий в секунду и 600 выполненных заданий в секунду)
- Свободный и открытый исходный код: его исходный код свободно доступен в соответствии с GNU General Public License.
- Переносимость: написано на C с двигателем конфигурации GNU General Public License autoconf. Первоначально написанный для Linux, Slurm был перенесен в разнообразный ассортимент систем.
- Управление питанием: задание может указывать желаемую частоту процессора и записывать потребление энергии по заданию. Свободные ресурсы могут быть отключены до тех пор, пока это не понадобится.
- Fault Tolerant: Slurm очень терпим к сбоям системы, включая отказ узла, выполняющего его функции управления.
- Широкие возможности настройки, около 100 плагинов
- Гибкость: существует механизм плагинов, который поддерживает различные межсоединения, механизмов аутентификации, планировщиков и т. д. Эти плагины документированы и достаточно просты, чтобы мотивированный конечный пользователь смог понять источник и добавить функциональность.
- Изменение размера рабочих мест: Удобством является то, что рабочие места могут как расти так и сокращаться по требованию. А также представления работы могут указывать диапазоны размеров и времени.
- Работы по статусу: статус выполнения заданий на уровне отдельных задач, чтобы помочь определить дисбаланс нагрузки и другие аномалии.