Updated README, fixed circular dependency in makefile

This commit is contained in:
Jack Yu 2021-05-04 02:41:04 -04:00 committed by Yiyao Yu
parent 4bb34fa294
commit 8b5bf87aab
2 changed files with 12 additions and 5 deletions

View File

@ -14,11 +14,12 @@ library written in Rust. For more details, please see the project report.
## Building/Running ## Building/Running
RustMP requires the following dependencies to run: RustMP requires the following dependencies to run:
- `hwloc2-v2.2.0`: C HWLoc wrapper used for NUMA aware process pinning
- `lazy_static-v1.4.0`: Lazy static macro used for delayed singleton init
- `num-v0.3`: Needed to run the Rust factorial benchmarks
- `rand-v0.8.3`: Random number generation used for benchmarking examples - `rand-v0.8.3`: Random number generation used for benchmarking examples
- `rayon-v1.5.0`: Rayon parallel iterator library used in RustMP/Rayon.. - `rayon-v1.5.0`: Rayon parallel iterator library used in RustMP/Rayon..
comparision tests comparision tests
- `hwloc2-v2.2.0`: C HWLoc wrapper used for NUMA aware process pinning
- `lazy_static-v1.4.0`: Lazy static macro used for delayed singleton init
`src/` contains all code for the RustMP library, including `lib.rs`, `src/` contains all code for the RustMP library, including `lib.rs`,
`sysinfo.rs`, and `threadpool.rs`. `src/bin` contains benchmarking programs `sysinfo.rs`, and `threadpool.rs`. `src/bin` contains benchmarking programs
@ -26,10 +27,18 @@ demonstrated in our paper. To run one of the benchmarks with cargo, execute the
following command: following command:
``` ```
# Set the RustMP, OpenMP, and Rayon thread pool thread count to <n>
$ export RMP_NUM_THREADS=<n>
$ export OMP_NUM_THREADS=<n>
$ export RAYON_NUM_THREADS=<n>
# Run the test
$ cargo run --release --bin <testname> $ cargo run --release --bin <testname>
``` ```
C comparison benchmarks can be found in `omp/`. C comparison benchmarks can be found in `omp/`. These can be compiled using
`make`. All matrix multiplication tests support one integer input as for the
square matrix dimensions (i.e. `./matmul <nsize>`).
Additional benchmarks are located in `benches`. These require Rust nightly and Additional benchmarks are located in `benches`. These require Rust nightly and
can be run with the following command: can be run with the following command:

View File

@ -42,8 +42,6 @@ $(BLDDIR)/$(BIN_OMP): $(BLDDIR) $(SRCS)
$(BLDDIR)/$(BIN_OMP_SAFE): $(BLDDIR) $(SRCS) $(BLDDIR)/$(BIN_OMP_SAFE): $(BLDDIR) $(SRCS)
$(CC) $(CFLAGS_OMP_SAFE) $(SRCS) -o $@ $(CC) $(CFLAGS_OMP_SAFE) $(SRCS) -o $@
build: all
$(BLDDIR): $(BLDDIR):
@mkdir -p $(BLDDIR) @mkdir -p $(BLDDIR)