#include <stdlib.h>#include "portability.h"
Go to the source code of this file.
Functions | |
| double | walltime (void) |
| double | usertime (void) |
| double usertime | ( | void | ) |
Gets user time since last call. Currently this only works if the system has getrusage(). otherwise it's just like walltime().
Definition at line 39 of file walltime.c.
{
#ifdef HAVE_GETRUSAGE
struct rusage ru;
static long start=0, startu;
static int first=1;
if(first) {
first = 0;
getrusage(RUSAGE_SELF, &ru);
start = ru.ru_utime.tv_sec;
startu = ru.ru_utime.tv_usec;
return 0.0;
}
getrusage(RUSAGE_SELF, &ru);
return( ((double) (ru.ru_utime.tv_sec - start)) + (ru.ru_utime.tv_usec-startu)/1000000.0 );
#else
return walltime();
#endif
}


| double walltime | ( | void | ) |
Gets wall time since last call.
Definition at line 16 of file walltime.c.
{
struct timeval tp;
static long start=0, startu;
if (!start)
{
gettimeofday(&tp, NULL);
start = tp.tv_sec;
startu = tp.tv_usec;
return(0.0);
}
gettimeofday(&tp, NULL);
return( ((double) (tp.tv_sec - start)) + (tp.tv_usec-startu)/1000000.0 );
}

1.6.3-20100507