stringtranslate.com

Singularidad (software)

Singularity es un programa informático gratuito y de código abierto que realiza la virtualización a nivel del sistema operativo, también conocida como contenedorización . [4]

Uno de los principales usos de Singularity es llevar contenedores y reproducibilidad a la informática científica y al mundo de la informática de alto rendimiento (HPC). [5]

La necesidad de reproducibilidad requiere la capacidad de utilizar contenedores para mover aplicaciones de un sistema a otro. [6]

Al utilizar contenedores de Singularity, los desarrolladores pueden trabajar en entornos reproducibles de su elección y diseño, y estos entornos completos se pueden copiar y ejecutar fácilmente en otras plataformas. [7]

En 2021, el proyecto de código abierto Singularity se dividió en dos proyectos llamados Apptainer y SingularityCE.

Flujo de trabajo de uso para contenedores de Singularity

Historia

Singularity comenzó como un proyecto de código abierto en 2015, cuando un equipo de investigadores del Laboratorio Nacional Lawrence Berkeley , liderado por Gregory Kurtzer, desarrolló la versión inicial escrita en el lenguaje de programación C y la lanzó [8] bajo la licencia BSD . [9]

A finales de 2016, muchos desarrolladores de diferentes instalaciones de investigación unieron fuerzas con el equipo del Laboratorio Nacional Lawrence Berkeley para promover el desarrollo de Singularity. [10]

La singularidad atrajo rápidamente la atención de instituciones científicas de todo el mundo que utilizan mucha informática: [11]

Durante dos años consecutivos, en 2016 y 2017, los editores de HPCwire reconocieron a Singularity como "Una de las cinco nuevas tecnologías a tener en cuenta". [19] [20] En 2017, Singularity también ganó el primer lugar en la categoría "Mejor herramienta o tecnología de programación HPC". [20]

A partir de 2018, según los datos ingresados ​​de forma voluntaria en un registro público, se estimó que la base de usuarios de Singularity era superior a 25.000 instalaciones [21] e incluía usuarios de instituciones académicas como la Universidad Estatal de Ohio y la Universidad Estatal de Michigan , así como así como los principales centros de HPC, como el Texas Advanced Computing Center , el San Diego Supercomputer Center y el Oak Ridge National Laboratory .

En febrero de 2018, se anunció [23] que la empresa Sylabs [22] , fundada por el autor de Singularity, proporcionaría apoyo comercial a Singularity. En octubre de ese año, Sylabs lanzó la versión 3.0.0 [24] que fue una reescritura en el lenguaje de programación Go .

División Apptainer / Singularidad

En mayo de 2020, Gregory Kurtzer dejó Sylabs pero mantuvo el liderazgo del proyecto de código abierto Singularity. [25] En mayo de 2021, Sylabs hizo una bifurcación del proyecto [26] y lo llamó SingularityCE. [27] [28] En noviembre de 2021, el proyecto de código abierto Singularity se unió a la Fundación Linux [29] y pasó a llamarse Apptainer . [30]

Características

Singularity es capaz de admitir interconexiones nativas de alto rendimiento, como InfiniBand [31] e Intel Omni-Path Architecture (OPA). [32]

De manera similar a la compatibilidad con dispositivos InfiniBand e Intel OPA, Singularity puede admitir cualquier dispositivo conectado a PCIe dentro del nodo de computación, como aceleradores gráficos . [33]

Singularity también tiene soporte nativo para la biblioteca Open MPI mediante la utilización de un enfoque de contenedor MPI híbrido donde OpenMPI existe tanto dentro como fuera del contenedor. [31]

Estas características hacen que Singularity sea cada vez más útil en áreas como el aprendizaje automático , el aprendizaje profundo y la mayoría de las cargas de trabajo con uso intensivo de datos, donde las aplicaciones se benefician del alto ancho de banda y las características de baja latencia de estas tecnologías. [34]

Integración

Los sistemas HPC tradicionalmente ya cuentan con sistemas de gestión de recursos y programación de trabajos , por lo que los entornos de ejecución del contenedor deben integrarse en el administrador de recursos del sistema existente.

El uso de otras soluciones de contenedores empresariales como Docker en sistemas HPC requeriría modificaciones en el software. [35] Los contenedores Docker se pueden convertir automáticamente en archivos de singularidad independientes que luego se pueden enviar a los administradores de recursos de HPC. [36]

Singularity se integra perfectamente con muchos administradores de recursos [37], incluidos:

Ver también

Referencias

  1. ^ "Lanzamientos · apptainer / singularidad". github.com . Consultado el 29 de junio de 2022 .
  2. ^ "Singularidad + GoLang". GitHub . Consultado el 3 de diciembre de 2021 .
  3. ^ "Licencia de singularidad". Apptainer.org . Equipo de Singularidad . Consultado el 3 de diciembre de 2021 .
  4. ^ "Presentación de singularidad en FOSDEM 17". archive.fosdem.org .
  5. ^ Kurtzer, Gregorio M.; Sochat, Vanessa; Bauer, Michael W. (2017). "Singularidad: contenedores científicos para la movilidad informática". MÁS UNO . 12 (5): e0177459. Código Bib : 2017PLoSO..1277459K. doi : 10.1371/journal.pone.0177459 . PMC 5426675 . PMID  28494014. 
  6. ^ "Singularity, un contenedor para HPC". admin-revista.com. 24 de abril de 2016.
  7. ^ "Manual de singularidad: movilidad de la computación". Guía del usuario de Singularity - Versión 2.5.2 .
  8. ^ "Sylabs lleva los contenedores singulares a la HPC comercial". top500.org .
  9. ^ "Licencia de singularidad". singularidad.lbl.gov . Equipo de Singularidad. 19 de marzo de 2018 . Consultado el 19 de marzo de 2018 .
  10. ^ "Cambios en el archivo AUTHORS.md en el código fuente de Singularity realizados en abril de 2017". GitHub .
  11. ^ "La derivación de código abierto de Berkeley Lab sirve a la ciencia". 7 de junio de 2017.
  12. ^ "Manual de usuario en línea de XStream, sección sobre Singularidad". xstream.stanford.edu .
  13. ^ "Descripción general del clúster XStream". Archivado desde el original el 24 de octubre de 2020 . Consultado el 10 de abril de 2018 .
  14. ^ "Sherlock: novedades, contenedores y herramientas de aprendizaje profundo". Centro de Computación de Investigación de Stanford .
  15. ^ "Manual de usuario en línea de NIH HPC, sección sobre Singularidad". hpc.nih.gov .
  16. ^ "Sistemas HPC del NIH". hpc.nih.gov .
  17. ^ "Singularidad en el OSG".
  18. ^ "Singularidad en CMS: más de un millón de contenedores atendidos" (PDF) .
  19. ^ "HPCwire revela los ganadores de los premios Readers' and Editors' Choice Awards 2016 en la conferencia SC16 en Salt Lake City". Cable HPC .
  20. ^ ab "HPCwire revela los ganadores de los premios Readers' and Editors' Choice Awards 2017 en la conferencia SC17 en Denver". Cable HPC .
  21. ^ "Registro voluntario de instalaciones de Singularidad".
  22. ^ "Página de inicio de Sylabs" . Consultado el 29 de junio de 2022 .
  23. ^ "Sylabs emerge del sigilo para llevar la tecnología de contenedores singulares a la informática de rendimiento empresarial" (Presione soltar). 8 de febrero de 2018 . Consultado el 29 de junio de 2022 .
  24. ^ "Singularidad 3.0.0". GitHub .
  25. ^ "Movimiento del repositorio de Singularity y actualizaciones de la empresa" . Consultado el 29 de junio de 2022 .
  26. ^ "Bifurcación de la singularidad de Sylabs" . Consultado el 29 de junio de 2022 .
  27. ^ "SingularidadCE" . Consultado el 30 de junio de 2022 .
  28. ^ "SingularidadCE". 28 de octubre de 2022 – vía GitHub.
  29. ^ "¡Singularity se ha unido a la Fundación Linux!" . Consultado el 29 de junio de 2022 .
  30. ^ "Sitio web del contratista" . Consultado el 15 de febrero de 2023 .
  31. ^ ab "Tutorial avanzado de Intel: Singularidad y contenedores HPC - Tutorial avanzado - Intel" (PDF) .
  32. ^ "Nota de aplicación de Intel: creación de contenedores para Intel Omni-Path Fabrics utilizando Docker y Singularity" (PDF) .
  33. ^ "Manual de singularidad: un ejemplo de GPU".
  34. ^ Talento, Nathan R.; Gawande, Nitin; Siegel, Carlos; Vishnu, Abhinav; Hoisie, Adolfy (2018). "Evaluación de interconexiones de GPU en el nodo para cargas de trabajo de aprendizaje profundo". Sistemas informáticos de alto rendimiento. Modelado de rendimiento, evaluación comparativa y simulación . Apuntes de conferencias sobre informática. vol. 10724, págs. 3–21. doi :10.1007/978-3-319-72971-8_1. ISBN 978-3-319-72970-1. S2CID  1674152.
  35. ^ Jonathan Sparks, Cray Inc. (2017). "Contenedores HPC en uso" (PDF) .
  36. ^ "Singularidad y Docker" . Consultado el 3 de diciembre de 2021 .
  37. ^ "Soporte para HPC tradicional existente".
  38. ^ "Manual de versión estable de HTCondor: soporte de singularidad". Archivado desde el original el 4 de febrero de 2020 . Consultado el 4 de febrero de 2020 .

Otras lecturas

enlaces externos