IMP Reference Guide  develop.cd20b1e321,2019/12/14 The Integrative Modeling Platform
IMP::benchmark Namespace Reference

Support for developing and analyzing benchmarks of IMP code. More...

## Detailed Description

Support for developing and analyzing benchmarks of IMP code.

All benchmarks are automatically linked against this module.

# Info

Author(s): Daniel Russel

Maintainer: benmwebb

License: LGPL This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

Publications:

class  Profiler

## Functions

int get_return_value ()

void report (std::string benchmark, std::string algorithm, double time, double check)
Report a benchmark result in a standard way. More...

## Standard module functions

All IMP modules have a set of standard functions to help get information about the module and about files associated with the module.

std::string get_module_version ()

std::string get_module_name ()

std::string get_data_path (std::string file_name)
Return the full path to one of this module's data files. More...

std::string get_example_path (std::string file_name)
Return the full path to one of this module's example files. More...

## Function Documentation

 std::string IMP::benchmark::get_data_path ( std::string file_name )

Return the full path to one of this module's data files.

To read the data file "data_library" that was placed in the data directory of this module, do something like

std::ifstream in(IMP::benchmark::get_data_path("data_library"));

This will ensure that the code works both when IMP is installed or if used via the setup_environment.sh script.

Note
Each module has its own data directory, so be sure to use this function from the correct module.
 std::string IMP::benchmark::get_example_path ( std::string file_name )

Return the full path to one of this module's example files.

To read the example file "example_protein.pdb" that was placed in the examples directory of this module, do something like

std::ifstream in(IMP::benchmark::get_example_path("example_protein.pdb"));

This will ensure that the code works both when IMP is installed or if used via the setup_environment.sh script.

Note
Each module has its own example directory, so be sure to use this function from the correct module.
 void IMP::benchmark::report ( std::string benchmark, std::string algorithm, double time, double check )

Report a benchmark result in a standard way.

Parameters
 [in] benchmark the name of the benchmark being run [in] algorithm the name of the particular algorithm used to solve the problem [in] time the time it took (perhaps normalized) [in] check a check value to print out to see if the calculation was OK