In this tutorial we present an asynchronous data flow programming model for Partitioned Global Address Spaces (PGAS) as an alternative to the programming model of MPI. GASPI, which stands for Global Address Space Programming Interface, is a partitioned global address space API. The GASPI API is designed as a C/C++/Fortran library and focused on three key objectives: scalability, flexibility and fault tolerance. In order to achieve its much improved scaling behaviour GASPI aims at asynchronous dataflow with remote completion, rather than bulk-synchronous message exchanges. GASPI follows a single/multiple program multiple data (SPMD/MPMD) approach and offers a small, yet powerful API (see also http://www.gaspi.de and http://www.gpi-site.com).
GASPI is successfully used in academic and industrial simulation applications. The GASPI API works especially well for complex network topologies like the 7D enhanced hypercube of Salomon. (See e.g. https:/
Hands-on sessions (in C and Fortran) will allow users to immediately test and understand the basic constructs of GASPI.
This course provides scientific training in Computational Science, and in addition, the scientific exchange of the participants among themselves.
Additionanl details can be found at http://prace.it4i.cz/en/GASPI-03-2017