This system crate provides Rust language bindings (via the use of Bindgen) for Minos Computing Library (MCL).
Set the MCL_PATH
environmental variable with the path to MCL installation directory. For example in bash use:
bash
export MCL_PATH=/path/to/mcl/install/
Cargo will try to find the lib/
and include/
directories based on that.
Set the OCL_PATH_INC
and OCL_PATH_LIB
environmental variables with the path to OpenCL include
and lib
(or lib64
) directories respectively.
Note: this may not be needed if OpenCL is in the system directories
Build using Cargo
bash
cargo build --release
This should produce an .rlib
file in target/release/
directory.
libmcl-sys comes with a set of unit tests that can be executed by running:
bash
cargo test --release
Reminder: The MCL scheduler should be running when executing the tests.
MCL (and libmcl-sys) is a research prototype and still under development, thus not all intended features are yet implemented.
Please, contact Roberto Gioiosa at PNNL (roberto.gioiosa@pnnl.gov) if you have any MCL questions. For Rust related questions please contact Ryan Friese at PNNL (ryan.friese@pnnl.gov)
Roberto Gioiosa
Ryan Friese
Polykarpos Thomadakis
This project is licensed under the BSD License - see the LICENSE file for details.
IF you wish to cite MCL, please, use the following reference:
Other work that leverage or describe additional MCL features: