Description
Benchmarks include:
- Bit twiddling
- Numerical computing
- In-memory data structure creation and walking
- Concurrent computing
- Calling out from Java/Python/Jython to native libraries
- Utilization of graphics processing units (GPU) from Java and C
Performance is measured in two ways. In some tests it is measured as the time to complete a task. In some tests it is measured as the rate for doing work -- such as number of floating operations per second. Some results are reported both ways. Most of the test programs report the results to the console as well as to a local results file.
The subdirectories (each with one or more tests) are :
GPU utilization. Uses a translation to Java of Apple's GPU/OpenCL FFT's).
Also uses Olivier Chafik's OpenCL for Java, JavaCL.FFT-J-OpenCL-BridJ-Apple/
Non GPU, simple FFTs
FFT-J/FFT-C/FFT-Scala/FFT-Testing-Common/FFTW-C/
Bit-twiddling
JLRSGenTest/CLRSGenTest/SLRSGenTest/
Memory structure creation with random traversal using red-black trees
RbTree-C-Test/RbTree-J-Test/RbTree-S-Test/RbTree-Py-Test/
Matrix multiply
MatMul-CMatMul-JMatMul-SMatMul-Py
Concurrent computing
Parallelism-Benchmarks-C/Parallelism-Benchmarks-J/
Method invocation and callout
Platforms
The tests were developed and tested to run on Mac OS X and Linux.