Skip to Main Content U.S. Department of Energy
PNNL: Global Arrays Toolkit

Global Arrays Release Notes

5.1.1 October 2012

  • Added a wrapper for fsync to SF library.
  • Added MA_ACCESS_INDEX_TYPE to ma library.
  • Added missing Python C sources.
  • Changed atomic operations.
  • Fixed numerous bugs for compilation on IBM AIX, as well as IBM xl compilers.
  • Fixed many warnings reported by Intel compilers.
  • Fixed integer overflow for indexing large arrays during accumulate.
  • Fixed bug in GA_Zgemm64.
  • Fixed ghosts hanging.
  • Removed a few debugging print statements from pario.

5.1 February 2012

  • Added unified "NGA" prefix for all functions
  • Added new profiling interface and weak symbol interposition support
  • Added support for struct data types using the new NGA_Register_type(), NGA_Get_field() and NGA_Put_field() functions
  • Added ga-config for 3rd party software to query compilation flags used for GA
  • Added Global Arrays in NumPy (GAiN) interface for a NumPy work-alike with a Global Arrays backend
  • Added GA_MPI_Comm() and other functions to retrieve MPI_Comm object associated with a GA processor group
  • Added MPI-MT (MPI_THREAD_MULTIPLE) port for use when a native port is not available
  • Added armci_msg_finalize() to abstract the message passing function required for application termination
  • Added ability for EAF_Open() to use MA memory operations instead of I/O operations
  • Changed ARMCI directory structure
  • Changed NGA_Add_patch() algorithm to use less memory
  • Changed tascel to no longer be part of the top-level configure (must be installed separately)
  • Changed Python base module from "ga" to "ga4py" since we now have the submodules ga4py.ga and ga4py.gain
  • Changed autotools build to use autoconf-2.68 and libtool-2.4.2
  • Changed ARMCI Fortran sources to use integer*4 type rather than an integer size compiler flag
  • Fixed numerous configure and source bugs with our ScaLAPACK integration
  • Fixed bug in NGA_Matmul_patch()
  • Fixed numerous configure bugs
  • Fixed numerous Makefile bugs
  • Fixed support for large files
  • Improved internal code, reducing the amount of dereferenced pointers
  • Improved restriction on calling GA_Initalize() before messaging layer -- GA_Initalize(), ARMCI_Init(), MPI_Init()/tcg_pbegin() can be called in any order
  • Removed deprecated interconnects Myrinet GM, VIA, Mellanox Verbs API, Quadrics Elan-3, Quadrics Elan-4
  • Removed vampir support
  • Removed KSR and PARAGON support

5.0.3 February 2012

  • Added support for Cray compilers
  • Fixed shared library linking
  • Fixed a few *critical* bugs in GA_Duplicate()
  • Fixed bugs in strided get/put/acc routines
  • Fixed bugs in GPC support
  • Fixed numerous compilation warnings
  • Fixed numerous valgrind warnings
  • Fixed numerous configure bugs
  • Fixed numerous Makefile bugs
  • Fixed numerous bugs in Python interface
  • Fixed bug in GA_Patch_enum()
  • Fixed bug in TCGMSG-MPI nxtval()
  • Fixed latency reporting in perf.x benchmark
  • Fixed Fortran ordering bug in NGA_Scatter(), NGA_Scatter_acc(), and NGA_Gather()
  • Improved BGP configure
  • Improved TCGMSG-MPI build
  • Improved test suite
  • Improved numerous inefficiencies in Python interface

5.0.2 March 2011

  • Added support for Sun Studio compilers
  • Added support for AMD Open64 compilers
  • Changed ARMCI RMW interface to use void*
  • Changed GA_Patch_enum() to use void*
  • Fixed bugs in processor groups code
  • Fixed numerous compilation warnings
  • Fixed numerous configure bugs
  • Fixed numerous Makefile bugs
  • Fixed bug in GA_Unpack()
  • Fixed bug in GA_Dgemm() concerning transpose
  • Fixed numerous bugs in Python interface
  • Improved ga_scan_copy() and ga_scan_add()

5.0.1 January 2011

  • Fixed numerous configure bugs
  • Fixed numerous Makefile bugs
  • Fixed numerous bugs in test suite
  • Fixed atomics bug
  • Fixed numerous tascel bugs
  • Fixed bug in single complex matrix multiply
  • Fixed bug in destruction of mutexes
  • Fixed bug in process group collectives
  • Fixed bug in GA_Terminate()
  • Improved configure for NEC and HPUX

5.0 November 2010

  • Added Restricted Arrays (see user manual)
  • Added on-demand connection management for infiniband
  • Added new Python interface
  • Added Task Scheduling Library (tascel)
  • Added NGA_Scatter_flat(), NGA_Gather_flat(), NGA_Scatter_acc_flat()
  • Added NGA_Locate_nnodes()
  • Changed build system to use GNU autotools (autoconf,automake,libtool)
  • Improved scalability for fence

5.0b July 2010

  • Changed build system to use GNU autotools (autoconf,automake,libtool)

4.3 May 2010

  • Fixed BlueGene/P port
  • Fixed support for Sparse Data Operations (See GA user manual - Chapter 11 for more details)
  • Improved portals port to scale upto 200K procs
  • Improved OpenIB port

4.2 July 2009

  • Added support for Sparse Data Operations (See GA user manual - Chapter 11 for more details)
  • Fixed BlueGene/P port
  • Improved portals port for Cray XT5
  • Improved OpenIB port

4.1 May 2008

  • Added port for Cray XT4 network
  • Added port for BlueGene/L network
  • Added port for BlueGene/P network
  • Added port for OpenIB network
  • Added MPI-SPAWN network (one-sided communication through MPI2 Dynamic Process management and Send/Recv)
  • Improved one-sided non-blocking operations

4.0 April 2006

  • Added support for multilevel parallelism: processor group awareness
  • Added support for large arrays (a terabyte Global Array now possible)
  • Improved GA_Dgemm matrix multiplication based on SRUMMA
  • Improved one-sided non-blocking operations

Global Arrays

News and Events

Feedback