fair-acc / gnuradio4

Prototype implementations for a more compile-time efficient flowgraph API
GNU Lesser General Public License v3.0
22 stars 8 forks source link

compile-time improvements - for_each std::tuple -> std::array #345

Closed RalphSteinhagen closed 1 month ago

RalphSteinhagen commented 1 month ago

Comparative timings for the qa_Scheduler unit-tests:

Before (full parallel build):

real    8m43.031s
user    51m13.146s
sys     2m13.891s

ClangBuildAnalyzer output for qa_scheduler before

After:

real    6m52.364s
user    42m5.309s
sys     1m41.661s

ClangBuildAnalyzer output for qa_scheduler after

Visualisation of the remaining traces: image

Some thoughts, ideas, and next steps:

raw -ftime-trace traces: qa_Scheduler.cpp.before.json.zip qa_Scheduler.cpp.after.json.zip

sonarcloud[bot] commented 1 month ago

Quality Gate Failed Quality Gate failed

Failed conditions
0.4% Coverage on New Code (required ≥ 80%)
16.0% Duplication on New Code (required ≤ 3%)

See analysis details on SonarCloud