testquark 0.1.0
Benchmarking for D
To use this package, run the following command in your project's root directory:
Manual usage
Put the following dependency into your project's dependences section:
testquark
This is a benchmarking framework. Use as follows
int[] generate(size_t x) ///Sanity cheque!
out(v; v.length == x)
{
auto tmp = new int[x];
foreach (ref i; tmp)
{
import std.random;
i = uniform(int.min, int.max);
}
return tmp;
}
// V You specify the range over which to test here
@Parameterizer("Measure [our new favourite] sorting algorithm", iota(1, 300), &generate)
// ^ Generate your own data, e.g. array[N]
int[] sort(int[] data)
// ^Generic, but built for arrays
{
import std.algorithm : sort;
return data.sort.array;
}
//This is then triggered elsewhere, i.e.
//mixin BenchmarkInfrastructure!(No.Expose);
You will soon be able to use benchquark to measure performance counters of your benchmarks (e.g. cache, Instructions executed and
what the branch predictors been up to) by choosing Yes.Expose
Using PAPI:
Pass Yes.UsePapi to runAndPrint(). You must link PAPI 5 in some way, i.e. in "libs" in dub.json or `pragma(lib, "papi")'.
PAPI 5 can be obtained through apt.
- Registered by Max Haughton
- 0.1.0 released 5 years ago
- maxhaton/testquark
- GPLv3
- Copyright © 2019, mhh__
- Authors:
- Dependencies:
- dstats
- Versions:
-
0.1.0 2019-Dec-23 0.0.1 2019-Dec-21 ~master 2019-Dec-23 - Download Stats:
-
-
0 downloads today
-
0 downloads this week
-
0 downloads this month
-
17 downloads total
-
- Score:
- 0.5
- Short URL:
- testquark.dub.pm