Copyright (C) 2000-2012 |
GNU Info (libc.info)CPU TimeCPU Time Inquiry ---------------- To get a process' CPU time, you can use the `clock' function. This facility is declared in the header file `time.h'. In typical usage, you call the `clock' function at the beginning and end of the interval you want to time, subtract the values, and then divide by `CLOCKS_PER_SEC' (the number of clock ticks per second) to get processor time, like this: #include <time.h> clock_t start, end; double cpu_time_used; start = clock(); ... /* Do the work. */ end = clock(); cpu_time_used = ((double) (end - start)) / CLOCKS_PER_SEC; Do not use a single CPU time as an amount of time; it doesn't work that way. Either do a subtraction as shown above or query processor time directly. Note: Processor Time. Different computers and operating systems vary wildly in how they keep track of CPU time. It's common for the internal processor clock to have a resolution somewhere between a hundredth and millionth of a second. - Macro: int CLOCKS_PER_SEC The value of this macro is the number of clock ticks per second measured by the `clock' function. POSIX requires that this value be one million independent of the actual resolution. - Macro: int CLK_TCK This is an obsolete name for `CLOCKS_PER_SEC'. - Data Type: clock_t This is the type of the value returned by the `clock' function. Values of type `clock_t' are numbers of clock ticks. - Function: clock_t clock (void) This function returns the calling process' current CPU time. If the CPU time is not available or cannot be represented, `clock' returns the value `(clock_t)(-1)'. automatically generated by info2www version 1.2.2.9 |