Manak
2.0.0
|
Manak offers auto case and suite registation with a user friendly API. Auto registration can be done anywhere where manak.hpp is included. It cannot be inside any class or a function but it can be inside a namespace.
Simplest auto benchmark case registration -
Any auto registration registers the case or suite to the current suite. When no suite is set the current suite is set to master suite. So in the example above 'MANAK_AUTO_BENCHMARK_CASE' will register 'B1' to master suite.
When iteration, tolerance or success percentage is not specified for any benchmark case the default will be used. See MANAK_DEFAULT_ITERATIONS, MANAK_DEFAULT_TOLERANCE and MANAK_DEFAULT_SP for more details.
The library name is taken as default library name in the simple module. Check out Introduction for how to set default library name of simple module.
Creates a benchmark case with name, tolerance, iterations and success percentage, and registers it under the current suite.
Creates a benchmark case with name, tolerance and iterations, and registers it under the current suite. The success percentage is taken as the defaut value.
Creates a benchmark case with name, iterations and success percentage, and registers it under the current suite. The tolerance is taken as the default value.
Creates benchmark case with name and iterations, and registers it to the current benchmark suite. The tolerance and success percenatge is taken as default.
Creates benchmark case with name and tolerance, and registers it to the current benchmark suite. The value of iterations and success percentage is taken to be default.
Creates benchmark case with name, and registers it to the current benchmark suite. Iterations, tolerance and success percentage for the benchmark case are taken to be defaults.
'MANAK_ADD_CASE' can be used to register manually generated benchmark case. This is especially useful when written function needs to be added as benchmark case.
'MANAK_BENCHMARK_CASE' is a directive for manual registration. For more such directives see Manual Registration.
The function to be registered must have no parameters. The function with parameters can used to generate parametrized benchmark cases. See Complete guide on Parametrized Benchmarking for more information. Also see Advance Function Registration for registration of complex functions such as overloaded functions, template functions and class member functions.
Creates a new benchmarking suite with given name and registers it to the current benchmarking suite. It also sets the newly generated benchmarking suite as the current suite.
In the above example 'Suite1' will be registered under master suite and 'B1' will be registered under 'Suite1'.
Sets the current benchmark suite to the parent of current of benchmark suite.
In the above example 'B1' will be registered under 'Suite1' but 'B2' will be registered under master suite.
Creates a parametrized benchmark case with name, function, tolerance, iterations and success percentage. To register use 'MANAK_ADD_CASE'.
Creates a parametrized benchmark case with name, function, tolerance and iterations. To register use 'MANAK_ADD_CASE'. The value of success percentage is taken as constant.
Creates a parametrized benchmark case with name, function, iterations and success percentage. To register use 'MANAK_ADD_CASE'. The value of tolerance is taken as constant.
Creates a parametrized benchmark case with name, function and iterations. To register use 'MANAK_ADD_CASE'. The values of tolerance and success percentage are taken as constant.
Creates a parametrized benchmark case with name, function and tolerance. To register use 'MANAK_ADD_CASE'. The values of iterations and success percentage are taken as constant.
Creates a parametrized benchmark case with name and function. To register use 'MANAK_ADD_CASE'. The values of tolerance, iterations and success percentage are taken as constant.
For more advance parametrized benchmark options check Complete guide on Parametrized Benchmarking.
'MANAK_AUTO_GROUP' starts a group and registers the cases inside to current suite.
Add the manually created group to current suite. Accepts first argument as the group name with complete template specialization. After this any number of argument can be passed which will be directed to initialization of the group.
Create a benchmark case with name, tolerance, iterations and success percentage, and registers it automatically to the current group. Check out Tutorial on Using Groups for tutorial on advance group registration.
Create a benchmark case with name, tolerance and iterations, and registers it automatically to the current group. The value of success percentage is taken as default.
Create a benchmark case with name, iterations and success percentage, and registers it automatically to the current group. The value of tolerance is taken as default.
Create a benchmark case with name and iterations, and registers it automatically to the current group. The values of tolerance and success percentage are taken as default.
Create a benchmark case with name and tolerance, and registers it automatically to the current group. The values of iterations and success percentage are taken as default.
Create a benchmark case with name, and registers it automatically to the current group. The values of tolerance, iterations and success percentage are taken as default.
For tutorial on manak group check out Tutorial on Using Groups
Registers the given case to the current group.
Creates a parametrized benchmark case with name, function, tolerance, iterations and success percentage. Use 'MANAK_ADD_TO_GROUP' to register it to the current group.
Creates a parametrized benchmark case with name, function, tolerance and iterations. Use 'MANAK_ADD_TO_GROUP' to register it to the current group. The value of the success percentage is taken as default.
Creates a parametrized benchmark case with name, function, iterations and success percentage. Use 'MANAK_ADD_TO_GROUP' to register it to the current group. The value of tolerance is taken as default.
Creates a parametrized benchmark case with name, function and iterations. Use 'MANAK_ADD_TO_GROUP' to register it to the current group. The values of tolerance and success percentage are taken as default.
Creates a parametrized benchmark case with name, function and tolerance. Use 'MANAK_ADD_TO_GROUP' to register it to the current group. The values of iterations and success percentage are taken as default.
Creates a parametrized benchmark case with name and function. Use 'MANAK_ADD_TO_GROUP' to register it to the current group. The values of tolerance, iterations and success percentage are taken as default.
For example on simple module auto registration check Example.
Simplest auto benchmark case registration -
Any auto registration registers the case or suite to the current suite. When no suite is set the current suite is set to master suite. So in the example above 'MANAK_AUTO_BENCHMARK_CASE' will register 'B1' to master suite.
When iteration, tolerance or success percentage is not specified for any benchmark case the default will be used. See MANAK_DEFAULT_ITERATIONS, MANAK_DEFAULT_TOLERANCE and MANAK_DEFAULT_SP for more details.
Creates a benchmark case with name, library, tolerance, iterations and success percentage, and registers it under the current suite.
Creates a benchmark case with name, library, tolerance and iterations, and registers it under the current suite. The success percentage is taken as the defaut value.
Creates a benchmark case with name, iterations and success percentage, and registers it under the current suite. The tolerance is taken as the default value.
Creates benchmark case with name, library and iterations, and registers it to the current benchmark suite. The tolerance and success percenatge is taken as default.
Creates benchmark case with name, libray and tolerance, and registers it to the current benchmark suite. The value of iterations and success percentage is taken to be default.
Creates benchmark case with name, and registers it to the current benchmark suite. Iterations, tolerance and success percentage for the benchmark case are taken to be defaults.
'MANAK_ADD_CASE' can be used to register manually generated benchmark case. This is especially useful when written function needs to be added as benchmark case.
'MANAK_BENCHMARK_CASE' is a directive for manual registration. For more such directives see Manual Registration.
The function to be registered must have no parameters. The function with parameters can used to generate parametrized benchmark cases. See Complete guide on Parametrized Benchmarking for more information. Also see Advance Function Registration for registration of complex functions such as overloaded functions, template functions and class member functions.
Creates a new benchmarking suite with given name and registers it to the current benchmarking suite. It also sets the newly generated benchmarking suite as the current suite.
In the above example 'Suite1' will be registered under master suite and 'B1' will be registered under 'Suite1'.
Sets the current benchmark suite to the parent of current of benchmark suite.
In the above example 'B1' will be registered under 'Suite1' but 'B2' will be registered under master suite.
Creates a parametrized benchmark case with name, function, tolerance, iterations and success percentage. To register use 'MANAK_ADD_CASE'.
Creates a parametrized benchmark case with name, function, tolerance and iterations. To register use 'MANAK_ADD_CASE'. The value of success percentage is taken as constant.
Creates a parametrized benchmark case with name, function, iterations and success percentage. To register use 'MANAK_ADD_CASE'. The value of tolerance is taken as constant.
Creates a parametrized benchmark case with name, function and iterations. To register use 'MANAK_ADD_CASE'. The values of tolerance and success percentage are taken as constant.
Creates a parametrized benchmark case with name, function and tolerance. To register use 'MANAK_ADD_CASE'. The values of iterations and success percentage are taken as constant.
Creates a parametrized benchmark case with name and function. To register use 'MANAK_ADD_CASE'. The values of tolerance, iterations and success percentage are taken as constant.
For more advance parametrized benchmark options check Complete guide on Parametrized Benchmarking.
'MANAK_AUTO_GROUP' starts a group and registers the cases inside to current suite.
Add the manually created group to current suite. Accepts first argument as the group name with complete template specialization. After this any number of argument can be passed which will be directed to initialization of the group.
Create a benchmark case with name, tolerance, iterations and success percentage, and registers it automatically to the current group. Check out Tutorial on Using Groups for tutorial o advance group registration.
Create a benchmark case with name, tolerance and iterations, and registers it automatically to the current group. The value of success percentage is taken as default.
Create a benchmark case with name, iterations and success percentage, and registers it automatically to the current group. The value of tolerance is taken as default.
Create a benchmark case with name and iterations, and registers it automatically to the current group. The values of tolerance and success percentage are taken as default.
Create a benchmark case with name and tolerance, and registers it automatically to the current group. The values of iterations and success percentage are taken as default.
Create a benchmark case with name, and registers it automatically to the current group. The values of tolerance, iterations and success percentage are taken as default.
For tutorial on manak group check out Tutorial on Using Groups
Registers the given case to the current group.
Creates a parametrized benchmark case with name, function, tolerance, iterations and success percentage. Use 'MANAK_ADD_TO_GROUP' to register it to the current group.
Creates a parametrized benchmark case with name, function, tolerance and iterations. Use 'MANAK_ADD_TO_GROUP' to register it to the current group. The value of the success percentage is taken as default.
Creates a parametrized benchmark case with name, function, iterations and success percentage. Use 'MANAK_ADD_TO_GROUP' to register it to the current group. The value of tolerance is taken as default.
Creates a parametrized benchmark case with name, function and iterations. Use 'MANAK_ADD_TO_GROUP' to register it to the current group. The values of tolerance and success percentage are taken as default.
Creates a parametrized benchmark case with name, function and tolerance. Use 'MANAK_ADD_TO_GROUP' to register it to the current group. The values of iterations and success percentage are taken as default.
Creates a parametrized benchmark case with name and function. Use 'MANAK_ADD_TO_GROUP' to register it to the current group. The values of tolerance, iterations and success percentage are taken as default.
For example on normal module auto registration check Example.