COIN-OR::LEMON - Graph Library

source: lemon-benchmark/tests/benchmark_tools.h @ 13:0ab493e5250e

tip
Last change on this file since 13:0ab493e5250e was 13:0ab493e5250e, checked in by Alpar Juttner <alpar@…>, 7 years ago

Add build id field to running time logs

Configurable by BENCHMARK_BUILD_ID cmake variable,
which defaults to the last component of the build directory.

File size: 1.5 KB
Line 
1/* -*- mode: C++; indent-tabs-mode: nil; -*-
2 *
3 * This file is a part of LEMON, a generic C++ optimization library.
4 *
5 * Copyright (C) 2003-2011
6 * Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport
7 * (Egervary Research Group on Combinatorial Optimization, EGRES).
8 *
9 * Permission to use, modify and distribute this software is granted
10 * provided that this copyright notice appears in all copies. For
11 * precise terms see the accompanying LICENSE file.
12 *
13 * This software is provided "AS IS" with no warranty of any kind,
14 * express or implied, and with no claim as to its suitability for any
15 * purpose.
16 *
17 */
18
19#ifndef BENCHMARK_TOOLS_H
20#define BENCHMARK_TOOLS_H
21
22#include<string>
23#include<iostream>
24#include<iomanip>
25#include<lemon/time_measure.h>
26
27extern std::string test_name;
28extern std::string instance_name;
29
30extern const std::string DATADIR_PATH;
31extern const std::string BENCHMARK_BUILD_ID;
32
33inline void logTime(const std::string &_instance_name,
34                    const std::string &subtest_name,
35                    const lemon::TimeStamp &time)
36{
37  std::cout << "*** " << BENCHMARK_BUILD_ID
38            << ' ' << test_name
39            << ' ' << _instance_name
40            << ' ' << subtest_name
41            << ' ' << std::setiosflags(std::ios::fixed) << std::setprecision(4)
42            << time.realTime() << ' '
43            << time.realTime()/(time.userTime()+time.systemTime()) - 1.0
44            << std::endl;
45}
46
47inline void logTime(const std::string &subtest_name,
48                    const lemon::TimeStamp &time)
49{
50  logTime(instance_name,subtest_name,time);
51}
52
53#endif
Note: See TracBrowser for help on using the repository browser.