https://github.com/sandialabs/parallel_task_bench
OMP-TB is a collection of benchmarks to measure tasking performance and tasking-related features in OpenMP.
https://github.com/sandialabs/parallel_task_bench
scr-2805 snl-mini-apps
Last synced: 3 months ago
JSON representation
OMP-TB is a collection of benchmarks to measure tasking performance and tasking-related features in OpenMP.
- Host: GitHub
- URL: https://github.com/sandialabs/parallel_task_bench
- Owner: sandialabs
- License: other
- Created: 2022-09-23T22:46:23.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2022-11-29T17:48:30.000Z (over 2 years ago)
- Last Synced: 2025-01-11T15:24:46.860Z (5 months ago)
- Topics: scr-2805, snl-mini-apps
- Language: ReScript
- Homepage:
- Size: 30.7 MB
- Stars: 0
- Watchers: 3
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Parallel Task Bench (PTB)
PTB is a collection of benchmarks to measure tasking performance and tasking-related features. Currently it includes benchmark as listed below. In general, such benchmarks are useful to evaluate compiler language support as well as its efficient implementation.
## PTB Benchmarks
- reductions/dot (Dot Product)
- reductions/fib (Fibonacci)
- reductions/powerset (Powerset Permutations)
- reductions/powerset-final (Powerset Permutations using the final OpenMP clause)
- reductions/powerset-UDR (Powerset Permutations using user-defined reductions)
- reductions/others/array_sum (Array Sum)
- reductions/others/knapsack (Knapsack)
- reductions/others/knightstour (Knights Tour)
- reductions/others/max_height_tree (Max Height)
- reductions/others/nbinarywords (n-Permutations)
- reductions/others/nqueens (N-Queens)
- reductions/others/TSP (Travelling Salesman Problem)## Usage
This software suite uses the CMake meta build system. The following steps show an example of how to configure and build OMP-TB relative to the source root directory for the GCC/g++ compiler and a user-defined reduction over type size of 4 bytes.
```
export COMPILER=g++
export TYPE_SIZE=4
mkdir build && cd build
cmake -DCMAKE_CXX_COMPILER=$COMPILER -DRED_TYPE_SIZE=$TYPE_SIZE
make -j
```## Performance Insights
Executing the included run scripts on a two-nodes dual-socket 24-core Intel(R) Xeon(R) Platinum 8160 CPU @ 2.10GHz gives the following performance charts.
![]()
![]()
![]()