2005-08-18 09:34:22 +04:00
|
|
|
/*
|
2005-11-05 22:57:48 +03:00
|
|
|
* Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana
|
|
|
|
* University Research and Technology
|
|
|
|
* Corporation. All rights reserved.
|
|
|
|
* Copyright (c) 2004-2005 The University of Tennessee and The University
|
|
|
|
* of Tennessee Research Foundation. All rights
|
|
|
|
* reserved.
|
2005-08-18 09:34:22 +04:00
|
|
|
* Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
|
|
|
|
* University of Stuttgart. All rights reserved.
|
|
|
|
* Copyright (c) 2004-2005 The Regents of the University of California.
|
|
|
|
* All rights reserved.
|
|
|
|
* $COPYRIGHT$
|
|
|
|
*
|
|
|
|
* Additional copyrights may follow
|
|
|
|
*
|
|
|
|
* $HEADER$
|
|
|
|
*/
|
|
|
|
|
|
|
|
#include "ompi_config.h"
|
|
|
|
|
|
|
|
#include <unistd.h>
|
|
|
|
|
|
|
|
#include "opal/runtime/opal.h"
|
|
|
|
#include "opal/mca/timer/base/base.h"
|
|
|
|
|
|
|
|
int
|
|
|
|
main(int argc, char *argv[])
|
|
|
|
{
|
|
|
|
opal_timer_t start, end, diff;
|
|
|
|
|
2010-02-10 21:29:01 +03:00
|
|
|
opal_init(&argc, &argv);
|
2005-08-18 09:34:22 +04:00
|
|
|
|
|
|
|
printf("--> frequency: %llu\n", (unsigned long long) opal_timer_base_get_freq());
|
|
|
|
|
2005-08-22 01:37:28 +04:00
|
|
|
#if OPAL_TIMER_CYCLE_SUPPORTED
|
2005-08-18 09:34:22 +04:00
|
|
|
printf("--> cycle count\n");
|
|
|
|
start = opal_timer_base_get_cycles();
|
|
|
|
start = opal_timer_base_get_cycles();
|
|
|
|
sleep(1);
|
|
|
|
end = opal_timer_base_get_cycles();
|
|
|
|
diff = end - start;
|
|
|
|
printf(" Slept approximately %llu cycles, or %llu us\n",
|
|
|
|
(unsigned long long) diff,
|
|
|
|
(unsigned long long) ((diff * 1000000) / opal_timer_base_get_freq()));
|
2005-08-22 01:37:28 +04:00
|
|
|
#else
|
|
|
|
printf("--> cycle count not supported\n");
|
|
|
|
#endif
|
2005-08-18 09:34:22 +04:00
|
|
|
|
2005-08-22 01:37:28 +04:00
|
|
|
#if OPAL_TIMER_USEC_SUPPORTED
|
2005-08-18 09:34:22 +04:00
|
|
|
printf("--> usecs\n");
|
|
|
|
start = opal_timer_base_get_usec();
|
|
|
|
sleep(1);
|
|
|
|
end = opal_timer_base_get_usec();
|
|
|
|
diff = end - start;
|
|
|
|
printf(" Slept approximately %llu us\n", (unsigned long long) diff);
|
2005-08-22 01:37:28 +04:00
|
|
|
#else
|
|
|
|
printf("--> usec timer not supported\n");
|
|
|
|
#endif
|
2005-08-18 09:34:22 +04:00
|
|
|
|
|
|
|
opal_finalize();
|
|
|
|
|
|
|
|
return 0;
|
|
|
|
}
|