|
RtStartPerfMeasure enables the measuring of HAL clock ticks and latencies for the specified processor.
Syntax
ULONG RtStartPerfMeasure( ULONG perfMeasureType, ULONG *ioBuffer, ULONG ioBufferSize, ULONG *ioBufferWrite, LONGLONG *lPerfCyclesPerSecond, ULONG *platformConfig, ULONG *rtssProcessorNumber );
Parameters
perfMeasureType
Control code of the operation to perform. Must be one of the following:
ioBuffer
Returns a pointer to a linear array of buffers. Each buffer is the size of IOBufferSize and RtStartPerfMeasure populates each buffer with performance data for a single processor. These buffers are circular and data at the beginning of a buffer will be overwritten once the end of the buffer is reached.
ioBufferSize
The number of timestamps to collect. Each entry into or exit from the RTSS subsystem generates a timestamp. The size of the buffers in ioBuffer is determined using this value.
ioBufferWrite
A pointer to a linear array of indexes that indicate the location of the last data point written into each RTSS processor's buffer in IOBuffer.
lPerfCyclesPerSecond
Pointer to a value that represents Processor Clock Cycles per second.
platformConfig
Pointer that is filled in with the current platform configuration. Possible values are:
rtssProcessorNumber
Pointer that is filled in with the processor number that the RTSS application is running on.
Return Values
1 if the function succeeds, 0 the function fails
Remarks
This call creates a circular buffer that gets filled in with RAW time stamp values that can then be evaluated by the user.
NOTE: Only one application should enable performance measuring at a time. You must call RtStopPerfMeasure to clean up the buffer allocated by RtStartPerfMeasure.
Requirements
Header | Rtapi.h |
Library | Rtx_Rtss.lib |
See Also: