public class KernelDeviceProfile extends Object
Constructor and Description |
---|
KernelDeviceProfile(KernelProfile parentProfile,
Class<? extends Kernel> kernel,
Device device) |
Modifier and Type | Method and Description |
---|---|
String |
getAverageAsTableRow() |
String |
getCumulativeAsTableRow() |
double |
getCumulativeElapsedTimeAllCurrentThread()
Elapsed time of entire execution, summed over all executions, for the current thread,
if it has executed the kernel on the device assigned to this KernelDeviceProfile instance.
|
double |
getCumulativeElapsedTimeAllGlobal()
Elapsed time of entire execution, summed over all executions, for all the threads,
that executed the kernel on this device.
|
double |
getCumulativeElapsedTimeCurrrentThread(ProfilingEvent stage)
Elapsed time for a single event only, i.e.
|
double |
getCumulativeElapsedTimeGlobal(ProfilingEvent stage)
Elapsed time for a single event only, i.e.
|
double |
getElapsedTimeCurrentThread(int stage)
Elapsed time for a single event only and for the current thread, i.e.
|
double |
getElapsedTimeCurrentThread(int from,
int to)
Elapsed time for all events
from through to for the current thread. |
double |
getElapsedTimeLastThread(int stage)
Elapsed time for a single event only and for the last thread that finished executing a kernel,
i.e.
|
double |
getElapsedTimeLastThread(int from,
int to)
Elapsed time for all events
from through to for the last thread that executed this KernelDeviceProfile
instance respective kernel and device. |
String |
getLastAsTableRow() |
WeakReference<ProfileReport> |
getReportCurrentThread()
Retrieves the most recent complete report available for the current thread calling this method.
Note1: If the profile report is intended to be kept in memory, the object should be cloned with ProfileReport.clone() Note2: If the thread didn't execute this KernelDeviceProfile instance respective kernel and device, it will return null. |
WeakReference<ProfileReport> |
getReportLastThread()
Retrieves the most recent complete report available for the last thread that executed this KernelDeviceProfile
instance respective kernel and device.
Note1: If the profile report is intended to be kept in memory, the object should be cloned with ProfileReport.clone() |
static String |
getTableHeader() |
void |
onEvent(ProfilingEvent event) |
String |
toString() |
public KernelDeviceProfile(KernelProfile parentProfile, Class<? extends Kernel> kernel, Device device)
public void onEvent(ProfilingEvent event)
public double getElapsedTimeCurrentThread(int stage)
public double getElapsedTimeCurrentThread(int from, int to)
from
through to
for the current thread.public WeakReference<ProfileReport> getReportCurrentThread()
ProfileReport.clone()
public WeakReference<ProfileReport> getReportLastThread()
ProfileReport.clone()
public double getCumulativeElapsedTimeCurrrentThread(ProfilingEvent stage)
stage
- the event stagepublic double getCumulativeElapsedTimeAllCurrentThread()
public double getElapsedTimeLastThread(int stage)
stage
- the event stagepublic double getElapsedTimeLastThread(int from, int to)
from
through to
for the last thread that executed this KernelDeviceProfile
instance respective kernel and device.from
- the first event to consider that defines the elapsed period startto
- the last event to consider for elapsed periodpublic double getCumulativeElapsedTimeGlobal(ProfilingEvent stage)
stage
- the event stagepublic double getCumulativeElapsedTimeAllGlobal()
public static String getTableHeader()
public String getLastAsTableRow()
public String getCumulativeAsTableRow()
public String getAverageAsTableRow()
Copyright © 2021 Syncleus. All rights reserved.