tonycurtis / rusty2

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

This repository contains the Rust code to interface with OpenSHMEM.

The top-level "do-gen" script parses an OpenSMHEM header file and
generates dervied Rust equivalents.  Note this is pretty raw output
and is not something that Rust programmers would want to see.  The
do-gen output goes into the "shmemlib" irectory, which forms the
low-level unsafe interface to OpenSHMEM.

The "shmem" directoriy builds on shmemlib and implements Rust code
that hides all the unsafe operations that result from parsing the C.
Or at least, this is the idea, and where the work will be.

The other directories are example programs to explore how to actually
use OpenSHMEM with Rust and to see what the interface should look
like.

The examples are adapted mostly from the C programs in:

  https://github.com/openshmem-org/openshmem-examples



Compilation Instructions
========================

To build a particular example, e.g.

    $ cd hello
    $ cargo build [--release]

How to run the example depends entirely on your environment.  The
authors typically use SLURM with the PMIx plugin, or via
salloc/oshrun.

About

License:BSD 3-Clause "New" or "Revised" License


Languages

Language:Rust 99.4%Language:Shell 0.6%