<feed xmlns='http://www.w3.org/2005/Atom'>
<title>catch3/src/catch2/benchmark/detail, branch v3.4.0</title>
<subtitle>Progmasoft Catch3: an independently maintained C++17 test framework with a parallel runner, property checks, snapshots and structured results.</subtitle>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/'/>
<entry>
<title>Internal linkage for outlier_variance</title>
<updated>2023-05-01T11:21:47+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2023-04-30T22:51:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=51fdbedd1337955bedc02b570bb2a7fb19061f2e'/>
<id>51fdbedd1337955bedc02b570bb2a7fb19061f2e</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Reduce compilation costs of benchmarks</title>
<updated>2023-05-01T11:21:41+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2023-04-10T13:03:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=fe64c28925d31292516ba0a172870e7deb3baad6'/>
<id>fe64c28925d31292516ba0a172870e7deb3baad6</id>
<content type='text'>
We replaced some simple std::algorithm usage by loops, and reduced
header inclusion.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We replaced some simple std::algorithm usage by loops, and reduced
header inclusion.
</pre>
</div>
</content>
</entry>
<entry>
<title>Clean up iterator usage in benchmarks</title>
<updated>2023-05-01T11:21:36+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2023-04-20T20:47:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=7d07efc92b626da9d03223a3b5cfd5f80b7cc377'/>
<id>7d07efc92b626da9d03223a3b5cfd5f80b7cc377</id>
<content type='text'>
Specifically we turned `mean`, `classify_outliers`, `jackknife`,
into concrete functions that take only `const_iterator` from vecs,
instead of generic iterators over anything.

I also changed `resample` to take `const_iterator` instead of
plain `iterator`, and similar for `standard_deviation`, and
`analyse_samples`.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Specifically we turned `mean`, `classify_outliers`, `jackknife`,
into concrete functions that take only `const_iterator` from vecs,
instead of generic iterators over anything.

I also changed `resample` to take `const_iterator` instead of
plain `iterator`, and similar for `standard_deviation`, and
`analyse_samples`.
</pre>
</div>
</content>
</entry>
<entry>
<title>Constexprify constants in estimate_clock.hpp</title>
<updated>2023-05-01T11:21:33+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2023-04-20T18:56:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=f3c678c0ab2afd5511d6ea4ff82ad3c5349312c0'/>
<id>f3c678c0ab2afd5511d6ea4ff82ad3c5349312c0</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Cleanup internal includes by splitting out some event structs</title>
<updated>2023-03-31T17:31:51+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2023-03-31T08:44:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=9f08097f55eb29a61efcdb4af41952a67e155215'/>
<id>9f08097f55eb29a61efcdb4af41952a67e155215</id>
<content type='text'>
* Split out BenchmarkInfo and BenchmarkStats to their own header
* Outline BenchmarkStats&lt;&gt; declaration to separate header
* Split out TestRunInfo into its own header

These changes let us remove the large `interfaces_reporter.hpp`
include from `benchmark.hpp`, and replace it with
`interfaces_capture.hpp` in `run_context.hpp`.

I also cleaned out `interfaces_repoter.hpp` from reporter headers
that depend on `reporter_common_base.hpp`. This will not change
anything in the actual inclusion set, but makes it logically
more consistent.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Split out BenchmarkInfo and BenchmarkStats to their own header
* Outline BenchmarkStats&lt;&gt; declaration to separate header
* Split out TestRunInfo into its own header

These changes let us remove the large `interfaces_reporter.hpp`
include from `benchmark.hpp`, and replace it with
`interfaces_capture.hpp` in `run_context.hpp`.

I also cleaned out `interfaces_repoter.hpp` from reporter headers
that depend on `reporter_common_base.hpp`. This will not change
anything in the actual inclusion set, but makes it logically
more consistent.
</pre>
</div>
</content>
</entry>
<entry>
<title>Cleanup benchmarking includes</title>
<updated>2023-03-23T10:59:40+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2023-03-23T10:59:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=b3ebce715e9686f664e2756043a4c0e0e387a112'/>
<id>b3ebce715e9686f664e2756043a4c0e0e387a112</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix references to license file</title>
<updated>2022-10-28T09:30:15+00:00</updated>
<author>
<name>Lars Toenning</name>
</author>
<published>2022-10-28T09:22:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=f1084fb30990fe40c8f5b70034970c7eb4e1da72'/>
<id>f1084fb30990fe40c8f5b70034970c7eb4e1da72</id>
<content type='text'>
The license file was renamed with 6a502cc2f5fedd59b3495b58708f0d6d987ed9e1
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The license file was renamed with 6a502cc2f5fedd59b3495b58708f0d6d987ed9e1
</pre>
</div>
</content>
</entry>
<entry>
<title>Split apart combined TUs</title>
<updated>2022-06-21T16:48:44+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2022-06-21T14:19:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=8730260457ddbd19f3df70c53931934398fc54d7'/>
<id>8730260457ddbd19f3df70c53931934398fc54d7</id>
<content type='text'>
The compile time improvements from using combined TUs mostly isn't
worth the annoyance they cause with various IDE shortcuts, like
when switching between header and its impl. file.

Splitting them apart also fixes the issue of empty subdirs being
installed due to `foo/internal` folders that only contained the
combined TUs and no headers.

Closes #2457
Closes #2463
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The compile time improvements from using combined TUs mostly isn't
worth the annoyance they cause with various IDE shortcuts, like
when switching between header and its impl. file.

Splitting them apart also fixes the issue of empty subdirs being
installed due to `foo/internal` folders that only contained the
combined TUs and no headers.

Closes #2457
Closes #2463
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix implicit long to double conversion</title>
<updated>2022-06-06T22:27:37+00:00</updated>
<author>
<name>Joe Noël</name>
</author>
<published>2022-06-06T14:36:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=d0177ee68607e7298869807bfcd20c080512185f'/>
<id>d0177ee68607e7298869807bfcd20c080512185f</id>
<content type='text'>
Raises a compiler warning when compiled with `-Wimplicit-int-float-conversion` using clang.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Raises a compiler warning when compiled with `-Wimplicit-int-float-conversion` using clang.</pre>
</div>
</content>
</entry>
<entry>
<title>Add Wfloat-equal to default-enabled warnings</title>
<updated>2022-05-14T13:47:20+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2022-05-14T13:37:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=fc3d11b1d1090a5bcbcc9e410a460f9bf6a1f474'/>
<id>fc3d11b1d1090a5bcbcc9e410a460f9bf6a1f474</id>
<content type='text'>
This is kinda messy, because there is no good way to signal to
the compiler that some code uses direct comparison of floating
point numbers intentionally, so instead we have to use diagnostic
pragmas.

We also have to over-suppress the test files, because Clang (and
possibly GCC) still issue warnings from template instantiation
even if the instantion site is under warning suppression, so the
template definition has to be under warning suppression as well.

Closes #2406
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is kinda messy, because there is no good way to signal to
the compiler that some code uses direct comparison of floating
point numbers intentionally, so instead we have to use diagnostic
pragmas.

We also have to over-suppress the test files, because Clang (and
possibly GCC) still issue warnings from template instantiation
even if the instantion site is under warning suppression, so the
template definition has to be under warning suppression as well.

Closes #2406
</pre>
</div>
</content>
</entry>
</feed>
