Skip to content
master
Switch branches/tags
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
src
 
 
 
 
 
 
 
 
 
 
 
 

BDT OpenSHMEM

OpenSHMEM is a standardized interface to enable portable applications for partitioned global address space (PGAS) architectures. This repository includes the BDT OpenSHMEM implementation for optimized one-sided communication, atomic, and collective operations for multicore and manycore processors (see ./src) and test codes (see ./test).

The OpenSHMEM implementation is based on the OpenSHMEM 1.4 Specification

This software was developed by the US Army Research Laboratory, Computational Sciences Division, Computing Architectures Branch, and Brown Deer Technology.

This version of the software was developed by Brown Deer Technology and released under the open-source 2-Clause BSD License.

Prerequisites

Presently, a POSIX-compliant development environment is needed, including GCC, GNU Make, M4, Bash (Unix shell), and Perl tools. No external support libraries are required (i.e. no network interfaces) as the target platforms are multi-core processors.

Using

From the top level directory, type make to build, or make check to build and check.

In ./test, executing make run will execute most test codes with a default number of PEs and make check will run all of the test codes with various parameters while checking for correctness. There is no installation, but you should link to the libshmem.a static library and use the appropriate include path for shmem.h found within ./src or subdirectories.

Citation

This software was originally developed for the Adapteva Epiphany Coprocessor and described in the following paper:

J. Ross and D. Richie, "An OpenSHMEM Implementation for the Adapteva Epiphany Coprocessor," OpenSHMEM and Related Technologies. Enhancing OpenSHMEM for Hybrid Environments, vol. 10007, pp. 146-159, Dec. 2016, doi:10.1007/978-3-319-50995-2_10

About

Dependency-free reference implementation of the OpenSHMEM standard API for multi-core processors

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published