NAME¶
dis_cpu_time, dis_wall_time, seq_cpu_time,
seq_walltime -- Time in seconds since an arbitrary time in the past.
SYNOPSIS¶
double dis_cpu_time();
double dis_wall_time();
double seq_cpu_time();
double seq_wall_time();
EXAMPLE¶
double t_start = dis_wall_time();
//.... stuff to be timed ...
double t_end = dis_wall_time();
derr << "That took " << t_end - t_start << " seconds" << endl
double cpu_start = dis_cpu_time();
//.... stuff to be timed ...
double cpu_end = dis_cpu_time();
derr << "That needs " << cpu_end - cpu_start << " CPU seconds" << endl
DESCRIPTION¶
dis_wall_time returns a floating-point number of seconds, representing
elapsed wall-clock time since some time in the past. The time in the
past is guaranteed not to change during the life of the process. The user
is responsible for converting large numbers of seconds to other units if they
are preferred. This function is portable (it returns seconds, not
ticks), it allows high resolution, and carries no unnecessary baggage.
In a distributed environment, dis_wall_time clocks are synchronized:
different nodes return the same time value at the same instant.
seq_wall_time is similar but the time returned is local to the node
that called them and clocks are not synchronized: in a distributed
environment, different nodes can return different local times, at different
instant when the call to seq_wall_time is reached.
seq_cpu_time is similar but returns the computing time per
user for the current process. dis_cpu_time returns the accumulated
CPU for all processed linked together via the default communicator.
COPYRIGHT¶
Copyright (C) 2000-2018 Pierre Saramito <Pierre.Saramito@imag.fr> GPLv3+:
GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>. This is
free software: you are free to change and redistribute it. There is NO
WARRANTY, to the extent permitted by law.