summaryrefslogtreecommitdiff
path: root/cputime.h
diff options
context:
space:
mode:
authorzimmerma <zimmerma@280ebfd0-de03-0410-8827-d642c229c3f4>2000-06-07 09:50:41 +0000
committerzimmerma <zimmerma@280ebfd0-de03-0410-8827-d642c229c3f4>2000-06-07 09:50:41 +0000
commit13b67119467d43eac919a254799d42b2ea05ff7f (patch)
treeb4f449bbeb98d6b612ff3e69c7b35980ffc43ee3 /cputime.h
parent20f1ad61b1233df8b9e0bd7c3542d8e4c1d68ecf (diff)
downloadmpfr-13b67119467d43eac919a254799d42b2ea05ff7f.tar.gz
header file providing cputime() function
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@604 280ebfd0-de03-0410-8827-d642c229c3f4
Diffstat (limited to 'cputime.h')
-rw-r--r--cputime.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/cputime.h b/cputime.h
new file mode 100644
index 000000000..3aecf4f82
--- /dev/null
+++ b/cputime.h
@@ -0,0 +1,22 @@
+/* Return user CPU time measured in milliseconds. Thanks to Torbjorn. */
+#if defined (ANSIONLY) || defined (USG) || defined (__SVR4) || defined (_UNICOS) || defined(__hpux)
+#include <time.h>
+
+int
+cputime ()
+{
+ return (int) ((double) clock () * 1000 / CLOCKS_PER_SEC);
+}
+#else
+#include <sys/types.h>
+#include <sys/resource.h>
+
+int
+cputime ()
+{
+ struct rusage rus;
+
+ getrusage (0, &rus);
+ return rus.ru_utime.tv_sec * 1000 + rus.ru_utime.tv_usec / 1000;
+}
+#endif