---
name: "dis_cpu_time"
section: "7rheolef"
platform: "linux"
package: "librheolef-dev"
version: "7.2-4"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/dis_cpu_time"
---

# dis\_cpu\_time(7rheolef)

cumulated cpu for distributed computations (rheolef-7.2)

## NAME

dis\_cpu\_time - cumulated cpu for distributed computations (rheolef-7.2)

## 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
```

 See also **diststream(2)** for `derr`.

## DESCRIPTION

`dis_cpu_time`

 Returns the accumulated CPU for all processed linked together via the default communicator.

`seq_cpu_time`

 It is similar but returns the computing time per user for the current process only.

`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`

 It 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.

## IMPLEMENTATION

This documentation has been generated from file linalg/lib/dis\_cpu\_time.h

## AUTHOR

Pierre  Saramito  \<Pierre.Saramito@imag.fr\>

## 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.
