Benchmark from Tsoutsouras et al. MICRO paper.1
The program calculates the multiplication of two matrices using the naive matrix multiplication algorithm.
matrix-multiplication -a <file prefix for A> -m <A rows> -n <A columns> -b <file prefix for B> -x <B rows> -y <B columns>
-a <file prefix for A>: default is "gaussian/input-A"
-m <A rows>: default is 8
-n <A columns>: default is 8
-b <file prefix for B>: default is "gaussian/input-B"
-x <B rows>: default is 8
-y <B columns>: default is 8
The inputs make up two 8x8 matrices: matrix A and matrix B. There is one input file corresponding to each matrix element.
For example, file input-A-0-0.txt
holds samples for the top left element of matrix A.
All samples in these files are from a Gaussian distribution of mean 1.0
and variance 1.0
.
The program prints the means of the matrix multiplication product.
Footnotes
-
Vasileios Tsoutsouras, Orestis Kaparounakis, Bilgesu Arif Bilgin, Chatura Samarakoon, James Timothy Meech, Jan Heck, Phillip Stanley-Marbell: The Laplace Microarchitecture for Tracking Data Uncertainty and Its Implementation in a RISC-V Processor. MICRO 2021: 1254-1269 โฉ