MicrobenchmarkDenseMatrixKernel {RHPCBenchmark}R Documentation

Performs microbenchmarking of a dense matrix linear algebra kernel

Description

MicrobenchmarkDenseMatrixKernel performs microbenchmarking of a dense matrix linear algebra kernel for several matrix dimensions

Usage

MicrobenchmarkDenseMatrixKernel(benchmarkParameters, numberOfThreads,
  resultsDirectory, runIdentifier)

Arguments

benchmarkParameters

an object of type DenseMatrixMicrobenchmark specifying the matrix dimensions of matrices to be tested and the number of performance trials to perform for each matrix dimension.

numberOfThreads

the number of threads the microbenchmark is being performed with. The value is for informational purposes only and does not effect the number threads the kernel is executed with.

resultsDirectory

a character string specifying the directory where all of the CSV performance results files will be saved

runIdentifier

a character string specifying the suffix to be appended to the base of the file name of the output CSV format files

Details

This function performs microbenchmarking of a dense matrix linear algebra kernel for several matrix dimensions and a given number of threads. The kernel to be performance tested, the matrix dimensions to be tested, and other parameters specifying how the kernel is to be benchmarked are given in the input object benchmarkParameters which is an instance of the class DenseMatrixMicrobenchmark. For each matrix dimension to be tested, the run time performance of the kernel is averaged over multiple performance trials, and the averages are written to a CSV file. The results of the individual performance trials are retained in a data frame that is returned upon completion of the microbenchmark. The kernel can also be executed with multiple threads if the kernel supports multithreading. See DenseMatrixMicrobenchmark for more details on the benchmarking parameters.

Value

a dataframe containing the performance trial times for each matrix tested, that is the raw performance data before averaging. The columns of the data frame are the following:

BenchmarkName

The name of the microbenchmark

DimensionParameter

The dimension parameters the microbenchmark uses to define the matrix dimensions to be tested with

UserTime

The amount of time spent in user-mode code within the microbenchmarked code

SystemTime

The amount of time spent in the kernel within the process

WallClockTime

The total time spent to complete the performance trial

DateStarted

The date and time the performance trial was commenced

DateFinished

The date and time the performance trial ended


[Package RHPCBenchmark version 0.1.0 Index]