Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
doku:time [2015/04/02 14:20] – [MPI_WTIME()] ir | doku:time [2015/04/17 11:45] (current) – [Hybrid OMP and MPI] ir | ||
---|---|---|---|
Line 5: | Line 5: | ||
[[http:// | [[http:// | ||
- | ==== MPI_WTIME() | + | ==== MPI internal functions ==== |
+ | |||
+ | === MPI_WTIME() === | ||
< | < | ||
double MPI_Wtime(void) | double MPI_Wtime(void) | ||
Line 26: | Line 28: | ||
otherwise its behavior is undefined. | otherwise its behavior is undefined. | ||
- | ==== MPI_WTICK() | + | === MPI_WTICK() === |
< | < | ||
DOUBLE PRECISION MPI_Wtick() BIND(C) | DOUBLE PRECISION MPI_Wtick() BIND(C) | ||
Line 32: | Line 34: | ||
MPI_WTICK returns the resolution of MPI_WTIME in seconds, i.e. the time between successive clock ticks given in seconds. | MPI_WTICK returns the resolution of MPI_WTIME in seconds, i.e. the time between successive clock ticks given in seconds. | ||
- | ==== omp_get_wtime | + | === Examples |
+ | In this {{: | ||
+ | There are two possibilities. Either a MPI_Barrier can be set before each time call. Then the time measured is the time needed that all MPI processes are finished. Or t1 and t2 are defined without a barrier, yielding the execution times for the individual processes. | ||
+ | ==== omp internal calls ==== | ||
+ | === omp_get_wtime | ||
c example: | c example: | ||
Line 48: | Line 54: | ||
gives the amount of time that the CPU is busy for a particular task from one call to the next. | gives the amount of time that the CPU is busy for a particular task from one call to the next. | ||
+ | ===== Hybrid OMP and MPI ====== | ||
+ | {{ : | ||
+ | {{ : | ||
+ | {{: | ||
+ | ====== Serial codes ====== | ||
==== fortran ==== | ==== fortran ==== | ||
< | < |