Osobliwość (oprogramowanie)

Osobliwość
Oryginalni autorzy Gregory Kurtzer (gmk) i in.
Deweloperzy
Społeczność Grzegorza Kurtzera
Wersja stabilna
3.8.7 / 17 marca 2022 ; 11 miesięcy temu ( 2022-03-17 )
Magazyn
Napisane w Iść
System operacyjny Linuks
Typ Wirtualizacja na poziomie systemu operacyjnego
Licencja 3-klauzulowa licencja BSD
Strona internetowa apptainer .org Edit this at Wikidata

Singularity to darmowy program komputerowy typu open source , który wykonuje wirtualizację na poziomie systemu operacyjnego, znaną również jako konteneryzacja.

Jednym z głównych zastosowań Singularity jest wprowadzenie pojemników i odtwarzalności do obliczeń naukowych i świata obliczeń o wysokiej wydajności (HPC).

Potrzeba odtwarzalności wymaga możliwości używania kontenerów do przenoszenia aplikacji z systemu do systemu.

Korzystając z kontenerów Singularity, programiści mogą pracować w powtarzalnych środowiskach według własnego wyboru i projektu, a te kompletne środowiska można łatwo kopiować i uruchamiać na innych platformach.

W 2021 roku projekt open source Singularity podzielił się na dwa projekty o nazwie Apptainer i SingularityCE .

Przepływ pracy użycia kontenerów Singularity

Historia

Singularity zaczęło się jako projekt open-source w 2015 roku, kiedy zespół naukowców z Lawrence Berkeley National Laboratory , kierowany przez Gregory'ego Kurtzera, opracował wstępną wersję napisaną w języku programowania C i udostępnił ją na licencji BSD .

Do końca 2016 roku wielu programistów z różnych ośrodków badawczych połączyło siły z zespołem Lawrence Berkeley National Laboratory, aby dalej rozwijać Singularity.

Osobliwość szybko przyciągnęła uwagę instytucji naukowych zajmujących się komputerami na całym świecie:

  • Stanford University Research Computing Center wdrożyło Singularity w swoich klastrach XStream i Sherlock
  • National Institutes of Health zainstalowało Singularity na Biowulf, swoim klastrze Linux z ponad 95 000 rdzeń/30 PB
  • Różne strony konsorcjum Open Science Grid Consortium, w tym Fermilab , zaczęły przyjmować Osobliwość; do kwietnia 2017 r. Singularity zostało wdrożone w 60% sieci Open Science Grid.

Przez dwa lata z rzędu, w 2016 i 2017 roku, Singularity zostało uznane przez redakcję HPCwire za „Jedną z pięciu nowych technologii do obejrzenia”. W 2017 roku Singularity zdobyło również pierwsze miejsce w kategorii „Najlepsze narzędzie lub technologia do programowania HPC”.

Od 2018 r., na podstawie danych wprowadzonych dobrowolnie do publicznego rejestru, oszacowano, że baza użytkowników Singularity liczyła ponad 25 000 instalacji i obejmowała użytkowników z instytucji akademickich, takich jak Ohio State University i Michigan State University , a także czołowych HPC ośrodków, takich jak Texas Advanced Computing Center , San Diego Supercomputer Center i Oak Ridge National Laboratory .

W lutym 2018 roku ogłoszono, że firma Sylabs, założona przez autora Singularity, zapewni komercyjne wsparcie dla Singularity. W październiku tego roku Sylabs wydał wersję 3.0.0, która była przepisaniem w języku programowania Go .

W maju 2020 roku Gregory Kurtzer opuścił Sylabs, ale zachował przywództwo w projekcie open source Singularity. W maju 2021 Sylabs stworzył rozwidlenie projektu i nazwał go SingularityCE. W listopadzie 2021 roku projekt open source Singularity dołączył do Linux Foundation i został przemianowany na Apptainer .

Cechy

Singularity jest w stanie obsługiwać natywnie wysokowydajne połączenia międzysieciowe, takie jak InfiniBand i Intel Omni-Path Architecture (OPA).

Podobnie jak obsługa urządzeń InfiniBand i Intel OPA, Singularity może obsługiwać dowolne urządzenie podłączone do PCIe w węźle obliczeniowym, takie jak akceleratory graficzne .

Singularity ma również natywną obsługę biblioteki Open MPI , wykorzystując hybrydowe podejście do kontenera MPI, w którym OpenMPI istnieje zarówno wewnątrz, jak i na zewnątrz kontenera.

Te cechy sprawiają, że Singularity jest coraz bardziej przydatne w obszarach takich jak uczenie maszynowe , uczenie głębokie i większość obciążeń intensywnie korzystających z danych, w których aplikacje korzystają z wysokiej przepustowości i niskich opóźnień tych technologii.

Integracja

Systemy HPC tradycyjnie mają już systemy zarządzania zasobami i planowania zadań , więc środowiska wykonawcze kontenerów muszą być zintegrowane z istniejącym menedżerem zasobów systemowych.

Korzystanie z innych korporacyjnych rozwiązań kontenerowych, takich jak Docker , w systemach HPC wymagałoby modyfikacji oprogramowania. Kontenery Dockera mogą być automatycznie konwertowane na samodzielne pliki osobliwości, które następnie można przesyłać do menedżerów zasobów HPC.

Singularity bezproblemowo integruje się z wieloma menedżerami zasobów, w tym:

Zobacz też

Dalsza lektura

Linki zewnętrzne