OpenMPI
0.1.1
Main Page
Related Pages
Modules
Data Structures
Files
File List
Globals
timer.h
1
/*
2
* Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana
3
* University Research and Technology
4
* Corporation. All rights reserved.
5
* Copyright (c) 2004-2005 The University of Tennessee and The University
6
* of Tennessee Research Foundation. All rights
7
* reserved.
8
* Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
9
* University of Stuttgart. All rights reserved.
10
* Copyright (c) 2004-2005 The Regents of the University of California.
11
* All rights reserved.
12
* $COPYRIGHT$
13
*
14
* Additional copyrights may follow
15
*
16
* $HEADER$
17
*/
18
19
#ifndef OMPI_SYS_ARCH_TIMER_H
20
#define OMPI_SYS_ARCH_TIMER_H 1
21
22
23
typedef
uint64_t opal_timer_t;
24
25
26
#if OMPI_GCC_INLINE_ASSEMBLY
27
28
static
inline
opal_timer_t
29
opal_sys_timer_get_cycles(
void
)
30
{
31
unsigned
int
tbl, tbu0, tbu1;
32
33
do
{
34
__asm__ __volatile__ (
"mftbu %0"
:
"=r"
(tbu0));
35
__asm__ __volatile__ (
"mftb %0"
:
"=r"
(tbl));
36
__asm__ __volatile__ (
"mftbu %0"
:
"=r"
(tbu1));
37
}
while
(tbu0 != tbu1);
38
39
return
(((
unsigned
long
long
)tbu0) << 32) | tbl;
40
}
41
42
#define OPAL_HAVE_SYS_TIMER_GET_CYCLES 1
43
44
#else
45
46
opal_timer_t opal_sys_timer_get_cycles(
void
);
47
48
#define OPAL_HAVE_SYS_TIMER_GET_CYCLES 1
49
50
#endif
/* OMPI_GCC_INLINE_ASSEMBLY */
51
52
#endif
/* ! OMPI_SYS_ARCH_TIMER_H */
opal
include
opal
sys
powerpc
timer.h
Generated on Wed Dec 24 2014 12:05:26 for OpenMPI by
1.8.8