Skip to content
Michael Klimenko edited this page Jul 11, 2021 · 14 revisions

Top-5 STL headers compilation impact

Header Time, ms Relative slowdown
regex 1543.9 241.234
execution 1270.8 198.562
valarray 1031.1 161.109
filesystem 970.6 151.656
future 858.9 134.203

Top-5 Boost headers compilation impact

Header Time, ms Relative slowdown
boost/spirit/include/qi.hpp 9071.3 1417.39
boost/process.hpp 7441.2 1162.69
boost/phoenix.hpp 7032.5 1098.83
boost/geometry.hpp 6901.1 1078.3
boost/beast.hpp 5545.7 866.516

STL headers compilation impact

Header Time, ms Relative slowdown
algorithm 698.9 109.203
any 81.9 12.7969
array 429.8 67.1562
atomic 73 11.4062
baseline.hpp 6.4 1
bitset 405.2 63.3125
cassert 8.9 1.39062
cctype 13.3 2.07812
cerrno 9.3 1.45312
cfenv 10.5 1.64062
cfloat 10.7 1.67187
charconv 78.6 12.2812
chrono 128.4 20.0625
cinttypes 14.6 2.28125
climits 8.3 1.29688
clocale 7.9 1.23438
cmath 318.5 49.7656
codecvt 398.7 62.2969
complex 783 122.344
condition_variable 612.1 95.6406
csetjmp 10.8 1.6875
csignal 17 2.65625
cstdarg 9.3 1.45312
cstddef 14.9 2.32812
cstdint 8.7 1.35937
cstdio 14.1 2.20312
cstdlib 20.4 3.1875
cstring 14.3 2.23438
ctime 14.6 2.28125
cuchar 13.7 2.14062
cwchar 20.9 3.26562
cwctype 11.2 1.75
deque 133.9 20.9219
exception 62.5 9.76562
execution 1270.8 198.562
filesystem 970.6 151.656
forward_list 145 22.6562
fstream 624 97.5
functional 680.2 106.281
future 858.9 134.203
initializer_list 12.6 1.96875
iomanip 762.3 119.109
ios 497.3 77.7031
iosfwd 21.4 3.34375
iostream 559.9 87.4844
istream 503 78.5938
iterator 565 88.2812
limits 31.2 4.875
list 122.6 19.1562
locale 628.9 98.2656
map 479.2 74.875
memory 527.3 82.3906
memory_resource 676.3 105.672
mutex 517.6 80.875
new 53.9 8.42188
numeric 70.5 11.0156
optional 410.7 64.1719
ostream 516.2 80.6562
queue 218.8 34.1875
random 784.6 122.594
ratio 66.2 10.3438
regex 1543.9 241.234
scoped_allocator 495.8 77.4688
set 523.9 81.8594
shared_mutex 575.4 89.9062
sstream 564.5 88.2031
stack 175.4 27.4062
stdexcept 389.5 60.8594
streambuf 393.2 61.4375
string 402.6 62.9062
string_view 158.1 24.7031
strstream 575.6 89.9375
system_error 394.9 61.7031
thread 596.4 93.1875
tuple 425.5 66.4844
type_traits 52.4 8.1875
typeindex 13.3 2.07812
typeinfo 9.2 1.4375
unordered_map 571.2 89.25
unordered_set 559.8 87.4687
utility 76.8 12
valarray 1031.1 161.109
variant 149.5 23.3594
vector 183.7 28.7031

Boost headers compilation impact

Header Time, ms Relative slowdown
boost/accumulators/accumulators.hpp 3298 515.312
boost/algorithm/algorithm.hpp 721.2 112.688
boost/align.hpp 553.3 86.4531
boost/any.hpp 1523.9 238.109
boost/array.hpp 912.3 142.547
boost/asio.hpp 4032.4 630.062
boost/assert.hpp 9.7 1.51562
boost/assign.hpp 1861.3 290.828
boost/atomic.hpp 237.2 37.0625
boost/beast.hpp 5545.7 866.516
boost/bimap.hpp 3078 480.938
boost/bind/bind.hpp 969.2 151.438
boost/call_traits.hpp 42.1 6.57812
boost/callable_traits.hpp 720.7 112.609
boost/chrono.hpp 1836.8 287
boost/circular_buffer.hpp 1536.1 240.016
boost/compressed_pair.hpp 749.6 117.125
boost/concept_check.hpp 947.6 148.062
boost/config.hpp 37.2 5.8125
boost/container/flat_map.hpp 488.8 76.375
boost/container/flat_set.hpp 494.9 77.3281
boost/container/slist.hpp 287.1 44.8594
boost/container/small_vector.hpp 324 50.625
boost/container/stable_vector.hpp 407 63.5938
boost/container/static_vector.hpp 286.3 44.7344
boost/container_hash/hash.hpp 1542.1 240.953
boost/contract.hpp 4427.2 691.75
boost/convert.hpp 1572 245.625
boost/coroutine/all.hpp 2588.1 404.391
boost/coroutine2/all.hpp 1429.2 223.312
boost/crc.hpp 934 145.938
boost/date_time.hpp 4340.8 678.25
boost/dll.hpp 2245.1 350.797
boost/dynamic_bitset.hpp 1706.2 266.594
boost/exception/all.hpp 1833.8 286.531
boost/fiber/all.hpp 2415.1 377.359
boost/filesystem.hpp 1965.6 307.125
boost/flyweight.hpp 2712.1 423.766
boost/foreach.hpp 859.1 134.234
boost/format.hpp 1530.1 239.078
boost/function.hpp 1981.7 309.641
boost/function_types/function_type.hpp 626.1 97.8281
boost/functional.hpp 707.4 110.531
boost/fusion/sequence.hpp 1992.1 311.266
boost/geometry.hpp 6901.1 1078.3
boost/gil.hpp 2320.1 362.516
boost/graph/graph_traits.hpp 1568.7 245.109
boost/hana.hpp 492.9 77.0156
boost/heap/pairing_heap.hpp 2188.4 341.938
boost/histogram.hpp 1754.1 274.078
boost/hof.hpp 1471.4 229.906
boost/icl/interval.hpp 1711.4 267.406
boost/integer.hpp 91.5 14.2969
boost/intrusive_ptr.hpp 742.7 116.047
boost/iterator.hpp 601.4 93.9687
boost/json.hpp 2522.3 394.109
boost/lambda/lambda.hpp 1612.9 252.016
boost/lexical_cast.hpp 2196.8 343.25
boost/local_function.hpp 2627.3 410.516
boost/locale.hpp 2517.4 393.344
boost/lockfree/queue.hpp 1718.7 268.547
boost/log/core/core.hpp 1756.2 274.406
boost/metaparse.hpp 3588 560.625
boost/multi_array.hpp 2127.3 332.391
boost/multi_index_container.hpp 1781.1 278.297
boost/multiprecision/integer.hpp 3821.4 597.094
boost/numeric/interval.hpp 995 155.469
boost/operators.hpp 604.5 94.4531
boost/optional.hpp 998.1 155.953
boost/outcome.hpp 2526.8 394.812
boost/parameter.hpp 1352.6 211.344
boost/pfr.hpp 1080.5 168.828
boost/phoenix.hpp 7032.5 1098.83
boost/poly_collection/any_collection.hpp 1853.9 289.672
boost/polygon/polygon.hpp 2491.3 389.266
boost/pool/pool.hpp 770.1 120.328
boost/preprocessor.hpp 123.8 19.3438
boost/process.hpp 7441.2 1162.69
boost/program_options.hpp 3244.5 506.953
boost/property_map/property_map.hpp 1545 241.406
boost/property_tree/ptree.hpp 2861.2 447.062
boost/proto/proto.hpp 3213.2 502.062
boost/qvm/all.hpp 1710 267.188
boost/random.hpp 2144.3 335.047
boost/range.hpp 1724.8 269.5
boost/ratio.hpp 667.9 104.359
boost/rational.hpp 1044 163.125
boost/ref.hpp 38.4 6
boost/regex.hpp 1774.4 277.25
boost/safe_numerics/safe_integer.hpp 1147.7 179.328
boost/scope_exit.hpp 2009.9 314.047
boost/serialization/serialization.hpp 641.1 100.172
boost/signals2.hpp 3705 578.906
boost/smart_ptr.hpp 939.9 146.859
boost/sort/sort.hpp 1916.3 299.422
boost/spirit/home/x3.hpp 3567.8 557.469
boost/spirit/include/classic.hpp 2450.7 382.922
boost/spirit/include/qi.hpp 9071.3 1417.39
boost/stacktrace.hpp 1091.5 170.547
boost/statechart/state.hpp 1308.1 204.391
boost/static_assert.hpp 44.1 6.89062
boost/swap.hpp 92.5 14.4531
boost/system/config.hpp 34.8 5.4375
boost/thread.hpp 4644.2 725.656
boost/throw_exception.hpp 100.7 15.7344
boost/timer/timer.hpp 486.3 75.9844
boost/tokenizer.hpp 1096.9 171.391
boost/tti/tti.hpp 852.3 133.172
boost/tuple/tuple.hpp 458.3 71.6094
boost/type_erasure/any.hpp 1636.9 255.766
boost/type_index.hpp 1445.7 225.891
boost/type_traits.hpp 1336.7 208.859
boost/typeof/typeof.hpp 42.6 6.65625
boost/units/unit.hpp 1017.2 158.938
boost/unordered_map.hpp 1702.8 266.062
boost/unordered_set.hpp 1714.8 267.938
boost/utility.hpp 110.9 17.3281
boost/uuid/uuid.hpp 121.2 18.9375
boost/variant.hpp 2191.5 342.422
boost/vmd/vmd.hpp 104.9 16.3906
boost/wave.hpp 4263.3 666.141
boost/xpressive/xpressive.hpp 3549 554.531
boost/yap/yap.hpp 791.8 123.719