YGM is a general-purpose, pseudo-asynchronous communication library built on top of MPI in C++. YGM's utility is provided through its mailbox abstraction which are used for point-to-point and broadcast communications. When using YGM, individual cores queue messages into a mailbox instead of directly sending them.
- Place headers in an accessible location
- Include the appropriate headers
- Initialize YGM
- Create a mailbox
See the mailbox_test for an example.
$ mkdir build
$ cd build
$ spack load gcc@9 # or newer
$ spack load cereal
$ cmake ../
$ make
$ salloc -N1 -ppdebug # if testing in a Slurm environment
$ make test
YGM is distributed under the MIT license.
All new contributions must be made under the MIT license.
See LICENSE-MIT, NOTICE, and COPYRIGHT for details.
SPDX-License-Identifier: MIT
LLNL-CODE-789122