char *cvsinfo_timing = "cvsinfo: $Header: /home/cvsuser/cvsroot/JSOC/proj/globalhs/apps/timing.c,v 1.2 2013/04/28 07:58:43 tplarson Exp $"; double getwalltime(void) { struct timeval tv; gettimeofday(&tv, NULL); return tv.tv_sec * 1000.0 + tv.tv_usec/1000.0; } double getcputime(double *utime, double *stime) { struct rusage ru; getrusage(RUSAGE_SELF, &ru); *utime = ru.ru_utime.tv_sec * 1000.0 + ru.ru_utime.tv_usec/1000.0; *stime = ru.ru_stime.tv_sec * 1000.0 + ru.ru_stime.tv_usec/1000.0; return *utime + *stime; }