The Gaudi Framework  v38r0 (2143aa4c)
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
Timers.h
Go to the documentation of this file.
1 /***********************************************************************************\
2 * (c) Copyright 1998-2020 CERN for the benefit of the LHCb and ATLAS collaborations *
3 * *
4 * This software is distributed under the terms of the Apache version 2 licence, *
5 * copied verbatim in the file "LICENSE". *
6 * *
7 * In applying this licence, CERN does not waive the privileges and immunities *
8 * granted to it by virtue of its status as an Intergovernmental Organization *
9 * or submit itself to any jurisdiction. *
10 \***********************************************************************************/
11 #pragma once
12 
14 #ifdef __x86_64__
15 # include "Gaudi/Timers/RdtscClock.h"
16 #endif // __x86_64__
17 
18 #include <chrono>
19 
20 namespace Gaudi {
26  using Timer = Timers::GenericTimer<std::chrono::high_resolution_clock, std::chrono::microseconds>;
27 
34 #ifdef __x86_64__
35  using FastTimer = Timers::GenericTimer<Timers::RdtscClock<std::chrono::microseconds>, std::chrono::microseconds>;
36 #else
37  using FastTimer = Timers::GenericTimer<std::chrono::high_resolution_clock, std::chrono::microseconds>;
38 #endif // __x86_64__
39 } // namespace Gaudi
std::chrono::microseconds
GenericTimer.h
Gaudi::Timer
Timers::GenericTimer< std::chrono::high_resolution_clock, std::chrono::microseconds > Timer
Default timer using a standard clock with microsecond precision.
Definition: Timers.h:26
Gaudi
Header file for std:chrono::duration-based Counters.
Definition: __init__.py:1
Gaudi::FastTimer
Timers::GenericTimer< std::chrono::high_resolution_clock, std::chrono::microseconds > FastTimer
Fast RDTSC-based timer with microsecond precision.
Definition: Timers.h:37
RdtscClock.h