Skip to content

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

License

Notifications You must be signed in to change notification settings

browndeer/BDT_OpenSHMEM

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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