Search
Your task is to measure the time performance of three different implementations of matrix multiplication and compare them:
You probably need to do the following steps:
measurements.json
results.json
{ "performance": [ { "impl_name": "measureMultiply", "average": 274.45720624999996, "cf_lb": 271.6351655689061, "cf_ub": 273.27924693109395 }, { "impl_name": "measureMultiply1D", ... }, { "impl_name": "measureMultiplyTrans", ... } ], "comparisons": [ { "impl_1_name": "measureMultiply", "impl_2_name": "measureMultiply1D", "ratio": 0.9404346124708851, "cf_lb": 0.9374657053490532, "cf_ub": 0.943403519592717 }, { "impl_1_name": "measureMultiply", "impl_2_name": "measureMultiplyTrans", ... }, { "impl_1_name": "measureMultiply1D", "impl_2_name": "measureMultiply", ... }, { "impl_1_name": "measureMultiply1D", "impl_2_name": "measureMultiplyTrans", ... }, { "impl_1_name": "measureMultiplyTrans", "impl_2_name": "measureMultiply", ... }, { "impl_1_name": "measureMultiplyTrans", "impl_2_name": "measureMultiply1D", ... } ] }
The report should include the following parts:
java -version
Report templates: doc LaTeX
JMH is a Java harness for building, running, and analyzing nano/micro/milli/macro benchmarks written in Java and other languages targetting the JVM.
https://github.com/openjdk/jmh
There is a plenty of tutorials, for example: