Global Arrays

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку
Global Arrays (GA)
Парадигмапаралельний (одностороння відправка повідомлень), імперативний (процедурний)
Дата появи1994
РозробникJarek Nieplocha, Robert Harrison і R. J. Littlefield
Останній реліз5.2 (2013-08-28)
Система типізаціїстатична
Операційна системакрос-платформова
Ліцензіявідкритий
Вебсайтhpc.pnl.gov

Global Arrays (GA) — бібліотека, розроблена вченими Тихоокеанської північно-західної національної лабораторії (PNNL, DoE) для паралельних обчислень. GA представляє зручний програмний інтерфейс (API) для реалізації спільної пам'яті на комп'ютерах з розподіленою пам'яттю. Є просунута підтримка багатовимірних масивів. Бібліотека GA — попередник мов GAS (global address space[en]), які активно розвиваються для високопродуктивних розрахунків.

Інструментальний набір GA має в собі додаткові бібліотеки: Memory Allocator (MA), Aggregate Remote Memory Copy Interface (ARMCI) і функціональність для зберігання масивів на зовнішніх пристроях (ChemIO). Початково GA був розроблений для роботи з бібліотекою передачі повідомлень TCGMSG, пізніше був адаптований до MPI. GA охоплює набір простих операцій над матрицями (множення матриць, LU розділення) і інтегрується з ScaLAPACK[en]. Також наявна реалізація алгоритмів для обробки розріджених матриць.

GA створена Jarek Nieplocha, Robert Harrison і R. J. Littlefield. Бібліотеку ChemIO розробили Jarek Nieplocha, Robert Harrison і Ian Foster.

Бібліотека GA включена в декілька популярних пакетів для квантової хімії, включаючи NWChem, MOLPRO, UTChem, MOLCAS, TURBOMOLE. Також використовується  в STOMP [Архівовано 13 лютого 2013 у Wayback Machine.]

Набір бібліотек GA являється ПЗ з відкритим вихідним текстом. Використовується власна ліцензія [1] [Архівовано 7 листопада 2016 у Wayback Machine.].

Примітки

[ред. | ред. код]
  1. (1997) «Shared Memory Programming in Metacomputing Environments: The Global Array Approach». The Journal of Supercomputing 11 (2): 119. DOI:10.1023/A:1007955822788.
  2. (2006) «Advances, Applications and Performance of the Global Arrays Shared Memory Programming Toolkit». International Journal of High Performance Computing Applications 20 (2): 203. DOI:10.1177/1094342006064503.
  3. (1996) «Global arrays: A nonuniform memory access programming model for high-performance computers». The Journal of Supercomputing 10 (2). DOI:10.1007/BF00130708.
  4. Towards Fault Resilient Global Arrays // Parallel Computing: Architectures, Algorithms and Applications. — Amsterdam: IOS Press, 2008. — Vol. 15. — P. 339—345. — ISBN 978-1-58603-796-3.
  5. Gordon Bell Finalist at SC09 — GA Crosses the Petaflop Barrier. PNNL (2009). Архивировано из первоисточника 29 сентября 2012.


Див. також

[ред. | ред. код]