Сингулярность (программное обеспечение)
![]() Singularity запускает контейнер hello world из командной строки | |
Оригинальный автор(ы) | Грегори Курцер (GMK) и др. |
---|---|
Разработчик(и) | Сообщество Грегори Курцер |
Стабильная версия | 3.8.7
/ 17 марта 2022 г [1] |
Репозиторий | |
Написано в | Идти [2] |
Операционная система | Линукс |
Тип | Виртуализация на уровне операционной системы |
Лицензия | из 3 пунктов Лицензия BSD [3] |
Веб-сайт | помощник |
Singularity — это бесплатная компьютерная программа с открытым исходным кодом , которая выполняет виртуализацию на уровне операционной системы, также известную как контейнеризация . [4]
Одним из основных применений Singularity является внедрение контейнеров и воспроизводимости в научные вычисления и мир высокопроизводительных вычислений (HPC). [5]
Необходимость воспроизводимости требует возможности использовать контейнеры для перемещения приложений из системы в систему. [6]
Используя контейнеры Singularity, разработчики могут работать в воспроизводимых средах по своему выбору и дизайну, и эти полные среды можно легко копировать и выполнять на других платформах. [7]
В 2021 году проект с открытым исходным кодом Singularity разделился на два проекта: Apptainer и SingularityCE.

История
[ редактировать ]Singularity зародилась как проект с открытым исходным кодом в 2015 году, когда группа исследователей Национальной лаборатории Лоуренса Беркли под руководством Грегори Курцера разработала первоначальную версию, написанную на языке программирования C , и выпустила ее. [8] по лицензии BSD . [9]
К концу 2016 года многие разработчики из различных исследовательских центров объединили усилия с командой Национальной лаборатории Лоуренса Беркли для дальнейшего развития Singularity. [10]
Сингулярность быстро привлекла внимание научных учреждений по всему миру, занимающихся компьютерными технологиями: [11]
- Исследовательский вычислительный центр Стэнфордского университета развернул Singularity на своем XStream [12] [13] и Шерлок [14] кластеры
- Национальные институты здравоохранения установили Singularity на Биовульфе, [15] их Linux-кластер с более чем 95 000 ядрами и 30 ПБ [16]
- Различные сайты Консорциума Open Science Grid, включая Fermilab, начали использовать Singularity; [17] к апрелю 2017 года Singularity была развернута на 60% сети Open Science Grid. [18]
Два года подряд, в 2016 и 2017 годах, редакторы HPCwire признавали Singularity «одной из пяти новых технологий, на которые стоит обратить внимание». [19] [20] В 2017 году Singularity также заняла первое место в категории «Лучший инструмент или технология программирования HPC». [20]
По состоянию на 2018 год [update] На основании данных, добровольно внесенных в публичный реестр, пользовательская база Singularity оценивалась в более чем 25 000 установок. [21] и включал пользователей в академических учреждениях, таких как Университет штата Огайо и Университет штата Мичиган , а также в ведущих центрах высокопроизводительных вычислений, таких как Техасский центр перспективных вычислений , Суперкомпьютерный центр Сан-Диего и Национальная лаборатория Ок-Ридж .
В феврале 2018 года Силабс [22] была анонсирована компания, основанная автором Singularity [23] для обеспечения коммерческой поддержки Singularity. В октябре того же года Sylabs выпустила версию 3.0.0. [24] это была переписанная версия языка программирования Go .
Apptainer/разделение Singularity
[ редактировать ]В мае 2020 года Грегори Курцер покинул Sylabs, но сохранил руководство проектом с открытым исходным кодом Singularity. [25] В мае 2021 года Sylabs сделал форк проекта. [26] и назвал его SingularityCE. [27] [28] В ноябре 2021 года проект с открытым исходным кодом Singularity присоединился к Linux Foundation. [29] и был переименован в Apptainer . [30]
Функции
[ редактировать ]Singularity способна поддерживать высокопроизводительные межсоединения, такие как InfiniBand. [31] Intel Omni-Path (OPA). и архитектура [32]
Подобно поддержке устройств InfiniBand и Intel OPA, Singularity может поддерживать любое устройство, подключенное к PCIe, внутри вычислительного узла, например графические ускорители . [33]
Singularity также имеет встроенную поддержку библиотеки Open MPI за счет использования подхода гибридного контейнера MPI, где OpenMPI существует как внутри, так и вне контейнера. [31]
Эти функции делают Singularity все более полезным в таких областях, как машинное обучение , глубокое обучение и большинство рабочих нагрузок с интенсивным использованием данных, где приложения извлекают выгоду из характеристик высокой пропускной способности и низкой задержки этих технологий. [34]
Интеграция
[ редактировать ]Системы HPC традиционно уже имеют системы управления ресурсами и планирования заданий , поэтому среды выполнения контейнеров должны быть интегрированы в существующий системный менеджер ресурсов.
Использование других корпоративных контейнерных решений, таких как Docker , в системах HPC потребует внесения изменений в программное обеспечение. [35] Контейнеры Docker можно автоматически конвертировать в автономные файлы сингулярности, которые затем можно отправлять менеджерам ресурсов HPC. [36]
Singularity легко интегрируется со многими менеджерами ресурсов. [37] включая:
- ХТКондор [38]
- Oracle Grid Engine (SGE)
- SLURM (простая утилита Linux для управления ресурсами)
- TORQUE (Terascale ресурс с открытым исходным кодом и менеджер очередей)
- PBS Pro (ПБС Профессионал)
- HashiCorp Nomad (простой и гибкий оркестратор рабочих нагрузок)
- Платформа IBM LSF
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ «Релизы · аптейнер/сингулярность» . github.com . Проверено 29 июня 2022 г.
- ^ «Сингулярность+ГоЛанг» . Гитхаб . Проверено 3 декабря 2021 г.
- ^ «Лицензия на сингулярность» . Apptainer.org . Команда Сингулярность . Проверено 3 декабря 2021 г.
- ^ «Презентация сингулярности на FOSDEM 17» . archive.fosdem.org .
- ^ Курцер, Грегори М.; Сочат, Ванесса; Бауэр, Майкл В. (2017). «Сингулярность: научные контейнеры для мобильности вычислений» . ПЛОС ОДИН . 12 (5): e0177459. Бибкод : 2017PLoSO..1277459K . дои : 10.1371/journal.pone.0177459 . ПМЦ 5426675 . ПМИД 28494014 .
- ^ «Singularity, контейнер для HPC» . admin-magazine.com. 24 апреля 2016 г.
- ^ «Руководство по сингулярности: мобильность вычислений» . Руководство пользователя Singularity — версия 2.5.2 .
- ^ «Sylabs внедряет контейнеры Singularity в коммерческие высокопроизводительные вычисления» . top500.org .
- ^ «Лицензия на сингулярность» . сингулярность.lbl.gov . Команда Сингулярность. 19 марта 2018 года . Проверено 19 марта 2018 г.
- ^ «Изменения в файле AUTHORS.md в исходном коде Singularity, внесенные в апреле 2017 года» . Гитхаб .
- ^ «Отделение лаборатории Беркли с открытым исходным кодом служит науке» . 7 июня 2017 г.
- ^ «Онлайн-руководство пользователя XStream, раздел Singularity» . xstream.stanford.edu .
- ^ «Обзор кластера XStream» . Архивировано из оригинала 24 октября 2020 года . Проверено 10 апреля 2018 г.
- ^ «Шерлок: что нового, контейнеры и инструменты глубокого обучения» . Стэнфордский исследовательский вычислительный центр .
- ^ «Интернет-руководство пользователя NIH HPC, раздел, посвященный сингулярности» . hpc.nih.gov .
- ^ «НИЗ HPC Systems» . hpc.nih.gov .
- ^ «Сингулярность на OSG» .
- ^ «Необычность CMS: обслужено более миллиона контейнеров» (PDF) .
- ^ «HPCwire объявляет победителей премии «Выбор читателей и редакции» 2016 года на конференции SC16 в Солт-Лейк-Сити» . HPCwire .
- ^ Jump up to: а б «HPCwire объявляет победителей премии «Выбор читателей и редакции» 2017 года на конференции SC17 в Денвере» . HPCwire .
- ^ «Добровольный реестр установок Singularity» .
- ^ «Главная страница Sylabs» . Проверено 29 июня 2022 г.
- ^ «Sylabs выходит из скрытности и переносит технологию Singularity Container в высокопроизводительные вычисления предприятия» (пресс-релиз). 8 февраля 2018 года . Проверено 29 июня 2022 г.
- ^ «Сингулярность 3.0.0» . Гитхаб .
- ^ «Перемещение репозитория Singularity и обновления компании» . Проверено 29 июня 2022 г.
- ^ «Развилка Sylabs Singularity» . Проверено 29 июня 2022 г.
- ^ «СингулярностьСЕ» . Проверено 30 июня 2022 г.
- ^ «СингулярностьСЕ» . 28 октября 2022 г. – через GitHub.
- ^ «Singularity присоединилась к Linux Foundation!» . Проверено 29 июня 2022 г.
- ^ «Сайт аптейнера» . Проверено 15 февраля 2023 г.
- ^ Jump up to: а б «Продвинутое руководство Intel: контейнеры HPC и Singularity – Расширенное руководство – Intel» (PDF) .
- ^ «Примечания по применению Intel: создание контейнеров для фабрик Intel Omni-Path с использованием Docker и Singularity» (PDF) .
- ^ «Руководство по сингулярности: пример графического процессора» .
- ^ Таллент, Натан Р.; Гаванде, Нитин; Сигел, Чарльз; Вишну, Абхинав; Хойзи, Адольфи (2018). «Оценка межсетевых соединений графического процессора на узле для рабочих нагрузок глубокого обучения». Высокопроизводительные вычислительные системы. Моделирование производительности, сравнительный анализ и моделирование . Конспекты лекций по информатике. Том. 10724. стр. 3–21. дои : 10.1007/978-3-319-72971-8_1 . ISBN 978-3-319-72970-1 . S2CID 1674152 .
- ^ Джонатан Спаркс, Cray Inc. (2017). «Используются контейнеры HPC» (PDF) .
- ^ «Сингулярность и Докер» . Проверено 3 декабря 2021 г.
- ^ «Поддержка существующих традиционных HPC» .
- ^ «Руководство по стабильной версии HTCondor: Поддержка Singularity» . Архивировано из оригинала 4 февраля 2020 года . Проверено 4 февраля 2020 г.
Дальнейшее чтение
[ редактировать ]- Материалы 10-й Международной конференции по служебным и облачным вычислениям: готова ли контейнерная технология на основе Singularity к запуску приложений MPI в облаках HPC?
- Singularity готовит версию 3.0, ежедневно обслуживается около 1 миллиона контейнеров
- Dell HPC: контейнеризация приложений HPC с помощью Singularity
- Конференция Intel HPC Developer 2017: Введение в высокопроизводительные вычислительные контейнеры HPC и Singularity
- HPCwire объявляет победителей премии «Выбор читателей и редакции» 2017 года на конференции SC17 в Денвере: Singularity награждена в категории «Лучший инструмент или технология программирования HPC»
Внешние ссылки
[ редактировать ]- Бесплатное программное обеспечение, написанное на Go.
- Контейнеризация Linux
- Технология операционной системы
- Безопасность операционной системы
- Программное обеспечение, использующее лицензию Apache
- Программное обеспечение, использующее лицензию BSD
- Программное обеспечение для виртуализации
- Программное обеспечение виртуализации для Linux