gethrtime() — get high resolution time
function returns the current high-resolution
real time. Time is expressed as nanoseconds since a certain
time in the past. This API uses a fast light weight
system call to get the nanoseconds from a certain time. It
is not correlated in any way to the time of day. This API is
used for performance measurement tasks and is used for cheap and
accurate interval timing.
signed 64-bit number.
Upon successful completion,
returns a number of nanoseconds.
Otherwise, a value of -1 is returned.
This API will only be available if the application is being
compiled in -Ae mode (extended ANSI) because 64-bit integer numbers are not
available in -Aa (ANSI) mode. Please refer
The following code fragment measures the average cost of
hrtime_t begin, end;
int i, count = 1000;
begin = gethrtime();
for (i = 0; i < count; i++)
end = gethrtime();
printf("Avg getgid() time = %lld nsec", (end - begin)/count );