Marker API (GPU)

Note: This is a maturing feature. Only NVIDIA GPUs are supported.

Index

API

LIKWID.GPUMarker.closeMethod

Close the connection to the LIKWID GPU Marker API and write out measurement data to file. This file will be evaluated by likwid-perfctr.

source
LIKWID.GPUMarker.getregionMethod
getregion(regiontag::AbstractString) -> nevents, events, time, count

Get the intermediate results of the region identified by regiontag. On success, it returns * nevents: the number of events in the current group, * events: a list with all the aggregated event results, * time: the measurement time for the region and * count: the number of calls.

source
LIKWID.GPUMarker.gpumarkerMethod
gpumarker(f, regiontag::AbstractString)

Adds a LIKWID GPU marker region around the execution of the given function f using GPUMarker.startregion, GPUMarker.stopregion under the hood. Note that LIKWID.GPUMarker.init() and LIKWID.GPUMarker.close() must be called before and after, respectively.

Examples

julia> using LIKWID, CUDA

julia> GPUMarker.init()

julia> gpumarker("sleeping...") do
           sleep(1)
       end
true

julia> gpumarker(()->CUDA.rand(100), "create rand vec")
true

julia> GPUMarker.close()
source
LIKWID.GPUMarker.initMethod

Initialize the NvMon Marker API of the LIKWID library. Must be called previous to all other functions.

source
LIKWID.GPUMarker.isactiveMethod

Checks whether the NVIDIA GPU Marker API is active, i.e. julia has been started under likwid-perfctr -G ... -W ... -m.

source
LIKWID.GPUMarker.nextgroupMethod

Switch to the next event set in a round-robin fashion. If you have set only one event set on the command line, this function performs no operation.

source
LIKWID.GPUMarker.registerregionMethod

Register a region with name regiontag to the GPU Marker API. On success, true is returned.

This is an optional function to reduce the overhead of region registration at Marker.startregion. If you don't call registerregion, the registration is done at startregion.

source