GLAST/LAT > DAQ and FSW > FSW > Doxygen Index > PBS / V2-10-6
Constituent: pbs     Tag: linux-gcc
Defines | |
#define | PTS_GETS() |
Macro to get the short range of the processor time. | |
#define | PTS_GETX() |
Macro to get the full extended range of the processor time. | |
#define | PTS_NSECS_TO_PTUS(_nsecs) PTS_nsecs_to_ptus(_nsecs) |
Converts a short range nanoseconds to a processor time. | |
#define | PTS_PTUS_TO_NSECS(_ptus) PTS_ptus_to_nsecs (_ptus) |
Converts a short range processor time to nanoseconds. | |
#define | PTS_DELTAS(_beg, _end) ((_end) - (_beg)) |
Subtracts two short range processor times. | |
#define | PTS_DELTAS_IN_NSECS(_beg, _end) |
Subtracts two short range processor times and converts the difference to nanoseconds. | |
#define | PTS_NSECX_TO_PTUX(_nsecx) PTS_nsecx_to_ptux(_nsecx) |
Converts an extended range nanoseconds to a processor time. | |
#define | PTS_PTUX_TO_NSECX(_ptux) PTS_ptux_to_nsecx (_ptux) |
Converts a extended range processor time to nanocseconds. | |
#define | PTS_DELTAX(_beg, _end) ((_end) - (_beg)) |
Subtracts two extended range processor times. | |
#define | PTS_DELTAX_IN_NSECX(_beg, _end) PTS_PTUX_TO_NSECX(PTS_DELTAX(_beg, _end)) |
Subtracts two extended range processor times and converts the difference to nanoseconds (64 bit result). | |
Typedefs | |
typedef signed long long | PTS_timex |
The typedef for declaring extended range processor time variables. | |
typedef unsigned int | PTS_times |
The typedef for declaring short range processor time variables. |
CVS $Id: PTS.h.xx-x86-gcc,v 1.4 2004/12/07 16:13:07 russell Exp $
The implementation is based on the on-board processor clock.
|
Subtracts two short range processor times.
|
|
Value: PTS_PTUS_TO_NSECS(PTS_DELTAS(_beg,\ _end))
|
|
Subtracts two extended range processor times.
|
|
Subtracts two extended range processor times and converts the difference to nanoseconds (64 bit result).
|
|
Value: ({ \ unsigned long long t; \ __asm__ volatile (".byte 0x0f,0x31" : "=A"(t)); \ (unsigned int)t; \ }) PTS_GETS() gets the short range of the processor time. This is is generally a 32-bit value, however, the exact representation is platform dependent. The user should use the typedef PTS_times to declare an short range processor time variable. This is implemented as a macro because its only value is to act as a low overhead method of timing short duration fragments of code. If one is timing long durations (where long is a platform dependent definition, but generally means greater than one second) PTS_GETX() is more appropriate. |
|
Value: ({ \ unsigned long long t; \ __asm__ volatile (".byte 0x0f,0x31" : "=A"(t)); \ t; \ }) PTS_GETX() gets the full extended range of the processor time. This is is generally a 64-bit value, however, the exact representation is platform dependent. The user should use the typedef PTS_timex to declare an extended range processor time variable. This is implemented as a macro because its only value is to act as a low overhead method of timing short duration fragments of code. See PTS_GETS() for the short version of getting the processor time. If one is timing short code segments (where short is a platform dependent definition, but generally means subsecond), PTS_GETS() is lower overhead. Be aware that PTS_GETX() is just an elapsed timer, so the timing long segments of code also includes any time that may elapse due to interrupt or task switching. |
|
Converts a short range nanoseconds to a processor time.
|
|
Converts an extended range nanoseconds to a processor time.
|
|
Converts a short range processor time to nanoseconds.
|
|
Converts a extended range processor time to nanocseconds.
|