Note: this is documentation for an old release. View the latest documentation at docs.fenicsproject.org/v0.3.0/v0.9.0/cpp
DOLFINx  0.3.0
DOLFINx C++ interface
timing.h
1 // Copyright (C) 2005-2010 Anders Logg, 2015 Jan Blechta
2 //
3 // This file is part of DOLFINx (https://www.fenicsproject.org)
4 //
5 // SPDX-License-Identifier: LGPL-3.0-or-later
6 
7 #pragma once
8 
9 #include <dolfinx/common/Table.h>
10 #include <mpi.h>
11 #include <set>
12 #include <string>
13 #include <tuple>
14 
15 namespace dolfinx
16 {
17 
22 enum class TimingType : std::int32_t
23 {
24  wall = 0,
25  user = 1,
26  system = 2
27 };
28 
33 Table timings(std::set<TimingType> type);
34 
40 void list_timings(MPI_Comm comm, std::set<TimingType> type);
41 
47 std::tuple<std::size_t, double, double, double> timing(std::string task);
48 
49 } // namespace dolfinx