Global Arrays , o GA , es la biblioteca desarrollada por científicos del Pacific Northwest National Laboratory para computación paralela. GA proporciona una API amigable para la programación de memoria compartida en computadoras con memoria distribuida para arreglos multidimensionales. La biblioteca GA es un predecesor de los lenguajes GAS ( espacio de direcciones global ) que se están desarrollando actualmente para la informática de alto rendimiento. [1] [2] [3] [4]
Paradigma | paso de mensajes paralelo , unilateral , imperativo ( procedimental ), estructurado |
---|---|
Apareció por primera vez | 1994 |
Lanzamiento estable | 5.5 / agosto de 2016 |
Disciplina de mecanografía | estático , débil |
SO | Multiplataforma |
Sitio web | hpc |
El kit de herramientas de GA tiene bibliotecas adicionales que incluyen un asignador de memoria (MA), una interfaz de copia de memoria remota agregada (ARMCI) y una funcionalidad para el almacenamiento de matrices fuera del núcleo (ChemIO). Aunque GA se desarrolló inicialmente para ejecutarse con TCGMSG, una biblioteca de paso de mensajes anterior al estándar MPI ( Interfaz de paso de mensajes ), ahora es totalmente compatible con MPI. GA incluye cálculos matriciales simples (multiplicación matriz-matriz, solución LU) y funciona con ScaLAPACK . Hay matrices dispersas disponibles, pero la implementación aún no es óptima.
GA fue desarrollado por Jarek Nieplocha, Robert Harrison, RJ Littlefield, Manoj Krishnan y Vinod Tipparaju. La biblioteca ChemIO para almacenamiento fuera del núcleo fue desarrollada por Jarek Nieplocha, Robert Harrison e Ian Foster .
La biblioteca GA está incorporada en muchos paquetes de química cuántica, incluidos NWChem , MOLPRO , UTChem , MOLCAS y TURBOMOLE . La biblioteca GA también está incorporada en el código de subsuperficie STOMP [5]
El kit de herramientas de GA es un software gratuito , con licencia de fabricación propia .
Referencias
- ^ Nieplocha, Jarek; Harrison, Robert (1997). "Programación de memoria compartida en entornos de metacomputación: el enfoque de matriz global". El diario de la supercomputación . 11 (2): 119-136. doi : 10.1023 / A: 1007955822788 .
- ^ Nieplocha, Jarek (2006). "Avances, aplicaciones y rendimiento del kit de herramientas de programación de memoria compartida de Global Arrays". Revista internacional de aplicaciones informáticas de alto rendimiento . 20 (2): 203–231. CiteSeerX 10.1.1.133.9926 . doi : 10.1177 / 1094342006064503 .
- ^ Nieplocha, Jaroslaw; Harrison, Robert J .; Littlefield, Richard J. (1996). "Matrices globales: un modelo de programación de acceso a memoria no uniforme para computadoras de alto rendimiento". El diario de la supercomputación . 10 (2): 169–189. CiteSeerX 10.1.1.41.5891 . doi : 10.1007 / BF00130708 .
- ^ Tipparaju, Vinod; Krishnan, Manoj; Palmer, Bruce; Petrini, Fabrizio; Nieplocha, Jarek (2008). "Hacia matrices globales resistentes a fallos" . En Bischof, Christian; Bücker, Martin; Gibbon, Paul; Joubert, Gerhard R .; Lippert, Thomas; Mohr, Bernd; Peters, Frans (eds.). Computación Paralela: Arquitecturas, Algoritmos y Aplicaciones . Avances en Computación Paralela. 15 . Ámsterdam: IOS Press. págs. 339–345. ISBN 978-1-58603-796-3. ISSN 0927-5452 . OCLC 226966397 .
- ^ "Finalista de Gordon Bell en SC09 - GA cruza la barrera de Petaflop" . PNNL . 2009.
Ver también
- Página de inicio de arreglos globales
- Página de inicio de Parsoft