Gromacs  2018.8
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Member Functions
GpuRegionTimerImpl< framework > Class Template Referenceabstract

#include <gromacs/gpu_utils/gpuregiontimer.h>

Description

template<GpuFramework framework>
class GpuRegionTimerImpl< framework >

This is a GPU region timing implementation interface. It should provide methods for measuring the last timespan. Copying/assignment is disabled since the underlying timing events are owned by this.

Public Member Functions

 GpuRegionTimerImpl (const GpuRegionTimerImpl &)=delete
 No copying.
 
GpuRegionTimerImploperator= (GpuRegionTimerImpl &&)=delete
 No assignment.
 
 GpuRegionTimerImpl (GpuRegionTimerImpl &&)=delete
 Moving is disabled but can be considered in the future if needed.
 
void openTimingRegion (CommandStream)=0
 Will be called before the region start.
 
void closeTimingRegion (CommandStream)=0
 Will be called after the region end.
 
void reset ()=0
 Resets any internal state if needed.
 
double getLastRangeTime ()=0
 Returns the last measured region timespan (in milliseconds) and calls reset()
 
CommandEvent * fetchNextEvent ()=0
 Returns a new raw timing event for passing into individual GPU API calls within the region if the API requires it (e.g. on OpenCL).
 

The documentation for this class was generated from the following file: