Your task is to measure time performance of three different implementations of matrix multiplication and compare them:
Standard multiplication
Multiplication with the second matrix transposed before the multiplication
Multiplication of the matrices in 1D representation
You probably need to do the following steps:
Open the source code in IDE
Run the program (cz.esw.benchmark.Main class)
Do the measurements on each of the implementations of the matrix multiplication according to the methodology described in [1] - summary in
PDF
Determine a warm-up period for each implementation
Measure a time performance for each implementation and compute the average performance and 95% confidence interval of the measurements (Section 9.3)
You don't have to calculate the optimal number of repetition at each level as it is described in [1]
Choose a sufficiently large number of repetition. The number of repetitions is important especially on the highest level.
Compute comparison ratios of the implementations and 95% confidence intervals of the ratios (Section 10.1)
Upload a report with the results to the upload system
You can make any changes in the Main class to perform the measurements but you are not allowed to modify the MatrixUtils class.