Skip to content
sdressler edited this page Jul 9, 2012 · 1 revision

You are here: Home -> Usage


EPerF Modules

EPerf consists of three basic modules: Devices, Kernels and Kernel Configurations.

Devices

A device is used for executing the kernel function. Thus, devices could be: CPU, GPU, Intel MIC, FPGA and so on. If you're having multiple GPUs each GPU should be considered as distinct device. The same holds for multiple CPUs (but not for every CPU core).

Kernels

A kernel represents the function being executed on a device. This means, that EPerF measures the execution time of a kernel executed on a device. Therefore, the combination of Kernel ID and Device ID is crucial for analysis. The same combination of Kernel ID and Device ID means that the same kernel is executed on the same device.

Kernel Configurations

Kernel configurations model the property that a kernel may execute the same code but with different data. For this purpose one creates a kernel configuration consisting of key / value pairs. This kernel configuration is then provided at the startTimer method. EPerF is able to recognize the given configuration and thus can distinct between measurement consisting of different kernel configurations and those who are using the same configuration.

Clone this wiki locally