diff --git a/future/result/Ryzen_7_3700X/README.md b/future/result/Ryzen_7_3700X/README.md index dbda809..35b5bed 100644 --- a/future/result/Ryzen_7_3700X/README.md +++ b/future/result/Ryzen_7_3700X/README.md @@ -11,50 +11,50 @@ Load Average: 1.07, 1.30, 1.17 ----------------------------------------------------------------------------- Benchmark Time CPU Iterations ----------------------------------------------------------------------------- -ConstantFuture(Std)/real_time 44.8 ns 44.8 ns 15533881 -ConstantFuture(YACLib)/real_time 17.5 ns 17.5 ns 40625160 -PromiseAndFuture(Std)/real_time 59.2 ns 59.2 ns 12050366 -PromiseAndFuture(YACLib)/real_time 32.0 ns 32.0 ns 21816267 -Then(YACLib)/0/0/real_time 78.0 ns 78.0 ns 9027304 -Then(YACLib)/1/0/real_time 155 ns 155 ns 4472215 -Then(YACLib)/2/0/real_time 216 ns 216 ns 3238783 -Then(YACLib)/4/0/real_time 355 ns 355 ns 2034100 -Then(YACLib)/8/0/real_time 589 ns 588 ns 1204618 -Then(YACLib)/16/0/real_time 1085 ns 1084 ns 645818 -Then(YACLib)/32/0/real_time 2101 ns 2101 ns 331824 -Then(YACLib)/64/0/real_time 4043 ns 4042 ns 173625 -Then(YACLib)/0/1/real_time 4735 ns 2471 ns 145393 -Then(YACLib)/1/1/real_time 5050 ns 2694 ns 135617 -Then(YACLib)/2/1/real_time 5113 ns 2697 ns 133318 -Then(YACLib)/4/1/real_time 5553 ns 3022 ns 123605 -Then(YACLib)/8/1/real_time 6193 ns 3426 ns 115690 -Then(YACLib)/16/1/real_time 6985 ns 4507 ns 101195 -Then(YACLib)/32/1/real_time 8259 ns 6305 ns 88376 -Then(YACLib)/64/1/real_time 10268 ns 9957 ns 67456 -Then(YACLib)/0/2/real_time 4790 ns 2412 ns 145883 -Then(YACLib)/1/2/real_time 4858 ns 2555 ns 139508 -Then(YACLib)/2/2/real_time 5207 ns 2821 ns 132816 -Then(YACLib)/4/2/real_time 5631 ns 3255 ns 122536 -Then(YACLib)/8/2/real_time 6728 ns 3933 ns 101760 -Then(YACLib)/16/2/real_time 11226 ns 8013 ns 61267 -Then(YACLib)/32/2/real_time 19799 ns 16203 ns 35272 -Then(YACLib)/64/2/real_time 36742 ns 32605 ns 18998 -ComplexBlob(YACLib)/0/real_time 12774 ns 12770 ns 54457 -ComplexBlob(YACLib)/2/real_time 10207 ns 10204 ns 68393 -ComplexBlob(YACLib)/4/real_time 10537 ns 10533 ns 65599 -ComplexBlob(YACLib)/8/real_time 10292 ns 10290 ns 68379 -ComplexBlob(YACLib)/16/real_time 11291 ns 11288 ns 62654 -ComplexBlob(YACLib)/32/real_time 11027 ns 11024 ns 62924 -ComplexBlob(YACLib)/64/real_time 11378 ns 11375 ns 61512 -ComplexBlob(YACLib)/128/real_time 11878 ns 11875 ns 58876 -ComplexBlob(YACLib)/256/real_time 13519 ns 13513 ns 51675 -ComplexBlob(YACLib)/512/real_time 14632 ns 14628 ns 47870 -ComplexBlob(YACLib)/1024/real_time 23971 ns 23962 ns 29222 -ComplexBlob(YACLib)/2048/real_time 26923 ns 26913 ns 26060 -ComplexBlob(YACLib)/4096/real_time 39610 ns 39596 ns 17695 -ComplexBlob(YACLib)/8192/real_time 96408 ns 96357 ns 7278 -NoContention(YACLib)/real_time 588388 ns 286316 ns 1187 -Contention(YACLib)/real_time 893560 ns 184694 ns 781 +ConstantFuture/Std/real_time 44.8 ns 44.8 ns 15533881 +ConstantFuture/YACLib/real_time 17.5 ns 17.5 ns 40625160 +PromiseAndFuture/Std/real_time 59.2 ns 59.2 ns 12050366 +PromiseAndFuture/YACLib/real_time 32.0 ns 32.0 ns 21816267 +Then/YACLib/0/0/real_time 78.0 ns 78.0 ns 9027304 +Then/YACLib/1/0/real_time 155 ns 155 ns 4472215 +Then/YACLib/2/0/real_time 216 ns 216 ns 3238783 +Then/YACLib/4/0/real_time 355 ns 355 ns 2034100 +Then/YACLib/8/0/real_time 589 ns 588 ns 1204618 +Then/YACLib/16/0/real_time 1085 ns 1084 ns 645818 +Then/YACLib/32/0/real_time 2101 ns 2101 ns 331824 +Then/YACLib/64/0/real_time 4043 ns 4042 ns 173625 +Then/YACLib/0/1/real_time 4735 ns 2471 ns 145393 +Then/YACLib/1/1/real_time 5050 ns 2694 ns 135617 +Then/YACLib/2/1/real_time 5113 ns 2697 ns 133318 +Then/YACLib/4/1/real_time 5553 ns 3022 ns 123605 +Then/YACLib/8/1/real_time 6193 ns 3426 ns 115690 +Then/YACLib/16/1/real_time 6985 ns 4507 ns 101195 +Then/YACLib/32/1/real_time 8259 ns 6305 ns 88376 +Then/YACLib/64/1/real_time 10268 ns 9957 ns 67456 +Then/YACLib/0/2/real_time 4790 ns 2412 ns 145883 +Then/YACLib/1/2/real_time 4858 ns 2555 ns 139508 +Then/YACLib/2/2/real_time 5207 ns 2821 ns 132816 +Then/YACLib/4/2/real_time 5631 ns 3255 ns 122536 +Then/YACLib/8/2/real_time 6728 ns 3933 ns 101760 +Then/YACLib/16/2/real_time 11226 ns 8013 ns 61267 +Then/YACLib/32/2/real_time 19799 ns 16203 ns 35272 +Then/YACLib/64/2/real_time 36742 ns 32605 ns 18998 +ComplexBlob/YACLib/0/real_time 12774 ns 12770 ns 54457 +ComplexBlob/YACLib/2/real_time 10207 ns 10204 ns 68393 +ComplexBlob/YACLib/4/real_time 10537 ns 10533 ns 65599 +ComplexBlob/YACLib/8/real_time 10292 ns 10290 ns 68379 +ComplexBlob/YACLib/16/real_time 11291 ns 11288 ns 62654 +ComplexBlob/YACLib/32/real_time 11027 ns 11024 ns 62924 +ComplexBlob/YACLib/64/real_time 11378 ns 11375 ns 61512 +ComplexBlob/YACLib/128/real_time 11878 ns 11875 ns 58876 +ComplexBlob/YACLib/256/real_time 13519 ns 13513 ns 51675 +ComplexBlob/YACLib/512/real_time 14632 ns 14628 ns 47870 +ComplexBlob/YACLib/1024/real_time 23971 ns 23962 ns 29222 +ComplexBlob/YACLib/2048/real_time 26923 ns 26913 ns 26060 +ComplexBlob/YACLib/4096/real_time 39610 ns 39596 ns 17695 +ComplexBlob/YACLib/8192/real_time 96408 ns 96357 ns 7278 +NoContention/YACLib/real_time 588388 ns 286316 ns 1187 +Contention/YACLib/real_time 893560 ns 184694 ns 781 2022-03-18T07:55:05+03:00 Running ./build_clang_libstdcxx/future/future Run on (16 X 4017.63 MHz CPU s) @@ -67,134 +67,134 @@ Load Average: 1.20, 1.31, 1.18 ---------------------------------------------------------------------------------- Benchmark Time CPU Iterations ---------------------------------------------------------------------------------- -ConstantFuture(Std)/real_time 112 ns 112 ns 6156156 -ConstantFuture(YACLib)/real_time 16.8 ns 16.8 ns 40769431 -ConstantFuture(Folly)/real_time 16.0 ns 16.0 ns 42784927 -ConstantFuture(BoostThread)/real_time 106 ns 106 ns 6616728 -PromiseAndFuture(Std)/real_time 121 ns 121 ns 5768659 -PromiseAndFuture(YACLib)/real_time 30.5 ns 30.5 ns 22958531 -PromiseAndFuture(Folly)/real_time 79.1 ns 79.0 ns 8869973 -PromiseAndFuture(BoostThread)/real_time 124 ns 124 ns 5673709 -Then(YACLib)/0/0/real_time 76.2 ns 76.2 ns 9322278 -Then(YACLib)/1/0/real_time 159 ns 159 ns 4438494 -Then(YACLib)/2/0/real_time 223 ns 223 ns 3134230 -Then(YACLib)/4/0/real_time 362 ns 361 ns 1934567 -Then(YACLib)/8/0/real_time 611 ns 611 ns 1146791 -Then(YACLib)/16/0/real_time 1132 ns 1132 ns 626002 -Then(YACLib)/32/0/real_time 2170 ns 2169 ns 321704 -Then(YACLib)/64/0/real_time 4297 ns 4296 ns 162963 -Then(YACLib)/0/1/real_time 4889 ns 2458 ns 146076 -Then(YACLib)/1/1/real_time 5001 ns 2591 ns 141355 -Then(YACLib)/2/1/real_time 5040 ns 2661 ns 135228 -Then(YACLib)/4/1/real_time 5430 ns 2876 ns 126815 -Then(YACLib)/8/1/real_time 5931 ns 3417 ns 121361 -Then(YACLib)/16/1/real_time 7003 ns 4362 ns 102768 -Then(YACLib)/32/1/real_time 8168 ns 5937 ns 87266 -Then(YACLib)/64/1/real_time 10595 ns 10206 ns 65138 -Then(YACLib)/0/2/real_time 4906 ns 2518 ns 143021 -Then(YACLib)/1/2/real_time 5189 ns 2822 ns 139756 -Then(YACLib)/2/2/real_time 5367 ns 2968 ns 132758 -Then(YACLib)/4/2/real_time 5892 ns 3419 ns 118683 -Then(YACLib)/8/2/real_time 6791 ns 3989 ns 103045 -Then(YACLib)/16/2/real_time 11367 ns 8226 ns 61514 -Then(YACLib)/32/2/real_time 19872 ns 16417 ns 35307 -Then(YACLib)/64/2/real_time 36838 ns 33215 ns 18980 -Then(Folly)/0/0/real_time 160 ns 160 ns 4515628 -Then(Folly)/1/0/real_time 345 ns 345 ns 2040334 -Then(Folly)/2/0/real_time 546 ns 545 ns 1285813 -Then(Folly)/4/0/real_time 904 ns 904 ns 763026 -Then(Folly)/8/0/real_time 1637 ns 1637 ns 419971 -Then(Folly)/16/0/real_time 3158 ns 3157 ns 222842 -Then(Folly)/32/0/real_time 6129 ns 6128 ns 114114 -Then(Folly)/64/0/real_time 11779 ns 11776 ns 59576 -Then(Folly)/0/1/real_time 5209 ns 3085 ns 128739 -Then(Folly)/1/1/real_time 5689 ns 3409 ns 120162 -Then(Folly)/2/1/real_time 5917 ns 3650 ns 115761 -Then(Folly)/4/1/real_time 6472 ns 4238 ns 111942 -Then(Folly)/8/1/real_time 7362 ns 4778 ns 96171 -Then(Folly)/16/1/real_time 9524 ns 6231 ns 73282 -Then(Folly)/32/1/real_time 26083 ns 18668 ns 30455 -Then(Folly)/64/1/real_time 48460 ns 34269 ns 14928 -Then(Folly)/0/2/real_time 5188 ns 3096 ns 134677 -Then(Folly)/1/2/real_time 5670 ns 3304 ns 121458 -Then(Folly)/2/2/real_time 6387 ns 3594 ns 107939 -Then(Folly)/4/2/real_time 7446 ns 4351 ns 92059 -Then(Folly)/8/2/real_time 9169 ns 5466 ns 77669 -Then(Folly)/16/2/real_time 14705 ns 8866 ns 43150 -Then(Folly)/32/2/real_time 29602 ns 18615 ns 24910 -Then(Folly)/64/2/real_time 51512 ns 32078 ns 13532 -Then(BoostThread)/0/0/real_time 547 ns 547 ns 1269871 -Then(BoostThread)/1/0/real_time 1168 ns 1167 ns 600113 -Then(BoostThread)/2/0/real_time 1790 ns 1790 ns 390425 -Then(BoostThread)/4/0/real_time 3024 ns 3023 ns 232130 -Then(BoostThread)/8/0/real_time 5567 ns 5566 ns 127031 -Then(BoostThread)/16/0/real_time 10453 ns 10450 ns 66685 -Then(BoostThread)/32/0/real_time 20653 ns 20647 ns 34209 -Then(BoostThread)/64/0/real_time 39828 ns 39817 ns 17232 -Then(BoostThread)/0/1/real_time 6038 ns 3508 ns 111657 -Then(BoostThread)/1/1/real_time 7433 ns 4763 ns 97979 -Then(BoostThread)/2/1/real_time 7962 ns 5419 ns 89739 -Then(BoostThread)/4/1/real_time 9144 ns 7010 ns 76927 -Then(BoostThread)/8/1/real_time 13940 ns 11857 ns 53387 -Then(BoostThread)/16/1/real_time 26165 ns 24010 ns 26956 -Then(BoostThread)/32/1/real_time 45001 ns 42894 ns 15659 -Then(BoostThread)/64/1/real_time 78622 ns 76358 ns 8851 -Then(BoostThread)/0/2/real_time 6402 ns 3785 ns 108115 -Then(BoostThread)/1/2/real_time 8647 ns 5549 ns 80276 -Then(BoostThread)/2/2/real_time 9988 ns 7001 ns 70126 -Then(BoostThread)/4/2/real_time 15500 ns 10502 ns 45183 -Then(BoostThread)/8/2/real_time 24307 ns 16841 ns 28858 -Then(BoostThread)/16/2/real_time 40038 ns 27873 ns 17463 -Then(BoostThread)/32/2/real_time 68656 ns 48551 ns 10208 -Then(BoostThread)/64/2/real_time 131929 ns 93894 ns 5296 -ComplexBlob(YACLib)/0/real_time 12579 ns 12576 ns 55663 -ComplexBlob(Folly)/0/real_time 29952 ns 29943 ns 23440 -ComplexBlob(BoostThread)/0/real_time 96649 ns 90064 ns 7256 -ComplexBlob(YACLib)/2/real_time 10243 ns 10240 ns 67051 -ComplexBlob(Folly)/2/real_time 30084 ns 30075 ns 23214 -ComplexBlob(BoostThread)/2/real_time 96979 ns 90401 ns 7105 -ComplexBlob(YACLib)/4/real_time 10093 ns 10091 ns 69127 -ComplexBlob(Folly)/4/real_time 30999 ns 30992 ns 22469 -ComplexBlob(BoostThread)/4/real_time 96912 ns 90310 ns 7301 -ComplexBlob(YACLib)/8/real_time 10032 ns 10030 ns 68549 -ComplexBlob(Folly)/8/real_time 30537 ns 30529 ns 22754 -ComplexBlob(BoostThread)/8/real_time 97146 ns 90555 ns 7242 -ComplexBlob(YACLib)/16/real_time 11098 ns 11096 ns 61687 -ComplexBlob(Folly)/16/real_time 31709 ns 31702 ns 22036 -ComplexBlob(BoostThread)/16/real_time 97708 ns 91110 ns 7103 -ComplexBlob(YACLib)/32/real_time 10744 ns 10742 ns 64415 -ComplexBlob(Folly)/32/real_time 29768 ns 29760 ns 23455 -ComplexBlob(BoostThread)/32/real_time 98257 ns 91663 ns 7148 -ComplexBlob(YACLib)/64/real_time 11491 ns 11489 ns 60041 -ComplexBlob(Folly)/64/real_time 29966 ns 29959 ns 23259 -ComplexBlob(BoostThread)/64/real_time 98138 ns 91246 ns 7105 -ComplexBlob(YACLib)/128/real_time 13027 ns 13025 ns 53111 -ComplexBlob(Folly)/128/real_time 31700 ns 31690 ns 22179 -ComplexBlob(BoostThread)/128/real_time 98999 ns 92408 ns 7125 -ComplexBlob(YACLib)/256/real_time 12748 ns 12745 ns 54186 -ComplexBlob(Folly)/256/real_time 33469 ns 33461 ns 20980 -ComplexBlob(BoostThread)/256/real_time 100017 ns 93181 ns 7046 -ComplexBlob(YACLib)/512/real_time 14263 ns 14259 ns 48607 -ComplexBlob(Folly)/512/real_time 34562 ns 34552 ns 20198 -ComplexBlob(BoostThread)/512/real_time 99516 ns 92995 ns 6955 -ComplexBlob(YACLib)/1024/real_time 24617 ns 24612 ns 28058 -ComplexBlob(Folly)/1024/real_time 42147 ns 42134 ns 16575 -ComplexBlob(BoostThread)/1024/real_time 124979 ns 118476 ns 5572 -ComplexBlob(YACLib)/2048/real_time 27694 ns 27687 ns 25084 -ComplexBlob(Folly)/2048/real_time 48106 ns 48093 ns 14454 -ComplexBlob(BoostThread)/2048/real_time 126542 ns 119859 ns 5498 -ComplexBlob(YACLib)/4096/real_time 39764 ns 39755 ns 17524 -ComplexBlob(Folly)/4096/real_time 66162 ns 66136 ns 10524 -ComplexBlob(BoostThread)/4096/real_time 138609 ns 132021 ns 4999 -ComplexBlob(YACLib)/8192/real_time 89528 ns 89489 ns 7718 -ComplexBlob(Folly)/8192/real_time 121505 ns 121444 ns 5750 -ComplexBlob(BoostThread)/8192/real_time 181234 ns 174252 ns 3845 -NoContention(YACLib)/real_time 622123 ns 282060 ns 1136 -NoContention(Folly)/real_time 1935653 ns 1024220 ns 360 -NoContention(BoostThread)/real_time 5898002 ns 3319338 ns 116 -Contention(YACLib)/real_time 915654 ns 187521 ns 770 -Contention(Folly)/real_time 2968518 ns 693210 ns 238 -Contention(BoostThread)/real_time 6399099 ns 2288040 ns 112 +ConstantFuture/Std/real_time 112 ns 112 ns 6156156 +ConstantFuture/YACLib/real_time 16.8 ns 16.8 ns 40769431 +ConstantFuture/Folly/real_time 16.0 ns 16.0 ns 42784927 +ConstantFuture/BoostThread/real_time 106 ns 106 ns 6616728 +PromiseAndFuture/Std/real_time 121 ns 121 ns 5768659 +PromiseAndFuture/YACLib/real_time 30.5 ns 30.5 ns 22958531 +PromiseAndFuture/Folly/real_time 79.1 ns 79.0 ns 8869973 +PromiseAndFuture/BoostThread/real_time 124 ns 124 ns 5673709 +Then/YACLib/0/0/real_time 76.2 ns 76.2 ns 9322278 +Then/YACLib/1/0/real_time 159 ns 159 ns 4438494 +Then/YACLib/2/0/real_time 223 ns 223 ns 3134230 +Then/YACLib/4/0/real_time 362 ns 361 ns 1934567 +Then/YACLib/8/0/real_time 611 ns 611 ns 1146791 +Then/YACLib/16/0/real_time 1132 ns 1132 ns 626002 +Then/YACLib/32/0/real_time 2170 ns 2169 ns 321704 +Then/YACLib/64/0/real_time 4297 ns 4296 ns 162963 +Then/YACLib/0/1/real_time 4889 ns 2458 ns 146076 +Then/YACLib/1/1/real_time 5001 ns 2591 ns 141355 +Then/YACLib/2/1/real_time 5040 ns 2661 ns 135228 +Then/YACLib/4/1/real_time 5430 ns 2876 ns 126815 +Then/YACLib/8/1/real_time 5931 ns 3417 ns 121361 +Then/YACLib/16/1/real_time 7003 ns 4362 ns 102768 +Then/YACLib/32/1/real_time 8168 ns 5937 ns 87266 +Then/YACLib/64/1/real_time 10595 ns 10206 ns 65138 +Then/YACLib/0/2/real_time 4906 ns 2518 ns 143021 +Then/YACLib/1/2/real_time 5189 ns 2822 ns 139756 +Then/YACLib/2/2/real_time 5367 ns 2968 ns 132758 +Then/YACLib/4/2/real_time 5892 ns 3419 ns 118683 +Then/YACLib/8/2/real_time 6791 ns 3989 ns 103045 +Then/YACLib/16/2/real_time 11367 ns 8226 ns 61514 +Then/YACLib/32/2/real_time 19872 ns 16417 ns 35307 +Then/YACLib/64/2/real_time 36838 ns 33215 ns 18980 +Then/Folly/0/0/real_time 160 ns 160 ns 4515628 +Then/Folly/1/0/real_time 345 ns 345 ns 2040334 +Then/Folly/2/0/real_time 546 ns 545 ns 1285813 +Then/Folly/4/0/real_time 904 ns 904 ns 763026 +Then/Folly/8/0/real_time 1637 ns 1637 ns 419971 +Then/Folly/16/0/real_time 3158 ns 3157 ns 222842 +Then/Folly/32/0/real_time 6129 ns 6128 ns 114114 +Then/Folly/64/0/real_time 11779 ns 11776 ns 59576 +Then/Folly/0/1/real_time 5209 ns 3085 ns 128739 +Then/Folly/1/1/real_time 5689 ns 3409 ns 120162 +Then/Folly/2/1/real_time 5917 ns 3650 ns 115761 +Then/Folly/4/1/real_time 6472 ns 4238 ns 111942 +Then/Folly/8/1/real_time 7362 ns 4778 ns 96171 +Then/Folly/16/1/real_time 9524 ns 6231 ns 73282 +Then/Folly/32/1/real_time 26083 ns 18668 ns 30455 +Then/Folly/64/1/real_time 48460 ns 34269 ns 14928 +Then/Folly/0/2/real_time 5188 ns 3096 ns 134677 +Then/Folly/1/2/real_time 5670 ns 3304 ns 121458 +Then/Folly/2/2/real_time 6387 ns 3594 ns 107939 +Then/Folly/4/2/real_time 7446 ns 4351 ns 92059 +Then/Folly/8/2/real_time 9169 ns 5466 ns 77669 +Then/Folly/16/2/real_time 14705 ns 8866 ns 43150 +Then/Folly/32/2/real_time 29602 ns 18615 ns 24910 +Then/Folly/64/2/real_time 51512 ns 32078 ns 13532 +Then/BoostThread/0/0/real_time 547 ns 547 ns 1269871 +Then/BoostThread/1/0/real_time 1168 ns 1167 ns 600113 +Then/BoostThread/2/0/real_time 1790 ns 1790 ns 390425 +Then/BoostThread/4/0/real_time 3024 ns 3023 ns 232130 +Then/BoostThread/8/0/real_time 5567 ns 5566 ns 127031 +Then/BoostThread/16/0/real_time 10453 ns 10450 ns 66685 +Then/BoostThread/32/0/real_time 20653 ns 20647 ns 34209 +Then/BoostThread/64/0/real_time 39828 ns 39817 ns 17232 +Then/BoostThread/0/1/real_time 6038 ns 3508 ns 111657 +Then/BoostThread/1/1/real_time 7433 ns 4763 ns 97979 +Then/BoostThread/2/1/real_time 7962 ns 5419 ns 89739 +Then/BoostThread/4/1/real_time 9144 ns 7010 ns 76927 +Then/BoostThread/8/1/real_time 13940 ns 11857 ns 53387 +Then/BoostThread/16/1/real_time 26165 ns 24010 ns 26956 +Then/BoostThread/32/1/real_time 45001 ns 42894 ns 15659 +Then/BoostThread/64/1/real_time 78622 ns 76358 ns 8851 +Then/BoostThread/0/2/real_time 6402 ns 3785 ns 108115 +Then/BoostThread/1/2/real_time 8647 ns 5549 ns 80276 +Then/BoostThread/2/2/real_time 9988 ns 7001 ns 70126 +Then/BoostThread/4/2/real_time 15500 ns 10502 ns 45183 +Then/BoostThread/8/2/real_time 24307 ns 16841 ns 28858 +Then/BoostThread/16/2/real_time 40038 ns 27873 ns 17463 +Then/BoostThread/32/2/real_time 68656 ns 48551 ns 10208 +Then/BoostThread/64/2/real_time 131929 ns 93894 ns 5296 +ComplexBlob/YACLib/0/real_time 12579 ns 12576 ns 55663 +ComplexBlob/Folly/0/real_time 29952 ns 29943 ns 23440 +ComplexBlob/BoostThread/0/real_time 96649 ns 90064 ns 7256 +ComplexBlob/YACLib/2/real_time 10243 ns 10240 ns 67051 +ComplexBlob/Folly/2/real_time 30084 ns 30075 ns 23214 +ComplexBlob/BoostThread/2/real_time 96979 ns 90401 ns 7105 +ComplexBlob/YACLib/4/real_time 10093 ns 10091 ns 69127 +ComplexBlob/Folly/4/real_time 30999 ns 30992 ns 22469 +ComplexBlob/BoostThread/4/real_time 96912 ns 90310 ns 7301 +ComplexBlob/YACLib/8/real_time 10032 ns 10030 ns 68549 +ComplexBlob/Folly/8/real_time 30537 ns 30529 ns 22754 +ComplexBlob/BoostThread/8/real_time 97146 ns 90555 ns 7242 +ComplexBlob/YACLib/16/real_time 11098 ns 11096 ns 61687 +ComplexBlob/Folly/16/real_time 31709 ns 31702 ns 22036 +ComplexBlob/BoostThread/16/real_time 97708 ns 91110 ns 7103 +ComplexBlob/YACLib/32/real_time 10744 ns 10742 ns 64415 +ComplexBlob/Folly/32/real_time 29768 ns 29760 ns 23455 +ComplexBlob/BoostThread/32/real_time 98257 ns 91663 ns 7148 +ComplexBlob/YACLib/64/real_time 11491 ns 11489 ns 60041 +ComplexBlob/Folly/64/real_time 29966 ns 29959 ns 23259 +ComplexBlob/BoostThread/64/real_time 98138 ns 91246 ns 7105 +ComplexBlob/YACLib/128/real_time 13027 ns 13025 ns 53111 +ComplexBlob/Folly/128/real_time 31700 ns 31690 ns 22179 +ComplexBlob/BoostThread/128/real_time 98999 ns 92408 ns 7125 +ComplexBlob/YACLib/256/real_time 12748 ns 12745 ns 54186 +ComplexBlob/Folly/256/real_time 33469 ns 33461 ns 20980 +ComplexBlob/BoostThread/256/real_time 100017 ns 93181 ns 7046 +ComplexBlob/YACLib/512/real_time 14263 ns 14259 ns 48607 +ComplexBlob/Folly/512/real_time 34562 ns 34552 ns 20198 +ComplexBlob/BoostThread/512/real_time 99516 ns 92995 ns 6955 +ComplexBlob/YACLib/1024/real_time 24617 ns 24612 ns 28058 +ComplexBlob/Folly/1024/real_time 42147 ns 42134 ns 16575 +ComplexBlob/BoostThread/1024/real_time 124979 ns 118476 ns 5572 +ComplexBlob/YACLib/2048/real_time 27694 ns 27687 ns 25084 +ComplexBlob/Folly/2048/real_time 48106 ns 48093 ns 14454 +ComplexBlob/BoostThread/2048/real_time 126542 ns 119859 ns 5498 +ComplexBlob/YACLib/4096/real_time 39764 ns 39755 ns 17524 +ComplexBlob/Folly/4096/real_time 66162 ns 66136 ns 10524 +ComplexBlob/BoostThread/4096/real_time 138609 ns 132021 ns 4999 +ComplexBlob/YACLib/8192/real_time 89528 ns 89489 ns 7718 +ComplexBlob/Folly/8192/real_time 121505 ns 121444 ns 5750 +ComplexBlob/BoostThread/8192/real_time 181234 ns 174252 ns 3845 +NoContention/YACLib/real_time 622123 ns 282060 ns 1136 +NoContention/Folly/real_time 1935653 ns 1024220 ns 360 +NoContention/BoostThread/real_time 5898002 ns 3319338 ns 116 +Contention/YACLib/real_time 915654 ns 187521 ns 770 +Contention/Folly/real_time 2968518 ns 693210 ns 238 +Contention/BoostThread/real_time 6399099 ns 2288040 ns 112 2022-03-18T07:57:01+03:00 Running ./build_gcc_libstdcxx/future/future Run on (16 X 3654.95 MHz CPU s) @@ -207,132 +207,132 @@ Load Average: 1.42, 1.35, 1.21 ---------------------------------------------------------------------------------- Benchmark Time CPU Iterations ---------------------------------------------------------------------------------- -ConstantFuture(Std)/real_time 119 ns 119 ns 5894510 -ConstantFuture(YACLib)/real_time 17.0 ns 17.0 ns 40305884 -ConstantFuture(Folly)/real_time 18.2 ns 18.1 ns 38458845 -ConstantFuture(BoostThread)/real_time 109 ns 109 ns 6463834 -PromiseAndFuture(Std)/real_time 122 ns 122 ns 5747624 -PromiseAndFuture(YACLib)/real_time 24.6 ns 24.6 ns 27925338 -PromiseAndFuture(Folly)/real_time 70.1 ns 70.1 ns 10195437 -PromiseAndFuture(BoostThread)/real_time 138 ns 138 ns 5158575 -Then(YACLib)/0/0/real_time 73.0 ns 73.0 ns 9604960 -Then(YACLib)/1/0/real_time 156 ns 156 ns 4457361 -Then(YACLib)/2/0/real_time 232 ns 232 ns 3006679 -Then(YACLib)/4/0/real_time 391 ns 391 ns 1795859 -Then(YACLib)/8/0/real_time 686 ns 686 ns 1017590 -Then(YACLib)/16/0/real_time 1284 ns 1284 ns 547692 -Then(YACLib)/32/0/real_time 2458 ns 2458 ns 285686 -Then(YACLib)/64/0/real_time 4872 ns 4871 ns 143530 -Then(YACLib)/0/1/real_time 4833 ns 2465 ns 146525 -Then(YACLib)/1/1/real_time 5116 ns 2665 ns 100000 -Then(YACLib)/2/1/real_time 5004 ns 2613 ns 139007 -Then(YACLib)/4/1/real_time 5317 ns 2887 ns 128477 -Then(YACLib)/8/1/real_time 6082 ns 3516 ns 117792 -Then(YACLib)/16/1/real_time 6783 ns 4358 ns 100354 -Then(YACLib)/32/1/real_time 8211 ns 6038 ns 84307 -Then(YACLib)/64/1/real_time 11074 ns 10705 ns 62509 -Then(YACLib)/0/2/real_time 4814 ns 2463 ns 145464 -Then(YACLib)/1/2/real_time 4946 ns 2661 ns 140922 -Then(YACLib)/2/2/real_time 5244 ns 2930 ns 131021 -Then(YACLib)/4/2/real_time 5732 ns 3277 ns 119791 -Then(YACLib)/8/2/real_time 6883 ns 4006 ns 101738 -Then(YACLib)/16/2/real_time 11266 ns 8038 ns 62957 -Then(YACLib)/32/2/real_time 19494 ns 15869 ns 35893 -Then(YACLib)/64/2/real_time 37440 ns 33933 ns 18800 -Then(Folly)/0/0/real_time 144 ns 144 ns 4776681 -Then(Folly)/1/0/real_time 308 ns 308 ns 2259576 -Then(Folly)/2/0/real_time 494 ns 494 ns 1400855 -Then(Folly)/4/0/real_time 821 ns 821 ns 845165 -Then(Folly)/8/0/real_time 1494 ns 1494 ns 460560 -Then(Folly)/16/0/real_time 2851 ns 2850 ns 244362 -Then(Folly)/32/0/real_time 5546 ns 5544 ns 125787 -Then(Folly)/64/0/real_time 10908 ns 10905 ns 65550 -Then(Folly)/0/1/real_time 5149 ns 2972 ns 135879 -Then(Folly)/1/1/real_time 5618 ns 3243 ns 124886 -Then(Folly)/2/1/real_time 5632 ns 3477 ns 124859 -Then(Folly)/4/1/real_time 6066 ns 3937 ns 114517 -Then(Folly)/8/1/real_time 6522 ns 4112 ns 107643 -Then(Folly)/16/1/real_time 8340 ns 5973 ns 83652 -Then(Folly)/32/1/real_time 23435 ns 17166 ns 29451 -Then(Folly)/64/1/real_time 46441 ns 33982 ns 15255 -Then(Folly)/0/2/real_time 4982 ns 2950 ns 134919 -Then(Folly)/1/2/real_time 5783 ns 3267 ns 118787 -Then(Folly)/2/2/real_time 6505 ns 3625 ns 106015 -Then(Folly)/4/2/real_time 8193 ns 4404 ns 85413 -Then(Folly)/8/2/real_time 10242 ns 5612 ns 71074 -Then(Folly)/16/2/real_time 17767 ns 9441 ns 39503 -Then(Folly)/32/2/real_time 30080 ns 17249 ns 22032 -Then(Folly)/64/2/real_time 56798 ns 32621 ns 12481 -Then(BoostThread)/0/0/real_time 556 ns 555 ns 1245226 -Then(BoostThread)/1/0/real_time 1187 ns 1187 ns 590052 -Then(BoostThread)/2/0/real_time 1824 ns 1823 ns 383706 -Then(BoostThread)/4/0/real_time 3077 ns 3076 ns 227665 -Then(BoostThread)/8/0/real_time 5595 ns 5590 ns 125550 -Then(BoostThread)/16/0/real_time 10635 ns 10632 ns 65850 -Then(BoostThread)/32/0/real_time 20643 ns 20627 ns 33838 -Then(BoostThread)/64/0/real_time 40624 ns 40610 ns 17181 -Then(BoostThread)/0/1/real_time 6222 ns 3711 ns 112102 -Then(BoostThread)/1/1/real_time 7296 ns 4677 ns 100751 -Then(BoostThread)/2/1/real_time 7759 ns 5436 ns 89949 -Then(BoostThread)/4/1/real_time 9155 ns 6879 ns 74880 -Then(BoostThread)/8/1/real_time 13233 ns 10797 ns 54681 -Then(BoostThread)/16/1/real_time 25598 ns 23510 ns 27716 -Then(BoostThread)/32/1/real_time 43678 ns 41564 ns 16044 -Then(BoostThread)/64/1/real_time 77199 ns 74989 ns 9219 -Then(BoostThread)/0/2/real_time 6362 ns 3801 ns 110915 -Then(BoostThread)/1/2/real_time 8415 ns 5279 ns 83560 -Then(BoostThread)/2/2/real_time 9828 ns 6765 ns 71315 -Then(BoostThread)/4/2/real_time 15130 ns 10275 ns 46437 -Then(BoostThread)/8/2/real_time 23938 ns 16504 ns 29340 -Then(BoostThread)/16/2/real_time 39916 ns 27892 ns 17556 -Then(BoostThread)/32/2/real_time 69197 ns 48924 ns 14886 -Then(BoostThread)/64/2/real_time 136685 ns 98972 ns 5109 -ComplexBlob(YACLib)/0/real_time 12519 ns 12516 ns 56668 -ComplexBlob(Folly)/0/real_time 33217 ns 33207 ns 20994 -ComplexBlob(BoostThread)/0/real_time 98388 ns 91866 ns 7095 -ComplexBlob(YACLib)/2/real_time 11938 ns 11934 ns 57446 -ComplexBlob(Folly)/2/real_time 33478 ns 33469 ns 20703 -ComplexBlob(BoostThread)/2/real_time 98479 ns 91859 ns 7044 -ComplexBlob(YACLib)/4/real_time 11054 ns 11051 ns 61572 -ComplexBlob(Folly)/4/real_time 33888 ns 33878 ns 20531 -ComplexBlob(BoostThread)/4/real_time 98606 ns 92032 ns 7062 -ComplexBlob(YACLib)/8/real_time 10712 ns 10709 ns 64510 -ComplexBlob(Folly)/8/real_time 33671 ns 33647 ns 20826 -ComplexBlob(BoostThread)/8/real_time 98838 ns 92107 ns 7109 -ComplexBlob(YACLib)/16/real_time 11385 ns 11381 ns 60270 -ComplexBlob(Folly)/16/real_time 33703 ns 33690 ns 20615 -ComplexBlob(BoostThread)/16/real_time 98359 ns 91475 ns 7095 -ComplexBlob(YACLib)/32/real_time 11481 ns 11478 ns 60345 -ComplexBlob(Folly)/32/real_time 33635 ns 33625 ns 20811 -ComplexBlob(BoostThread)/32/real_time 99484 ns 92760 ns 6868 -ComplexBlob(YACLib)/64/real_time 12244 ns 12241 ns 57938 -ComplexBlob(Folly)/64/real_time 33233 ns 33222 ns 21215 -ComplexBlob(BoostThread)/64/real_time 99383 ns 92604 ns 6983 -ComplexBlob(YACLib)/128/real_time 14026 ns 14023 ns 49703 -ComplexBlob(Folly)/128/real_time 35297 ns 35288 ns 19739 -ComplexBlob(BoostThread)/128/real_time 99154 ns 92405 ns 6874 -ComplexBlob(YACLib)/256/real_time 13538 ns 13534 ns 51392 -ComplexBlob(Folly)/256/real_time 35927 ns 35917 ns 19471 -ComplexBlob(BoostThread)/256/real_time 99650 ns 92748 ns 6909 -ComplexBlob(YACLib)/512/real_time 20331 ns 20325 ns 34097 -ComplexBlob(Folly)/512/real_time 45661 ns 45646 ns 15347 -ComplexBlob(BoostThread)/512/real_time 104918 ns 98320 ns 6592 -ComplexBlob(YACLib)/1024/real_time 30972 ns 30964 ns 22571 -ComplexBlob(Folly)/1024/real_time 52078 ns 52061 ns 13422 -ComplexBlob(BoostThread)/1024/real_time 128506 ns 121194 ns 5449 -ComplexBlob(YACLib)/2048/real_time 33421 ns 33411 ns 20933 -ComplexBlob(Folly)/2048/real_time 57463 ns 57446 ns 12201 -ComplexBlob(BoostThread)/2048/real_time 132999 ns 126415 ns 5157 -ComplexBlob(YACLib)/4096/real_time 43310 ns 43298 ns 16183 -ComplexBlob(Folly)/4096/real_time 90423 ns 90386 ns 7747 -ComplexBlob(BoostThread)/4096/real_time 145929 ns 138628 ns 4703 -ComplexBlob(YACLib)/8192/real_time 98164 ns 98118 ns 7079 -ComplexBlob(Folly)/8192/real_time 175384 ns 175292 ns 3990 -ComplexBlob(BoostThread)/8192/real_time 189308 ns 182120 ns 3693 -NoContention(YACLib)/real_time 553765 ns 273098 ns 1253 -NoContention(Folly)/real_time 1234327 ns 565901 ns 569 -NoContention(BoostThread)/real_time 6389211 ns 3720666 ns 109 -Contention(YACLib)/real_time 880683 ns 189365 ns 806 -Contention(Folly)/real_time 3039814 ns 645325 ns 227 -Contention(BoostThread)/real_time 6182179 ns 2240055 ns 115 +ConstantFuture/Std/real_time 119 ns 119 ns 5894510 +ConstantFuture/YACLib/real_time 17.0 ns 17.0 ns 40305884 +ConstantFuture/Folly/real_time 18.2 ns 18.1 ns 38458845 +ConstantFuture/BoostThread/real_time 109 ns 109 ns 6463834 +PromiseAndFuture/Std/real_time 122 ns 122 ns 5747624 +PromiseAndFuture/YACLib/real_time 24.6 ns 24.6 ns 27925338 +PromiseAndFuture/Folly/real_time 70.1 ns 70.1 ns 10195437 +PromiseAndFuture/BoostThread/real_time 138 ns 138 ns 5158575 +Then/YACLib/0/0/real_time 73.0 ns 73.0 ns 9604960 +Then/YACLib/1/0/real_time 156 ns 156 ns 4457361 +Then/YACLib/2/0/real_time 232 ns 232 ns 3006679 +Then/YACLib/4/0/real_time 391 ns 391 ns 1795859 +Then/YACLib/8/0/real_time 686 ns 686 ns 1017590 +Then/YACLib/16/0/real_time 1284 ns 1284 ns 547692 +Then/YACLib/32/0/real_time 2458 ns 2458 ns 285686 +Then/YACLib/64/0/real_time 4872 ns 4871 ns 143530 +Then/YACLib/0/1/real_time 4833 ns 2465 ns 146525 +Then/YACLib/1/1/real_time 5116 ns 2665 ns 100000 +Then/YACLib/2/1/real_time 5004 ns 2613 ns 139007 +Then/YACLib/4/1/real_time 5317 ns 2887 ns 128477 +Then/YACLib/8/1/real_time 6082 ns 3516 ns 117792 +Then/YACLib/16/1/real_time 6783 ns 4358 ns 100354 +Then/YACLib/32/1/real_time 8211 ns 6038 ns 84307 +Then/YACLib/64/1/real_time 11074 ns 10705 ns 62509 +Then/YACLib/0/2/real_time 4814 ns 2463 ns 145464 +Then/YACLib/1/2/real_time 4946 ns 2661 ns 140922 +Then/YACLib/2/2/real_time 5244 ns 2930 ns 131021 +Then/YACLib/4/2/real_time 5732 ns 3277 ns 119791 +Then/YACLib/8/2/real_time 6883 ns 4006 ns 101738 +Then/YACLib/16/2/real_time 11266 ns 8038 ns 62957 +Then/YACLib/32/2/real_time 19494 ns 15869 ns 35893 +Then/YACLib/64/2/real_time 37440 ns 33933 ns 18800 +Then/Folly/0/0/real_time 144 ns 144 ns 4776681 +Then/Folly/1/0/real_time 308 ns 308 ns 2259576 +Then/Folly/2/0/real_time 494 ns 494 ns 1400855 +Then/Folly/4/0/real_time 821 ns 821 ns 845165 +Then/Folly/8/0/real_time 1494 ns 1494 ns 460560 +Then/Folly/16/0/real_time 2851 ns 2850 ns 244362 +Then/Folly/32/0/real_time 5546 ns 5544 ns 125787 +Then/Folly/64/0/real_time 10908 ns 10905 ns 65550 +Then/Folly/0/1/real_time 5149 ns 2972 ns 135879 +Then/Folly/1/1/real_time 5618 ns 3243 ns 124886 +Then/Folly/2/1/real_time 5632 ns 3477 ns 124859 +Then/Folly/4/1/real_time 6066 ns 3937 ns 114517 +Then/Folly/8/1/real_time 6522 ns 4112 ns 107643 +Then/Folly/16/1/real_time 8340 ns 5973 ns 83652 +Then/Folly/32/1/real_time 23435 ns 17166 ns 29451 +Then/Folly/64/1/real_time 46441 ns 33982 ns 15255 +Then/Folly/0/2/real_time 4982 ns 2950 ns 134919 +Then/Folly/1/2/real_time 5783 ns 3267 ns 118787 +Then/Folly/2/2/real_time 6505 ns 3625 ns 106015 +Then/Folly/4/2/real_time 8193 ns 4404 ns 85413 +Then/Folly/8/2/real_time 10242 ns 5612 ns 71074 +Then/Folly/16/2/real_time 17767 ns 9441 ns 39503 +Then/Folly/32/2/real_time 30080 ns 17249 ns 22032 +Then/Folly/64/2/real_time 56798 ns 32621 ns 12481 +Then/BoostThread/0/0/real_time 556 ns 555 ns 1245226 +Then/BoostThread/1/0/real_time 1187 ns 1187 ns 590052 +Then/BoostThread/2/0/real_time 1824 ns 1823 ns 383706 +Then/BoostThread/4/0/real_time 3077 ns 3076 ns 227665 +Then/BoostThread/8/0/real_time 5595 ns 5590 ns 125550 +Then/BoostThread/16/0/real_time 10635 ns 10632 ns 65850 +Then/BoostThread/32/0/real_time 20643 ns 20627 ns 33838 +Then/BoostThread/64/0/real_time 40624 ns 40610 ns 17181 +Then/BoostThread/0/1/real_time 6222 ns 3711 ns 112102 +Then/BoostThread/1/1/real_time 7296 ns 4677 ns 100751 +Then/BoostThread/2/1/real_time 7759 ns 5436 ns 89949 +Then/BoostThread/4/1/real_time 9155 ns 6879 ns 74880 +Then/BoostThread/8/1/real_time 13233 ns 10797 ns 54681 +Then/BoostThread/16/1/real_time 25598 ns 23510 ns 27716 +Then/BoostThread/32/1/real_time 43678 ns 41564 ns 16044 +Then/BoostThread/64/1/real_time 77199 ns 74989 ns 9219 +Then/BoostThread/0/2/real_time 6362 ns 3801 ns 110915 +Then/BoostThread/1/2/real_time 8415 ns 5279 ns 83560 +Then/BoostThread/2/2/real_time 9828 ns 6765 ns 71315 +Then/BoostThread/4/2/real_time 15130 ns 10275 ns 46437 +Then/BoostThread/8/2/real_time 23938 ns 16504 ns 29340 +Then/BoostThread/16/2/real_time 39916 ns 27892 ns 17556 +Then/BoostThread/32/2/real_time 69197 ns 48924 ns 14886 +Then/BoostThread/64/2/real_time 136685 ns 98972 ns 5109 +ComplexBlob/YACLib/0/real_time 12519 ns 12516 ns 56668 +ComplexBlob/Folly/0/real_time 33217 ns 33207 ns 20994 +ComplexBlob/BoostThread/0/real_time 98388 ns 91866 ns 7095 +ComplexBlob/YACLib/2/real_time 11938 ns 11934 ns 57446 +ComplexBlob/Folly/2/real_time 33478 ns 33469 ns 20703 +ComplexBlob/BoostThread/2/real_time 98479 ns 91859 ns 7044 +ComplexBlob/YACLib/4/real_time 11054 ns 11051 ns 61572 +ComplexBlob/Folly/4/real_time 33888 ns 33878 ns 20531 +ComplexBlob/BoostThread/4/real_time 98606 ns 92032 ns 7062 +ComplexBlob/YACLib/8/real_time 10712 ns 10709 ns 64510 +ComplexBlob/Folly/8/real_time 33671 ns 33647 ns 20826 +ComplexBlob/BoostThread/8/real_time 98838 ns 92107 ns 7109 +ComplexBlob/YACLib/16/real_time 11385 ns 11381 ns 60270 +ComplexBlob/Folly/16/real_time 33703 ns 33690 ns 20615 +ComplexBlob/BoostThread/16/real_time 98359 ns 91475 ns 7095 +ComplexBlob/YACLib/32/real_time 11481 ns 11478 ns 60345 +ComplexBlob/Folly/32/real_time 33635 ns 33625 ns 20811 +ComplexBlob/BoostThread/32/real_time 99484 ns 92760 ns 6868 +ComplexBlob/YACLib/64/real_time 12244 ns 12241 ns 57938 +ComplexBlob/Folly/64/real_time 33233 ns 33222 ns 21215 +ComplexBlob/BoostThread/64/real_time 99383 ns 92604 ns 6983 +ComplexBlob/YACLib/128/real_time 14026 ns 14023 ns 49703 +ComplexBlob/Folly/128/real_time 35297 ns 35288 ns 19739 +ComplexBlob/BoostThread/128/real_time 99154 ns 92405 ns 6874 +ComplexBlob/YACLib/256/real_time 13538 ns 13534 ns 51392 +ComplexBlob/Folly/256/real_time 35927 ns 35917 ns 19471 +ComplexBlob/BoostThread/256/real_time 99650 ns 92748 ns 6909 +ComplexBlob/YACLib/512/real_time 20331 ns 20325 ns 34097 +ComplexBlob/Folly/512/real_time 45661 ns 45646 ns 15347 +ComplexBlob/BoostThread/512/real_time 104918 ns 98320 ns 6592 +ComplexBlob/YACLib/1024/real_time 30972 ns 30964 ns 22571 +ComplexBlob/Folly/1024/real_time 52078 ns 52061 ns 13422 +ComplexBlob/BoostThread/1024/real_time 128506 ns 121194 ns 5449 +ComplexBlob/YACLib/2048/real_time 33421 ns 33411 ns 20933 +ComplexBlob/Folly/2048/real_time 57463 ns 57446 ns 12201 +ComplexBlob/BoostThread/2048/real_time 132999 ns 126415 ns 5157 +ComplexBlob/YACLib/4096/real_time 43310 ns 43298 ns 16183 +ComplexBlob/Folly/4096/real_time 90423 ns 90386 ns 7747 +ComplexBlob/BoostThread/4096/real_time 145929 ns 138628 ns 4703 +ComplexBlob/YACLib/8192/real_time 98164 ns 98118 ns 7079 +ComplexBlob/Folly/8192/real_time 175384 ns 175292 ns 3990 +ComplexBlob/BoostThread/8192/real_time 189308 ns 182120 ns 3693 +NoContention/YACLib/real_time 553765 ns 273098 ns 1253 +NoContention/Folly/real_time 1234327 ns 565901 ns 569 +NoContention/BoostThread/real_time 6389211 ns 3720666 ns 109 +Contention/YACLib/real_time 880683 ns 189365 ns 806 +Contention/Folly/real_time 3039814 ns 645325 ns 227 +Contention/BoostThread/real_time 6182179 ns 2240055 ns 115 ``` diff --git a/future/result/Ryzen_7_3700X/clang_libcxx/data.json b/future/result/Ryzen_7_3700X/clang_libcxx/data.json index 1f03666..0f815bb 100644 --- a/future/result/Ryzen_7_3700X/clang_libcxx/data.json +++ b/future/result/Ryzen_7_3700X/clang_libcxx/data.json @@ -37,10 +37,10 @@ }, "benchmarks": [ { - "name": "ConstantFuture(Std)/real_time", + "name": "ConstantFuture/Std/real_time", "family_index": 0, "per_family_instance_index": 0, - "run_name": "ConstantFuture(Std)/real_time", + "run_name": "ConstantFuture//real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -51,10 +51,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(YACLib)/real_time", + "name": "ConstantFuture/YACLib/real_time", "family_index": 1, "per_family_instance_index": 0, - "run_name": "ConstantFuture(YACLib)/real_time", + "run_name": "ConstantFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -65,10 +65,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(Std)/real_time", + "name": "PromiseAndFuture/Std/real_time", "family_index": 2, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(Std)/real_time", + "run_name": "PromiseAndFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -79,10 +79,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(YACLib)/real_time", + "name": "PromiseAndFuture/YACLib/real_time", "family_index": 3, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(YACLib)/real_time", + "run_name": "PromiseAndFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -93,10 +93,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/0/real_time", + "name": "Then/YACLib/0/0/real_time", "family_index": 4, "per_family_instance_index": 0, - "run_name": "Then(YACLib)/0/0/real_time", + "run_name": "Then/YACLib/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -107,10 +107,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/0/real_time", + "name": "Then/YACLib/1/0/real_time", "family_index": 4, "per_family_instance_index": 1, - "run_name": "Then(YACLib)/1/0/real_time", + "run_name": "Then/YACLib/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -121,10 +121,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/0/real_time", + "name": "Then/YACLib/2/0/real_time", "family_index": 4, "per_family_instance_index": 2, - "run_name": "Then(YACLib)/2/0/real_time", + "run_name": "Then/YACLib/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -135,10 +135,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/0/real_time", + "name": "Then/YACLib/4/0/real_time", "family_index": 4, "per_family_instance_index": 3, - "run_name": "Then(YACLib)/4/0/real_time", + "run_name": "Then/YACLib/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -149,10 +149,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/0/real_time", + "name": "Then/YACLib/8/0/real_time", "family_index": 4, "per_family_instance_index": 4, - "run_name": "Then(YACLib)/8/0/real_time", + "run_name": "Then/YACLib/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -163,10 +163,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/0/real_time", + "name": "Then/YACLib/16/0/real_time", "family_index": 4, "per_family_instance_index": 5, - "run_name": "Then(YACLib)/16/0/real_time", + "run_name": "Then/YACLib/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -177,10 +177,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/0/real_time", + "name": "Then/YACLib/32/0/real_time", "family_index": 4, "per_family_instance_index": 6, - "run_name": "Then(YACLib)/32/0/real_time", + "run_name": "Then/YACLib/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -191,10 +191,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/0/real_time", + "name": "Then/YACLib/64/0/real_time", "family_index": 4, "per_family_instance_index": 7, - "run_name": "Then(YACLib)/64/0/real_time", + "run_name": "Then/YACLib/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -205,10 +205,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/1/real_time", + "name": "Then/YACLib/0/1/real_time", "family_index": 4, "per_family_instance_index": 8, - "run_name": "Then(YACLib)/0/1/real_time", + "run_name": "Then/YACLib/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -219,10 +219,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/1/real_time", + "name": "Then/YACLib/1/1/real_time", "family_index": 4, "per_family_instance_index": 9, - "run_name": "Then(YACLib)/1/1/real_time", + "run_name": "Then/YACLib/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -233,10 +233,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/1/real_time", + "name": "Then/YACLib/2/1/real_time", "family_index": 4, "per_family_instance_index": 10, - "run_name": "Then(YACLib)/2/1/real_time", + "run_name": "Then/YACLib/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -247,10 +247,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/1/real_time", + "name": "Then/YACLib/4/1/real_time", "family_index": 4, "per_family_instance_index": 11, - "run_name": "Then(YACLib)/4/1/real_time", + "run_name": "Then/YACLib/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -261,10 +261,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/1/real_time", + "name": "Then/YACLib/8/1/real_time", "family_index": 4, "per_family_instance_index": 12, - "run_name": "Then(YACLib)/8/1/real_time", + "run_name": "Then/YACLib/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -275,10 +275,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/1/real_time", + "name": "Then/YACLib/16/1/real_time", "family_index": 4, "per_family_instance_index": 13, - "run_name": "Then(YACLib)/16/1/real_time", + "run_name": "Then/YACLib/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -289,10 +289,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/1/real_time", + "name": "Then/YACLib/32/1/real_time", "family_index": 4, "per_family_instance_index": 14, - "run_name": "Then(YACLib)/32/1/real_time", + "run_name": "Then/YACLib/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -303,10 +303,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/1/real_time", + "name": "Then/YACLib/64/1/real_time", "family_index": 4, "per_family_instance_index": 15, - "run_name": "Then(YACLib)/64/1/real_time", + "run_name": "Then/YACLib/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -317,10 +317,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/2/real_time", + "name": "Then/YACLib/0/2/real_time", "family_index": 4, "per_family_instance_index": 16, - "run_name": "Then(YACLib)/0/2/real_time", + "run_name": "Then/YACLib/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -331,10 +331,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/2/real_time", + "name": "Then/YACLib/1/2/real_time", "family_index": 4, "per_family_instance_index": 17, - "run_name": "Then(YACLib)/1/2/real_time", + "run_name": "Then/YACLib/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -345,10 +345,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/2/real_time", + "name": "Then/YACLib/2/2/real_time", "family_index": 4, "per_family_instance_index": 18, - "run_name": "Then(YACLib)/2/2/real_time", + "run_name": "Then/YACLib/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -359,10 +359,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/2/real_time", + "name": "Then/YACLib/4/2/real_time", "family_index": 4, "per_family_instance_index": 19, - "run_name": "Then(YACLib)/4/2/real_time", + "run_name": "Then/YACLib/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -373,10 +373,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/2/real_time", + "name": "Then/YACLib/8/2/real_time", "family_index": 4, "per_family_instance_index": 20, - "run_name": "Then(YACLib)/8/2/real_time", + "run_name": "Then/YACLib/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -387,10 +387,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/2/real_time", + "name": "Then/YACLib/16/2/real_time", "family_index": 4, "per_family_instance_index": 21, - "run_name": "Then(YACLib)/16/2/real_time", + "run_name": "Then/YACLib/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -401,10 +401,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/2/real_time", + "name": "Then/YACLib/32/2/real_time", "family_index": 4, "per_family_instance_index": 22, - "run_name": "Then(YACLib)/32/2/real_time", + "run_name": "Then/YACLib/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -415,10 +415,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/2/real_time", + "name": "Then/YACLib/64/2/real_time", "family_index": 4, "per_family_instance_index": 23, - "run_name": "Then(YACLib)/64/2/real_time", + "run_name": "Then/YACLib/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -429,10 +429,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/0/real_time", + "name": "ComplexBlob/YACLib/0/real_time", "family_index": 5, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/0/real_time", + "run_name": "ComplexBlob/YACLib/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -443,10 +443,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2/real_time", + "name": "ComplexBlob/YACLib/2/real_time", "family_index": 6, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2/real_time", + "run_name": "ComplexBlob/YACLib/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -457,10 +457,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4/real_time", + "name": "ComplexBlob/YACLib/4/real_time", "family_index": 7, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4/real_time", + "run_name": "ComplexBlob/YACLib/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -471,10 +471,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8/real_time", + "name": "ComplexBlob/YACLib/8/real_time", "family_index": 8, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8/real_time", + "run_name": "ComplexBlob/YACLib/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -485,10 +485,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/16/real_time", + "name": "ComplexBlob/YACLib/16/real_time", "family_index": 9, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/16/real_time", + "run_name": "ComplexBlob/YACLib/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -499,10 +499,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/32/real_time", + "name": "ComplexBlob/YACLib/32/real_time", "family_index": 10, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/32/real_time", + "run_name": "ComplexBlob/YACLib/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -513,10 +513,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/64/real_time", + "name": "ComplexBlob/YACLib/64/real_time", "family_index": 11, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/64/real_time", + "run_name": "ComplexBlob/YACLib/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -527,10 +527,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/128/real_time", + "name": "ComplexBlob/YACLib/128/real_time", "family_index": 12, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/128/real_time", + "run_name": "ComplexBlob/YACLib/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -541,10 +541,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/256/real_time", + "name": "ComplexBlob/YACLib/256/real_time", "family_index": 13, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/256/real_time", + "run_name": "ComplexBlob/YACLib/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -555,10 +555,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/512/real_time", + "name": "ComplexBlob/YACLib/512/real_time", "family_index": 14, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/512/real_time", + "run_name": "ComplexBlob/YACLib/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -569,10 +569,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/1024/real_time", + "name": "ComplexBlob/YACLib/1024/real_time", "family_index": 15, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/1024/real_time", + "run_name": "ComplexBlob/YACLib/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -583,10 +583,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2048/real_time", + "name": "ComplexBlob/YACLib/2048/real_time", "family_index": 16, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2048/real_time", + "run_name": "ComplexBlob/YACLib/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -597,10 +597,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4096/real_time", + "name": "ComplexBlob/YACLib/4096/real_time", "family_index": 17, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4096/real_time", + "run_name": "ComplexBlob/YACLib/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -611,10 +611,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8192/real_time", + "name": "ComplexBlob/YACLib/8192/real_time", "family_index": 18, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8192/real_time", + "run_name": "ComplexBlob/YACLib/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -625,10 +625,10 @@ "time_unit": "ns" }, { - "name": "NoContention(YACLib)/real_time", + "name": "NoContention/YACLib/real_time", "family_index": 19, "per_family_instance_index": 0, - "run_name": "NoContention(YACLib)/real_time", + "run_name": "NoContention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -639,10 +639,10 @@ "time_unit": "ns" }, { - "name": "Contention(YACLib)/real_time", + "name": "Contention/YACLib/real_time", "family_index": 20, "per_family_instance_index": 0, - "run_name": "Contention(YACLib)/real_time", + "run_name": "Contention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, diff --git a/future/result/Ryzen_7_3700X/clang_libcxx/picture/ComplexBlob.svg b/future/result/Ryzen_7_3700X/clang_libcxx/picture/ComplexBlob.svg new file mode 100644 index 0000000..f7c0f7f --- /dev/null +++ b/future/result/Ryzen_7_3700X/clang_libcxx/picture/ComplexBlob.svg @@ -0,0 +1,784 @@ + + + + + + + + 2022-04-10T19:11:47.640219 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_7_3700X/clang_libcxx/picture/ConstantFuture.svg b/future/result/Ryzen_7_3700X/clang_libcxx/picture/ConstantFuture.svg new file mode 100644 index 0000000..7244665 --- /dev/null +++ b/future/result/Ryzen_7_3700X/clang_libcxx/picture/ConstantFuture.svg @@ -0,0 +1,752 @@ + + + + + + + + 2022-04-10T19:11:46.947150 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_7_3700X/clang_libcxx/picture/Contention.svg b/future/result/Ryzen_7_3700X/clang_libcxx/picture/Contention.svg new file mode 100644 index 0000000..6a9e3c4 --- /dev/null +++ b/future/result/Ryzen_7_3700X/clang_libcxx/picture/Contention.svg @@ -0,0 +1,588 @@ + + + + + + + + 2022-04-10T19:11:47.879761 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_7_3700X/clang_libcxx/picture/NoContention.svg b/future/result/Ryzen_7_3700X/clang_libcxx/picture/NoContention.svg new file mode 100644 index 0000000..b7d3c1e --- /dev/null +++ b/future/result/Ryzen_7_3700X/clang_libcxx/picture/NoContention.svg @@ -0,0 +1,675 @@ + + + + + + + + 2022-04-10T19:11:47.755627 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_7_3700X/clang_libcxx/picture/PromiseAndFuture.svg b/future/result/Ryzen_7_3700X/clang_libcxx/picture/PromiseAndFuture.svg new file mode 100644 index 0000000..881731f --- /dev/null +++ b/future/result/Ryzen_7_3700X/clang_libcxx/picture/PromiseAndFuture.svg @@ -0,0 +1,829 @@ + + + + + + + + 2022-04-10T19:11:47.068757 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_7_3700X/clang_libcxx/picture/ThenAllInline.svg b/future/result/Ryzen_7_3700X/clang_libcxx/picture/ThenAllInline.svg new file mode 100644 index 0000000..7da9518 --- /dev/null +++ b/future/result/Ryzen_7_3700X/clang_libcxx/picture/ThenAllInline.svg @@ -0,0 +1,729 @@ + + + + + + + + 2022-04-10T19:11:47.195906 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_7_3700X/clang_libcxx/picture/ThenOneInline.svg b/future/result/Ryzen_7_3700X/clang_libcxx/picture/ThenOneInline.svg new file mode 100644 index 0000000..699c244 --- /dev/null +++ b/future/result/Ryzen_7_3700X/clang_libcxx/picture/ThenOneInline.svg @@ -0,0 +1,716 @@ + + + + + + + + 2022-04-10T19:11:47.323992 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_7_3700X/clang_libcxx/picture/ThenScheduler.svg b/future/result/Ryzen_7_3700X/clang_libcxx/picture/ThenScheduler.svg new file mode 100644 index 0000000..6db7fb5 --- /dev/null +++ b/future/result/Ryzen_7_3700X/clang_libcxx/picture/ThenScheduler.svg @@ -0,0 +1,809 @@ + + + + + + + + 2022-04-10T19:11:47.454807 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_7_3700X/clang_libstdcxx/data.json b/future/result/Ryzen_7_3700X/clang_libstdcxx/data.json index b0d4a57..fd3cacc 100644 --- a/future/result/Ryzen_7_3700X/clang_libstdcxx/data.json +++ b/future/result/Ryzen_7_3700X/clang_libstdcxx/data.json @@ -37,10 +37,10 @@ }, "benchmarks": [ { - "name": "ConstantFuture(Std)/real_time", + "name": "ConstantFuture/Std/real_time", "family_index": 0, "per_family_instance_index": 0, - "run_name": "ConstantFuture(Std)/real_time", + "run_name": "ConstantFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -51,10 +51,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(YACLib)/real_time", + "name": "ConstantFuture/YACLib/real_time", "family_index": 1, "per_family_instance_index": 0, - "run_name": "ConstantFuture(YACLib)/real_time", + "run_name": "ConstantFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -65,10 +65,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(Folly)/real_time", + "name": "ConstantFuture/Folly/real_time", "family_index": 2, "per_family_instance_index": 0, - "run_name": "ConstantFuture(Folly)/real_time", + "run_name": "ConstantFuture/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -79,10 +79,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(BoostThread)/real_time", + "name": "ConstantFuture/BoostThread/real_time", "family_index": 3, "per_family_instance_index": 0, - "run_name": "ConstantFuture(BoostThread)/real_time", + "run_name": "ConstantFuture/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -93,10 +93,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(Std)/real_time", + "name": "PromiseAndFuture/Std/real_time", "family_index": 4, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(Std)/real_time", + "run_name": "PromiseAndFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -107,10 +107,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(YACLib)/real_time", + "name": "PromiseAndFuture/YACLib/real_time", "family_index": 5, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(YACLib)/real_time", + "run_name": "PromiseAndFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -121,10 +121,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(Folly)/real_time", + "name": "PromiseAndFuture/Folly/real_time", "family_index": 6, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(Folly)/real_time", + "run_name": "PromiseAndFuture/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -135,10 +135,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(BoostThread)/real_time", + "name": "PromiseAndFuture/BoostThread/real_time", "family_index": 7, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(BoostThread)/real_time", + "run_name": "PromiseAndFuture/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -149,10 +149,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/0/real_time", + "name": "Then/YACLib/0/0/real_time", "family_index": 8, "per_family_instance_index": 0, - "run_name": "Then(YACLib)/0/0/real_time", + "run_name": "Then/YACLib/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -163,10 +163,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/0/real_time", + "name": "Then/YACLib/1/0/real_time", "family_index": 8, "per_family_instance_index": 1, - "run_name": "Then(YACLib)/1/0/real_time", + "run_name": "Then/YACLib/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -177,10 +177,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/0/real_time", + "name": "Then/YACLib/2/0/real_time", "family_index": 8, "per_family_instance_index": 2, - "run_name": "Then(YACLib)/2/0/real_time", + "run_name": "Then/YACLib/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -191,10 +191,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/0/real_time", + "name": "Then/YACLib/4/0/real_time", "family_index": 8, "per_family_instance_index": 3, - "run_name": "Then(YACLib)/4/0/real_time", + "run_name": "Then/YACLib/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -205,10 +205,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/0/real_time", + "name": "Then/YACLib/8/0/real_time", "family_index": 8, "per_family_instance_index": 4, - "run_name": "Then(YACLib)/8/0/real_time", + "run_name": "Then/YACLib/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -219,10 +219,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/0/real_time", + "name": "Then/YACLib/16/0/real_time", "family_index": 8, "per_family_instance_index": 5, - "run_name": "Then(YACLib)/16/0/real_time", + "run_name": "Then/YACLib/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -233,10 +233,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/0/real_time", + "name": "Then/YACLib/32/0/real_time", "family_index": 8, "per_family_instance_index": 6, - "run_name": "Then(YACLib)/32/0/real_time", + "run_name": "Then/YACLib/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -247,10 +247,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/0/real_time", + "name": "Then/YACLib/64/0/real_time", "family_index": 8, "per_family_instance_index": 7, - "run_name": "Then(YACLib)/64/0/real_time", + "run_name": "Then/YACLib/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -261,10 +261,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/1/real_time", + "name": "Then/YACLib/0/1/real_time", "family_index": 8, "per_family_instance_index": 8, - "run_name": "Then(YACLib)/0/1/real_time", + "run_name": "Then/YACLib/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -275,10 +275,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/1/real_time", + "name": "Then/YACLib/1/1/real_time", "family_index": 8, "per_family_instance_index": 9, - "run_name": "Then(YACLib)/1/1/real_time", + "run_name": "Then/YACLib/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -289,10 +289,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/1/real_time", + "name": "Then/YACLib/2/1/real_time", "family_index": 8, "per_family_instance_index": 10, - "run_name": "Then(YACLib)/2/1/real_time", + "run_name": "Then/YACLib/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -303,10 +303,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/1/real_time", + "name": "Then/YACLib/4/1/real_time", "family_index": 8, "per_family_instance_index": 11, - "run_name": "Then(YACLib)/4/1/real_time", + "run_name": "Then/YACLib/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -317,10 +317,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/1/real_time", + "name": "Then/YACLib/8/1/real_time", "family_index": 8, "per_family_instance_index": 12, - "run_name": "Then(YACLib)/8/1/real_time", + "run_name": "Then/YACLib/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -331,10 +331,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/1/real_time", + "name": "Then/YACLib/16/1/real_time", "family_index": 8, "per_family_instance_index": 13, - "run_name": "Then(YACLib)/16/1/real_time", + "run_name": "Then/YACLib/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -345,10 +345,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/1/real_time", + "name": "Then/YACLib/32/1/real_time", "family_index": 8, "per_family_instance_index": 14, - "run_name": "Then(YACLib)/32/1/real_time", + "run_name": "Then/YACLib/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -359,10 +359,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/1/real_time", + "name": "Then/YACLib/64/1/real_time", "family_index": 8, "per_family_instance_index": 15, - "run_name": "Then(YACLib)/64/1/real_time", + "run_name": "Then/YACLib/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -373,10 +373,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/2/real_time", + "name": "Then/YACLib/0/2/real_time", "family_index": 8, "per_family_instance_index": 16, - "run_name": "Then(YACLib)/0/2/real_time", + "run_name": "Then/YACLib/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -387,10 +387,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/2/real_time", + "name": "Then/YACLib/1/2/real_time", "family_index": 8, "per_family_instance_index": 17, - "run_name": "Then(YACLib)/1/2/real_time", + "run_name": "Then/YACLib/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -401,10 +401,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/2/real_time", + "name": "Then/YACLib/2/2/real_time", "family_index": 8, "per_family_instance_index": 18, - "run_name": "Then(YACLib)/2/2/real_time", + "run_name": "Then/YACLib/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -415,10 +415,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/2/real_time", + "name": "Then/YACLib/4/2/real_time", "family_index": 8, "per_family_instance_index": 19, - "run_name": "Then(YACLib)/4/2/real_time", + "run_name": "Then/YACLib/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -429,10 +429,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/2/real_time", + "name": "Then/YACLib/8/2/real_time", "family_index": 8, "per_family_instance_index": 20, - "run_name": "Then(YACLib)/8/2/real_time", + "run_name": "Then/YACLib/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -443,10 +443,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/2/real_time", + "name": "Then/YACLib/16/2/real_time", "family_index": 8, "per_family_instance_index": 21, - "run_name": "Then(YACLib)/16/2/real_time", + "run_name": "Then/YACLib/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -457,10 +457,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/2/real_time", + "name": "Then/YACLib/32/2/real_time", "family_index": 8, "per_family_instance_index": 22, - "run_name": "Then(YACLib)/32/2/real_time", + "run_name": "Then/YACLib/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -471,10 +471,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/2/real_time", + "name": "Then/YACLib/64/2/real_time", "family_index": 8, "per_family_instance_index": 23, - "run_name": "Then(YACLib)/64/2/real_time", + "run_name": "Then/YACLib/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -485,10 +485,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/0/real_time", + "name": "Then/Folly/0/0/real_time", "family_index": 9, "per_family_instance_index": 0, - "run_name": "Then(Folly)/0/0/real_time", + "run_name": "Then/Folly/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -499,10 +499,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/0/real_time", + "name": "Then/Folly/1/0/real_time", "family_index": 9, "per_family_instance_index": 1, - "run_name": "Then(Folly)/1/0/real_time", + "run_name": "Then/Folly/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -513,10 +513,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/0/real_time", + "name": "Then/Folly/2/0/real_time", "family_index": 9, "per_family_instance_index": 2, - "run_name": "Then(Folly)/2/0/real_time", + "run_name": "Then/Folly/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -527,10 +527,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/0/real_time", + "name": "Then/Folly/4/0/real_time", "family_index": 9, "per_family_instance_index": 3, - "run_name": "Then(Folly)/4/0/real_time", + "run_name": "Then/Folly/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -541,10 +541,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/0/real_time", + "name": "Then/Folly/8/0/real_time", "family_index": 9, "per_family_instance_index": 4, - "run_name": "Then(Folly)/8/0/real_time", + "run_name": "Then/Folly/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -555,10 +555,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/0/real_time", + "name": "Then/Folly/16/0/real_time", "family_index": 9, "per_family_instance_index": 5, - "run_name": "Then(Folly)/16/0/real_time", + "run_name": "Then/Folly/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -569,10 +569,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/0/real_time", + "name": "Then/Folly/32/0/real_time", "family_index": 9, "per_family_instance_index": 6, - "run_name": "Then(Folly)/32/0/real_time", + "run_name": "Then/Folly/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -583,10 +583,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/0/real_time", + "name": "Then/Folly/64/0/real_time", "family_index": 9, "per_family_instance_index": 7, - "run_name": "Then(Folly)/64/0/real_time", + "run_name": "Then/Folly/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -597,10 +597,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/1/real_time", + "name": "Then/Folly/0/1/real_time", "family_index": 9, "per_family_instance_index": 8, - "run_name": "Then(Folly)/0/1/real_time", + "run_name": "Then/Folly/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -611,10 +611,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/1/real_time", + "name": "Then/Folly/1/1/real_time", "family_index": 9, "per_family_instance_index": 9, - "run_name": "Then(Folly)/1/1/real_time", + "run_name": "Then/Folly/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -625,10 +625,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/1/real_time", + "name": "Then/Folly/2/1/real_time", "family_index": 9, "per_family_instance_index": 10, - "run_name": "Then(Folly)/2/1/real_time", + "run_name": "Then/Folly/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -639,10 +639,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/1/real_time", + "name": "Then/Folly/4/1/real_time", "family_index": 9, "per_family_instance_index": 11, - "run_name": "Then(Folly)/4/1/real_time", + "run_name": "Then/Folly/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -653,10 +653,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/1/real_time", + "name": "Then/Folly/8/1/real_time", "family_index": 9, "per_family_instance_index": 12, - "run_name": "Then(Folly)/8/1/real_time", + "run_name": "Then/Folly/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -667,10 +667,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/1/real_time", + "name": "Then/Folly/16/1/real_time", "family_index": 9, "per_family_instance_index": 13, - "run_name": "Then(Folly)/16/1/real_time", + "run_name": "Then/Folly/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -681,10 +681,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/1/real_time", + "name": "Then/Folly/32/1/real_time", "family_index": 9, "per_family_instance_index": 14, - "run_name": "Then(Folly)/32/1/real_time", + "run_name": "Then/Folly/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -695,10 +695,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/1/real_time", + "name": "Then/Folly/64/1/real_time", "family_index": 9, "per_family_instance_index": 15, - "run_name": "Then(Folly)/64/1/real_time", + "run_name": "Then/Folly/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -709,10 +709,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/2/real_time", + "name": "Then/Folly/0/2/real_time", "family_index": 9, "per_family_instance_index": 16, - "run_name": "Then(Folly)/0/2/real_time", + "run_name": "Then/Folly/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -723,10 +723,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/2/real_time", + "name": "Then/Folly/1/2/real_time", "family_index": 9, "per_family_instance_index": 17, - "run_name": "Then(Folly)/1/2/real_time", + "run_name": "Then/Folly/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -737,10 +737,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/2/real_time", + "name": "Then/Folly/2/2/real_time", "family_index": 9, "per_family_instance_index": 18, - "run_name": "Then(Folly)/2/2/real_time", + "run_name": "Then/Folly/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -751,10 +751,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/2/real_time", + "name": "Then/Folly/4/2/real_time", "family_index": 9, "per_family_instance_index": 19, - "run_name": "Then(Folly)/4/2/real_time", + "run_name": "Then/Folly/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -765,10 +765,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/2/real_time", + "name": "Then/Folly/8/2/real_time", "family_index": 9, "per_family_instance_index": 20, - "run_name": "Then(Folly)/8/2/real_time", + "run_name": "Then/Folly/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -779,10 +779,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/2/real_time", + "name": "Then/Folly/16/2/real_time", "family_index": 9, "per_family_instance_index": 21, - "run_name": "Then(Folly)/16/2/real_time", + "run_name": "Then/Folly/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -793,10 +793,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/2/real_time", + "name": "Then/Folly/32/2/real_time", "family_index": 9, "per_family_instance_index": 22, - "run_name": "Then(Folly)/32/2/real_time", + "run_name": "Then/Folly/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -807,10 +807,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/2/real_time", + "name": "Then/Folly/64/2/real_time", "family_index": 9, "per_family_instance_index": 23, - "run_name": "Then(Folly)/64/2/real_time", + "run_name": "Then/Folly/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -821,10 +821,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/0/real_time", + "name": "Then/BoostThread/0/0/real_time", "family_index": 10, "per_family_instance_index": 0, - "run_name": "Then(BoostThread)/0/0/real_time", + "run_name": "Then/BoostThread/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -835,10 +835,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/0/real_time", + "name": "Then/BoostThread/1/0/real_time", "family_index": 10, "per_family_instance_index": 1, - "run_name": "Then(BoostThread)/1/0/real_time", + "run_name": "Then/BoostThread/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -849,10 +849,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/0/real_time", + "name": "Then/BoostThread/2/0/real_time", "family_index": 10, "per_family_instance_index": 2, - "run_name": "Then(BoostThread)/2/0/real_time", + "run_name": "Then/BoostThread/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -863,10 +863,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/0/real_time", + "name": "Then/BoostThread/4/0/real_time", "family_index": 10, "per_family_instance_index": 3, - "run_name": "Then(BoostThread)/4/0/real_time", + "run_name": "Then/BoostThread/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -877,10 +877,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/0/real_time", + "name": "Then/BoostThread/8/0/real_time", "family_index": 10, "per_family_instance_index": 4, - "run_name": "Then(BoostThread)/8/0/real_time", + "run_name": "Then/BoostThread/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -891,10 +891,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/0/real_time", + "name": "Then/BoostThread/16/0/real_time", "family_index": 10, "per_family_instance_index": 5, - "run_name": "Then(BoostThread)/16/0/real_time", + "run_name": "Then/BoostThread/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -905,10 +905,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/0/real_time", + "name": "Then/BoostThread/32/0/real_time", "family_index": 10, "per_family_instance_index": 6, - "run_name": "Then(BoostThread)/32/0/real_time", + "run_name": "Then/BoostThread/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -919,10 +919,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/0/real_time", + "name": "Then/BoostThread/64/0/real_time", "family_index": 10, "per_family_instance_index": 7, - "run_name": "Then(BoostThread)/64/0/real_time", + "run_name": "Then/BoostThread/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -933,10 +933,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/1/real_time", + "name": "Then/BoostThread/0/1/real_time", "family_index": 10, "per_family_instance_index": 8, - "run_name": "Then(BoostThread)/0/1/real_time", + "run_name": "Then/BoostThread/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -947,10 +947,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/1/real_time", + "name": "Then/BoostThread/1/1/real_time", "family_index": 10, "per_family_instance_index": 9, - "run_name": "Then(BoostThread)/1/1/real_time", + "run_name": "Then/BoostThread/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -961,10 +961,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/1/real_time", + "name": "Then/BoostThread/2/1/real_time", "family_index": 10, "per_family_instance_index": 10, - "run_name": "Then(BoostThread)/2/1/real_time", + "run_name": "Then/BoostThread/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -975,10 +975,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/1/real_time", + "name": "Then/BoostThread/4/1/real_time", "family_index": 10, "per_family_instance_index": 11, - "run_name": "Then(BoostThread)/4/1/real_time", + "run_name": "Then/BoostThread/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -989,10 +989,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/1/real_time", + "name": "Then/BoostThread/8/1/real_time", "family_index": 10, "per_family_instance_index": 12, - "run_name": "Then(BoostThread)/8/1/real_time", + "run_name": "Then/BoostThread/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1003,10 +1003,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/1/real_time", + "name": "Then/BoostThread/16/1/real_time", "family_index": 10, "per_family_instance_index": 13, - "run_name": "Then(BoostThread)/16/1/real_time", + "run_name": "Then/BoostThread/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1017,10 +1017,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/1/real_time", + "name": "Then/BoostThread/32/1/real_time", "family_index": 10, "per_family_instance_index": 14, - "run_name": "Then(BoostThread)/32/1/real_time", + "run_name": "Then/BoostThread/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1031,10 +1031,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/1/real_time", + "name": "Then/BoostThread/64/1/real_time", "family_index": 10, "per_family_instance_index": 15, - "run_name": "Then(BoostThread)/64/1/real_time", + "run_name": "Then/BoostThread/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1045,10 +1045,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/2/real_time", + "name": "Then/BoostThread/0/2/real_time", "family_index": 10, "per_family_instance_index": 16, - "run_name": "Then(BoostThread)/0/2/real_time", + "run_name": "Then/BoostThread/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1059,10 +1059,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/2/real_time", + "name": "Then/BoostThread/1/2/real_time", "family_index": 10, "per_family_instance_index": 17, - "run_name": "Then(BoostThread)/1/2/real_time", + "run_name": "Then/BoostThread/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1073,10 +1073,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/2/real_time", + "name": "Then/BoostThread/2/2/real_time", "family_index": 10, "per_family_instance_index": 18, - "run_name": "Then(BoostThread)/2/2/real_time", + "run_name": "Then/BoostThread/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1087,10 +1087,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/2/real_time", + "name": "Then/BoostThread/4/2/real_time", "family_index": 10, "per_family_instance_index": 19, - "run_name": "Then(BoostThread)/4/2/real_time", + "run_name": "Then/BoostThread/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1101,10 +1101,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/2/real_time", + "name": "Then/BoostThread/8/2/real_time", "family_index": 10, "per_family_instance_index": 20, - "run_name": "Then(BoostThread)/8/2/real_time", + "run_name": "Then/BoostThread/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1115,10 +1115,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/2/real_time", + "name": "Then/BoostThread/16/2/real_time", "family_index": 10, "per_family_instance_index": 21, - "run_name": "Then(BoostThread)/16/2/real_time", + "run_name": "Then/BoostThread/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1129,10 +1129,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/2/real_time", + "name": "Then/BoostThread/32/2/real_time", "family_index": 10, "per_family_instance_index": 22, - "run_name": "Then(BoostThread)/32/2/real_time", + "run_name": "Then/BoostThread/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1143,10 +1143,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/2/real_time", + "name": "Then/BoostThread/64/2/real_time", "family_index": 10, "per_family_instance_index": 23, - "run_name": "Then(BoostThread)/64/2/real_time", + "run_name": "Then/BoostThread/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1157,10 +1157,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/0/real_time", + "name": "ComplexBlob/YACLib/0/real_time", "family_index": 11, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/0/real_time", + "run_name": "ComplexBlob/YACLib/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1171,10 +1171,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/0/real_time", + "name": "ComplexBlob/Folly/0/real_time", "family_index": 12, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/0/real_time", + "run_name": "ComplexBlob/Folly/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1185,10 +1185,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/0/real_time", + "name": "ComplexBlob/BoostThread/0/real_time", "family_index": 13, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/0/real_time", + "run_name": "ComplexBlob/BoostThread/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1199,10 +1199,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2/real_time", + "name": "ComplexBlob/YACLib/2/real_time", "family_index": 14, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2/real_time", + "run_name": "ComplexBlob/YACLib/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1213,10 +1213,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/2/real_time", + "name": "ComplexBlob/Folly/2/real_time", "family_index": 15, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/2/real_time", + "run_name": "ComplexBlob/Folly/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1227,10 +1227,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/2/real_time", + "name": "ComplexBlob/BoostThread/2/real_time", "family_index": 16, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/2/real_time", + "run_name": "ComplexBlob/BoostThread/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1241,10 +1241,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4/real_time", + "name": "ComplexBlob/YACLib/4/real_time", "family_index": 17, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4/real_time", + "run_name": "ComplexBlob/YACLib/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1255,10 +1255,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/4/real_time", + "name": "ComplexBlob/Folly/4/real_time", "family_index": 18, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/4/real_time", + "run_name": "ComplexBlob/Folly/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1269,10 +1269,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/4/real_time", + "name": "ComplexBlob/BoostThread/4/real_time", "family_index": 19, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/4/real_time", + "run_name": "ComplexBlob/BoostThread/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1283,10 +1283,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8/real_time", + "name": "ComplexBlob/YACLib/8/real_time", "family_index": 20, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8/real_time", + "run_name": "ComplexBlob/YACLib/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1297,10 +1297,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/8/real_time", + "name": "ComplexBlob/Folly/8/real_time", "family_index": 21, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/8/real_time", + "run_name": "ComplexBlob/Folly/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1311,10 +1311,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/8/real_time", + "name": "ComplexBlob/BoostThread/8/real_time", "family_index": 22, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/8/real_time", + "run_name": "ComplexBlob/BoostThread/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1325,10 +1325,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/16/real_time", + "name": "ComplexBlob/YACLib/16/real_time", "family_index": 23, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/16/real_time", + "run_name": "ComplexBlob/YACLib/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1339,10 +1339,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/16/real_time", + "name": "ComplexBlob/Folly/16/real_time", "family_index": 24, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/16/real_time", + "run_name": "ComplexBlob/Folly/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1353,10 +1353,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/16/real_time", + "name": "ComplexBlob/BoostThread/16/real_time", "family_index": 25, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/16/real_time", + "run_name": "ComplexBlob/BoostThread/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1367,10 +1367,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/32/real_time", + "name": "ComplexBlob/YACLib/32/real_time", "family_index": 26, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/32/real_time", + "run_name": "ComplexBlob/YACLib/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1381,10 +1381,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/32/real_time", + "name": "ComplexBlob/Folly/32/real_time", "family_index": 27, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/32/real_time", + "run_name": "ComplexBlob/Folly/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1395,10 +1395,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/32/real_time", + "name": "ComplexBlob/BoostThread/32/real_time", "family_index": 28, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/32/real_time", + "run_name": "ComplexBlob/BoostThread/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1409,10 +1409,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/64/real_time", + "name": "ComplexBlob/YACLib/64/real_time", "family_index": 29, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/64/real_time", + "run_name": "ComplexBlob/YACLib/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1423,10 +1423,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/64/real_time", + "name": "ComplexBlob/Folly/64/real_time", "family_index": 30, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/64/real_time", + "run_name": "ComplexBlob/Folly/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1437,10 +1437,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/64/real_time", + "name": "ComplexBlob/BoostThread/64/real_time", "family_index": 31, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/64/real_time", + "run_name": "ComplexBlob/BoostThread/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1451,10 +1451,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/128/real_time", + "name": "ComplexBlob/YACLib/128/real_time", "family_index": 32, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/128/real_time", + "run_name": "ComplexBlob/YACLib/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1465,10 +1465,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/128/real_time", + "name": "ComplexBlob/Folly/128/real_time", "family_index": 33, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/128/real_time", + "run_name": "ComplexBlob/Folly/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1479,10 +1479,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/128/real_time", + "name": "ComplexBlob/BoostThread/128/real_time", "family_index": 34, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/128/real_time", + "run_name": "ComplexBlob/BoostThread/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1493,10 +1493,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/256/real_time", + "name": "ComplexBlob/YACLib/256/real_time", "family_index": 35, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/256/real_time", + "run_name": "ComplexBlob/YACLib/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1507,10 +1507,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/256/real_time", + "name": "ComplexBlob/Folly/256/real_time", "family_index": 36, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/256/real_time", + "run_name": "ComplexBlob/Folly/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1521,10 +1521,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/256/real_time", + "name": "ComplexBlob/BoostThread/256/real_time", "family_index": 37, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/256/real_time", + "run_name": "ComplexBlob/BoostThread/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1535,10 +1535,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/512/real_time", + "name": "ComplexBlob/YACLib/512/real_time", "family_index": 38, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/512/real_time", + "run_name": "ComplexBlob/YACLib/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1549,10 +1549,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/512/real_time", + "name": "ComplexBlob/Folly/512/real_time", "family_index": 39, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/512/real_time", + "run_name": "ComplexBlob/Folly/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1563,10 +1563,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/512/real_time", + "name": "ComplexBlob/BoostThread/512/real_time", "family_index": 40, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/512/real_time", + "run_name": "ComplexBlob/BoostThread/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1577,10 +1577,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/1024/real_time", + "name": "ComplexBlob/YACLib/1024/real_time", "family_index": 41, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/1024/real_time", + "run_name": "ComplexBlob/YACLib/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1591,10 +1591,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/1024/real_time", + "name": "ComplexBlob/Folly/1024/real_time", "family_index": 42, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/1024/real_time", + "run_name": "ComplexBlob/Folly/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1605,10 +1605,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/1024/real_time", + "name": "ComplexBlob/BoostThread/1024/real_time", "family_index": 43, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/1024/real_time", + "run_name": "ComplexBlob/BoostThread/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1619,10 +1619,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2048/real_time", + "name": "ComplexBlob/YACLib/2048/real_time", "family_index": 44, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2048/real_time", + "run_name": "ComplexBlob/YACLib/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1633,10 +1633,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/2048/real_time", + "name": "ComplexBlob/Folly/2048/real_time", "family_index": 45, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/2048/real_time", + "run_name": "ComplexBlob/Folly/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1647,10 +1647,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/2048/real_time", + "name": "ComplexBlob/BoostThread/2048/real_time", "family_index": 46, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/2048/real_time", + "run_name": "ComplexBlob/BoostThread/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1661,10 +1661,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4096/real_time", + "name": "ComplexBlob/YACLib/4096/real_time", "family_index": 47, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4096/real_time", + "run_name": "ComplexBlob/YACLib/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1675,10 +1675,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/4096/real_time", + "name": "ComplexBlob/Folly/4096/real_time", "family_index": 48, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/4096/real_time", + "run_name": "ComplexBlob/Folly/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1689,10 +1689,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/4096/real_time", + "name": "ComplexBlob/BoostThread/4096/real_time", "family_index": 49, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/4096/real_time", + "run_name": "ComplexBlob/BoostThread/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1703,10 +1703,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8192/real_time", + "name": "ComplexBlob/YACLib/8192/real_time", "family_index": 50, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8192/real_time", + "run_name": "ComplexBlob/YACLib/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1717,10 +1717,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/8192/real_time", + "name": "ComplexBlob/Folly/8192/real_time", "family_index": 51, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/8192/real_time", + "run_name": "ComplexBlob/Folly/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1731,10 +1731,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/8192/real_time", + "name": "ComplexBlob/BoostThread/8192/real_time", "family_index": 52, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/8192/real_time", + "run_name": "ComplexBlob/BoostThread/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1745,10 +1745,10 @@ "time_unit": "ns" }, { - "name": "NoContention(YACLib)/real_time", + "name": "NoContention/YACLib/real_time", "family_index": 53, "per_family_instance_index": 0, - "run_name": "NoContention(YACLib)/real_time", + "run_name": "NoContention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1759,10 +1759,10 @@ "time_unit": "ns" }, { - "name": "NoContention(Folly)/real_time", + "name": "NoContention/Folly/real_time", "family_index": 54, "per_family_instance_index": 0, - "run_name": "NoContention(Folly)/real_time", + "run_name": "NoContention/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1773,10 +1773,10 @@ "time_unit": "ns" }, { - "name": "NoContention(BoostThread)/real_time", + "name": "NoContention/BoostThread/real_time", "family_index": 55, "per_family_instance_index": 0, - "run_name": "NoContention(BoostThread)/real_time", + "run_name": "NoContention/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1787,10 +1787,10 @@ "time_unit": "ns" }, { - "name": "Contention(YACLib)/real_time", + "name": "Contention/YACLib/real_time", "family_index": 56, "per_family_instance_index": 0, - "run_name": "Contention(YACLib)/real_time", + "run_name": "Contention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1801,10 +1801,10 @@ "time_unit": "ns" }, { - "name": "Contention(Folly)/real_time", + "name": "Contention/Folly/real_time", "family_index": 57, "per_family_instance_index": 0, - "run_name": "Contention(Folly)/real_time", + "run_name": "Contention/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1815,10 +1815,10 @@ "time_unit": "ns" }, { - "name": "Contention(BoostThread)/real_time", + "name": "Contention/BoostThread/real_time", "family_index": 58, "per_family_instance_index": 0, - "run_name": "Contention(BoostThread)/real_time", + "run_name": "Contention/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, diff --git a/future/result/Ryzen_7_3700X/clang_libstdcxx/picture/ComplexBlob.svg b/future/result/Ryzen_7_3700X/clang_libstdcxx/picture/ComplexBlob.svg new file mode 100644 index 0000000..f746382 --- /dev/null +++ b/future/result/Ryzen_7_3700X/clang_libstdcxx/picture/ComplexBlob.svg @@ -0,0 +1,1201 @@ + + + + + + + + 2022-04-10T19:11:45.320686 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_7_3700X/clang_libstdcxx/picture/ConstantFuture.svg b/future/result/Ryzen_7_3700X/clang_libstdcxx/picture/ConstantFuture.svg new file mode 100644 index 0000000..fed0a8f --- /dev/null +++ b/future/result/Ryzen_7_3700X/clang_libstdcxx/picture/ConstantFuture.svg @@ -0,0 +1,954 @@ + + + + + + + + 2022-04-10T19:11:44.403054 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_7_3700X/clang_libstdcxx/picture/Contention.svg b/future/result/Ryzen_7_3700X/clang_libstdcxx/picture/Contention.svg new file mode 100644 index 0000000..f3fe3ea --- /dev/null +++ b/future/result/Ryzen_7_3700X/clang_libstdcxx/picture/Contention.svg @@ -0,0 +1,906 @@ + + + + + + + + 2022-04-10T19:11:45.592834 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_7_3700X/clang_libstdcxx/picture/NoContention.svg b/future/result/Ryzen_7_3700X/clang_libstdcxx/picture/NoContention.svg new file mode 100644 index 0000000..332f0bf --- /dev/null +++ b/future/result/Ryzen_7_3700X/clang_libstdcxx/picture/NoContention.svg @@ -0,0 +1,921 @@ + + + + + + + + 2022-04-10T19:11:45.465146 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_7_3700X/clang_libstdcxx/picture/PromiseAndFuture.svg b/future/result/Ryzen_7_3700X/clang_libstdcxx/picture/PromiseAndFuture.svg new file mode 100644 index 0000000..2d6a4dc --- /dev/null +++ b/future/result/Ryzen_7_3700X/clang_libstdcxx/picture/PromiseAndFuture.svg @@ -0,0 +1,992 @@ + + + + + + + + 2022-04-10T19:11:44.535500 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_7_3700X/clang_libstdcxx/picture/ThenAllInline.svg b/future/result/Ryzen_7_3700X/clang_libstdcxx/picture/ThenAllInline.svg new file mode 100644 index 0000000..4bdde06 --- /dev/null +++ b/future/result/Ryzen_7_3700X/clang_libstdcxx/picture/ThenAllInline.svg @@ -0,0 +1,1101 @@ + + + + + + + + 2022-04-10T19:11:44.745150 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_7_3700X/clang_libstdcxx/picture/ThenOneInline.svg b/future/result/Ryzen_7_3700X/clang_libstdcxx/picture/ThenOneInline.svg new file mode 100644 index 0000000..dc90090 --- /dev/null +++ b/future/result/Ryzen_7_3700X/clang_libstdcxx/picture/ThenOneInline.svg @@ -0,0 +1,1208 @@ + + + + + + + + 2022-04-10T19:11:44.988541 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_7_3700X/clang_libstdcxx/picture/ThenScheduler.svg b/future/result/Ryzen_7_3700X/clang_libstdcxx/picture/ThenScheduler.svg new file mode 100644 index 0000000..8793a6e --- /dev/null +++ b/future/result/Ryzen_7_3700X/clang_libstdcxx/picture/ThenScheduler.svg @@ -0,0 +1,1149 @@ + + + + + + + + 2022-04-10T19:11:45.167215 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_7_3700X/gcc_libstdcxx/data.json b/future/result/Ryzen_7_3700X/gcc_libstdcxx/data.json index 8f8280e..dffc799 100644 --- a/future/result/Ryzen_7_3700X/gcc_libstdcxx/data.json +++ b/future/result/Ryzen_7_3700X/gcc_libstdcxx/data.json @@ -37,10 +37,10 @@ }, "benchmarks": [ { - "name": "ConstantFuture(Std)/real_time", + "name": "ConstantFuture/Std/real_time", "family_index": 0, "per_family_instance_index": 0, - "run_name": "ConstantFuture(Std)/real_time", + "run_name": "ConstantFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -51,10 +51,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(YACLib)/real_time", + "name": "ConstantFuture/YACLib/real_time", "family_index": 1, "per_family_instance_index": 0, - "run_name": "ConstantFuture(YACLib)/real_time", + "run_name": "ConstantFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -65,10 +65,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(Folly)/real_time", + "name": "ConstantFuture/Folly/real_time", "family_index": 2, "per_family_instance_index": 0, - "run_name": "ConstantFuture(Folly)/real_time", + "run_name": "ConstantFuture/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -79,10 +79,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(BoostThread)/real_time", + "name": "ConstantFuture/BoostThread/real_time", "family_index": 3, "per_family_instance_index": 0, - "run_name": "ConstantFuture(BoostThread)/real_time", + "run_name": "ConstantFuture/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -93,10 +93,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(Std)/real_time", + "name": "PromiseAndFuture/Std/real_time", "family_index": 4, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(Std)/real_time", + "run_name": "PromiseAndFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -107,10 +107,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(YACLib)/real_time", + "name": "PromiseAndFuture/YACLib/real_time", "family_index": 5, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(YACLib)/real_time", + "run_name": "PromiseAndFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -121,10 +121,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(Folly)/real_time", + "name": "PromiseAndFuture/Folly/real_time", "family_index": 6, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(Folly)/real_time", + "run_name": "PromiseAndFuture/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -135,10 +135,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(BoostThread)/real_time", + "name": "PromiseAndFuture/BoostThread/real_time", "family_index": 7, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(BoostThread)/real_time", + "run_name": "PromiseAndFuture/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -149,10 +149,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/0/real_time", + "name": "Then/YACLib/0/0/real_time", "family_index": 8, "per_family_instance_index": 0, - "run_name": "Then(YACLib)/0/0/real_time", + "run_name": "Then/YACLib/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -163,10 +163,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/0/real_time", + "name": "Then/YACLib/1/0/real_time", "family_index": 8, "per_family_instance_index": 1, - "run_name": "Then(YACLib)/1/0/real_time", + "run_name": "Then/YACLib/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -177,10 +177,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/0/real_time", + "name": "Then/YACLib/2/0/real_time", "family_index": 8, "per_family_instance_index": 2, - "run_name": "Then(YACLib)/2/0/real_time", + "run_name": "Then/YACLib/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -191,10 +191,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/0/real_time", + "name": "Then/YACLib/4/0/real_time", "family_index": 8, "per_family_instance_index": 3, - "run_name": "Then(YACLib)/4/0/real_time", + "run_name": "Then/YACLib/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -205,10 +205,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/0/real_time", + "name": "Then/YACLib/8/0/real_time", "family_index": 8, "per_family_instance_index": 4, - "run_name": "Then(YACLib)/8/0/real_time", + "run_name": "Then/YACLib/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -219,10 +219,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/0/real_time", + "name": "Then/YACLib/16/0/real_time", "family_index": 8, "per_family_instance_index": 5, - "run_name": "Then(YACLib)/16/0/real_time", + "run_name": "Then/YACLib/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -233,10 +233,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/0/real_time", + "name": "Then/YACLib/32/0/real_time", "family_index": 8, "per_family_instance_index": 6, - "run_name": "Then(YACLib)/32/0/real_time", + "run_name": "Then/YACLib/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -247,10 +247,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/0/real_time", + "name": "Then/YACLib/64/0/real_time", "family_index": 8, "per_family_instance_index": 7, - "run_name": "Then(YACLib)/64/0/real_time", + "run_name": "Then/YACLib/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -261,10 +261,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/1/real_time", + "name": "Then/YACLib/0/1/real_time", "family_index": 8, "per_family_instance_index": 8, - "run_name": "Then(YACLib)/0/1/real_time", + "run_name": "Then/YACLib/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -275,10 +275,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/1/real_time", + "name": "Then/YACLib/1/1/real_time", "family_index": 8, "per_family_instance_index": 9, - "run_name": "Then(YACLib)/1/1/real_time", + "run_name": "Then/YACLib/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -289,10 +289,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/1/real_time", + "name": "Then/YACLib/2/1/real_time", "family_index": 8, "per_family_instance_index": 10, - "run_name": "Then(YACLib)/2/1/real_time", + "run_name": "Then/YACLib/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -303,10 +303,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/1/real_time", + "name": "Then/YACLib/4/1/real_time", "family_index": 8, "per_family_instance_index": 11, - "run_name": "Then(YACLib)/4/1/real_time", + "run_name": "Then/YACLib/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -317,10 +317,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/1/real_time", + "name": "Then/YACLib/8/1/real_time", "family_index": 8, "per_family_instance_index": 12, - "run_name": "Then(YACLib)/8/1/real_time", + "run_name": "Then/YACLib/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -331,10 +331,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/1/real_time", + "name": "Then/YACLib/16/1/real_time", "family_index": 8, "per_family_instance_index": 13, - "run_name": "Then(YACLib)/16/1/real_time", + "run_name": "Then/YACLib/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -345,10 +345,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/1/real_time", + "name": "Then/YACLib/32/1/real_time", "family_index": 8, "per_family_instance_index": 14, - "run_name": "Then(YACLib)/32/1/real_time", + "run_name": "Then/YACLib/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -359,10 +359,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/1/real_time", + "name": "Then/YACLib/64/1/real_time", "family_index": 8, "per_family_instance_index": 15, - "run_name": "Then(YACLib)/64/1/real_time", + "run_name": "Then/YACLib/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -373,10 +373,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/2/real_time", + "name": "Then/YACLib/0/2/real_time", "family_index": 8, "per_family_instance_index": 16, - "run_name": "Then(YACLib)/0/2/real_time", + "run_name": "Then/YACLib/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -387,10 +387,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/2/real_time", + "name": "Then/YACLib/1/2/real_time", "family_index": 8, "per_family_instance_index": 17, - "run_name": "Then(YACLib)/1/2/real_time", + "run_name": "Then/YACLib/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -401,10 +401,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/2/real_time", + "name": "Then/YACLib/2/2/real_time", "family_index": 8, "per_family_instance_index": 18, - "run_name": "Then(YACLib)/2/2/real_time", + "run_name": "Then/YACLib/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -415,10 +415,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/2/real_time", + "name": "Then/YACLib/4/2/real_time", "family_index": 8, "per_family_instance_index": 19, - "run_name": "Then(YACLib)/4/2/real_time", + "run_name": "Then/YACLib/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -429,10 +429,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/2/real_time", + "name": "Then/YACLib/8/2/real_time", "family_index": 8, "per_family_instance_index": 20, - "run_name": "Then(YACLib)/8/2/real_time", + "run_name": "Then/YACLib/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -443,10 +443,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/2/real_time", + "name": "Then/YACLib/16/2/real_time", "family_index": 8, "per_family_instance_index": 21, - "run_name": "Then(YACLib)/16/2/real_time", + "run_name": "Then/YACLib/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -457,10 +457,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/2/real_time", + "name": "Then/YACLib/32/2/real_time", "family_index": 8, "per_family_instance_index": 22, - "run_name": "Then(YACLib)/32/2/real_time", + "run_name": "Then/YACLib/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -471,10 +471,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/2/real_time", + "name": "Then/YACLib/64/2/real_time", "family_index": 8, "per_family_instance_index": 23, - "run_name": "Then(YACLib)/64/2/real_time", + "run_name": "Then/YACLib/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -485,10 +485,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/0/real_time", + "name": "Then/Folly/0/0/real_time", "family_index": 9, "per_family_instance_index": 0, - "run_name": "Then(Folly)/0/0/real_time", + "run_name": "Then/Folly/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -499,10 +499,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/0/real_time", + "name": "Then/Folly/1/0/real_time", "family_index": 9, "per_family_instance_index": 1, - "run_name": "Then(Folly)/1/0/real_time", + "run_name": "Then/Folly/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -513,10 +513,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/0/real_time", + "name": "Then/Folly/2/0/real_time", "family_index": 9, "per_family_instance_index": 2, - "run_name": "Then(Folly)/2/0/real_time", + "run_name": "Then/Folly/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -527,10 +527,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/0/real_time", + "name": "Then/Folly/4/0/real_time", "family_index": 9, "per_family_instance_index": 3, - "run_name": "Then(Folly)/4/0/real_time", + "run_name": "Then/Folly/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -541,10 +541,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/0/real_time", + "name": "Then/Folly/8/0/real_time", "family_index": 9, "per_family_instance_index": 4, - "run_name": "Then(Folly)/8/0/real_time", + "run_name": "Then/Folly/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -555,10 +555,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/0/real_time", + "name": "Then/Folly/16/0/real_time", "family_index": 9, "per_family_instance_index": 5, - "run_name": "Then(Folly)/16/0/real_time", + "run_name": "Then/Folly/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -569,10 +569,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/0/real_time", + "name": "Then/Folly/32/0/real_time", "family_index": 9, "per_family_instance_index": 6, - "run_name": "Then(Folly)/32/0/real_time", + "run_name": "Then/Folly/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -583,10 +583,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/0/real_time", + "name": "Then/Folly/64/0/real_time", "family_index": 9, "per_family_instance_index": 7, - "run_name": "Then(Folly)/64/0/real_time", + "run_name": "Then/Folly/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -597,10 +597,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/1/real_time", + "name": "Then/Folly/0/1/real_time", "family_index": 9, "per_family_instance_index": 8, - "run_name": "Then(Folly)/0/1/real_time", + "run_name": "Then/Folly/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -611,10 +611,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/1/real_time", + "name": "Then/Folly/1/1/real_time", "family_index": 9, "per_family_instance_index": 9, - "run_name": "Then(Folly)/1/1/real_time", + "run_name": "Then/Folly/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -625,10 +625,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/1/real_time", + "name": "Then/Folly/2/1/real_time", "family_index": 9, "per_family_instance_index": 10, - "run_name": "Then(Folly)/2/1/real_time", + "run_name": "Then/Folly/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -639,10 +639,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/1/real_time", + "name": "Then/Folly/4/1/real_time", "family_index": 9, "per_family_instance_index": 11, - "run_name": "Then(Folly)/4/1/real_time", + "run_name": "Then/Folly/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -653,10 +653,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/1/real_time", + "name": "Then/Folly/8/1/real_time", "family_index": 9, "per_family_instance_index": 12, - "run_name": "Then(Folly)/8/1/real_time", + "run_name": "Then/Folly/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -667,10 +667,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/1/real_time", + "name": "Then/Folly/16/1/real_time", "family_index": 9, "per_family_instance_index": 13, - "run_name": "Then(Folly)/16/1/real_time", + "run_name": "Then/Folly/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -681,10 +681,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/1/real_time", + "name": "Then/Folly/32/1/real_time", "family_index": 9, "per_family_instance_index": 14, - "run_name": "Then(Folly)/32/1/real_time", + "run_name": "Then/Folly/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -695,10 +695,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/1/real_time", + "name": "Then/Folly/64/1/real_time", "family_index": 9, "per_family_instance_index": 15, - "run_name": "Then(Folly)/64/1/real_time", + "run_name": "Then/Folly/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -709,10 +709,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/2/real_time", + "name": "Then/Folly/0/2/real_time", "family_index": 9, "per_family_instance_index": 16, - "run_name": "Then(Folly)/0/2/real_time", + "run_name": "Then/Folly/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -723,10 +723,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/2/real_time", + "name": "Then/Folly/1/2/real_time", "family_index": 9, "per_family_instance_index": 17, - "run_name": "Then(Folly)/1/2/real_time", + "run_name": "Then/Folly/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -737,10 +737,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/2/real_time", + "name": "Then/Folly/2/2/real_time", "family_index": 9, "per_family_instance_index": 18, - "run_name": "Then(Folly)/2/2/real_time", + "run_name": "Then/Folly/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -751,10 +751,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/2/real_time", + "name": "Then/Folly/4/2/real_time", "family_index": 9, "per_family_instance_index": 19, - "run_name": "Then(Folly)/4/2/real_time", + "run_name": "Then/Folly/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -765,10 +765,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/2/real_time", + "name": "Then/Folly/8/2/real_time", "family_index": 9, "per_family_instance_index": 20, - "run_name": "Then(Folly)/8/2/real_time", + "run_name": "Then/Folly/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -779,10 +779,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/2/real_time", + "name": "Then/Folly/16/2/real_time", "family_index": 9, "per_family_instance_index": 21, - "run_name": "Then(Folly)/16/2/real_time", + "run_name": "Then/Folly/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -793,10 +793,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/2/real_time", + "name": "Then/Folly/32/2/real_time", "family_index": 9, "per_family_instance_index": 22, - "run_name": "Then(Folly)/32/2/real_time", + "run_name": "Then/Folly/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -807,10 +807,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/2/real_time", + "name": "Then/Folly/64/2/real_time", "family_index": 9, "per_family_instance_index": 23, - "run_name": "Then(Folly)/64/2/real_time", + "run_name": "Then/Folly/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -821,10 +821,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/0/real_time", + "name": "Then/BoostThread/0/0/real_time", "family_index": 10, "per_family_instance_index": 0, - "run_name": "Then(BoostThread)/0/0/real_time", + "run_name": "Then/BoostThread/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -835,10 +835,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/0/real_time", + "name": "Then/BoostThread/1/0/real_time", "family_index": 10, "per_family_instance_index": 1, - "run_name": "Then(BoostThread)/1/0/real_time", + "run_name": "Then/BoostThread/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -849,10 +849,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/0/real_time", + "name": "Then/BoostThread/2/0/real_time", "family_index": 10, "per_family_instance_index": 2, - "run_name": "Then(BoostThread)/2/0/real_time", + "run_name": "Then/BoostThread/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -863,10 +863,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/0/real_time", + "name": "Then/BoostThread/4/0/real_time", "family_index": 10, "per_family_instance_index": 3, - "run_name": "Then(BoostThread)/4/0/real_time", + "run_name": "Then/BoostThread/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -877,10 +877,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/0/real_time", + "name": "Then/BoostThread/8/0/real_time", "family_index": 10, "per_family_instance_index": 4, - "run_name": "Then(BoostThread)/8/0/real_time", + "run_name": "Then/BoostThread/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -891,10 +891,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/0/real_time", + "name": "Then/BoostThread/16/0/real_time", "family_index": 10, "per_family_instance_index": 5, - "run_name": "Then(BoostThread)/16/0/real_time", + "run_name": "Then/BoostThread/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -905,10 +905,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/0/real_time", + "name": "Then/BoostThread/32/0/real_time", "family_index": 10, "per_family_instance_index": 6, - "run_name": "Then(BoostThread)/32/0/real_time", + "run_name": "Then/BoostThread/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -919,10 +919,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/0/real_time", + "name": "Then/BoostThread/64/0/real_time", "family_index": 10, "per_family_instance_index": 7, - "run_name": "Then(BoostThread)/64/0/real_time", + "run_name": "Then/BoostThread/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -933,10 +933,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/1/real_time", + "name": "Then/BoostThread/0/1/real_time", "family_index": 10, "per_family_instance_index": 8, - "run_name": "Then(BoostThread)/0/1/real_time", + "run_name": "Then/BoostThread/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -947,10 +947,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/1/real_time", + "name": "Then/BoostThread/1/1/real_time", "family_index": 10, "per_family_instance_index": 9, - "run_name": "Then(BoostThread)/1/1/real_time", + "run_name": "Then/BoostThread/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -961,10 +961,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/1/real_time", + "name": "Then/BoostThread/2/1/real_time", "family_index": 10, "per_family_instance_index": 10, - "run_name": "Then(BoostThread)/2/1/real_time", + "run_name": "Then/BoostThread/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -975,10 +975,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/1/real_time", + "name": "Then/BoostThread/4/1/real_time", "family_index": 10, "per_family_instance_index": 11, - "run_name": "Then(BoostThread)/4/1/real_time", + "run_name": "Then/BoostThread/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -989,10 +989,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/1/real_time", + "name": "Then/BoostThread/8/1/real_time", "family_index": 10, "per_family_instance_index": 12, - "run_name": "Then(BoostThread)/8/1/real_time", + "run_name": "Then/BoostThread/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1003,10 +1003,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/1/real_time", + "name": "Then/BoostThread/16/1/real_time", "family_index": 10, "per_family_instance_index": 13, - "run_name": "Then(BoostThread)/16/1/real_time", + "run_name": "Then/BoostThread/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1017,10 +1017,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/1/real_time", + "name": "Then/BoostThread/32/1/real_time", "family_index": 10, "per_family_instance_index": 14, - "run_name": "Then(BoostThread)/32/1/real_time", + "run_name": "Then/BoostThread/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1031,10 +1031,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/1/real_time", + "name": "Then/BoostThread/64/1/real_time", "family_index": 10, "per_family_instance_index": 15, - "run_name": "Then(BoostThread)/64/1/real_time", + "run_name": "Then/BoostThread/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1045,10 +1045,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/2/real_time", + "name": "Then/BoostThread/0/2/real_time", "family_index": 10, "per_family_instance_index": 16, - "run_name": "Then(BoostThread)/0/2/real_time", + "run_name": "Then/BoostThread/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1059,10 +1059,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/2/real_time", + "name": "Then/BoostThread/1/2/real_time", "family_index": 10, "per_family_instance_index": 17, - "run_name": "Then(BoostThread)/1/2/real_time", + "run_name": "Then/BoostThread/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1073,10 +1073,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/2/real_time", + "name": "Then/BoostThread/2/2/real_time", "family_index": 10, "per_family_instance_index": 18, - "run_name": "Then(BoostThread)/2/2/real_time", + "run_name": "Then/BoostThread/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1087,10 +1087,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/2/real_time", + "name": "Then/BoostThread/4/2/real_time", "family_index": 10, "per_family_instance_index": 19, - "run_name": "Then(BoostThread)/4/2/real_time", + "run_name": "Then/BoostThread/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1101,10 +1101,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/2/real_time", + "name": "Then/BoostThread/8/2/real_time", "family_index": 10, "per_family_instance_index": 20, - "run_name": "Then(BoostThread)/8/2/real_time", + "run_name": "Then/BoostThread/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1115,10 +1115,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/2/real_time", + "name": "Then/BoostThread/16/2/real_time", "family_index": 10, "per_family_instance_index": 21, - "run_name": "Then(BoostThread)/16/2/real_time", + "run_name": "Then/BoostThread/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1129,10 +1129,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/2/real_time", + "name": "Then/BoostThread/32/2/real_time", "family_index": 10, "per_family_instance_index": 22, - "run_name": "Then(BoostThread)/32/2/real_time", + "run_name": "Then/BoostThread/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1143,10 +1143,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/2/real_time", + "name": "Then/BoostThread/64/2/real_time", "family_index": 10, "per_family_instance_index": 23, - "run_name": "Then(BoostThread)/64/2/real_time", + "run_name": "Then/BoostThread/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1157,10 +1157,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/0/real_time", + "name": "ComplexBlob/YACLib/0/real_time", "family_index": 11, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/0/real_time", + "run_name": "ComplexBlob/YACLib/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1171,10 +1171,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/0/real_time", + "name": "ComplexBlob/Folly/0/real_time", "family_index": 12, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/0/real_time", + "run_name": "ComplexBlob/Folly/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1185,10 +1185,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/0/real_time", + "name": "ComplexBlob/BoostThread/0/real_time", "family_index": 13, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/0/real_time", + "run_name": "ComplexBlob/BoostThread/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1199,10 +1199,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2/real_time", + "name": "ComplexBlob/YACLib/2/real_time", "family_index": 14, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2/real_time", + "run_name": "ComplexBlob/YACLib/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1213,10 +1213,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/2/real_time", + "name": "ComplexBlob/Folly/2/real_time", "family_index": 15, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/2/real_time", + "run_name": "ComplexBlob/Folly/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1227,10 +1227,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/2/real_time", + "name": "ComplexBlob/BoostThread/2/real_time", "family_index": 16, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/2/real_time", + "run_name": "ComplexBlob/BoostThread/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1241,10 +1241,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4/real_time", + "name": "ComplexBlob/YACLib/4/real_time", "family_index": 17, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4/real_time", + "run_name": "ComplexBlob/YACLib/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1255,10 +1255,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/4/real_time", + "name": "ComplexBlob/Folly/4/real_time", "family_index": 18, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/4/real_time", + "run_name": "ComplexBlob/Folly/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1269,10 +1269,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/4/real_time", + "name": "ComplexBlob/BoostThread/4/real_time", "family_index": 19, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/4/real_time", + "run_name": "ComplexBlob/BoostThread/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1283,10 +1283,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8/real_time", + "name": "ComplexBlob/YACLib/8/real_time", "family_index": 20, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8/real_time", + "run_name": "ComplexBlob/YACLib/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1297,10 +1297,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/8/real_time", + "name": "ComplexBlob/Folly/8/real_time", "family_index": 21, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/8/real_time", + "run_name": "ComplexBlob/Folly/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1311,10 +1311,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/8/real_time", + "name": "ComplexBlob/BoostThread/8/real_time", "family_index": 22, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/8/real_time", + "run_name": "ComplexBlob/BoostThread/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1325,10 +1325,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/16/real_time", + "name": "ComplexBlob/YACLib/16/real_time", "family_index": 23, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/16/real_time", + "run_name": "ComplexBlob/YACLib/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1339,10 +1339,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/16/real_time", + "name": "ComplexBlob/Folly/16/real_time", "family_index": 24, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/16/real_time", + "run_name": "ComplexBlob/Folly/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1353,10 +1353,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/16/real_time", + "name": "ComplexBlob/BoostThread/16/real_time", "family_index": 25, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/16/real_time", + "run_name": "ComplexBlob/BoostThread/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1367,10 +1367,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/32/real_time", + "name": "ComplexBlob/YACLib/32/real_time", "family_index": 26, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/32/real_time", + "run_name": "ComplexBlob/YACLib/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1381,10 +1381,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/32/real_time", + "name": "ComplexBlob/Folly/32/real_time", "family_index": 27, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/32/real_time", + "run_name": "ComplexBlob/Folly/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1395,10 +1395,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/32/real_time", + "name": "ComplexBlob/BoostThread/32/real_time", "family_index": 28, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/32/real_time", + "run_name": "ComplexBlob/BoostThread/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1409,10 +1409,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/64/real_time", + "name": "ComplexBlob/YACLib/64/real_time", "family_index": 29, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/64/real_time", + "run_name": "ComplexBlob/YACLib/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1423,10 +1423,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/64/real_time", + "name": "ComplexBlob/Folly/64/real_time", "family_index": 30, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/64/real_time", + "run_name": "ComplexBlob/Folly/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1437,10 +1437,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/64/real_time", + "name": "ComplexBlob/BoostThread/64/real_time", "family_index": 31, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/64/real_time", + "run_name": "ComplexBlob/BoostThread/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1451,10 +1451,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/128/real_time", + "name": "ComplexBlob/YACLib/128/real_time", "family_index": 32, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/128/real_time", + "run_name": "ComplexBlob/YACLib/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1465,10 +1465,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/128/real_time", + "name": "ComplexBlob/Folly/128/real_time", "family_index": 33, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/128/real_time", + "run_name": "ComplexBlob/Folly/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1479,10 +1479,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/128/real_time", + "name": "ComplexBlob/BoostThread/128/real_time", "family_index": 34, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/128/real_time", + "run_name": "ComplexBlob/BoostThread/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1493,10 +1493,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/256/real_time", + "name": "ComplexBlob/YACLib/256/real_time", "family_index": 35, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/256/real_time", + "run_name": "ComplexBlob/YACLib/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1507,10 +1507,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/256/real_time", + "name": "ComplexBlob/Folly/256/real_time", "family_index": 36, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/256/real_time", + "run_name": "ComplexBlob/Folly/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1521,10 +1521,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/256/real_time", + "name": "ComplexBlob/BoostThread/256/real_time", "family_index": 37, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/256/real_time", + "run_name": "ComplexBlob/BoostThread/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1535,10 +1535,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/512/real_time", + "name": "ComplexBlob/YACLib/512/real_time", "family_index": 38, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/512/real_time", + "run_name": "ComplexBlob/YACLib/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1549,10 +1549,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/512/real_time", + "name": "ComplexBlob/Folly/512/real_time", "family_index": 39, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/512/real_time", + "run_name": "ComplexBlob/Folly/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1563,10 +1563,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/512/real_time", + "name": "ComplexBlob/BoostThread/512/real_time", "family_index": 40, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/512/real_time", + "run_name": "ComplexBlob/BoostThread/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1577,10 +1577,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/1024/real_time", + "name": "ComplexBlob/YACLib/1024/real_time", "family_index": 41, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/1024/real_time", + "run_name": "ComplexBlob/YACLib/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1591,10 +1591,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/1024/real_time", + "name": "ComplexBlob/Folly/1024/real_time", "family_index": 42, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/1024/real_time", + "run_name": "ComplexBlob/Folly/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1605,10 +1605,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/1024/real_time", + "name": "ComplexBlob/BoostThread/1024/real_time", "family_index": 43, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/1024/real_time", + "run_name": "ComplexBlob/BoostThread/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1619,10 +1619,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2048/real_time", + "name": "ComplexBlob/YACLib/2048/real_time", "family_index": 44, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2048/real_time", + "run_name": "ComplexBlob/YACLib/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1633,10 +1633,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/2048/real_time", + "name": "ComplexBlob/Folly/2048/real_time", "family_index": 45, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/2048/real_time", + "run_name": "ComplexBlob/Folly/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1647,10 +1647,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/2048/real_time", + "name": "ComplexBlob/BoostThread/2048/real_time", "family_index": 46, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/2048/real_time", + "run_name": "ComplexBlob/BoostThread/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1661,10 +1661,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4096/real_time", + "name": "ComplexBlob/YACLib/4096/real_time", "family_index": 47, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4096/real_time", + "run_name": "ComplexBlob/YACLib/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1675,10 +1675,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/4096/real_time", + "name": "ComplexBlob/Folly/4096/real_time", "family_index": 48, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/4096/real_time", + "run_name": "ComplexBlob/Folly/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1689,10 +1689,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/4096/real_time", + "name": "ComplexBlob/BoostThread/4096/real_time", "family_index": 49, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/4096/real_time", + "run_name": "ComplexBlob/BoostThread/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1703,10 +1703,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8192/real_time", + "name": "ComplexBlob/YACLib/8192/real_time", "family_index": 50, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8192/real_time", + "run_name": "ComplexBlob/YACLib/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1717,10 +1717,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/8192/real_time", + "name": "ComplexBlob/Folly/8192/real_time", "family_index": 51, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/8192/real_time", + "run_name": "ComplexBlob/Folly/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1731,10 +1731,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/8192/real_time", + "name": "ComplexBlob/BoostThread/8192/real_time", "family_index": 52, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/8192/real_time", + "run_name": "ComplexBlob/BoostThread/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1745,10 +1745,10 @@ "time_unit": "ns" }, { - "name": "NoContention(YACLib)/real_time", + "name": "NoContention/YACLib/real_time", "family_index": 53, "per_family_instance_index": 0, - "run_name": "NoContention(YACLib)/real_time", + "run_name": "NoContention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1759,10 +1759,10 @@ "time_unit": "ns" }, { - "name": "NoContention(Folly)/real_time", + "name": "NoContention/Folly/real_time", "family_index": 54, "per_family_instance_index": 0, - "run_name": "NoContention(Folly)/real_time", + "run_name": "NoContention/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1773,10 +1773,10 @@ "time_unit": "ns" }, { - "name": "NoContention(BoostThread)/real_time", + "name": "NoContention/BoostThread/real_time", "family_index": 55, "per_family_instance_index": 0, - "run_name": "NoContention(BoostThread)/real_time", + "run_name": "NoContention/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1787,10 +1787,10 @@ "time_unit": "ns" }, { - "name": "Contention(YACLib)/real_time", + "name": "Contention/YACLib/real_time", "family_index": 56, "per_family_instance_index": 0, - "run_name": "Contention(YACLib)/real_time", + "run_name": "Contention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1801,10 +1801,10 @@ "time_unit": "ns" }, { - "name": "Contention(Folly)/real_time", + "name": "Contention/Folly/real_time", "family_index": 57, "per_family_instance_index": 0, - "run_name": "Contention(Folly)/real_time", + "run_name": "Contention/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1815,10 +1815,10 @@ "time_unit": "ns" }, { - "name": "Contention(BoostThread)/real_time", + "name": "Contention/BoostThread/real_time", "family_index": 58, "per_family_instance_index": 0, - "run_name": "Contention(BoostThread)/real_time", + "run_name": "Contention/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, diff --git a/future/result/Ryzen_7_3700X/gcc_libstdcxx/picture/ComplexBlob.svg b/future/result/Ryzen_7_3700X/gcc_libstdcxx/picture/ComplexBlob.svg new file mode 100644 index 0000000..2a45446 --- /dev/null +++ b/future/result/Ryzen_7_3700X/gcc_libstdcxx/picture/ComplexBlob.svg @@ -0,0 +1,1201 @@ + + + + + + + + 2022-04-10T19:11:46.531735 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_7_3700X/gcc_libstdcxx/picture/ConstantFuture.svg b/future/result/Ryzen_7_3700X/gcc_libstdcxx/picture/ConstantFuture.svg new file mode 100644 index 0000000..77b3808 --- /dev/null +++ b/future/result/Ryzen_7_3700X/gcc_libstdcxx/picture/ConstantFuture.svg @@ -0,0 +1,969 @@ + + + + + + + + 2022-04-10T19:11:45.721335 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_7_3700X/gcc_libstdcxx/picture/Contention.svg b/future/result/Ryzen_7_3700X/gcc_libstdcxx/picture/Contention.svg new file mode 100644 index 0000000..4356921 --- /dev/null +++ b/future/result/Ryzen_7_3700X/gcc_libstdcxx/picture/Contention.svg @@ -0,0 +1,906 @@ + + + + + + + + 2022-04-10T19:11:46.823334 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_7_3700X/gcc_libstdcxx/picture/NoContention.svg b/future/result/Ryzen_7_3700X/gcc_libstdcxx/picture/NoContention.svg new file mode 100644 index 0000000..e1cb5b8 --- /dev/null +++ b/future/result/Ryzen_7_3700X/gcc_libstdcxx/picture/NoContention.svg @@ -0,0 +1,921 @@ + + + + + + + + 2022-04-10T19:11:46.693619 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_7_3700X/gcc_libstdcxx/picture/PromiseAndFuture.svg b/future/result/Ryzen_7_3700X/gcc_libstdcxx/picture/PromiseAndFuture.svg new file mode 100644 index 0000000..75e4c18 --- /dev/null +++ b/future/result/Ryzen_7_3700X/gcc_libstdcxx/picture/PromiseAndFuture.svg @@ -0,0 +1,1007 @@ + + + + + + + + 2022-04-10T19:11:45.905676 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_7_3700X/gcc_libstdcxx/picture/ThenAllInline.svg b/future/result/Ryzen_7_3700X/gcc_libstdcxx/picture/ThenAllInline.svg new file mode 100644 index 0000000..90e0108 --- /dev/null +++ b/future/result/Ryzen_7_3700X/gcc_libstdcxx/picture/ThenAllInline.svg @@ -0,0 +1,1101 @@ + + + + + + + + 2022-04-10T19:11:46.052313 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_7_3700X/gcc_libstdcxx/picture/ThenOneInline.svg b/future/result/Ryzen_7_3700X/gcc_libstdcxx/picture/ThenOneInline.svg new file mode 100644 index 0000000..c03deb5 --- /dev/null +++ b/future/result/Ryzen_7_3700X/gcc_libstdcxx/picture/ThenOneInline.svg @@ -0,0 +1,1208 @@ + + + + + + + + 2022-04-10T19:11:46.202320 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_7_3700X/gcc_libstdcxx/picture/ThenScheduler.svg b/future/result/Ryzen_7_3700X/gcc_libstdcxx/picture/ThenScheduler.svg new file mode 100644 index 0000000..a2c8aaf --- /dev/null +++ b/future/result/Ryzen_7_3700X/gcc_libstdcxx/picture/ThenScheduler.svg @@ -0,0 +1,1167 @@ + + + + + + + + 2022-04-10T19:11:46.356598 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_9_5900X/README.md b/future/result/Ryzen_9_5900X/README.md index 0eacd6a..311dbb4 100644 --- a/future/result/Ryzen_9_5900X/README.md +++ b/future/result/Ryzen_9_5900X/README.md @@ -11,50 +11,50 @@ Load Average: 0.40, 0.62, 0.58 ----------------------------------------------------------------------------- Benchmark Time CPU Iterations ----------------------------------------------------------------------------- -ConstantFuture(Std)/real_time 40.1 ns 40.1 ns 17311654 -ConstantFuture(YACLib)/real_time 14.7 ns 14.7 ns 47576527 -PromiseAndFuture(Std)/real_time 50.6 ns 50.5 ns 13722192 -PromiseAndFuture(YACLib)/real_time 24.1 ns 24.0 ns 29130053 -Then(YACLib)/0/0/real_time 53.4 ns 53.4 ns 13022811 -Then(YACLib)/1/0/real_time 106 ns 106 ns 6630830 -Then(YACLib)/2/0/real_time 157 ns 156 ns 4462874 -Then(YACLib)/4/0/real_time 260 ns 259 ns 2697598 -Then(YACLib)/8/0/real_time 468 ns 468 ns 1493153 -Then(YACLib)/16/0/real_time 874 ns 873 ns 799576 -Then(YACLib)/32/0/real_time 1685 ns 1684 ns 414559 -Then(YACLib)/64/0/real_time 3306 ns 3303 ns 211406 -Then(YACLib)/0/1/real_time 6277 ns 2939 ns 111903 -Then(YACLib)/1/1/real_time 6404 ns 3018 ns 106708 -Then(YACLib)/2/1/real_time 6520 ns 3130 ns 108367 -Then(YACLib)/4/1/real_time 7018 ns 3456 ns 100018 -Then(YACLib)/8/1/real_time 7499 ns 3914 ns 90044 -Then(YACLib)/16/1/real_time 7434 ns 4704 ns 146120 -Then(YACLib)/32/1/real_time 9331 ns 6286 ns 75205 -Then(YACLib)/64/1/real_time 11649 ns 10074 ns 59201 -Then(YACLib)/0/2/real_time 6119 ns 2926 ns 110322 -Then(YACLib)/1/2/real_time 6476 ns 3242 ns 107495 -Then(YACLib)/2/2/real_time 6651 ns 3405 ns 103714 -Then(YACLib)/4/2/real_time 7064 ns 3782 ns 97820 -Then(YACLib)/8/2/real_time 7810 ns 4426 ns 89725 -Then(YACLib)/16/2/real_time 9693 ns 6143 ns 114959 -Then(YACLib)/32/2/real_time 16717 ns 13125 ns 41626 -Then(YACLib)/64/2/real_time 29783 ns 25353 ns 50140 -ComplexBlob(YACLib)/0/real_time 11647 ns 11634 ns 61059 -ComplexBlob(YACLib)/2/real_time 9941 ns 9930 ns 71457 -ComplexBlob(YACLib)/4/real_time 9320 ns 9310 ns 75297 -ComplexBlob(YACLib)/8/real_time 9518 ns 9507 ns 74014 -ComplexBlob(YACLib)/16/real_time 8504 ns 8494 ns 84675 -ComplexBlob(YACLib)/32/real_time 10292 ns 10281 ns 68065 -ComplexBlob(YACLib)/64/real_time 9097 ns 9087 ns 76570 -ComplexBlob(YACLib)/128/real_time 9216 ns 9206 ns 75929 -ComplexBlob(YACLib)/256/real_time 11967 ns 11946 ns 57320 -ComplexBlob(YACLib)/512/real_time 12335 ns 12324 ns 56389 -ComplexBlob(YACLib)/1024/real_time 20265 ns 20242 ns 36187 -ComplexBlob(YACLib)/2048/real_time 23781 ns 23755 ns 28852 -ComplexBlob(YACLib)/4096/real_time 41707 ns 41659 ns 16775 -ComplexBlob(YACLib)/8192/real_time 110379 ns 110226 ns 6330 -NoContention(YACLib)/real_time 424548 ns 201957 ns 1645 -Contention(YACLib)/real_time 680203 ns 150807 ns 1016 +ConstantFuture/Std/real_time 40.1 ns 40.1 ns 17311654 +ConstantFuture/YACLib/real_time 14.7 ns 14.7 ns 47576527 +PromiseAndFuture/Std/real_time 50.6 ns 50.5 ns 13722192 +PromiseAndFuture/YACLib/real_time 24.1 ns 24.0 ns 29130053 +Then/YACLib/0/0/real_time 53.4 ns 53.4 ns 13022811 +Then/YACLib/1/0/real_time 106 ns 106 ns 6630830 +Then/YACLib/2/0/real_time 157 ns 156 ns 4462874 +Then/YACLib/4/0/real_time 260 ns 259 ns 2697598 +Then/YACLib/8/0/real_time 468 ns 468 ns 1493153 +Then/YACLib/16/0/real_time 874 ns 873 ns 799576 +Then/YACLib/32/0/real_time 1685 ns 1684 ns 414559 +Then/YACLib/64/0/real_time 3306 ns 3303 ns 211406 +Then/YACLib/0/1/real_time 6277 ns 2939 ns 111903 +Then/YACLib/1/1/real_time 6404 ns 3018 ns 106708 +Then/YACLib/2/1/real_time 6520 ns 3130 ns 108367 +Then/YACLib/4/1/real_time 7018 ns 3456 ns 100018 +Then/YACLib/8/1/real_time 7499 ns 3914 ns 90044 +Then/YACLib/16/1/real_time 7434 ns 4704 ns 146120 +Then/YACLib/32/1/real_time 9331 ns 6286 ns 75205 +Then/YACLib/64/1/real_time 11649 ns 10074 ns 59201 +Then/YACLib/0/2/real_time 6119 ns 2926 ns 110322 +Then/YACLib/1/2/real_time 6476 ns 3242 ns 107495 +Then/YACLib/2/2/real_time 6651 ns 3405 ns 103714 +Then/YACLib/4/2/real_time 7064 ns 3782 ns 97820 +Then/YACLib/8/2/real_time 7810 ns 4426 ns 89725 +Then/YACLib/16/2/real_time 9693 ns 6143 ns 114959 +Then/YACLib/32/2/real_time 16717 ns 13125 ns 41626 +Then/YACLib/64/2/real_time 29783 ns 25353 ns 50140 +ComplexBlob/YACLib/0/real_time 11647 ns 11634 ns 61059 +ComplexBlob/YACLib/2/real_time 9941 ns 9930 ns 71457 +ComplexBlob/YACLib/4/real_time 9320 ns 9310 ns 75297 +ComplexBlob/YACLib/8/real_time 9518 ns 9507 ns 74014 +ComplexBlob/YACLib/16/real_time 8504 ns 8494 ns 84675 +ComplexBlob/YACLib/32/real_time 10292 ns 10281 ns 68065 +ComplexBlob/YACLib/64/real_time 9097 ns 9087 ns 76570 +ComplexBlob/YACLib/128/real_time 9216 ns 9206 ns 75929 +ComplexBlob/YACLib/256/real_time 11967 ns 11946 ns 57320 +ComplexBlob/YACLib/512/real_time 12335 ns 12324 ns 56389 +ComplexBlob/YACLib/1024/real_time 20265 ns 20242 ns 36187 +ComplexBlob/YACLib/2048/real_time 23781 ns 23755 ns 28852 +ComplexBlob/YACLib/4096/real_time 41707 ns 41659 ns 16775 +ComplexBlob/YACLib/8192/real_time 110379 ns 110226 ns 6330 +NoContention/YACLib/real_time 424548 ns 201957 ns 1645 +Contention/YACLib/real_time 680203 ns 150807 ns 1016 2022-03-03T14:38:40+02:00 Running ./build_clang_libstdcxx/future/future Run on (24 X 3598.1 MHz CPU s) @@ -67,134 +67,134 @@ Load Average: 0.78, 0.69, 0.61 ---------------------------------------------------------------------------------- Benchmark Time CPU Iterations ---------------------------------------------------------------------------------- -ConstantFuture(Std)/real_time 94.8 ns 94.7 ns 7289575 -ConstantFuture(YACLib)/real_time 14.6 ns 14.6 ns 48008978 -ConstantFuture(Folly)/real_time 18.6 ns 18.6 ns 37068417 -ConstantFuture(BoostThread)/real_time 76.1 ns 76.0 ns 9178531 -PromiseAndFuture(Std)/real_time 100 ns 99.9 ns 6997605 -PromiseAndFuture(YACLib)/real_time 22.5 ns 22.5 ns 30713481 -PromiseAndFuture(Folly)/real_time 79.4 ns 79.4 ns 8790011 -PromiseAndFuture(BoostThread)/real_time 83.8 ns 83.7 ns 8362422 -Then(YACLib)/0/0/real_time 57.9 ns 57.8 ns 12088320 -Then(YACLib)/1/0/real_time 112 ns 112 ns 6216822 -Then(YACLib)/2/0/real_time 166 ns 166 ns 4216832 -Then(YACLib)/4/0/real_time 273 ns 273 ns 2561500 -Then(YACLib)/8/0/real_time 490 ns 490 ns 1427283 -Then(YACLib)/16/0/real_time 911 ns 910 ns 764841 -Then(YACLib)/32/0/real_time 1754 ns 1753 ns 397373 -Then(YACLib)/64/0/real_time 3452 ns 3448 ns 203108 -Then(YACLib)/0/1/real_time 6324 ns 2995 ns 110462 -Then(YACLib)/1/1/real_time 6572 ns 3192 ns 165055 -Then(YACLib)/2/1/real_time 6728 ns 3322 ns 103941 -Then(YACLib)/4/1/real_time 6521 ns 3567 ns 99145 -Then(YACLib)/8/1/real_time 7483 ns 4008 ns 90127 -Then(YACLib)/16/1/real_time 8294 ns 5261 ns 85783 -Then(YACLib)/32/1/real_time 8895 ns 6780 ns 124396 -Then(YACLib)/64/1/real_time 11223 ns 10163 ns 105007 -Then(YACLib)/0/2/real_time 6405 ns 3025 ns 109334 -Then(YACLib)/1/2/real_time 6446 ns 3222 ns 105420 -Then(YACLib)/2/2/real_time 6607 ns 3407 ns 106989 -Then(YACLib)/4/2/real_time 6604 ns 3782 ns 103160 -Then(YACLib)/8/2/real_time 7730 ns 4478 ns 89513 -Then(YACLib)/16/2/real_time 9972 ns 6618 ns 70308 -Then(YACLib)/32/2/real_time 17020 ns 13391 ns 40931 -Then(YACLib)/64/2/real_time 29760 ns 25906 ns 23479 -Then(Folly)/0/0/real_time 179 ns 179 ns 3908223 -Then(Folly)/1/0/real_time 413 ns 413 ns 1701728 -Then(Folly)/2/0/real_time 648 ns 647 ns 1074107 -Then(Folly)/4/0/real_time 1121 ns 1119 ns 623630 -Then(Folly)/8/0/real_time 2052 ns 2050 ns 340695 -Then(Folly)/16/0/real_time 3916 ns 3912 ns 178702 -Then(Folly)/32/0/real_time 7652 ns 7644 ns 91443 -Then(Folly)/64/0/real_time 15103 ns 15087 ns 46222 -Then(Folly)/0/1/real_time 6249 ns 3380 ns 108878 -Then(Folly)/1/1/real_time 7343 ns 3827 ns 96113 -Then(Folly)/2/1/real_time 7575 ns 3975 ns 92117 -Then(Folly)/4/1/real_time 8301 ns 4630 ns 87557 -Then(Folly)/8/1/real_time 5937 ns 4343 ns 85018 -Then(Folly)/16/1/real_time 9282 ns 6057 ns 74975 -Then(Folly)/32/1/real_time 17459 ns 11518 ns 43919 -Then(Folly)/64/1/real_time 41056 ns 28552 ns 16921 -Then(Folly)/0/2/real_time 5949 ns 3271 ns 109750 -Then(Folly)/1/2/real_time 7510 ns 3865 ns 93263 -Then(Folly)/2/2/real_time 7632 ns 3898 ns 90324 -Then(Folly)/4/2/real_time 8318 ns 4703 ns 79862 -Then(Folly)/8/2/real_time 10282 ns 5551 ns 69748 -Then(Folly)/16/2/real_time 16126 ns 9601 ns 44366 -Then(Folly)/32/2/real_time 25691 ns 15335 ns 26046 -Then(Folly)/64/2/real_time 48206 ns 28849 ns 14649 -Then(BoostThread)/0/0/real_time 279 ns 278 ns 2529229 -Then(BoostThread)/1/0/real_time 633 ns 633 ns 1103563 -Then(BoostThread)/2/0/real_time 990 ns 989 ns 711329 -Then(BoostThread)/4/0/real_time 1704 ns 1702 ns 412080 -Then(BoostThread)/8/0/real_time 3111 ns 3108 ns 224652 -Then(BoostThread)/16/0/real_time 5923 ns 5916 ns 118004 -Then(BoostThread)/32/0/real_time 11550 ns 11537 ns 60688 -Then(BoostThread)/64/0/real_time 22883 ns 22858 ns 30821 -Then(BoostThread)/0/1/real_time 7261 ns 3792 ns 96171 -Then(BoostThread)/1/1/real_time 8224 ns 4689 ns 84855 -Then(BoostThread)/2/1/real_time 8927 ns 5439 ns 77164 -Then(BoostThread)/4/1/real_time 9715 ns 6061 ns 73629 -Then(BoostThread)/8/1/real_time 11837 ns 8225 ns 101268 -Then(BoostThread)/16/1/real_time 17411 ns 14982 ns 41907 -Then(BoostThread)/32/1/real_time 30700 ns 28408 ns 22763 -Then(BoostThread)/64/1/real_time 53791 ns 49683 ns 12850 -Then(BoostThread)/0/2/real_time 7066 ns 3673 ns 96819 -Then(BoostThread)/1/2/real_time 8981 ns 5151 ns 79059 -Then(BoostThread)/2/2/real_time 9920 ns 6243 ns 69842 -Then(BoostThread)/4/2/real_time 13902 ns 8825 ns 49613 -Then(BoostThread)/8/2/real_time 21749 ns 13970 ns 67444 -Then(BoostThread)/16/2/real_time 33978 ns 22060 ns 20347 -Then(BoostThread)/32/2/real_time 55487 ns 36865 ns 12518 -Then(BoostThread)/64/2/real_time 104351 ns 70975 ns 10000 -ComplexBlob(YACLib)/0/real_time 9376 ns 9366 ns 74672 -ComplexBlob(Folly)/0/real_time 32996 ns 32959 ns 21547 -ComplexBlob(BoostThread)/0/real_time 68253 ns 62825 ns 10416 -ComplexBlob(YACLib)/2/real_time 8023 ns 8015 ns 86948 -ComplexBlob(Folly)/2/real_time 33131 ns 33095 ns 21424 -ComplexBlob(BoostThread)/2/real_time 70439 ns 65058 ns 10032 -ComplexBlob(YACLib)/4/real_time 9425 ns 9415 ns 74800 -ComplexBlob(Folly)/4/real_time 32234 ns 32196 ns 21883 -ComplexBlob(BoostThread)/4/real_time 69318 ns 63896 ns 10388 -ComplexBlob(YACLib)/8/real_time 9942 ns 9931 ns 70418 -ComplexBlob(Folly)/8/real_time 31619 ns 31585 ns 22190 -ComplexBlob(BoostThread)/8/real_time 69704 ns 64181 ns 10269 -ComplexBlob(YACLib)/16/real_time 8654 ns 8645 ns 80791 -ComplexBlob(Folly)/16/real_time 31585 ns 31550 ns 22347 -ComplexBlob(BoostThread)/16/real_time 70453 ns 65093 ns 10026 -ComplexBlob(YACLib)/32/real_time 10008 ns 9995 ns 70235 -ComplexBlob(Folly)/32/real_time 31418 ns 31383 ns 22384 -ComplexBlob(BoostThread)/32/real_time 70395 ns 64943 ns 9981 -ComplexBlob(YACLib)/64/real_time 9109 ns 9100 ns 76664 -ComplexBlob(Folly)/64/real_time 32879 ns 32834 ns 21451 -ComplexBlob(BoostThread)/64/real_time 70774 ns 65307 ns 9984 -ComplexBlob(YACLib)/128/real_time 9605 ns 9594 ns 72544 -ComplexBlob(Folly)/128/real_time 32657 ns 32621 ns 21521 -ComplexBlob(BoostThread)/128/real_time 70049 ns 64558 ns 10061 -ComplexBlob(YACLib)/256/real_time 12404 ns 12390 ns 56572 -ComplexBlob(Folly)/256/real_time 33313 ns 33274 ns 20983 -ComplexBlob(BoostThread)/256/real_time 70210 ns 64744 ns 10354 -ComplexBlob(YACLib)/512/real_time 13165 ns 13149 ns 53006 -ComplexBlob(Folly)/512/real_time 36408 ns 36366 ns 19436 -ComplexBlob(BoostThread)/512/real_time 71748 ns 66276 ns 9876 -ComplexBlob(YACLib)/1024/real_time 19598 ns 19577 ns 35169 -ComplexBlob(Folly)/1024/real_time 40944 ns 40899 ns 17089 -ComplexBlob(BoostThread)/1024/real_time 92668 ns 87109 ns 7652 -ComplexBlob(YACLib)/2048/real_time 22880 ns 22856 ns 29964 -ComplexBlob(Folly)/2048/real_time 45125 ns 45074 ns 15556 -ComplexBlob(BoostThread)/2048/real_time 99397 ns 93899 ns 7138 -ComplexBlob(YACLib)/4096/real_time 43866 ns 43819 ns 15937 -ComplexBlob(Folly)/4096/real_time 66439 ns 66350 ns 10505 -ComplexBlob(BoostThread)/4096/real_time 111444 ns 105770 ns 6328 -ComplexBlob(YACLib)/8192/real_time 100408 ns 100269 ns 6933 -ComplexBlob(Folly)/8192/real_time 120943 ns 120762 ns 5776 -ComplexBlob(BoostThread)/8192/real_time 155583 ns 148833 ns 4576 -NoContention(YACLib)/real_time 446234 ns 221493 ns 1564 -NoContention(Folly)/real_time 2251579 ns 914427 ns 312 -NoContention(BoostThread)/real_time 4801297 ns 3076796 ns 150 -Contention(YACLib)/real_time 732738 ns 173684 ns 909 -Contention(Folly)/real_time 2906086 ns 659158 ns 239 -Contention(BoostThread)/real_time 4941652 ns 2094590 ns 144 +ConstantFuture/Std/real_time 94.8 ns 94.7 ns 7289575 +ConstantFuture/YACLib/real_time 14.6 ns 14.6 ns 48008978 +ConstantFuture/Folly/real_time 18.6 ns 18.6 ns 37068417 +ConstantFuture/BoostThread/real_time 76.1 ns 76.0 ns 9178531 +PromiseAndFuture/Std/real_time 100 ns 99.9 ns 6997605 +PromiseAndFuture/YACLib/real_time 22.5 ns 22.5 ns 30713481 +PromiseAndFuture/Folly/real_time 79.4 ns 79.4 ns 8790011 +PromiseAndFuture/BoostThread/real_time 83.8 ns 83.7 ns 8362422 +Then/YACLib/0/0/real_time 57.9 ns 57.8 ns 12088320 +Then/YACLib/1/0/real_time 112 ns 112 ns 6216822 +Then/YACLib/2/0/real_time 166 ns 166 ns 4216832 +Then/YACLib/4/0/real_time 273 ns 273 ns 2561500 +Then/YACLib/8/0/real_time 490 ns 490 ns 1427283 +Then/YACLib/16/0/real_time 911 ns 910 ns 764841 +Then/YACLib/32/0/real_time 1754 ns 1753 ns 397373 +Then/YACLib/64/0/real_time 3452 ns 3448 ns 203108 +Then/YACLib/0/1/real_time 6324 ns 2995 ns 110462 +Then/YACLib/1/1/real_time 6572 ns 3192 ns 165055 +Then/YACLib/2/1/real_time 6728 ns 3322 ns 103941 +Then/YACLib/4/1/real_time 6521 ns 3567 ns 99145 +Then/YACLib/8/1/real_time 7483 ns 4008 ns 90127 +Then/YACLib/16/1/real_time 8294 ns 5261 ns 85783 +Then/YACLib/32/1/real_time 8895 ns 6780 ns 124396 +Then/YACLib/64/1/real_time 11223 ns 10163 ns 105007 +Then/YACLib/0/2/real_time 6405 ns 3025 ns 109334 +Then/YACLib/1/2/real_time 6446 ns 3222 ns 105420 +Then/YACLib/2/2/real_time 6607 ns 3407 ns 106989 +Then/YACLib/4/2/real_time 6604 ns 3782 ns 103160 +Then/YACLib/8/2/real_time 7730 ns 4478 ns 89513 +Then/YACLib/16/2/real_time 9972 ns 6618 ns 70308 +Then/YACLib/32/2/real_time 17020 ns 13391 ns 40931 +Then/YACLib/64/2/real_time 29760 ns 25906 ns 23479 +Then/Folly/0/0/real_time 179 ns 179 ns 3908223 +Then/Folly/1/0/real_time 413 ns 413 ns 1701728 +Then/Folly/2/0/real_time 648 ns 647 ns 1074107 +Then/Folly/4/0/real_time 1121 ns 1119 ns 623630 +Then/Folly/8/0/real_time 2052 ns 2050 ns 340695 +Then/Folly/16/0/real_time 3916 ns 3912 ns 178702 +Then/Folly/32/0/real_time 7652 ns 7644 ns 91443 +Then/Folly/64/0/real_time 15103 ns 15087 ns 46222 +Then/Folly/0/1/real_time 6249 ns 3380 ns 108878 +Then/Folly/1/1/real_time 7343 ns 3827 ns 96113 +Then/Folly/2/1/real_time 7575 ns 3975 ns 92117 +Then/Folly/4/1/real_time 8301 ns 4630 ns 87557 +Then/Folly/8/1/real_time 5937 ns 4343 ns 85018 +Then/Folly/16/1/real_time 9282 ns 6057 ns 74975 +Then/Folly/32/1/real_time 17459 ns 11518 ns 43919 +Then/Folly/64/1/real_time 41056 ns 28552 ns 16921 +Then/Folly/0/2/real_time 5949 ns 3271 ns 109750 +Then/Folly/1/2/real_time 7510 ns 3865 ns 93263 +Then/Folly/2/2/real_time 7632 ns 3898 ns 90324 +Then/Folly/4/2/real_time 8318 ns 4703 ns 79862 +Then/Folly/8/2/real_time 10282 ns 5551 ns 69748 +Then/Folly/16/2/real_time 16126 ns 9601 ns 44366 +Then/Folly/32/2/real_time 25691 ns 15335 ns 26046 +Then/Folly/64/2/real_time 48206 ns 28849 ns 14649 +Then/BoostThread/0/0/real_time 279 ns 278 ns 2529229 +Then/BoostThread/1/0/real_time 633 ns 633 ns 1103563 +Then/BoostThread/2/0/real_time 990 ns 989 ns 711329 +Then/BoostThread/4/0/real_time 1704 ns 1702 ns 412080 +Then/BoostThread/8/0/real_time 3111 ns 3108 ns 224652 +Then/BoostThread/16/0/real_time 5923 ns 5916 ns 118004 +Then/BoostThread/32/0/real_time 11550 ns 11537 ns 60688 +Then/BoostThread/64/0/real_time 22883 ns 22858 ns 30821 +Then/BoostThread/0/1/real_time 7261 ns 3792 ns 96171 +Then/BoostThread/1/1/real_time 8224 ns 4689 ns 84855 +Then/BoostThread/2/1/real_time 8927 ns 5439 ns 77164 +Then/BoostThread/4/1/real_time 9715 ns 6061 ns 73629 +Then/BoostThread/8/1/real_time 11837 ns 8225 ns 101268 +Then/BoostThread/16/1/real_time 17411 ns 14982 ns 41907 +Then/BoostThread/32/1/real_time 30700 ns 28408 ns 22763 +Then/BoostThread/64/1/real_time 53791 ns 49683 ns 12850 +Then/BoostThread/0/2/real_time 7066 ns 3673 ns 96819 +Then/BoostThread/1/2/real_time 8981 ns 5151 ns 79059 +Then/BoostThread/2/2/real_time 9920 ns 6243 ns 69842 +Then/BoostThread/4/2/real_time 13902 ns 8825 ns 49613 +Then/BoostThread/8/2/real_time 21749 ns 13970 ns 67444 +Then/BoostThread/16/2/real_time 33978 ns 22060 ns 20347 +Then/BoostThread/32/2/real_time 55487 ns 36865 ns 12518 +Then/BoostThread/64/2/real_time 104351 ns 70975 ns 10000 +ComplexBlob/YACLib/0/real_time 9376 ns 9366 ns 74672 +ComplexBlob/Folly/0/real_time 32996 ns 32959 ns 21547 +ComplexBlob/BoostThread/0/real_time 68253 ns 62825 ns 10416 +ComplexBlob/YACLib/2/real_time 8023 ns 8015 ns 86948 +ComplexBlob/Folly/2/real_time 33131 ns 33095 ns 21424 +ComplexBlob/BoostThread/2/real_time 70439 ns 65058 ns 10032 +ComplexBlob/YACLib/4/real_time 9425 ns 9415 ns 74800 +ComplexBlob/Folly/4/real_time 32234 ns 32196 ns 21883 +ComplexBlob/BoostThread/4/real_time 69318 ns 63896 ns 10388 +ComplexBlob/YACLib/8/real_time 9942 ns 9931 ns 70418 +ComplexBlob/Folly/8/real_time 31619 ns 31585 ns 22190 +ComplexBlob/BoostThread/8/real_time 69704 ns 64181 ns 10269 +ComplexBlob/YACLib/16/real_time 8654 ns 8645 ns 80791 +ComplexBlob/Folly/16/real_time 31585 ns 31550 ns 22347 +ComplexBlob/BoostThread/16/real_time 70453 ns 65093 ns 10026 +ComplexBlob/YACLib/32/real_time 10008 ns 9995 ns 70235 +ComplexBlob/Folly/32/real_time 31418 ns 31383 ns 22384 +ComplexBlob/BoostThread/32/real_time 70395 ns 64943 ns 9981 +ComplexBlob/YACLib/64/real_time 9109 ns 9100 ns 76664 +ComplexBlob/Folly/64/real_time 32879 ns 32834 ns 21451 +ComplexBlob/BoostThread/64/real_time 70774 ns 65307 ns 9984 +ComplexBlob/YACLib/128/real_time 9605 ns 9594 ns 72544 +ComplexBlob/Folly/128/real_time 32657 ns 32621 ns 21521 +ComplexBlob/BoostThread/128/real_time 70049 ns 64558 ns 10061 +ComplexBlob/YACLib/256/real_time 12404 ns 12390 ns 56572 +ComplexBlob/Folly/256/real_time 33313 ns 33274 ns 20983 +ComplexBlob/BoostThread/256/real_time 70210 ns 64744 ns 10354 +ComplexBlob/YACLib/512/real_time 13165 ns 13149 ns 53006 +ComplexBlob/Folly/512/real_time 36408 ns 36366 ns 19436 +ComplexBlob/BoostThread/512/real_time 71748 ns 66276 ns 9876 +ComplexBlob/YACLib/1024/real_time 19598 ns 19577 ns 35169 +ComplexBlob/Folly/1024/real_time 40944 ns 40899 ns 17089 +ComplexBlob/BoostThread/1024/real_time 92668 ns 87109 ns 7652 +ComplexBlob/YACLib/2048/real_time 22880 ns 22856 ns 29964 +ComplexBlob/Folly/2048/real_time 45125 ns 45074 ns 15556 +ComplexBlob/BoostThread/2048/real_time 99397 ns 93899 ns 7138 +ComplexBlob/YACLib/4096/real_time 43866 ns 43819 ns 15937 +ComplexBlob/Folly/4096/real_time 66439 ns 66350 ns 10505 +ComplexBlob/BoostThread/4096/real_time 111444 ns 105770 ns 6328 +ComplexBlob/YACLib/8192/real_time 100408 ns 100269 ns 6933 +ComplexBlob/Folly/8192/real_time 120943 ns 120762 ns 5776 +ComplexBlob/BoostThread/8192/real_time 155583 ns 148833 ns 4576 +NoContention/YACLib/real_time 446234 ns 221493 ns 1564 +NoContention/Folly/real_time 2251579 ns 914427 ns 312 +NoContention/BoostThread/real_time 4801297 ns 3076796 ns 150 +Contention/YACLib/real_time 732738 ns 173684 ns 909 +Contention/Folly/real_time 2906086 ns 659158 ns 239 +Contention/BoostThread/real_time 4941652 ns 2094590 ns 144 2022-03-03T14:40:39+02:00 Running ./build_gcc_libstdcxx/future/future Run on (24 X 4353.95 MHz CPU s) @@ -207,132 +207,132 @@ Load Average: 1.08, 0.84, 0.68 ---------------------------------------------------------------------------------- Benchmark Time CPU Iterations ---------------------------------------------------------------------------------- -ConstantFuture(Std)/real_time 153 ns 153 ns 4573470 -ConstantFuture(YACLib)/real_time 14.5 ns 14.5 ns 48263026 -ConstantFuture(Folly)/real_time 18.9 ns 18.9 ns 36987153 -ConstantFuture(BoostThread)/real_time 103 ns 103 ns 6795005 -PromiseAndFuture(Std)/real_time 151 ns 151 ns 4659410 -PromiseAndFuture(YACLib)/real_time 19.9 ns 19.8 ns 33096214 -PromiseAndFuture(Folly)/real_time 72.9 ns 72.8 ns 9536848 -PromiseAndFuture(BoostThread)/real_time 96.7 ns 96.6 ns 7216746 -Then(YACLib)/0/0/real_time 48.1 ns 48.0 ns 14494563 -Then(YACLib)/1/0/real_time 95.4 ns 95.3 ns 7259261 -Then(YACLib)/2/0/real_time 143 ns 142 ns 4913824 -Then(YACLib)/4/0/real_time 238 ns 238 ns 2949050 -Then(YACLib)/8/0/real_time 437 ns 437 ns 1600924 -Then(YACLib)/16/0/real_time 814 ns 813 ns 857755 -Then(YACLib)/32/0/real_time 1564 ns 1561 ns 446888 -Then(YACLib)/64/0/real_time 3029 ns 3026 ns 231382 -Then(YACLib)/0/1/real_time 5356 ns 2616 ns 127549 -Then(YACLib)/1/1/real_time 6044 ns 2858 ns 114599 -Then(YACLib)/2/1/real_time 6250 ns 2979 ns 111559 -Then(YACLib)/4/1/real_time 6583 ns 3271 ns 103609 -Then(YACLib)/8/1/real_time 6890 ns 3557 ns 97155 -Then(YACLib)/16/1/real_time 8013 ns 4745 ns 91184 -Then(YACLib)/32/1/real_time 8938 ns 6070 ns 77319 -Then(YACLib)/64/1/real_time 11503 ns 9869 ns 61547 -Then(YACLib)/0/2/real_time 5566 ns 2661 ns 123557 -Then(YACLib)/1/2/real_time 5936 ns 3007 ns 117398 -Then(YACLib)/2/2/real_time 5698 ns 3080 ns 121676 -Then(YACLib)/4/2/real_time 6029 ns 3368 ns 100000 -Then(YACLib)/8/2/real_time 7066 ns 4223 ns 98653 -Then(YACLib)/16/2/real_time 9875 ns 6848 ns 71998 -Then(YACLib)/32/2/real_time 12591 ns 9878 ns 41695 -Then(YACLib)/64/2/real_time 29359 ns 25918 ns 23798 -Then(Folly)/0/0/real_time 156 ns 156 ns 4363444 -Then(Folly)/1/0/real_time 356 ns 356 ns 1961979 -Then(Folly)/2/0/real_time 556 ns 555 ns 1181008 -Then(Folly)/4/0/real_time 968 ns 967 ns 716186 -Then(Folly)/8/0/real_time 1795 ns 1793 ns 388848 -Then(Folly)/16/0/real_time 3459 ns 3456 ns 202269 -Then(Folly)/32/0/real_time 6748 ns 6741 ns 103498 -Then(Folly)/64/0/real_time 13322 ns 13308 ns 52462 -Then(Folly)/0/1/real_time 5781 ns 3181 ns 122218 -Then(Folly)/1/1/real_time 6882 ns 3651 ns 102618 -Then(Folly)/2/1/real_time 7352 ns 3823 ns 96385 -Then(Folly)/4/1/real_time 8167 ns 4343 ns 90811 -Then(Folly)/8/1/real_time 7662 ns 4517 ns 90453 -Then(Folly)/16/1/real_time 9071 ns 5656 ns 114475 -Then(Folly)/32/1/real_time 18756 ns 11788 ns 37738 -Then(Folly)/64/1/real_time 38157 ns 25999 ns 18778 -Then(Folly)/0/2/real_time 5904 ns 3206 ns 118422 -Then(Folly)/1/2/real_time 6965 ns 3627 ns 97159 -Then(Folly)/2/2/real_time 7646 ns 3870 ns 155519 -Then(Folly)/4/2/real_time 8704 ns 4515 ns 80679 -Then(Folly)/8/2/real_time 9976 ns 5413 ns 113480 -Then(Folly)/16/2/real_time 15912 ns 9137 ns 65181 -Then(Folly)/32/2/real_time 26894 ns 16996 ns 38943 -Then(Folly)/64/2/real_time 48777 ns 31944 ns 14981 -Then(BoostThread)/0/0/real_time 333 ns 333 ns 2102979 -Then(BoostThread)/1/0/real_time 739 ns 738 ns 962027 -Then(BoostThread)/2/0/real_time 1108 ns 1107 ns 620911 -Then(BoostThread)/4/0/real_time 1859 ns 1857 ns 376796 -Then(BoostThread)/8/0/real_time 3384 ns 3380 ns 207638 -Then(BoostThread)/16/0/real_time 6392 ns 6385 ns 108837 -Then(BoostThread)/32/0/real_time 12381 ns 12366 ns 56401 -Then(BoostThread)/64/0/real_time 24480 ns 24454 ns 28625 -Then(BoostThread)/0/1/real_time 7167 ns 3683 ns 167609 -Then(BoostThread)/1/1/real_time 8284 ns 4768 ns 84245 -Then(BoostThread)/2/1/real_time 8445 ns 5093 ns 84918 -Then(BoostThread)/4/1/real_time 9908 ns 6209 ns 122521 -Then(BoostThread)/8/1/real_time 11256 ns 7903 ns 61475 -Then(BoostThread)/16/1/real_time 17526 ns 15004 ns 64874 -Then(BoostThread)/32/1/real_time 31184 ns 28723 ns 22099 -Then(BoostThread)/64/1/real_time 55184 ns 52186 ns 12647 -Then(BoostThread)/0/2/real_time 7395 ns 3828 ns 94156 -Then(BoostThread)/1/2/real_time 8966 ns 5077 ns 100000 -Then(BoostThread)/2/2/real_time 10085 ns 6068 ns 130043 -Then(BoostThread)/4/2/real_time 7854 ns 5353 ns 101908 -Then(BoostThread)/8/2/real_time 17735 ns 11294 ns 33899 -Then(BoostThread)/16/2/real_time 32767 ns 20578 ns 21280 -Then(BoostThread)/32/2/real_time 56248 ns 37213 ns 12395 -Then(BoostThread)/64/2/real_time 103842 ns 70621 ns 6713 -ComplexBlob(YACLib)/0/real_time 10822 ns 10811 ns 64589 -ComplexBlob(Folly)/0/real_time 30960 ns 30929 ns 22691 -ComplexBlob(BoostThread)/0/real_time 72361 ns 66871 ns 9719 -ComplexBlob(YACLib)/2/real_time 10017 ns 10008 ns 69039 -ComplexBlob(Folly)/2/real_time 30963 ns 30933 ns 22595 -ComplexBlob(BoostThread)/2/real_time 71799 ns 66294 ns 9703 -ComplexBlob(YACLib)/4/real_time 10510 ns 10500 ns 66216 -ComplexBlob(Folly)/4/real_time 31732 ns 31702 ns 22044 -ComplexBlob(BoostThread)/4/real_time 72333 ns 66655 ns 9661 -ComplexBlob(YACLib)/8/real_time 10273 ns 10262 ns 68239 -ComplexBlob(Folly)/8/real_time 30262 ns 30233 ns 23146 -ComplexBlob(BoostThread)/8/real_time 71631 ns 66005 ns 10014 -ComplexBlob(YACLib)/16/real_time 10505 ns 10496 ns 66131 -ComplexBlob(Folly)/16/real_time 31410 ns 31380 ns 22322 -ComplexBlob(BoostThread)/16/real_time 71096 ns 65421 ns 9867 -ComplexBlob(YACLib)/32/real_time 10735 ns 10726 ns 64565 -ComplexBlob(Folly)/32/real_time 31116 ns 31086 ns 22519 -ComplexBlob(BoostThread)/32/real_time 72784 ns 67184 ns 9536 -ComplexBlob(YACLib)/64/real_time 11034 ns 11021 ns 64459 -ComplexBlob(Folly)/64/real_time 32091 ns 32049 ns 21890 -ComplexBlob(BoostThread)/64/real_time 72536 ns 67067 ns 9957 -ComplexBlob(YACLib)/128/real_time 12187 ns 12175 ns 57090 -ComplexBlob(Folly)/128/real_time 32632 ns 32586 ns 21424 -ComplexBlob(BoostThread)/128/real_time 74722 ns 69317 ns 9637 -ComplexBlob(YACLib)/256/real_time 12863 ns 12849 ns 54375 -ComplexBlob(Folly)/256/real_time 34423 ns 34384 ns 20424 -ComplexBlob(BoostThread)/256/real_time 74054 ns 68643 ns 9595 -ComplexBlob(YACLib)/512/real_time 18830 ns 18809 ns 37138 -ComplexBlob(Folly)/512/real_time 38843 ns 38797 ns 18080 -ComplexBlob(BoostThread)/512/real_time 78611 ns 73152 ns 9146 -ComplexBlob(YACLib)/1024/real_time 27492 ns 27428 ns 25230 -ComplexBlob(Folly)/1024/real_time 46090 ns 46042 ns 15224 -ComplexBlob(BoostThread)/1024/real_time 95006 ns 89439 ns 7009 -ComplexBlob(YACLib)/2048/real_time 31094 ns 31064 ns 22536 -ComplexBlob(Folly)/2048/real_time 48533 ns 48483 ns 13276 -ComplexBlob(BoostThread)/2048/real_time 100972 ns 95500 ns 7016 -ComplexBlob(YACLib)/4096/real_time 47595 ns 47543 ns 14712 -ComplexBlob(Folly)/4096/real_time 75624 ns 75527 ns 9234 -ComplexBlob(BoostThread)/4096/real_time 113530 ns 107810 ns 6163 -ComplexBlob(YACLib)/8192/real_time 101728 ns 101526 ns 6785 -ComplexBlob(Folly)/8192/real_time 149324 ns 149027 ns 5012 -ComplexBlob(BoostThread)/8192/real_time 155057 ns 148635 ns 4574 -NoContention(YACLib)/real_time 398952 ns 222091 ns 1760 -NoContention(Folly)/real_time 1565136 ns 727341 ns 446 -NoContention(BoostThread)/real_time 4563109 ns 2828566 ns 153 -Contention(YACLib)/real_time 670465 ns 154046 ns 1015 -Contention(Folly)/real_time 2577796 ns 528689 ns 271 -Contention(BoostThread)/real_time 4742608 ns 2055291 ns 134 +ConstantFuture/Std/real_time 153 ns 153 ns 4573470 +ConstantFuture/YACLib/real_time 14.5 ns 14.5 ns 48263026 +ConstantFuture/Folly/real_time 18.9 ns 18.9 ns 36987153 +ConstantFuture/BoostThread/real_time 103 ns 103 ns 6795005 +PromiseAndFuture/Std/real_time 151 ns 151 ns 4659410 +PromiseAndFuture/YACLib/real_time 19.9 ns 19.8 ns 33096214 +PromiseAndFuture/Folly/real_time 72.9 ns 72.8 ns 9536848 +PromiseAndFuture/BoostThread/real_time 96.7 ns 96.6 ns 7216746 +Then/YACLib/0/0/real_time 48.1 ns 48.0 ns 14494563 +Then/YACLib/1/0/real_time 95.4 ns 95.3 ns 7259261 +Then/YACLib/2/0/real_time 143 ns 142 ns 4913824 +Then/YACLib/4/0/real_time 238 ns 238 ns 2949050 +Then/YACLib/8/0/real_time 437 ns 437 ns 1600924 +Then/YACLib/16/0/real_time 814 ns 813 ns 857755 +Then/YACLib/32/0/real_time 1564 ns 1561 ns 446888 +Then/YACLib/64/0/real_time 3029 ns 3026 ns 231382 +Then/YACLib/0/1/real_time 5356 ns 2616 ns 127549 +Then/YACLib/1/1/real_time 6044 ns 2858 ns 114599 +Then/YACLib/2/1/real_time 6250 ns 2979 ns 111559 +Then/YACLib/4/1/real_time 6583 ns 3271 ns 103609 +Then/YACLib/8/1/real_time 6890 ns 3557 ns 97155 +Then/YACLib/16/1/real_time 8013 ns 4745 ns 91184 +Then/YACLib/32/1/real_time 8938 ns 6070 ns 77319 +Then/YACLib/64/1/real_time 11503 ns 9869 ns 61547 +Then/YACLib/0/2/real_time 5566 ns 2661 ns 123557 +Then/YACLib/1/2/real_time 5936 ns 3007 ns 117398 +Then/YACLib/2/2/real_time 5698 ns 3080 ns 121676 +Then/YACLib/4/2/real_time 6029 ns 3368 ns 100000 +Then/YACLib/8/2/real_time 7066 ns 4223 ns 98653 +Then/YACLib/16/2/real_time 9875 ns 6848 ns 71998 +Then/YACLib/32/2/real_time 12591 ns 9878 ns 41695 +Then/YACLib/64/2/real_time 29359 ns 25918 ns 23798 +Then/Folly/0/0/real_time 156 ns 156 ns 4363444 +Then/Folly/1/0/real_time 356 ns 356 ns 1961979 +Then/Folly/2/0/real_time 556 ns 555 ns 1181008 +Then/Folly/4/0/real_time 968 ns 967 ns 716186 +Then/Folly/8/0/real_time 1795 ns 1793 ns 388848 +Then/Folly/16/0/real_time 3459 ns 3456 ns 202269 +Then/Folly/32/0/real_time 6748 ns 6741 ns 103498 +Then/Folly/64/0/real_time 13322 ns 13308 ns 52462 +Then/Folly/0/1/real_time 5781 ns 3181 ns 122218 +Then/Folly/1/1/real_time 6882 ns 3651 ns 102618 +Then/Folly/2/1/real_time 7352 ns 3823 ns 96385 +Then/Folly/4/1/real_time 8167 ns 4343 ns 90811 +Then/Folly/8/1/real_time 7662 ns 4517 ns 90453 +Then/Folly/16/1/real_time 9071 ns 5656 ns 114475 +Then/Folly/32/1/real_time 18756 ns 11788 ns 37738 +Then/Folly/64/1/real_time 38157 ns 25999 ns 18778 +Then/Folly/0/2/real_time 5904 ns 3206 ns 118422 +Then/Folly/1/2/real_time 6965 ns 3627 ns 97159 +Then/Folly/2/2/real_time 7646 ns 3870 ns 155519 +Then/Folly/4/2/real_time 8704 ns 4515 ns 80679 +Then/Folly/8/2/real_time 9976 ns 5413 ns 113480 +Then/Folly/16/2/real_time 15912 ns 9137 ns 65181 +Then/Folly/32/2/real_time 26894 ns 16996 ns 38943 +Then/Folly/64/2/real_time 48777 ns 31944 ns 14981 +Then/BoostThread/0/0/real_time 333 ns 333 ns 2102979 +Then/BoostThread/1/0/real_time 739 ns 738 ns 962027 +Then/BoostThread/2/0/real_time 1108 ns 1107 ns 620911 +Then/BoostThread/4/0/real_time 1859 ns 1857 ns 376796 +Then/BoostThread/8/0/real_time 3384 ns 3380 ns 207638 +Then/BoostThread/16/0/real_time 6392 ns 6385 ns 108837 +Then/BoostThread/32/0/real_time 12381 ns 12366 ns 56401 +Then/BoostThread/64/0/real_time 24480 ns 24454 ns 28625 +Then/BoostThread/0/1/real_time 7167 ns 3683 ns 167609 +Then/BoostThread/1/1/real_time 8284 ns 4768 ns 84245 +Then/BoostThread/2/1/real_time 8445 ns 5093 ns 84918 +Then/BoostThread/4/1/real_time 9908 ns 6209 ns 122521 +Then/BoostThread/8/1/real_time 11256 ns 7903 ns 61475 +Then/BoostThread/16/1/real_time 17526 ns 15004 ns 64874 +Then/BoostThread/32/1/real_time 31184 ns 28723 ns 22099 +Then/BoostThread/64/1/real_time 55184 ns 52186 ns 12647 +Then/BoostThread/0/2/real_time 7395 ns 3828 ns 94156 +Then/BoostThread/1/2/real_time 8966 ns 5077 ns 100000 +Then/BoostThread/2/2/real_time 10085 ns 6068 ns 130043 +Then/BoostThread/4/2/real_time 7854 ns 5353 ns 101908 +Then/BoostThread/8/2/real_time 17735 ns 11294 ns 33899 +Then/BoostThread/16/2/real_time 32767 ns 20578 ns 21280 +Then/BoostThread/32/2/real_time 56248 ns 37213 ns 12395 +Then/BoostThread/64/2/real_time 103842 ns 70621 ns 6713 +ComplexBlob/YACLib/0/real_time 10822 ns 10811 ns 64589 +ComplexBlob/Folly/0/real_time 30960 ns 30929 ns 22691 +ComplexBlob/BoostThread/0/real_time 72361 ns 66871 ns 9719 +ComplexBlob/YACLib/2/real_time 10017 ns 10008 ns 69039 +ComplexBlob/Folly/2/real_time 30963 ns 30933 ns 22595 +ComplexBlob/BoostThread/2/real_time 71799 ns 66294 ns 9703 +ComplexBlob/YACLib/4/real_time 10510 ns 10500 ns 66216 +ComplexBlob/Folly/4/real_time 31732 ns 31702 ns 22044 +ComplexBlob/BoostThread/4/real_time 72333 ns 66655 ns 9661 +ComplexBlob/YACLib/8/real_time 10273 ns 10262 ns 68239 +ComplexBlob/Folly/8/real_time 30262 ns 30233 ns 23146 +ComplexBlob/BoostThread/8/real_time 71631 ns 66005 ns 10014 +ComplexBlob/YACLib/16/real_time 10505 ns 10496 ns 66131 +ComplexBlob/Folly/16/real_time 31410 ns 31380 ns 22322 +ComplexBlob/BoostThread/16/real_time 71096 ns 65421 ns 9867 +ComplexBlob/YACLib/32/real_time 10735 ns 10726 ns 64565 +ComplexBlob/Folly/32/real_time 31116 ns 31086 ns 22519 +ComplexBlob/BoostThread/32/real_time 72784 ns 67184 ns 9536 +ComplexBlob/YACLib/64/real_time 11034 ns 11021 ns 64459 +ComplexBlob/Folly/64/real_time 32091 ns 32049 ns 21890 +ComplexBlob/BoostThread/64/real_time 72536 ns 67067 ns 9957 +ComplexBlob/YACLib/128/real_time 12187 ns 12175 ns 57090 +ComplexBlob/Folly/128/real_time 32632 ns 32586 ns 21424 +ComplexBlob/BoostThread/128/real_time 74722 ns 69317 ns 9637 +ComplexBlob/YACLib/256/real_time 12863 ns 12849 ns 54375 +ComplexBlob/Folly/256/real_time 34423 ns 34384 ns 20424 +ComplexBlob/BoostThread/256/real_time 74054 ns 68643 ns 9595 +ComplexBlob/YACLib/512/real_time 18830 ns 18809 ns 37138 +ComplexBlob/Folly/512/real_time 38843 ns 38797 ns 18080 +ComplexBlob/BoostThread/512/real_time 78611 ns 73152 ns 9146 +ComplexBlob/YACLib/1024/real_time 27492 ns 27428 ns 25230 +ComplexBlob/Folly/1024/real_time 46090 ns 46042 ns 15224 +ComplexBlob/BoostThread/1024/real_time 95006 ns 89439 ns 7009 +ComplexBlob/YACLib/2048/real_time 31094 ns 31064 ns 22536 +ComplexBlob/Folly/2048/real_time 48533 ns 48483 ns 13276 +ComplexBlob/BoostThread/2048/real_time 100972 ns 95500 ns 7016 +ComplexBlob/YACLib/4096/real_time 47595 ns 47543 ns 14712 +ComplexBlob/Folly/4096/real_time 75624 ns 75527 ns 9234 +ComplexBlob/BoostThread/4096/real_time 113530 ns 107810 ns 6163 +ComplexBlob/YACLib/8192/real_time 101728 ns 101526 ns 6785 +ComplexBlob/Folly/8192/real_time 149324 ns 149027 ns 5012 +ComplexBlob/BoostThread/8192/real_time 155057 ns 148635 ns 4574 +NoContention/YACLib/real_time 398952 ns 222091 ns 1760 +NoContention/Folly/real_time 1565136 ns 727341 ns 446 +NoContention/BoostThread/real_time 4563109 ns 2828566 ns 153 +Contention/YACLib/real_time 670465 ns 154046 ns 1015 +Contention/Folly/real_time 2577796 ns 528689 ns 271 +Contention/BoostThread/real_time 4742608 ns 2055291 ns 134 ``` diff --git a/future/result/Ryzen_9_5900X/clang_libcxx/data.json b/future/result/Ryzen_9_5900X/clang_libcxx/data.json index 932c57b..5587705 100644 --- a/future/result/Ryzen_9_5900X/clang_libcxx/data.json +++ b/future/result/Ryzen_9_5900X/clang_libcxx/data.json @@ -37,10 +37,10 @@ }, "benchmarks": [ { - "name": "ConstantFuture(Std)/real_time", + "name": "ConstantFuture/Std/real_time", "family_index": 0, "per_family_instance_index": 0, - "run_name": "ConstantFuture(Std)/real_time", + "run_name": "ConstantFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -51,10 +51,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(YACLib)/real_time", + "name": "ConstantFuture/YACLib/real_time", "family_index": 1, "per_family_instance_index": 0, - "run_name": "ConstantFuture(YACLib)/real_time", + "run_name": "ConstantFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -65,10 +65,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(Std)/real_time", + "name": "PromiseAndFuture/Std/real_time", "family_index": 2, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(Std)/real_time", + "run_name": "PromiseAndFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -79,10 +79,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(YACLib)/real_time", + "name": "PromiseAndFuture/YACLib/real_time", "family_index": 3, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(YACLib)/real_time", + "run_name": "PromiseAndFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -93,10 +93,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/0/real_time", + "name": "Then/YACLib/0/0/real_time", "family_index": 4, "per_family_instance_index": 0, - "run_name": "Then(YACLib)/0/0/real_time", + "run_name": "Then/YACLib/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -107,10 +107,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/0/real_time", + "name": "Then/YACLib/1/0/real_time", "family_index": 4, "per_family_instance_index": 1, - "run_name": "Then(YACLib)/1/0/real_time", + "run_name": "Then/YACLib/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -121,10 +121,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/0/real_time", + "name": "Then/YACLib/2/0/real_time", "family_index": 4, "per_family_instance_index": 2, - "run_name": "Then(YACLib)/2/0/real_time", + "run_name": "Then/YACLib/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -135,10 +135,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/0/real_time", + "name": "Then/YACLib/4/0/real_time", "family_index": 4, "per_family_instance_index": 3, - "run_name": "Then(YACLib)/4/0/real_time", + "run_name": "Then/YACLib/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -149,10 +149,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/0/real_time", + "name": "Then/YACLib/8/0/real_time", "family_index": 4, "per_family_instance_index": 4, - "run_name": "Then(YACLib)/8/0/real_time", + "run_name": "Then/YACLib/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -163,10 +163,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/0/real_time", + "name": "Then/YACLib/16/0/real_time", "family_index": 4, "per_family_instance_index": 5, - "run_name": "Then(YACLib)/16/0/real_time", + "run_name": "Then/YACLib/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -177,10 +177,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/0/real_time", + "name": "Then/YACLib/32/0/real_time", "family_index": 4, "per_family_instance_index": 6, - "run_name": "Then(YACLib)/32/0/real_time", + "run_name": "Then/YACLib/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -191,10 +191,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/0/real_time", + "name": "Then/YACLib/64/0/real_time", "family_index": 4, "per_family_instance_index": 7, - "run_name": "Then(YACLib)/64/0/real_time", + "run_name": "Then/YACLib/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -205,10 +205,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/1/real_time", + "name": "Then/YACLib/0/1/real_time", "family_index": 4, "per_family_instance_index": 8, - "run_name": "Then(YACLib)/0/1/real_time", + "run_name": "Then/YACLib/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -219,10 +219,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/1/real_time", + "name": "Then/YACLib/1/1/real_time", "family_index": 4, "per_family_instance_index": 9, - "run_name": "Then(YACLib)/1/1/real_time", + "run_name": "Then/YACLib/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -233,10 +233,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/1/real_time", + "name": "Then/YACLib/2/1/real_time", "family_index": 4, "per_family_instance_index": 10, - "run_name": "Then(YACLib)/2/1/real_time", + "run_name": "Then/YACLib/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -247,10 +247,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/1/real_time", + "name": "Then/YACLib/4/1/real_time", "family_index": 4, "per_family_instance_index": 11, - "run_name": "Then(YACLib)/4/1/real_time", + "run_name": "Then/YACLib/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -261,10 +261,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/1/real_time", + "name": "Then/YACLib/8/1/real_time", "family_index": 4, "per_family_instance_index": 12, - "run_name": "Then(YACLib)/8/1/real_time", + "run_name": "Then/YACLib/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -275,10 +275,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/1/real_time", + "name": "Then/YACLib/16/1/real_time", "family_index": 4, "per_family_instance_index": 13, - "run_name": "Then(YACLib)/16/1/real_time", + "run_name": "Then/YACLib/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -289,10 +289,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/1/real_time", + "name": "Then/YACLib/32/1/real_time", "family_index": 4, "per_family_instance_index": 14, - "run_name": "Then(YACLib)/32/1/real_time", + "run_name": "Then/YACLib/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -303,10 +303,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/1/real_time", + "name": "Then/YACLib/64/1/real_time", "family_index": 4, "per_family_instance_index": 15, - "run_name": "Then(YACLib)/64/1/real_time", + "run_name": "Then/YACLib/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -317,10 +317,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/2/real_time", + "name": "Then/YACLib/0/2/real_time", "family_index": 4, "per_family_instance_index": 16, - "run_name": "Then(YACLib)/0/2/real_time", + "run_name": "Then/YACLib/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -331,10 +331,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/2/real_time", + "name": "Then/YACLib/1/2/real_time", "family_index": 4, "per_family_instance_index": 17, - "run_name": "Then(YACLib)/1/2/real_time", + "run_name": "Then/YACLib/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -345,10 +345,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/2/real_time", + "name": "Then/YACLib/2/2/real_time", "family_index": 4, "per_family_instance_index": 18, - "run_name": "Then(YACLib)/2/2/real_time", + "run_name": "Then/YACLib/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -359,10 +359,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/2/real_time", + "name": "Then/YACLib/4/2/real_time", "family_index": 4, "per_family_instance_index": 19, - "run_name": "Then(YACLib)/4/2/real_time", + "run_name": "Then/YACLib/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -373,10 +373,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/2/real_time", + "name": "Then/YACLib/8/2/real_time", "family_index": 4, "per_family_instance_index": 20, - "run_name": "Then(YACLib)/8/2/real_time", + "run_name": "Then/YACLib/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -387,10 +387,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/2/real_time", + "name": "Then/YACLib/16/2/real_time", "family_index": 4, "per_family_instance_index": 21, - "run_name": "Then(YACLib)/16/2/real_time", + "run_name": "Then/YACLib/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -401,10 +401,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/2/real_time", + "name": "Then/YACLib/32/2/real_time", "family_index": 4, "per_family_instance_index": 22, - "run_name": "Then(YACLib)/32/2/real_time", + "run_name": "Then/YACLib/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -415,10 +415,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/2/real_time", + "name": "Then/YACLib/64/2/real_time", "family_index": 4, "per_family_instance_index": 23, - "run_name": "Then(YACLib)/64/2/real_time", + "run_name": "Then/YACLib/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -429,10 +429,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/0/real_time", + "name": "ComplexBlob/YACLib/0/real_time", "family_index": 5, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/0/real_time", + "run_name": "ComplexBlob/YACLib/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -443,10 +443,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2/real_time", + "name": "ComplexBlob/YACLib/2/real_time", "family_index": 6, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2/real_time", + "run_name": "ComplexBlob/YACLib/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -457,10 +457,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4/real_time", + "name": "ComplexBlob/YACLib/4/real_time", "family_index": 7, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4/real_time", + "run_name": "ComplexBlob/YACLib/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -471,10 +471,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8/real_time", + "name": "ComplexBlob/YACLib/8/real_time", "family_index": 8, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8/real_time", + "run_name": "ComplexBlob/YACLib/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -485,10 +485,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/16/real_time", + "name": "ComplexBlob/YACLib/16/real_time", "family_index": 9, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/16/real_time", + "run_name": "ComplexBlob/YACLib/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -499,10 +499,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/32/real_time", + "name": "ComplexBlob/YACLib/32/real_time", "family_index": 10, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/32/real_time", + "run_name": "ComplexBlob/YACLib/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -513,10 +513,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/64/real_time", + "name": "ComplexBlob/YACLib/64/real_time", "family_index": 11, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/64/real_time", + "run_name": "ComplexBlob/YACLib/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -527,10 +527,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/128/real_time", + "name": "ComplexBlob/YACLib/128/real_time", "family_index": 12, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/128/real_time", + "run_name": "ComplexBlob/YACLib/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -541,10 +541,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/256/real_time", + "name": "ComplexBlob/YACLib/256/real_time", "family_index": 13, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/256/real_time", + "run_name": "ComplexBlob/YACLib/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -555,10 +555,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/512/real_time", + "name": "ComplexBlob/YACLib/512/real_time", "family_index": 14, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/512/real_time", + "run_name": "ComplexBlob/YACLib/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -569,10 +569,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/1024/real_time", + "name": "ComplexBlob/YACLib/1024/real_time", "family_index": 15, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/1024/real_time", + "run_name": "ComplexBlob/YACLib/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -583,10 +583,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2048/real_time", + "name": "ComplexBlob/YACLib/2048/real_time", "family_index": 16, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2048/real_time", + "run_name": "ComplexBlob/YACLib/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -597,10 +597,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4096/real_time", + "name": "ComplexBlob/YACLib/4096/real_time", "family_index": 17, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4096/real_time", + "run_name": "ComplexBlob/YACLib/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -611,10 +611,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8192/real_time", + "name": "ComplexBlob/YACLib/8192/real_time", "family_index": 18, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8192/real_time", + "run_name": "ComplexBlob/YACLib/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -625,10 +625,10 @@ "time_unit": "ns" }, { - "name": "NoContention(YACLib)/real_time", + "name": "NoContention/YACLib/real_time", "family_index": 19, "per_family_instance_index": 0, - "run_name": "NoContention(YACLib)/real_time", + "run_name": "NoContention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -639,10 +639,10 @@ "time_unit": "ns" }, { - "name": "Contention(YACLib)/real_time", + "name": "Contention/YACLib/real_time", "family_index": 20, "per_family_instance_index": 0, - "run_name": "Contention(YACLib)/real_time", + "run_name": "Contention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, diff --git a/future/result/Ryzen_9_5900X/clang_libcxx/picture/ComplexBlob.svg b/future/result/Ryzen_9_5900X/clang_libcxx/picture/ComplexBlob.svg new file mode 100644 index 0000000..eb7642f --- /dev/null +++ b/future/result/Ryzen_9_5900X/clang_libcxx/picture/ComplexBlob.svg @@ -0,0 +1,784 @@ + + + + + + + + 2022-04-10T19:11:58.949155 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_9_5900X/clang_libcxx/picture/ConstantFuture.svg b/future/result/Ryzen_9_5900X/clang_libcxx/picture/ConstantFuture.svg new file mode 100644 index 0000000..22667f2 --- /dev/null +++ b/future/result/Ryzen_9_5900X/clang_libcxx/picture/ConstantFuture.svg @@ -0,0 +1,834 @@ + + + + + + + + 2022-04-10T19:11:58.092468 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_9_5900X/clang_libcxx/picture/Contention.svg b/future/result/Ryzen_9_5900X/clang_libcxx/picture/Contention.svg new file mode 100644 index 0000000..c90ecd6 --- /dev/null +++ b/future/result/Ryzen_9_5900X/clang_libcxx/picture/Contention.svg @@ -0,0 +1,690 @@ + + + + + + + + 2022-04-10T19:11:59.318000 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_9_5900X/clang_libcxx/picture/NoContention.svg b/future/result/Ryzen_9_5900X/clang_libcxx/picture/NoContention.svg new file mode 100644 index 0000000..5cccb3d --- /dev/null +++ b/future/result/Ryzen_9_5900X/clang_libcxx/picture/NoContention.svg @@ -0,0 +1,678 @@ + + + + + + + + 2022-04-10T19:11:59.130761 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_9_5900X/clang_libcxx/picture/PromiseAndFuture.svg b/future/result/Ryzen_9_5900X/clang_libcxx/picture/PromiseAndFuture.svg new file mode 100644 index 0000000..2a8df3d --- /dev/null +++ b/future/result/Ryzen_9_5900X/clang_libcxx/picture/PromiseAndFuture.svg @@ -0,0 +1,783 @@ + + + + + + + + 2022-04-10T19:11:58.231609 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_9_5900X/clang_libcxx/picture/ThenAllInline.svg b/future/result/Ryzen_9_5900X/clang_libcxx/picture/ThenAllInline.svg new file mode 100644 index 0000000..b8e94fc --- /dev/null +++ b/future/result/Ryzen_9_5900X/clang_libcxx/picture/ThenAllInline.svg @@ -0,0 +1,676 @@ + + + + + + + + 2022-04-10T19:11:58.398489 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_9_5900X/clang_libcxx/picture/ThenOneInline.svg b/future/result/Ryzen_9_5900X/clang_libcxx/picture/ThenOneInline.svg new file mode 100644 index 0000000..9f89e96 --- /dev/null +++ b/future/result/Ryzen_9_5900X/clang_libcxx/picture/ThenOneInline.svg @@ -0,0 +1,733 @@ + + + + + + + + 2022-04-10T19:11:58.559848 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_9_5900X/clang_libcxx/picture/ThenScheduler.svg b/future/result/Ryzen_9_5900X/clang_libcxx/picture/ThenScheduler.svg new file mode 100644 index 0000000..9a5c767 --- /dev/null +++ b/future/result/Ryzen_9_5900X/clang_libcxx/picture/ThenScheduler.svg @@ -0,0 +1,792 @@ + + + + + + + + 2022-04-10T19:11:58.700363 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_9_5900X/clang_libstdcxx/data.json b/future/result/Ryzen_9_5900X/clang_libstdcxx/data.json index 5ba406e..45f55c1 100644 --- a/future/result/Ryzen_9_5900X/clang_libstdcxx/data.json +++ b/future/result/Ryzen_9_5900X/clang_libstdcxx/data.json @@ -37,10 +37,10 @@ }, "benchmarks": [ { - "name": "ConstantFuture(Std)/real_time", + "name": "ConstantFuture/Std/real_time", "family_index": 0, "per_family_instance_index": 0, - "run_name": "ConstantFuture(Std)/real_time", + "run_name": "ConstantFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -51,10 +51,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(YACLib)/real_time", + "name": "ConstantFuture/YACLib/real_time", "family_index": 1, "per_family_instance_index": 0, - "run_name": "ConstantFuture(YACLib)/real_time", + "run_name": "ConstantFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -65,10 +65,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(Folly)/real_time", + "name": "ConstantFuture/Folly/real_time", "family_index": 2, "per_family_instance_index": 0, - "run_name": "ConstantFuture(Folly)/real_time", + "run_name": "ConstantFuture/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -79,10 +79,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(BoostThread)/real_time", + "name": "ConstantFuture/BoostThread/real_time", "family_index": 3, "per_family_instance_index": 0, - "run_name": "ConstantFuture(BoostThread)/real_time", + "run_name": "ConstantFuture/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -93,10 +93,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(Std)/real_time", + "name": "PromiseAndFuture/Std/real_time", "family_index": 4, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(Std)/real_time", + "run_name": "PromiseAndFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -107,10 +107,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(YACLib)/real_time", + "name": "PromiseAndFuture/YACLib/real_time", "family_index": 5, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(YACLib)/real_time", + "run_name": "PromiseAndFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -121,10 +121,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(Folly)/real_time", + "name": "PromiseAndFuture/Folly/real_time", "family_index": 6, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(Folly)/real_time", + "run_name": "PromiseAndFuture/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -135,10 +135,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(BoostThread)/real_time", + "name": "PromiseAndFuture/BoostThread/real_time", "family_index": 7, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(BoostThread)/real_time", + "run_name": "PromiseAndFuture/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -149,10 +149,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/0/real_time", + "name": "Then/YACLib/0/0/real_time", "family_index": 8, "per_family_instance_index": 0, - "run_name": "Then(YACLib)/0/0/real_time", + "run_name": "Then/YACLib/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -163,10 +163,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/0/real_time", + "name": "Then/YACLib/1/0/real_time", "family_index": 8, "per_family_instance_index": 1, - "run_name": "Then(YACLib)/1/0/real_time", + "run_name": "Then/YACLib/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -177,10 +177,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/0/real_time", + "name": "Then/YACLib/2/0/real_time", "family_index": 8, "per_family_instance_index": 2, - "run_name": "Then(YACLib)/2/0/real_time", + "run_name": "Then/YACLib/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -191,10 +191,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/0/real_time", + "name": "Then/YACLib/4/0/real_time", "family_index": 8, "per_family_instance_index": 3, - "run_name": "Then(YACLib)/4/0/real_time", + "run_name": "Then/YACLib/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -205,10 +205,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/0/real_time", + "name": "Then/YACLib/8/0/real_time", "family_index": 8, "per_family_instance_index": 4, - "run_name": "Then(YACLib)/8/0/real_time", + "run_name": "Then/YACLib/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -219,10 +219,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/0/real_time", + "name": "Then/YACLib/16/0/real_time", "family_index": 8, "per_family_instance_index": 5, - "run_name": "Then(YACLib)/16/0/real_time", + "run_name": "Then/YACLib/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -233,10 +233,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/0/real_time", + "name": "Then/YACLib/32/0/real_time", "family_index": 8, "per_family_instance_index": 6, - "run_name": "Then(YACLib)/32/0/real_time", + "run_name": "Then/YACLib/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -247,10 +247,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/0/real_time", + "name": "Then/YACLib/64/0/real_time", "family_index": 8, "per_family_instance_index": 7, - "run_name": "Then(YACLib)/64/0/real_time", + "run_name": "Then/YACLib/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -261,10 +261,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/1/real_time", + "name": "Then/YACLib/0/1/real_time", "family_index": 8, "per_family_instance_index": 8, - "run_name": "Then(YACLib)/0/1/real_time", + "run_name": "Then/YACLib/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -275,10 +275,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/1/real_time", + "name": "Then/YACLib/1/1/real_time", "family_index": 8, "per_family_instance_index": 9, - "run_name": "Then(YACLib)/1/1/real_time", + "run_name": "Then/YACLib/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -289,10 +289,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/1/real_time", + "name": "Then/YACLib/2/1/real_time", "family_index": 8, "per_family_instance_index": 10, - "run_name": "Then(YACLib)/2/1/real_time", + "run_name": "Then/YACLib/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -303,10 +303,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/1/real_time", + "name": "Then/YACLib/4/1/real_time", "family_index": 8, "per_family_instance_index": 11, - "run_name": "Then(YACLib)/4/1/real_time", + "run_name": "Then/YACLib/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -317,10 +317,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/1/real_time", + "name": "Then/YACLib/8/1/real_time", "family_index": 8, "per_family_instance_index": 12, - "run_name": "Then(YACLib)/8/1/real_time", + "run_name": "Then/YACLib/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -331,10 +331,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/1/real_time", + "name": "Then/YACLib/16/1/real_time", "family_index": 8, "per_family_instance_index": 13, - "run_name": "Then(YACLib)/16/1/real_time", + "run_name": "Then/YACLib/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -345,10 +345,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/1/real_time", + "name": "Then/YACLib/32/1/real_time", "family_index": 8, "per_family_instance_index": 14, - "run_name": "Then(YACLib)/32/1/real_time", + "run_name": "Then/YACLib/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -359,10 +359,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/1/real_time", + "name": "Then/YACLib/64/1/real_time", "family_index": 8, "per_family_instance_index": 15, - "run_name": "Then(YACLib)/64/1/real_time", + "run_name": "Then/YACLib/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -373,10 +373,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/2/real_time", + "name": "Then/YACLib/0/2/real_time", "family_index": 8, "per_family_instance_index": 16, - "run_name": "Then(YACLib)/0/2/real_time", + "run_name": "Then/YACLib/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -387,10 +387,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/2/real_time", + "name": "Then/YACLib/1/2/real_time", "family_index": 8, "per_family_instance_index": 17, - "run_name": "Then(YACLib)/1/2/real_time", + "run_name": "Then/YACLib/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -401,10 +401,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/2/real_time", + "name": "Then/YACLib/2/2/real_time", "family_index": 8, "per_family_instance_index": 18, - "run_name": "Then(YACLib)/2/2/real_time", + "run_name": "Then/YACLib/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -415,10 +415,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/2/real_time", + "name": "Then/YACLib/4/2/real_time", "family_index": 8, "per_family_instance_index": 19, - "run_name": "Then(YACLib)/4/2/real_time", + "run_name": "Then/YACLib/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -429,10 +429,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/2/real_time", + "name": "Then/YACLib/8/2/real_time", "family_index": 8, "per_family_instance_index": 20, - "run_name": "Then(YACLib)/8/2/real_time", + "run_name": "Then/YACLib/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -443,10 +443,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/2/real_time", + "name": "Then/YACLib/16/2/real_time", "family_index": 8, "per_family_instance_index": 21, - "run_name": "Then(YACLib)/16/2/real_time", + "run_name": "Then/YACLib/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -457,10 +457,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/2/real_time", + "name": "Then/YACLib/32/2/real_time", "family_index": 8, "per_family_instance_index": 22, - "run_name": "Then(YACLib)/32/2/real_time", + "run_name": "Then/YACLib/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -471,10 +471,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/2/real_time", + "name": "Then/YACLib/64/2/real_time", "family_index": 8, "per_family_instance_index": 23, - "run_name": "Then(YACLib)/64/2/real_time", + "run_name": "Then/YACLib/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -485,10 +485,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/0/real_time", + "name": "Then/Folly/0/0/real_time", "family_index": 9, "per_family_instance_index": 0, - "run_name": "Then(Folly)/0/0/real_time", + "run_name": "Then/Folly/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -499,10 +499,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/0/real_time", + "name": "Then/Folly/1/0/real_time", "family_index": 9, "per_family_instance_index": 1, - "run_name": "Then(Folly)/1/0/real_time", + "run_name": "Then/Folly/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -513,10 +513,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/0/real_time", + "name": "Then/Folly/2/0/real_time", "family_index": 9, "per_family_instance_index": 2, - "run_name": "Then(Folly)/2/0/real_time", + "run_name": "Then/Folly/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -527,10 +527,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/0/real_time", + "name": "Then/Folly/4/0/real_time", "family_index": 9, "per_family_instance_index": 3, - "run_name": "Then(Folly)/4/0/real_time", + "run_name": "Then/Folly/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -541,10 +541,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/0/real_time", + "name": "Then/Folly/8/0/real_time", "family_index": 9, "per_family_instance_index": 4, - "run_name": "Then(Folly)/8/0/real_time", + "run_name": "Then/Folly/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -555,10 +555,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/0/real_time", + "name": "Then/Folly/16/0/real_time", "family_index": 9, "per_family_instance_index": 5, - "run_name": "Then(Folly)/16/0/real_time", + "run_name": "Then/Folly/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -569,10 +569,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/0/real_time", + "name": "Then/Folly/32/0/real_time", "family_index": 9, "per_family_instance_index": 6, - "run_name": "Then(Folly)/32/0/real_time", + "run_name": "Then/Folly/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -583,10 +583,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/0/real_time", + "name": "Then/Folly/64/0/real_time", "family_index": 9, "per_family_instance_index": 7, - "run_name": "Then(Folly)/64/0/real_time", + "run_name": "Then/Folly/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -597,10 +597,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/1/real_time", + "name": "Then/Folly/0/1/real_time", "family_index": 9, "per_family_instance_index": 8, - "run_name": "Then(Folly)/0/1/real_time", + "run_name": "Then/Folly/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -611,10 +611,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/1/real_time", + "name": "Then/Folly/1/1/real_time", "family_index": 9, "per_family_instance_index": 9, - "run_name": "Then(Folly)/1/1/real_time", + "run_name": "Then/Folly/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -625,10 +625,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/1/real_time", + "name": "Then/Folly/2/1/real_time", "family_index": 9, "per_family_instance_index": 10, - "run_name": "Then(Folly)/2/1/real_time", + "run_name": "Then/Folly/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -639,10 +639,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/1/real_time", + "name": "Then/Folly/4/1/real_time", "family_index": 9, "per_family_instance_index": 11, - "run_name": "Then(Folly)/4/1/real_time", + "run_name": "Then/Folly/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -653,10 +653,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/1/real_time", + "name": "Then/Folly/8/1/real_time", "family_index": 9, "per_family_instance_index": 12, - "run_name": "Then(Folly)/8/1/real_time", + "run_name": "Then/Folly/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -667,10 +667,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/1/real_time", + "name": "Then/Folly/16/1/real_time", "family_index": 9, "per_family_instance_index": 13, - "run_name": "Then(Folly)/16/1/real_time", + "run_name": "Then/Folly/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -681,10 +681,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/1/real_time", + "name": "Then/Folly/32/1/real_time", "family_index": 9, "per_family_instance_index": 14, - "run_name": "Then(Folly)/32/1/real_time", + "run_name": "Then/Folly/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -695,10 +695,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/1/real_time", + "name": "Then/Folly/64/1/real_time", "family_index": 9, "per_family_instance_index": 15, - "run_name": "Then(Folly)/64/1/real_time", + "run_name": "Then/Folly/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -709,10 +709,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/2/real_time", + "name": "Then/Folly/0/2/real_time", "family_index": 9, "per_family_instance_index": 16, - "run_name": "Then(Folly)/0/2/real_time", + "run_name": "Then/Folly/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -723,10 +723,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/2/real_time", + "name": "Then/Folly/1/2/real_time", "family_index": 9, "per_family_instance_index": 17, - "run_name": "Then(Folly)/1/2/real_time", + "run_name": "Then/Folly/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -737,10 +737,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/2/real_time", + "name": "Then/Folly/2/2/real_time", "family_index": 9, "per_family_instance_index": 18, - "run_name": "Then(Folly)/2/2/real_time", + "run_name": "Then/Folly/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -751,10 +751,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/2/real_time", + "name": "Then/Folly/4/2/real_time", "family_index": 9, "per_family_instance_index": 19, - "run_name": "Then(Folly)/4/2/real_time", + "run_name": "Then/Folly/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -765,10 +765,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/2/real_time", + "name": "Then/Folly/8/2/real_time", "family_index": 9, "per_family_instance_index": 20, - "run_name": "Then(Folly)/8/2/real_time", + "run_name": "Then/Folly/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -779,10 +779,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/2/real_time", + "name": "Then/Folly/16/2/real_time", "family_index": 9, "per_family_instance_index": 21, - "run_name": "Then(Folly)/16/2/real_time", + "run_name": "Then/Folly/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -793,10 +793,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/2/real_time", + "name": "Then/Folly/32/2/real_time", "family_index": 9, "per_family_instance_index": 22, - "run_name": "Then(Folly)/32/2/real_time", + "run_name": "Then/Folly/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -807,10 +807,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/2/real_time", + "name": "Then/Folly/64/2/real_time", "family_index": 9, "per_family_instance_index": 23, - "run_name": "Then(Folly)/64/2/real_time", + "run_name": "Then/Folly/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -821,10 +821,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/0/real_time", + "name": "Then/BoostThread/0/0/real_time", "family_index": 10, "per_family_instance_index": 0, - "run_name": "Then(BoostThread)/0/0/real_time", + "run_name": "Then/BoostThread/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -835,10 +835,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/0/real_time", + "name": "Then/BoostThread/1/0/real_time", "family_index": 10, "per_family_instance_index": 1, - "run_name": "Then(BoostThread)/1/0/real_time", + "run_name": "Then/BoostThread/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -849,10 +849,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/0/real_time", + "name": "Then/BoostThread/2/0/real_time", "family_index": 10, "per_family_instance_index": 2, - "run_name": "Then(BoostThread)/2/0/real_time", + "run_name": "Then/BoostThread/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -863,10 +863,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/0/real_time", + "name": "Then/BoostThread/4/0/real_time", "family_index": 10, "per_family_instance_index": 3, - "run_name": "Then(BoostThread)/4/0/real_time", + "run_name": "Then/BoostThread/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -877,10 +877,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/0/real_time", + "name": "Then/BoostThread/8/0/real_time", "family_index": 10, "per_family_instance_index": 4, - "run_name": "Then(BoostThread)/8/0/real_time", + "run_name": "Then/BoostThread/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -891,10 +891,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/0/real_time", + "name": "Then/BoostThread/16/0/real_time", "family_index": 10, "per_family_instance_index": 5, - "run_name": "Then(BoostThread)/16/0/real_time", + "run_name": "Then/BoostThread/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -905,10 +905,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/0/real_time", + "name": "Then/BoostThread/32/0/real_time", "family_index": 10, "per_family_instance_index": 6, - "run_name": "Then(BoostThread)/32/0/real_time", + "run_name": "Then/BoostThread/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -919,10 +919,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/0/real_time", + "name": "Then/BoostThread/64/0/real_time", "family_index": 10, "per_family_instance_index": 7, - "run_name": "Then(BoostThread)/64/0/real_time", + "run_name": "Then/BoostThread/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -933,10 +933,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/1/real_time", + "name": "Then/BoostThread/0/1/real_time", "family_index": 10, "per_family_instance_index": 8, - "run_name": "Then(BoostThread)/0/1/real_time", + "run_name": "Then/BoostThread/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -947,10 +947,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/1/real_time", + "name": "Then/BoostThread/1/1/real_time", "family_index": 10, "per_family_instance_index": 9, - "run_name": "Then(BoostThread)/1/1/real_time", + "run_name": "Then/BoostThread/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -961,10 +961,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/1/real_time", + "name": "Then/BoostThread/2/1/real_time", "family_index": 10, "per_family_instance_index": 10, - "run_name": "Then(BoostThread)/2/1/real_time", + "run_name": "Then/BoostThread/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -975,10 +975,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/1/real_time", + "name": "Then/BoostThread/4/1/real_time", "family_index": 10, "per_family_instance_index": 11, - "run_name": "Then(BoostThread)/4/1/real_time", + "run_name": "Then/BoostThread/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -989,10 +989,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/1/real_time", + "name": "Then/BoostThread/8/1/real_time", "family_index": 10, "per_family_instance_index": 12, - "run_name": "Then(BoostThread)/8/1/real_time", + "run_name": "Then/BoostThread/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1003,10 +1003,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/1/real_time", + "name": "Then/BoostThread/16/1/real_time", "family_index": 10, "per_family_instance_index": 13, - "run_name": "Then(BoostThread)/16/1/real_time", + "run_name": "Then/BoostThread/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1017,10 +1017,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/1/real_time", + "name": "Then/BoostThread/32/1/real_time", "family_index": 10, "per_family_instance_index": 14, - "run_name": "Then(BoostThread)/32/1/real_time", + "run_name": "Then/BoostThread/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1031,10 +1031,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/1/real_time", + "name": "Then/BoostThread/64/1/real_time", "family_index": 10, "per_family_instance_index": 15, - "run_name": "Then(BoostThread)/64/1/real_time", + "run_name": "Then/BoostThread/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1045,10 +1045,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/2/real_time", + "name": "Then/BoostThread/0/2/real_time", "family_index": 10, "per_family_instance_index": 16, - "run_name": "Then(BoostThread)/0/2/real_time", + "run_name": "Then/BoostThread/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1059,10 +1059,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/2/real_time", + "name": "Then/BoostThread/1/2/real_time", "family_index": 10, "per_family_instance_index": 17, - "run_name": "Then(BoostThread)/1/2/real_time", + "run_name": "Then/BoostThread/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1073,10 +1073,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/2/real_time", + "name": "Then/BoostThread/2/2/real_time", "family_index": 10, "per_family_instance_index": 18, - "run_name": "Then(BoostThread)/2/2/real_time", + "run_name": "Then/BoostThread/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1087,10 +1087,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/2/real_time", + "name": "Then/BoostThread/4/2/real_time", "family_index": 10, "per_family_instance_index": 19, - "run_name": "Then(BoostThread)/4/2/real_time", + "run_name": "Then/BoostThread/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1101,10 +1101,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/2/real_time", + "name": "Then/BoostThread/8/2/real_time", "family_index": 10, "per_family_instance_index": 20, - "run_name": "Then(BoostThread)/8/2/real_time", + "run_name": "Then/BoostThread/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1115,10 +1115,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/2/real_time", + "name": "Then/BoostThread/16/2/real_time", "family_index": 10, "per_family_instance_index": 21, - "run_name": "Then(BoostThread)/16/2/real_time", + "run_name": "Then/BoostThread/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1129,10 +1129,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/2/real_time", + "name": "Then/BoostThread/32/2/real_time", "family_index": 10, "per_family_instance_index": 22, - "run_name": "Then(BoostThread)/32/2/real_time", + "run_name": "Then/BoostThread/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1143,10 +1143,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/2/real_time", + "name": "Then/BoostThread/64/2/real_time", "family_index": 10, "per_family_instance_index": 23, - "run_name": "Then(BoostThread)/64/2/real_time", + "run_name": "Then/BoostThread/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1157,10 +1157,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/0/real_time", + "name": "ComplexBlob/YACLib/0/real_time", "family_index": 11, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/0/real_time", + "run_name": "ComplexBlob/YACLib/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1171,10 +1171,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/0/real_time", + "name": "ComplexBlob/Folly/0/real_time", "family_index": 12, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/0/real_time", + "run_name": "ComplexBlob/Folly/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1185,10 +1185,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/0/real_time", + "name": "ComplexBlob/BoostThread/0/real_time", "family_index": 13, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/0/real_time", + "run_name": "ComplexBlob/BoostThread/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1199,10 +1199,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2/real_time", + "name": "ComplexBlob/YACLib/2/real_time", "family_index": 14, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2/real_time", + "run_name": "ComplexBlob/YACLib/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1213,10 +1213,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/2/real_time", + "name": "ComplexBlob/Folly/2/real_time", "family_index": 15, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/2/real_time", + "run_name": "ComplexBlob/Folly/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1227,10 +1227,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/2/real_time", + "name": "ComplexBlob/BoostThread/2/real_time", "family_index": 16, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/2/real_time", + "run_name": "ComplexBlob/BoostThread/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1241,10 +1241,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4/real_time", + "name": "ComplexBlob/YACLib/4/real_time", "family_index": 17, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4/real_time", + "run_name": "ComplexBlob/YACLib/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1255,10 +1255,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/4/real_time", + "name": "ComplexBlob/Folly/4/real_time", "family_index": 18, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/4/real_time", + "run_name": "ComplexBlob/Folly/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1269,10 +1269,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/4/real_time", + "name": "ComplexBlob/BoostThread/4/real_time", "family_index": 19, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/4/real_time", + "run_name": "ComplexBlob/BoostThread/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1283,10 +1283,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8/real_time", + "name": "ComplexBlob/YACLib/8/real_time", "family_index": 20, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8/real_time", + "run_name": "ComplexBlob/YACLib/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1297,10 +1297,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/8/real_time", + "name": "ComplexBlob/Folly/8/real_time", "family_index": 21, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/8/real_time", + "run_name": "ComplexBlob/Folly/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1311,10 +1311,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/8/real_time", + "name": "ComplexBlob/BoostThread/8/real_time", "family_index": 22, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/8/real_time", + "run_name": "ComplexBlob/BoostThread/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1325,10 +1325,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/16/real_time", + "name": "ComplexBlob/YACLib/16/real_time", "family_index": 23, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/16/real_time", + "run_name": "ComplexBlob/YACLib/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1339,10 +1339,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/16/real_time", + "name": "ComplexBlob/Folly/16/real_time", "family_index": 24, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/16/real_time", + "run_name": "ComplexBlob/Folly/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1353,10 +1353,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/16/real_time", + "name": "ComplexBlob/BoostThread/16/real_time", "family_index": 25, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/16/real_time", + "run_name": "ComplexBlob/BoostThread/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1367,10 +1367,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/32/real_time", + "name": "ComplexBlob/YACLib/32/real_time", "family_index": 26, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/32/real_time", + "run_name": "ComplexBlob/YACLib/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1381,10 +1381,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/32/real_time", + "name": "ComplexBlob/Folly/32/real_time", "family_index": 27, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/32/real_time", + "run_name": "ComplexBlob/Folly/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1395,10 +1395,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/32/real_time", + "name": "ComplexBlob/BoostThread/32/real_time", "family_index": 28, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/32/real_time", + "run_name": "ComplexBlob/BoostThread/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1409,10 +1409,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/64/real_time", + "name": "ComplexBlob/YACLib/64/real_time", "family_index": 29, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/64/real_time", + "run_name": "ComplexBlob/YACLib/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1423,10 +1423,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/64/real_time", + "name": "ComplexBlob/Folly/64/real_time", "family_index": 30, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/64/real_time", + "run_name": "ComplexBlob/Folly/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1437,10 +1437,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/64/real_time", + "name": "ComplexBlob/BoostThread/64/real_time", "family_index": 31, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/64/real_time", + "run_name": "ComplexBlob/BoostThread/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1451,10 +1451,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/128/real_time", + "name": "ComplexBlob/YACLib/128/real_time", "family_index": 32, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/128/real_time", + "run_name": "ComplexBlob/YACLib/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1465,10 +1465,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/128/real_time", + "name": "ComplexBlob/Folly/128/real_time", "family_index": 33, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/128/real_time", + "run_name": "ComplexBlob/Folly/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1479,10 +1479,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/128/real_time", + "name": "ComplexBlob/BoostThread/128/real_time", "family_index": 34, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/128/real_time", + "run_name": "ComplexBlob/BoostThread/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1493,10 +1493,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/256/real_time", + "name": "ComplexBlob/YACLib/256/real_time", "family_index": 35, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/256/real_time", + "run_name": "ComplexBlob/YACLib/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1507,10 +1507,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/256/real_time", + "name": "ComplexBlob/Folly/256/real_time", "family_index": 36, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/256/real_time", + "run_name": "ComplexBlob/Folly/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1521,10 +1521,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/256/real_time", + "name": "ComplexBlob/BoostThread/256/real_time", "family_index": 37, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/256/real_time", + "run_name": "ComplexBlob/BoostThread/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1535,10 +1535,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/512/real_time", + "name": "ComplexBlob/YACLib/512/real_time", "family_index": 38, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/512/real_time", + "run_name": "ComplexBlob/YACLib/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1549,10 +1549,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/512/real_time", + "name": "ComplexBlob/Folly/512/real_time", "family_index": 39, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/512/real_time", + "run_name": "ComplexBlob/Folly/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1563,10 +1563,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/512/real_time", + "name": "ComplexBlob/BoostThread/512/real_time", "family_index": 40, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/512/real_time", + "run_name": "ComplexBlob/BoostThread/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1577,10 +1577,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/1024/real_time", + "name": "ComplexBlob/YACLib/1024/real_time", "family_index": 41, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/1024/real_time", + "run_name": "ComplexBlob/YACLib/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1591,10 +1591,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/1024/real_time", + "name": "ComplexBlob/Folly/1024/real_time", "family_index": 42, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/1024/real_time", + "run_name": "ComplexBlob/Folly/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1605,10 +1605,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/1024/real_time", + "name": "ComplexBlob/BoostThread/1024/real_time", "family_index": 43, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/1024/real_time", + "run_name": "ComplexBlob/BoostThread/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1619,10 +1619,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2048/real_time", + "name": "ComplexBlob/YACLib/2048/real_time", "family_index": 44, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2048/real_time", + "run_name": "ComplexBlob/YACLib/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1633,10 +1633,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/2048/real_time", + "name": "ComplexBlob/Folly/2048/real_time", "family_index": 45, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/2048/real_time", + "run_name": "ComplexBlob/Folly/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1647,10 +1647,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/2048/real_time", + "name": "ComplexBlob/BoostThread/2048/real_time", "family_index": 46, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/2048/real_time", + "run_name": "ComplexBlob/BoostThread/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1661,10 +1661,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4096/real_time", + "name": "ComplexBlob/YACLib/4096/real_time", "family_index": 47, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4096/real_time", + "run_name": "ComplexBlob/YACLib/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1675,10 +1675,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/4096/real_time", + "name": "ComplexBlob/Folly/4096/real_time", "family_index": 48, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/4096/real_time", + "run_name": "ComplexBlob/Folly/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1689,10 +1689,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/4096/real_time", + "name": "ComplexBlob/BoostThread/4096/real_time", "family_index": 49, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/4096/real_time", + "run_name": "ComplexBlob/BoostThread/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1703,10 +1703,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8192/real_time", + "name": "ComplexBlob/YACLib/8192/real_time", "family_index": 50, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8192/real_time", + "run_name": "ComplexBlob/YACLib/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1717,10 +1717,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/8192/real_time", + "name": "ComplexBlob/Folly/8192/real_time", "family_index": 51, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/8192/real_time", + "run_name": "ComplexBlob/Folly/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1731,10 +1731,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/8192/real_time", + "name": "ComplexBlob/BoostThread/8192/real_time", "family_index": 52, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/8192/real_time", + "run_name": "ComplexBlob/BoostThread/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1745,10 +1745,10 @@ "time_unit": "ns" }, { - "name": "NoContention(YACLib)/real_time", + "name": "NoContention/YACLib/real_time", "family_index": 53, "per_family_instance_index": 0, - "run_name": "NoContention(YACLib)/real_time", + "run_name": "NoContention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1759,10 +1759,10 @@ "time_unit": "ns" }, { - "name": "NoContention(Folly)/real_time", + "name": "NoContention/Folly/real_time", "family_index": 54, "per_family_instance_index": 0, - "run_name": "NoContention(Folly)/real_time", + "run_name": "NoContention/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1773,10 +1773,10 @@ "time_unit": "ns" }, { - "name": "NoContention(BoostThread)/real_time", + "name": "NoContention/BoostThread/real_time", "family_index": 55, "per_family_instance_index": 0, - "run_name": "NoContention(BoostThread)/real_time", + "run_name": "NoContention/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1787,10 +1787,10 @@ "time_unit": "ns" }, { - "name": "Contention(YACLib)/real_time", + "name": "Contention/YACLib/real_time", "family_index": 56, "per_family_instance_index": 0, - "run_name": "Contention(YACLib)/real_time", + "run_name": "Contention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1801,10 +1801,10 @@ "time_unit": "ns" }, { - "name": "Contention(Folly)/real_time", + "name": "Contention/Folly/real_time", "family_index": 57, "per_family_instance_index": 0, - "run_name": "Contention(Folly)/real_time", + "run_name": "Contention/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1815,10 +1815,10 @@ "time_unit": "ns" }, { - "name": "Contention(BoostThread)/real_time", + "name": "Contention/BoostThread/real_time", "family_index": 58, "per_family_instance_index": 0, - "run_name": "Contention(BoostThread)/real_time", + "run_name": "Contention/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, diff --git a/future/result/Ryzen_9_5900X/clang_libstdcxx/picture/ComplexBlob.svg b/future/result/Ryzen_9_5900X/clang_libstdcxx/picture/ComplexBlob.svg new file mode 100644 index 0000000..31abe5d --- /dev/null +++ b/future/result/Ryzen_9_5900X/clang_libstdcxx/picture/ComplexBlob.svg @@ -0,0 +1,1275 @@ + + + + + + + + 2022-04-10T19:11:56.261777 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_9_5900X/clang_libstdcxx/picture/ConstantFuture.svg b/future/result/Ryzen_9_5900X/clang_libstdcxx/picture/ConstantFuture.svg new file mode 100644 index 0000000..d39f234 --- /dev/null +++ b/future/result/Ryzen_9_5900X/clang_libstdcxx/picture/ConstantFuture.svg @@ -0,0 +1,923 @@ + + + + + + + + 2022-04-10T19:11:55.203174 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_9_5900X/clang_libstdcxx/picture/Contention.svg b/future/result/Ryzen_9_5900X/clang_libstdcxx/picture/Contention.svg new file mode 100644 index 0000000..c6f65bf --- /dev/null +++ b/future/result/Ryzen_9_5900X/clang_libstdcxx/picture/Contention.svg @@ -0,0 +1,893 @@ + + + + + + + + 2022-04-10T19:11:56.652967 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_9_5900X/clang_libstdcxx/picture/NoContention.svg b/future/result/Ryzen_9_5900X/clang_libstdcxx/picture/NoContention.svg new file mode 100644 index 0000000..d0a6b0e --- /dev/null +++ b/future/result/Ryzen_9_5900X/clang_libstdcxx/picture/NoContention.svg @@ -0,0 +1,908 @@ + + + + + + + + 2022-04-10T19:11:56.476439 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_9_5900X/clang_libstdcxx/picture/PromiseAndFuture.svg b/future/result/Ryzen_9_5900X/clang_libstdcxx/picture/PromiseAndFuture.svg new file mode 100644 index 0000000..98af345 --- /dev/null +++ b/future/result/Ryzen_9_5900X/clang_libstdcxx/picture/PromiseAndFuture.svg @@ -0,0 +1,977 @@ + + + + + + + + 2022-04-10T19:11:55.382858 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_9_5900X/clang_libstdcxx/picture/ThenAllInline.svg b/future/result/Ryzen_9_5900X/clang_libstdcxx/picture/ThenAllInline.svg new file mode 100644 index 0000000..a81ae43 --- /dev/null +++ b/future/result/Ryzen_9_5900X/clang_libstdcxx/picture/ThenAllInline.svg @@ -0,0 +1,978 @@ + + + + + + + + 2022-04-10T19:11:55.586847 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_9_5900X/clang_libstdcxx/picture/ThenOneInline.svg b/future/result/Ryzen_9_5900X/clang_libstdcxx/picture/ThenOneInline.svg new file mode 100644 index 0000000..22deb88 --- /dev/null +++ b/future/result/Ryzen_9_5900X/clang_libstdcxx/picture/ThenOneInline.svg @@ -0,0 +1,1072 @@ + + + + + + + + 2022-04-10T19:11:55.791848 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_9_5900X/clang_libstdcxx/picture/ThenScheduler.svg b/future/result/Ryzen_9_5900X/clang_libstdcxx/picture/ThenScheduler.svg new file mode 100644 index 0000000..52065d1 --- /dev/null +++ b/future/result/Ryzen_9_5900X/clang_libstdcxx/picture/ThenScheduler.svg @@ -0,0 +1,1131 @@ + + + + + + + + 2022-04-10T19:11:56.024814 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_9_5900X/gcc_libstdcxx/data.json b/future/result/Ryzen_9_5900X/gcc_libstdcxx/data.json index 6acb970..3a8b0ef 100644 --- a/future/result/Ryzen_9_5900X/gcc_libstdcxx/data.json +++ b/future/result/Ryzen_9_5900X/gcc_libstdcxx/data.json @@ -37,10 +37,10 @@ }, "benchmarks": [ { - "name": "ConstantFuture(Std)/real_time", + "name": "ConstantFuture/Std/real_time", "family_index": 0, "per_family_instance_index": 0, - "run_name": "ConstantFuture(Std)/real_time", + "run_name": "ConstantFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -51,10 +51,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(YACLib)/real_time", + "name": "ConstantFuture/YACLib/real_time", "family_index": 1, "per_family_instance_index": 0, - "run_name": "ConstantFuture(YACLib)/real_time", + "run_name": "ConstantFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -65,10 +65,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(Folly)/real_time", + "name": "ConstantFuture/Folly/real_time", "family_index": 2, "per_family_instance_index": 0, - "run_name": "ConstantFuture(Folly)/real_time", + "run_name": "ConstantFuture/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -79,10 +79,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(BoostThread)/real_time", + "name": "ConstantFuture/BoostThread/real_time", "family_index": 3, "per_family_instance_index": 0, - "run_name": "ConstantFuture(BoostThread)/real_time", + "run_name": "ConstantFuture/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -93,10 +93,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(Std)/real_time", + "name": "PromiseAndFuture/Std/real_time", "family_index": 4, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(Std)/real_time", + "run_name": "PromiseAndFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -107,10 +107,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(YACLib)/real_time", + "name": "PromiseAndFuture/YACLib/real_time", "family_index": 5, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(YACLib)/real_time", + "run_name": "PromiseAndFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -121,10 +121,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(Folly)/real_time", + "name": "PromiseAndFuture/Folly/real_time", "family_index": 6, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(Folly)/real_time", + "run_name": "PromiseAndFuture/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -135,10 +135,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(BoostThread)/real_time", + "name": "PromiseAndFuture/BoostThread/real_time", "family_index": 7, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(BoostThread)/real_time", + "run_name": "PromiseAndFuture/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -149,10 +149,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/0/real_time", + "name": "Then/YACLib/0/0/real_time", "family_index": 8, "per_family_instance_index": 0, - "run_name": "Then(YACLib)/0/0/real_time", + "run_name": "Then/YACLib/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -163,10 +163,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/0/real_time", + "name": "Then/YACLib/1/0/real_time", "family_index": 8, "per_family_instance_index": 1, - "run_name": "Then(YACLib)/1/0/real_time", + "run_name": "Then/YACLib/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -177,10 +177,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/0/real_time", + "name": "Then/YACLib/2/0/real_time", "family_index": 8, "per_family_instance_index": 2, - "run_name": "Then(YACLib)/2/0/real_time", + "run_name": "Then/YACLib/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -191,10 +191,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/0/real_time", + "name": "Then/YACLib/4/0/real_time", "family_index": 8, "per_family_instance_index": 3, - "run_name": "Then(YACLib)/4/0/real_time", + "run_name": "Then/YACLib/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -205,10 +205,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/0/real_time", + "name": "Then/YACLib/8/0/real_time", "family_index": 8, "per_family_instance_index": 4, - "run_name": "Then(YACLib)/8/0/real_time", + "run_name": "Then/YACLib/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -219,10 +219,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/0/real_time", + "name": "Then/YACLib/16/0/real_time", "family_index": 8, "per_family_instance_index": 5, - "run_name": "Then(YACLib)/16/0/real_time", + "run_name": "Then/YACLib/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -233,10 +233,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/0/real_time", + "name": "Then/YACLib/32/0/real_time", "family_index": 8, "per_family_instance_index": 6, - "run_name": "Then(YACLib)/32/0/real_time", + "run_name": "Then/YACLib/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -247,10 +247,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/0/real_time", + "name": "Then/YACLib/64/0/real_time", "family_index": 8, "per_family_instance_index": 7, - "run_name": "Then(YACLib)/64/0/real_time", + "run_name": "Then/YACLib/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -261,10 +261,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/1/real_time", + "name": "Then/YACLib/0/1/real_time", "family_index": 8, "per_family_instance_index": 8, - "run_name": "Then(YACLib)/0/1/real_time", + "run_name": "Then/YACLib/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -275,10 +275,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/1/real_time", + "name": "Then/YACLib/1/1/real_time", "family_index": 8, "per_family_instance_index": 9, - "run_name": "Then(YACLib)/1/1/real_time", + "run_name": "Then/YACLib/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -289,10 +289,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/1/real_time", + "name": "Then/YACLib/2/1/real_time", "family_index": 8, "per_family_instance_index": 10, - "run_name": "Then(YACLib)/2/1/real_time", + "run_name": "Then/YACLib/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -303,10 +303,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/1/real_time", + "name": "Then/YACLib/4/1/real_time", "family_index": 8, "per_family_instance_index": 11, - "run_name": "Then(YACLib)/4/1/real_time", + "run_name": "Then/YACLib/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -317,10 +317,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/1/real_time", + "name": "Then/YACLib/8/1/real_time", "family_index": 8, "per_family_instance_index": 12, - "run_name": "Then(YACLib)/8/1/real_time", + "run_name": "Then/YACLib/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -331,10 +331,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/1/real_time", + "name": "Then/YACLib/16/1/real_time", "family_index": 8, "per_family_instance_index": 13, - "run_name": "Then(YACLib)/16/1/real_time", + "run_name": "Then/YACLib/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -345,10 +345,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/1/real_time", + "name": "Then/YACLib/32/1/real_time", "family_index": 8, "per_family_instance_index": 14, - "run_name": "Then(YACLib)/32/1/real_time", + "run_name": "Then/YACLib/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -359,10 +359,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/1/real_time", + "name": "Then/YACLib/64/1/real_time", "family_index": 8, "per_family_instance_index": 15, - "run_name": "Then(YACLib)/64/1/real_time", + "run_name": "Then/YACLib/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -373,10 +373,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/2/real_time", + "name": "Then/YACLib/0/2/real_time", "family_index": 8, "per_family_instance_index": 16, - "run_name": "Then(YACLib)/0/2/real_time", + "run_name": "Then/YACLib/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -387,10 +387,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/2/real_time", + "name": "Then/YACLib/1/2/real_time", "family_index": 8, "per_family_instance_index": 17, - "run_name": "Then(YACLib)/1/2/real_time", + "run_name": "Then/YACLib/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -401,10 +401,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/2/real_time", + "name": "Then/YACLib/2/2/real_time", "family_index": 8, "per_family_instance_index": 18, - "run_name": "Then(YACLib)/2/2/real_time", + "run_name": "Then/YACLib/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -415,10 +415,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/2/real_time", + "name": "Then/YACLib/4/2/real_time", "family_index": 8, "per_family_instance_index": 19, - "run_name": "Then(YACLib)/4/2/real_time", + "run_name": "Then/YACLib/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -429,10 +429,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/2/real_time", + "name": "Then/YACLib/8/2/real_time", "family_index": 8, "per_family_instance_index": 20, - "run_name": "Then(YACLib)/8/2/real_time", + "run_name": "Then/YACLib/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -443,10 +443,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/2/real_time", + "name": "Then/YACLib/16/2/real_time", "family_index": 8, "per_family_instance_index": 21, - "run_name": "Then(YACLib)/16/2/real_time", + "run_name": "Then/YACLib/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -457,10 +457,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/2/real_time", + "name": "Then/YACLib/32/2/real_time", "family_index": 8, "per_family_instance_index": 22, - "run_name": "Then(YACLib)/32/2/real_time", + "run_name": "Then/YACLib/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -471,10 +471,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/2/real_time", + "name": "Then/YACLib/64/2/real_time", "family_index": 8, "per_family_instance_index": 23, - "run_name": "Then(YACLib)/64/2/real_time", + "run_name": "Then/YACLib/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -485,10 +485,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/0/real_time", + "name": "Then/Folly/0/0/real_time", "family_index": 9, "per_family_instance_index": 0, - "run_name": "Then(Folly)/0/0/real_time", + "run_name": "Then/Folly/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -499,10 +499,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/0/real_time", + "name": "Then/Folly/1/0/real_time", "family_index": 9, "per_family_instance_index": 1, - "run_name": "Then(Folly)/1/0/real_time", + "run_name": "Then/Folly/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -513,10 +513,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/0/real_time", + "name": "Then/Folly/2/0/real_time", "family_index": 9, "per_family_instance_index": 2, - "run_name": "Then(Folly)/2/0/real_time", + "run_name": "Then/Folly/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -527,10 +527,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/0/real_time", + "name": "Then/Folly/4/0/real_time", "family_index": 9, "per_family_instance_index": 3, - "run_name": "Then(Folly)/4/0/real_time", + "run_name": "Then/Folly/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -541,10 +541,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/0/real_time", + "name": "Then/Folly/8/0/real_time", "family_index": 9, "per_family_instance_index": 4, - "run_name": "Then(Folly)/8/0/real_time", + "run_name": "Then/Folly/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -555,10 +555,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/0/real_time", + "name": "Then/Folly/16/0/real_time", "family_index": 9, "per_family_instance_index": 5, - "run_name": "Then(Folly)/16/0/real_time", + "run_name": "Then/Folly/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -569,10 +569,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/0/real_time", + "name": "Then/Folly/32/0/real_time", "family_index": 9, "per_family_instance_index": 6, - "run_name": "Then(Folly)/32/0/real_time", + "run_name": "Then/Folly/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -583,10 +583,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/0/real_time", + "name": "Then/Folly/64/0/real_time", "family_index": 9, "per_family_instance_index": 7, - "run_name": "Then(Folly)/64/0/real_time", + "run_name": "Then/Folly/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -597,10 +597,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/1/real_time", + "name": "Then/Folly/0/1/real_time", "family_index": 9, "per_family_instance_index": 8, - "run_name": "Then(Folly)/0/1/real_time", + "run_name": "Then/Folly/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -611,10 +611,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/1/real_time", + "name": "Then/Folly/1/1/real_time", "family_index": 9, "per_family_instance_index": 9, - "run_name": "Then(Folly)/1/1/real_time", + "run_name": "Then/Folly/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -625,10 +625,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/1/real_time", + "name": "Then/Folly/2/1/real_time", "family_index": 9, "per_family_instance_index": 10, - "run_name": "Then(Folly)/2/1/real_time", + "run_name": "Then/Folly/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -639,10 +639,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/1/real_time", + "name": "Then/Folly/4/1/real_time", "family_index": 9, "per_family_instance_index": 11, - "run_name": "Then(Folly)/4/1/real_time", + "run_name": "Then/Folly/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -653,10 +653,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/1/real_time", + "name": "Then/Folly/8/1/real_time", "family_index": 9, "per_family_instance_index": 12, - "run_name": "Then(Folly)/8/1/real_time", + "run_name": "Then/Folly/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -667,10 +667,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/1/real_time", + "name": "Then/Folly/16/1/real_time", "family_index": 9, "per_family_instance_index": 13, - "run_name": "Then(Folly)/16/1/real_time", + "run_name": "Then/Folly/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -681,10 +681,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/1/real_time", + "name": "Then/Folly/32/1/real_time", "family_index": 9, "per_family_instance_index": 14, - "run_name": "Then(Folly)/32/1/real_time", + "run_name": "Then/Folly/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -695,10 +695,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/1/real_time", + "name": "Then/Folly/64/1/real_time", "family_index": 9, "per_family_instance_index": 15, - "run_name": "Then(Folly)/64/1/real_time", + "run_name": "Then/Folly/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -709,10 +709,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/2/real_time", + "name": "Then/Folly/0/2/real_time", "family_index": 9, "per_family_instance_index": 16, - "run_name": "Then(Folly)/0/2/real_time", + "run_name": "Then/Folly/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -723,10 +723,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/2/real_time", + "name": "Then/Folly/1/2/real_time", "family_index": 9, "per_family_instance_index": 17, - "run_name": "Then(Folly)/1/2/real_time", + "run_name": "Then/Folly/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -737,10 +737,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/2/real_time", + "name": "Then/Folly/2/2/real_time", "family_index": 9, "per_family_instance_index": 18, - "run_name": "Then(Folly)/2/2/real_time", + "run_name": "Then/Folly/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -751,10 +751,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/2/real_time", + "name": "Then/Folly/4/2/real_time", "family_index": 9, "per_family_instance_index": 19, - "run_name": "Then(Folly)/4/2/real_time", + "run_name": "Then/Folly/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -765,10 +765,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/2/real_time", + "name": "Then/Folly/8/2/real_time", "family_index": 9, "per_family_instance_index": 20, - "run_name": "Then(Folly)/8/2/real_time", + "run_name": "Then/Folly/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -779,10 +779,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/2/real_time", + "name": "Then/Folly/16/2/real_time", "family_index": 9, "per_family_instance_index": 21, - "run_name": "Then(Folly)/16/2/real_time", + "run_name": "Then/Folly/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -793,10 +793,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/2/real_time", + "name": "Then/Folly/32/2/real_time", "family_index": 9, "per_family_instance_index": 22, - "run_name": "Then(Folly)/32/2/real_time", + "run_name": "Then/Folly/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -807,10 +807,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/2/real_time", + "name": "Then/Folly/64/2/real_time", "family_index": 9, "per_family_instance_index": 23, - "run_name": "Then(Folly)/64/2/real_time", + "run_name": "Then/Folly/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -821,10 +821,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/0/real_time", + "name": "Then/BoostThread/0/0/real_time", "family_index": 10, "per_family_instance_index": 0, - "run_name": "Then(BoostThread)/0/0/real_time", + "run_name": "Then/BoostThread/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -835,10 +835,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/0/real_time", + "name": "Then/BoostThread/1/0/real_time", "family_index": 10, "per_family_instance_index": 1, - "run_name": "Then(BoostThread)/1/0/real_time", + "run_name": "Then/BoostThread/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -849,10 +849,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/0/real_time", + "name": "Then/BoostThread/2/0/real_time", "family_index": 10, "per_family_instance_index": 2, - "run_name": "Then(BoostThread)/2/0/real_time", + "run_name": "Then/BoostThread/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -863,10 +863,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/0/real_time", + "name": "Then/BoostThread/4/0/real_time", "family_index": 10, "per_family_instance_index": 3, - "run_name": "Then(BoostThread)/4/0/real_time", + "run_name": "Then/BoostThread/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -877,10 +877,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/0/real_time", + "name": "Then/BoostThread/8/0/real_time", "family_index": 10, "per_family_instance_index": 4, - "run_name": "Then(BoostThread)/8/0/real_time", + "run_name": "Then/BoostThread/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -891,10 +891,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/0/real_time", + "name": "Then/BoostThread/16/0/real_time", "family_index": 10, "per_family_instance_index": 5, - "run_name": "Then(BoostThread)/16/0/real_time", + "run_name": "Then/BoostThread/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -905,10 +905,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/0/real_time", + "name": "Then/BoostThread/32/0/real_time", "family_index": 10, "per_family_instance_index": 6, - "run_name": "Then(BoostThread)/32/0/real_time", + "run_name": "Then/BoostThread/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -919,10 +919,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/0/real_time", + "name": "Then/BoostThread/64/0/real_time", "family_index": 10, "per_family_instance_index": 7, - "run_name": "Then(BoostThread)/64/0/real_time", + "run_name": "Then/BoostThread/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -933,10 +933,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/1/real_time", + "name": "Then/BoostThread/0/1/real_time", "family_index": 10, "per_family_instance_index": 8, - "run_name": "Then(BoostThread)/0/1/real_time", + "run_name": "Then/BoostThread/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -947,10 +947,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/1/real_time", + "name": "Then/BoostThread/1/1/real_time", "family_index": 10, "per_family_instance_index": 9, - "run_name": "Then(BoostThread)/1/1/real_time", + "run_name": "Then/BoostThread/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -961,10 +961,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/1/real_time", + "name": "Then/BoostThread/2/1/real_time", "family_index": 10, "per_family_instance_index": 10, - "run_name": "Then(BoostThread)/2/1/real_time", + "run_name": "Then/BoostThread/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -975,10 +975,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/1/real_time", + "name": "Then/BoostThread/4/1/real_time", "family_index": 10, "per_family_instance_index": 11, - "run_name": "Then(BoostThread)/4/1/real_time", + "run_name": "Then/BoostThread/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -989,10 +989,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/1/real_time", + "name": "Then/BoostThread/8/1/real_time", "family_index": 10, "per_family_instance_index": 12, - "run_name": "Then(BoostThread)/8/1/real_time", + "run_name": "Then/BoostThread/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1003,10 +1003,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/1/real_time", + "name": "Then/BoostThread/16/1/real_time", "family_index": 10, "per_family_instance_index": 13, - "run_name": "Then(BoostThread)/16/1/real_time", + "run_name": "Then/BoostThread/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1017,10 +1017,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/1/real_time", + "name": "Then/BoostThread/32/1/real_time", "family_index": 10, "per_family_instance_index": 14, - "run_name": "Then(BoostThread)/32/1/real_time", + "run_name": "Then/BoostThread/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1031,10 +1031,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/1/real_time", + "name": "Then/BoostThread/64/1/real_time", "family_index": 10, "per_family_instance_index": 15, - "run_name": "Then(BoostThread)/64/1/real_time", + "run_name": "Then/BoostThread/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1045,10 +1045,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/2/real_time", + "name": "Then/BoostThread/0/2/real_time", "family_index": 10, "per_family_instance_index": 16, - "run_name": "Then(BoostThread)/0/2/real_time", + "run_name": "Then/BoostThread/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1059,10 +1059,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/2/real_time", + "name": "Then/BoostThread/1/2/real_time", "family_index": 10, "per_family_instance_index": 17, - "run_name": "Then(BoostThread)/1/2/real_time", + "run_name": "Then/BoostThread/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1073,10 +1073,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/2/real_time", + "name": "Then/BoostThread/2/2/real_time", "family_index": 10, "per_family_instance_index": 18, - "run_name": "Then(BoostThread)/2/2/real_time", + "run_name": "Then/BoostThread/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1087,10 +1087,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/2/real_time", + "name": "Then/BoostThread/4/2/real_time", "family_index": 10, "per_family_instance_index": 19, - "run_name": "Then(BoostThread)/4/2/real_time", + "run_name": "Then/BoostThread/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1101,10 +1101,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/2/real_time", + "name": "Then/BoostThread/8/2/real_time", "family_index": 10, "per_family_instance_index": 20, - "run_name": "Then(BoostThread)/8/2/real_time", + "run_name": "Then/BoostThread/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1115,10 +1115,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/2/real_time", + "name": "Then/BoostThread/16/2/real_time", "family_index": 10, "per_family_instance_index": 21, - "run_name": "Then(BoostThread)/16/2/real_time", + "run_name": "Then/BoostThread/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1129,10 +1129,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/2/real_time", + "name": "Then/BoostThread/32/2/real_time", "family_index": 10, "per_family_instance_index": 22, - "run_name": "Then(BoostThread)/32/2/real_time", + "run_name": "Then/BoostThread/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1143,10 +1143,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/2/real_time", + "name": "Then/BoostThread/64/2/real_time", "family_index": 10, "per_family_instance_index": 23, - "run_name": "Then(BoostThread)/64/2/real_time", + "run_name": "Then/BoostThread/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1157,10 +1157,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/0/real_time", + "name": "ComplexBlob/YACLib/0/real_time", "family_index": 11, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/0/real_time", + "run_name": "ComplexBlob/YACLib/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1171,10 +1171,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/0/real_time", + "name": "ComplexBlob/Folly/0/real_time", "family_index": 12, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/0/real_time", + "run_name": "ComplexBlob/Folly/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1185,10 +1185,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/0/real_time", + "name": "ComplexBlob/BoostThread/0/real_time", "family_index": 13, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/0/real_time", + "run_name": "ComplexBlob/BoostThread/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1199,10 +1199,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2/real_time", + "name": "ComplexBlob/YACLib/2/real_time", "family_index": 14, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2/real_time", + "run_name": "ComplexBlob/YACLib/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1213,10 +1213,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/2/real_time", + "name": "ComplexBlob/Folly/2/real_time", "family_index": 15, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/2/real_time", + "run_name": "ComplexBlob/Folly/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1227,10 +1227,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/2/real_time", + "name": "ComplexBlob/BoostThread/2/real_time", "family_index": 16, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/2/real_time", + "run_name": "ComplexBlob/BoostThread/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1241,10 +1241,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4/real_time", + "name": "ComplexBlob/YACLib/4/real_time", "family_index": 17, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4/real_time", + "run_name": "ComplexBlob/YACLib/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1255,10 +1255,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/4/real_time", + "name": "ComplexBlob/Folly/4/real_time", "family_index": 18, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/4/real_time", + "run_name": "ComplexBlob/Folly/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1269,10 +1269,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/4/real_time", + "name": "ComplexBlob/BoostThread/4/real_time", "family_index": 19, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/4/real_time", + "run_name": "ComplexBlob/BoostThread/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1283,10 +1283,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8/real_time", + "name": "ComplexBlob/YACLib/8/real_time", "family_index": 20, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8/real_time", + "run_name": "ComplexBlob/YACLib/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1297,10 +1297,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/8/real_time", + "name": "ComplexBlob/Folly/8/real_time", "family_index": 21, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/8/real_time", + "run_name": "ComplexBlob/Folly/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1311,10 +1311,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/8/real_time", + "name": "ComplexBlob/BoostThread/8/real_time", "family_index": 22, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/8/real_time", + "run_name": "ComplexBlob/BoostThread/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1325,10 +1325,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/16/real_time", + "name": "ComplexBlob/YACLib/16/real_time", "family_index": 23, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/16/real_time", + "run_name": "ComplexBlob/YACLib/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1339,10 +1339,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/16/real_time", + "name": "ComplexBlob/Folly/16/real_time", "family_index": 24, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/16/real_time", + "run_name": "ComplexBlob/Folly/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1353,10 +1353,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/16/real_time", + "name": "ComplexBlob/BoostThread/16/real_time", "family_index": 25, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/16/real_time", + "run_name": "ComplexBlob/BoostThread/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1367,10 +1367,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/32/real_time", + "name": "ComplexBlob/YACLib/32/real_time", "family_index": 26, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/32/real_time", + "run_name": "ComplexBlob/YACLib/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1381,10 +1381,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/32/real_time", + "name": "ComplexBlob/Folly/32/real_time", "family_index": 27, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/32/real_time", + "run_name": "ComplexBlob/Folly/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1395,10 +1395,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/32/real_time", + "name": "ComplexBlob/BoostThread/32/real_time", "family_index": 28, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/32/real_time", + "run_name": "ComplexBlob/BoostThread/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1409,10 +1409,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/64/real_time", + "name": "ComplexBlob/YACLib/64/real_time", "family_index": 29, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/64/real_time", + "run_name": "ComplexBlob/YACLib/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1423,10 +1423,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/64/real_time", + "name": "ComplexBlob/Folly/64/real_time", "family_index": 30, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/64/real_time", + "run_name": "ComplexBlob/Folly/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1437,10 +1437,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/64/real_time", + "name": "ComplexBlob/BoostThread/64/real_time", "family_index": 31, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/64/real_time", + "run_name": "ComplexBlob/BoostThread/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1451,10 +1451,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/128/real_time", + "name": "ComplexBlob/YACLib/128/real_time", "family_index": 32, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/128/real_time", + "run_name": "ComplexBlob/YACLib/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1465,10 +1465,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/128/real_time", + "name": "ComplexBlob/Folly/128/real_time", "family_index": 33, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/128/real_time", + "run_name": "ComplexBlob/Folly/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1479,10 +1479,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/128/real_time", + "name": "ComplexBlob/BoostThread/128/real_time", "family_index": 34, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/128/real_time", + "run_name": "ComplexBlob/BoostThread/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1493,10 +1493,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/256/real_time", + "name": "ComplexBlob/YACLib/256/real_time", "family_index": 35, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/256/real_time", + "run_name": "ComplexBlob/YACLib/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1507,10 +1507,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/256/real_time", + "name": "ComplexBlob/Folly/256/real_time", "family_index": 36, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/256/real_time", + "run_name": "ComplexBlob/Folly/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1521,10 +1521,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/256/real_time", + "name": "ComplexBlob/BoostThread/256/real_time", "family_index": 37, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/256/real_time", + "run_name": "ComplexBlob/BoostThread/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1535,10 +1535,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/512/real_time", + "name": "ComplexBlob/YACLib/512/real_time", "family_index": 38, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/512/real_time", + "run_name": "ComplexBlob/YACLib/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1549,10 +1549,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/512/real_time", + "name": "ComplexBlob/Folly/512/real_time", "family_index": 39, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/512/real_time", + "run_name": "ComplexBlob/Folly/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1563,10 +1563,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/512/real_time", + "name": "ComplexBlob/BoostThread/512/real_time", "family_index": 40, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/512/real_time", + "run_name": "ComplexBlob/BoostThread/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1577,10 +1577,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/1024/real_time", + "name": "ComplexBlob/YACLib/1024/real_time", "family_index": 41, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/1024/real_time", + "run_name": "ComplexBlob/YACLib/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1591,10 +1591,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/1024/real_time", + "name": "ComplexBlob/Folly/1024/real_time", "family_index": 42, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/1024/real_time", + "run_name": "ComplexBlob/Folly/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1605,10 +1605,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/1024/real_time", + "name": "ComplexBlob/BoostThread/1024/real_time", "family_index": 43, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/1024/real_time", + "run_name": "ComplexBlob/BoostThread/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1619,10 +1619,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2048/real_time", + "name": "ComplexBlob/YACLib/2048/real_time", "family_index": 44, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2048/real_time", + "run_name": "ComplexBlob/YACLib/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1633,10 +1633,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/2048/real_time", + "name": "ComplexBlob/Folly/2048/real_time", "family_index": 45, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/2048/real_time", + "run_name": "ComplexBlob/Folly/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1647,10 +1647,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/2048/real_time", + "name": "ComplexBlob/BoostThread/2048/real_time", "family_index": 46, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/2048/real_time", + "run_name": "ComplexBlob/BoostThread/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1661,10 +1661,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4096/real_time", + "name": "ComplexBlob/YACLib/4096/real_time", "family_index": 47, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4096/real_time", + "run_name": "ComplexBlob/YACLib/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1675,10 +1675,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/4096/real_time", + "name": "ComplexBlob/Folly/4096/real_time", "family_index": 48, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/4096/real_time", + "run_name": "ComplexBlob/Folly/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1689,10 +1689,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/4096/real_time", + "name": "ComplexBlob/BoostThread/4096/real_time", "family_index": 49, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/4096/real_time", + "run_name": "ComplexBlob/BoostThread/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1703,10 +1703,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8192/real_time", + "name": "ComplexBlob/YACLib/8192/real_time", "family_index": 50, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8192/real_time", + "run_name": "ComplexBlob/YACLib/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1717,10 +1717,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/8192/real_time", + "name": "ComplexBlob/Folly/8192/real_time", "family_index": 51, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/8192/real_time", + "run_name": "ComplexBlob/Folly/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1731,10 +1731,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/8192/real_time", + "name": "ComplexBlob/BoostThread/8192/real_time", "family_index": 52, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/8192/real_time", + "run_name": "ComplexBlob/BoostThread/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1745,10 +1745,10 @@ "time_unit": "ns" }, { - "name": "NoContention(YACLib)/real_time", + "name": "NoContention/YACLib/real_time", "family_index": 53, "per_family_instance_index": 0, - "run_name": "NoContention(YACLib)/real_time", + "run_name": "NoContention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1759,10 +1759,10 @@ "time_unit": "ns" }, { - "name": "NoContention(Folly)/real_time", + "name": "NoContention/Folly/real_time", "family_index": 54, "per_family_instance_index": 0, - "run_name": "NoContention(Folly)/real_time", + "run_name": "NoContention/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1773,10 +1773,10 @@ "time_unit": "ns" }, { - "name": "NoContention(BoostThread)/real_time", + "name": "NoContention/BoostThread/real_time", "family_index": 55, "per_family_instance_index": 0, - "run_name": "NoContention(BoostThread)/real_time", + "run_name": "NoContention/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1787,10 +1787,10 @@ "time_unit": "ns" }, { - "name": "Contention(YACLib)/real_time", + "name": "Contention/YACLib/real_time", "family_index": 56, "per_family_instance_index": 0, - "run_name": "Contention(YACLib)/real_time", + "run_name": "Contention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1801,10 +1801,10 @@ "time_unit": "ns" }, { - "name": "Contention(Folly)/real_time", + "name": "Contention/Folly/real_time", "family_index": 57, "per_family_instance_index": 0, - "run_name": "Contention(Folly)/real_time", + "run_name": "Contention/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1815,10 +1815,10 @@ "time_unit": "ns" }, { - "name": "Contention(BoostThread)/real_time", + "name": "Contention/BoostThread/real_time", "family_index": 58, "per_family_instance_index": 0, - "run_name": "Contention(BoostThread)/real_time", + "run_name": "Contention/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, diff --git a/future/result/Ryzen_9_5900X/gcc_libstdcxx/picture/ComplexBlob.svg b/future/result/Ryzen_9_5900X/gcc_libstdcxx/picture/ComplexBlob.svg new file mode 100644 index 0000000..f83f71b --- /dev/null +++ b/future/result/Ryzen_9_5900X/gcc_libstdcxx/picture/ComplexBlob.svg @@ -0,0 +1,1275 @@ + + + + + + + + 2022-04-10T19:11:57.668613 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_9_5900X/gcc_libstdcxx/picture/ConstantFuture.svg b/future/result/Ryzen_9_5900X/gcc_libstdcxx/picture/ConstantFuture.svg new file mode 100644 index 0000000..4f12e89 --- /dev/null +++ b/future/result/Ryzen_9_5900X/gcc_libstdcxx/picture/ConstantFuture.svg @@ -0,0 +1,999 @@ + + + + + + + + 2022-04-10T19:11:56.845966 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_9_5900X/gcc_libstdcxx/picture/Contention.svg b/future/result/Ryzen_9_5900X/gcc_libstdcxx/picture/Contention.svg new file mode 100644 index 0000000..aec84f3 --- /dev/null +++ b/future/result/Ryzen_9_5900X/gcc_libstdcxx/picture/Contention.svg @@ -0,0 +1,853 @@ + + + + + + + + 2022-04-10T19:11:57.946684 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_9_5900X/gcc_libstdcxx/picture/NoContention.svg b/future/result/Ryzen_9_5900X/gcc_libstdcxx/picture/NoContention.svg new file mode 100644 index 0000000..78c562d --- /dev/null +++ b/future/result/Ryzen_9_5900X/gcc_libstdcxx/picture/NoContention.svg @@ -0,0 +1,868 @@ + + + + + + + + 2022-04-10T19:11:57.821355 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_9_5900X/gcc_libstdcxx/picture/PromiseAndFuture.svg b/future/result/Ryzen_9_5900X/gcc_libstdcxx/picture/PromiseAndFuture.svg new file mode 100644 index 0000000..53ea4bb --- /dev/null +++ b/future/result/Ryzen_9_5900X/gcc_libstdcxx/picture/PromiseAndFuture.svg @@ -0,0 +1,1007 @@ + + + + + + + + 2022-04-10T19:11:57.064579 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_9_5900X/gcc_libstdcxx/picture/ThenAllInline.svg b/future/result/Ryzen_9_5900X/gcc_libstdcxx/picture/ThenAllInline.svg new file mode 100644 index 0000000..9060ac6 --- /dev/null +++ b/future/result/Ryzen_9_5900X/gcc_libstdcxx/picture/ThenAllInline.svg @@ -0,0 +1,995 @@ + + + + + + + + 2022-04-10T19:11:57.213953 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_9_5900X/gcc_libstdcxx/picture/ThenOneInline.svg b/future/result/Ryzen_9_5900X/gcc_libstdcxx/picture/ThenOneInline.svg new file mode 100644 index 0000000..f2343ca --- /dev/null +++ b/future/result/Ryzen_9_5900X/gcc_libstdcxx/picture/ThenOneInline.svg @@ -0,0 +1,1072 @@ + + + + + + + + 2022-04-10T19:11:57.363883 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/Ryzen_9_5900X/gcc_libstdcxx/picture/ThenScheduler.svg b/future/result/Ryzen_9_5900X/gcc_libstdcxx/picture/ThenScheduler.svg new file mode 100644 index 0000000..bdb47bd --- /dev/null +++ b/future/result/Ryzen_9_5900X/gcc_libstdcxx/picture/ThenScheduler.svg @@ -0,0 +1,1131 @@ + + + + + + + + 2022-04-10T19:11:57.508565 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-3210M/clang_libcxx/data.json b/future/result/i5-3210M/clang_libcxx/data.json index 0d2b0b5..e15947f 100644 --- a/future/result/i5-3210M/clang_libcxx/data.json +++ b/future/result/i5-3210M/clang_libcxx/data.json @@ -37,10 +37,10 @@ }, "benchmarks": [ { - "name": "ConstantFuture(Std)/real_time", + "name": "ConstantFuture/Std/real_time", "family_index": 0, "per_family_instance_index": 0, - "run_name": "ConstantFuture(Std)/real_time", + "run_name": "ConstantFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -51,10 +51,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(YACLib)/real_time", + "name": "ConstantFuture/YACLib/real_time", "family_index": 1, "per_family_instance_index": 0, - "run_name": "ConstantFuture(YACLib)/real_time", + "run_name": "ConstantFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -65,10 +65,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(Std)/real_time", + "name": "PromiseAndFuture/Std/real_time", "family_index": 2, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(Std)/real_time", + "run_name": "PromiseAndFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -79,10 +79,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(YACLib)/real_time", + "name": "PromiseAndFuture/YACLib/real_time", "family_index": 3, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(YACLib)/real_time", + "run_name": "PromiseAndFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -93,10 +93,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/0/real_time", + "name": "Then/YACLib/0/0/real_time", "family_index": 4, "per_family_instance_index": 0, - "run_name": "Then(YACLib)/0/0/real_time", + "run_name": "Then/YACLib/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -107,10 +107,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/0/real_time", + "name": "Then/YACLib/1/0/real_time", "family_index": 4, "per_family_instance_index": 1, - "run_name": "Then(YACLib)/1/0/real_time", + "run_name": "Then/YACLib/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -121,10 +121,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/0/real_time", + "name": "Then/YACLib/2/0/real_time", "family_index": 4, "per_family_instance_index": 2, - "run_name": "Then(YACLib)/2/0/real_time", + "run_name": "Then/YACLib/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -135,10 +135,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/0/real_time", + "name": "Then/YACLib/4/0/real_time", "family_index": 4, "per_family_instance_index": 3, - "run_name": "Then(YACLib)/4/0/real_time", + "run_name": "Then/YACLib/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -149,10 +149,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/0/real_time", + "name": "Then/YACLib/8/0/real_time", "family_index": 4, "per_family_instance_index": 4, - "run_name": "Then(YACLib)/8/0/real_time", + "run_name": "Then/YACLib/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -163,10 +163,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/0/real_time", + "name": "Then/YACLib/16/0/real_time", "family_index": 4, "per_family_instance_index": 5, - "run_name": "Then(YACLib)/16/0/real_time", + "run_name": "Then/YACLib/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -177,10 +177,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/0/real_time", + "name": "Then/YACLib/32/0/real_time", "family_index": 4, "per_family_instance_index": 6, - "run_name": "Then(YACLib)/32/0/real_time", + "run_name": "Then/YACLib/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -191,10 +191,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/0/real_time", + "name": "Then/YACLib/64/0/real_time", "family_index": 4, "per_family_instance_index": 7, - "run_name": "Then(YACLib)/64/0/real_time", + "run_name": "Then/YACLib/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -205,10 +205,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/1/real_time", + "name": "Then/YACLib/0/1/real_time", "family_index": 4, "per_family_instance_index": 8, - "run_name": "Then(YACLib)/0/1/real_time", + "run_name": "Then/YACLib/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -219,10 +219,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/1/real_time", + "name": "Then/YACLib/1/1/real_time", "family_index": 4, "per_family_instance_index": 9, - "run_name": "Then(YACLib)/1/1/real_time", + "run_name": "Then/YACLib/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -233,10 +233,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/1/real_time", + "name": "Then/YACLib/2/1/real_time", "family_index": 4, "per_family_instance_index": 10, - "run_name": "Then(YACLib)/2/1/real_time", + "run_name": "Then/YACLib/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -247,10 +247,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/1/real_time", + "name": "Then/YACLib/4/1/real_time", "family_index": 4, "per_family_instance_index": 11, - "run_name": "Then(YACLib)/4/1/real_time", + "run_name": "Then/YACLib/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -261,10 +261,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/1/real_time", + "name": "Then/YACLib/8/1/real_time", "family_index": 4, "per_family_instance_index": 12, - "run_name": "Then(YACLib)/8/1/real_time", + "run_name": "Then/YACLib/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -275,10 +275,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/1/real_time", + "name": "Then/YACLib/16/1/real_time", "family_index": 4, "per_family_instance_index": 13, - "run_name": "Then(YACLib)/16/1/real_time", + "run_name": "Then/YACLib/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -289,10 +289,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/1/real_time", + "name": "Then/YACLib/32/1/real_time", "family_index": 4, "per_family_instance_index": 14, - "run_name": "Then(YACLib)/32/1/real_time", + "run_name": "Then/YACLib/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -303,10 +303,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/1/real_time", + "name": "Then/YACLib/64/1/real_time", "family_index": 4, "per_family_instance_index": 15, - "run_name": "Then(YACLib)/64/1/real_time", + "run_name": "Then/YACLib/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -317,10 +317,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/2/real_time", + "name": "Then/YACLib/0/2/real_time", "family_index": 4, "per_family_instance_index": 16, - "run_name": "Then(YACLib)/0/2/real_time", + "run_name": "Then/YACLib/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -331,10 +331,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/2/real_time", + "name": "Then/YACLib/1/2/real_time", "family_index": 4, "per_family_instance_index": 17, - "run_name": "Then(YACLib)/1/2/real_time", + "run_name": "Then/YACLib/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -345,10 +345,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/2/real_time", + "name": "Then/YACLib/2/2/real_time", "family_index": 4, "per_family_instance_index": 18, - "run_name": "Then(YACLib)/2/2/real_time", + "run_name": "Then/YACLib/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -359,10 +359,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/2/real_time", + "name": "Then/YACLib/4/2/real_time", "family_index": 4, "per_family_instance_index": 19, - "run_name": "Then(YACLib)/4/2/real_time", + "run_name": "Then/YACLib/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -373,10 +373,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/2/real_time", + "name": "Then/YACLib/8/2/real_time", "family_index": 4, "per_family_instance_index": 20, - "run_name": "Then(YACLib)/8/2/real_time", + "run_name": "Then/YACLib/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -387,10 +387,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/2/real_time", + "name": "Then/YACLib/16/2/real_time", "family_index": 4, "per_family_instance_index": 21, - "run_name": "Then(YACLib)/16/2/real_time", + "run_name": "Then/YACLib/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -401,10 +401,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/2/real_time", + "name": "Then/YACLib/32/2/real_time", "family_index": 4, "per_family_instance_index": 22, - "run_name": "Then(YACLib)/32/2/real_time", + "run_name": "Then/YACLib/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -415,10 +415,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/2/real_time", + "name": "Then/YACLib/64/2/real_time", "family_index": 4, "per_family_instance_index": 23, - "run_name": "Then(YACLib)/64/2/real_time", + "run_name": "Then/YACLib/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -429,10 +429,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/0/real_time", + "name": "ComplexBlob/YACLib/0/real_time", "family_index": 5, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/0/real_time", + "run_name": "ComplexBlob/YACLib/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -443,10 +443,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2/real_time", + "name": "ComplexBlob/YACLib/2/real_time", "family_index": 6, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2/real_time", + "run_name": "ComplexBlob/YACLib/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -457,10 +457,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4/real_time", + "name": "ComplexBlob/YACLib/4/real_time", "family_index": 7, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4/real_time", + "run_name": "ComplexBlob/YACLib/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -471,10 +471,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8/real_time", + "name": "ComplexBlob/YACLib/8/real_time", "family_index": 8, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8/real_time", + "run_name": "ComplexBlob/YACLib/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -485,10 +485,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/16/real_time", + "name": "ComplexBlob/YACLib/16/real_time", "family_index": 9, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/16/real_time", + "run_name": "ComplexBlob/YACLib/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -499,10 +499,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/32/real_time", + "name": "ComplexBlob/YACLib/32/real_time", "family_index": 10, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/32/real_time", + "run_name": "ComplexBlob/YACLib/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -513,10 +513,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/64/real_time", + "name": "ComplexBlob/YACLib/64/real_time", "family_index": 11, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/64/real_time", + "run_name": "ComplexBlob/YACLib/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -527,10 +527,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/128/real_time", + "name": "ComplexBlob/YACLib/128/real_time", "family_index": 12, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/128/real_time", + "run_name": "ComplexBlob/YACLib/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -541,10 +541,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/256/real_time", + "name": "ComplexBlob/YACLib/256/real_time", "family_index": 13, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/256/real_time", + "run_name": "ComplexBlob/YACLib/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -555,10 +555,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/512/real_time", + "name": "ComplexBlob/YACLib/512/real_time", "family_index": 14, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/512/real_time", + "run_name": "ComplexBlob/YACLib/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -569,10 +569,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/1024/real_time", + "name": "ComplexBlob/YACLib/1024/real_time", "family_index": 15, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/1024/real_time", + "run_name": "ComplexBlob/YACLib/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -583,10 +583,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2048/real_time", + "name": "ComplexBlob/YACLib/2048/real_time", "family_index": 16, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2048/real_time", + "run_name": "ComplexBlob/YACLib/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -597,10 +597,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4096/real_time", + "name": "ComplexBlob/YACLib/4096/real_time", "family_index": 17, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4096/real_time", + "run_name": "ComplexBlob/YACLib/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -611,10 +611,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8192/real_time", + "name": "ComplexBlob/YACLib/8192/real_time", "family_index": 18, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8192/real_time", + "run_name": "ComplexBlob/YACLib/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -625,10 +625,10 @@ "time_unit": "ns" }, { - "name": "NoContention(YACLib)/real_time", + "name": "NoContention/YACLib/real_time", "family_index": 19, "per_family_instance_index": 0, - "run_name": "NoContention(YACLib)/real_time", + "run_name": "NoContention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -639,10 +639,10 @@ "time_unit": "ns" }, { - "name": "Contention(YACLib)/real_time", + "name": "Contention/YACLib/real_time", "family_index": 20, "per_family_instance_index": 0, - "run_name": "Contention(YACLib)/real_time", + "run_name": "Contention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, diff --git a/future/result/i5-3210M/clang_libcxx/picture/ComplexBlob.svg b/future/result/i5-3210M/clang_libcxx/picture/ComplexBlob.svg new file mode 100644 index 0000000..bc8d0ad --- /dev/null +++ b/future/result/i5-3210M/clang_libcxx/picture/ComplexBlob.svg @@ -0,0 +1,772 @@ + + + + + + + + 2022-04-10T19:11:51.224797 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-3210M/clang_libcxx/picture/ConstantFuture.svg b/future/result/i5-3210M/clang_libcxx/picture/ConstantFuture.svg new file mode 100644 index 0000000..bcf3a71 --- /dev/null +++ b/future/result/i5-3210M/clang_libcxx/picture/ConstantFuture.svg @@ -0,0 +1,920 @@ + + + + + + + + 2022-04-10T19:11:50.372164 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-3210M/clang_libcxx/picture/Contention.svg b/future/result/i5-3210M/clang_libcxx/picture/Contention.svg new file mode 100644 index 0000000..1766097 --- /dev/null +++ b/future/result/i5-3210M/clang_libcxx/picture/Contention.svg @@ -0,0 +1,669 @@ + + + + + + + + 2022-04-10T19:11:51.607267 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-3210M/clang_libcxx/picture/NoContention.svg b/future/result/i5-3210M/clang_libcxx/picture/NoContention.svg new file mode 100644 index 0000000..a77c45e --- /dev/null +++ b/future/result/i5-3210M/clang_libcxx/picture/NoContention.svg @@ -0,0 +1,654 @@ + + + + + + + + 2022-04-10T19:11:51.443906 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-3210M/clang_libcxx/picture/PromiseAndFuture.svg b/future/result/i5-3210M/clang_libcxx/picture/PromiseAndFuture.svg new file mode 100644 index 0000000..51604ab --- /dev/null +++ b/future/result/i5-3210M/clang_libcxx/picture/PromiseAndFuture.svg @@ -0,0 +1,765 @@ + + + + + + + + 2022-04-10T19:11:50.526319 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-3210M/clang_libcxx/picture/ThenAllInline.svg b/future/result/i5-3210M/clang_libcxx/picture/ThenAllInline.svg new file mode 100644 index 0000000..4a618d6 --- /dev/null +++ b/future/result/i5-3210M/clang_libcxx/picture/ThenAllInline.svg @@ -0,0 +1,662 @@ + + + + + + + + 2022-04-10T19:11:50.674405 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-3210M/clang_libcxx/picture/ThenOneInline.svg b/future/result/i5-3210M/clang_libcxx/picture/ThenOneInline.svg new file mode 100644 index 0000000..a9fe590 --- /dev/null +++ b/future/result/i5-3210M/clang_libcxx/picture/ThenOneInline.svg @@ -0,0 +1,733 @@ + + + + + + + + 2022-04-10T19:11:50.793743 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-3210M/clang_libcxx/picture/ThenScheduler.svg b/future/result/i5-3210M/clang_libcxx/picture/ThenScheduler.svg new file mode 100644 index 0000000..adf8ac8 --- /dev/null +++ b/future/result/i5-3210M/clang_libcxx/picture/ThenScheduler.svg @@ -0,0 +1,792 @@ + + + + + + + + 2022-04-10T19:11:50.956869 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-3210M/clang_libstdcxx/data.json b/future/result/i5-3210M/clang_libstdcxx/data.json index a196a9d..015df35 100644 --- a/future/result/i5-3210M/clang_libstdcxx/data.json +++ b/future/result/i5-3210M/clang_libstdcxx/data.json @@ -37,10 +37,10 @@ }, "benchmarks": [ { - "name": "ConstantFuture(Std)/real_time", + "name": "ConstantFuture/Std/real_time", "family_index": 0, "per_family_instance_index": 0, - "run_name": "ConstantFuture(Std)/real_time", + "run_name": "ConstantFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -51,10 +51,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(YACLib)/real_time", + "name": "ConstantFuture/YACLib/real_time", "family_index": 1, "per_family_instance_index": 0, - "run_name": "ConstantFuture(YACLib)/real_time", + "run_name": "ConstantFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -65,10 +65,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(Folly)/real_time", + "name": "ConstantFuture/Folly/real_time", "family_index": 2, "per_family_instance_index": 0, - "run_name": "ConstantFuture(Folly)/real_time", + "run_name": "ConstantFuture/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -79,10 +79,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(BoostThread)/real_time", + "name": "ConstantFuture/BoostThread/real_time", "family_index": 3, "per_family_instance_index": 0, - "run_name": "ConstantFuture(BoostThread)/real_time", + "run_name": "ConstantFuture/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -93,10 +93,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(Std)/real_time", + "name": "PromiseAndFuture/Std/real_time", "family_index": 4, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(Std)/real_time", + "run_name": "PromiseAndFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -107,10 +107,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(YACLib)/real_time", + "name": "PromiseAndFuture/YACLib/real_time", "family_index": 5, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(YACLib)/real_time", + "run_name": "PromiseAndFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -121,10 +121,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(Folly)/real_time", + "name": "PromiseAndFuture/Folly/real_time", "family_index": 6, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(Folly)/real_time", + "run_name": "PromiseAndFuture/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -135,10 +135,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(BoostThread)/real_time", + "name": "PromiseAndFuture/BoostThread/real_time", "family_index": 7, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(BoostThread)/real_time", + "run_name": "PromiseAndFuture/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -149,10 +149,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/0/real_time", + "name": "Then/YACLib/0/0/real_time", "family_index": 8, "per_family_instance_index": 0, - "run_name": "Then(YACLib)/0/0/real_time", + "run_name": "Then/YACLib/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -163,10 +163,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/0/real_time", + "name": "Then/YACLib/1/0/real_time", "family_index": 8, "per_family_instance_index": 1, - "run_name": "Then(YACLib)/1/0/real_time", + "run_name": "Then/YACLib/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -177,10 +177,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/0/real_time", + "name": "Then/YACLib/2/0/real_time", "family_index": 8, "per_family_instance_index": 2, - "run_name": "Then(YACLib)/2/0/real_time", + "run_name": "Then/YACLib/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -191,10 +191,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/0/real_time", + "name": "Then/YACLib/4/0/real_time", "family_index": 8, "per_family_instance_index": 3, - "run_name": "Then(YACLib)/4/0/real_time", + "run_name": "Then/YACLib/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -205,10 +205,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/0/real_time", + "name": "Then/YACLib/8/0/real_time", "family_index": 8, "per_family_instance_index": 4, - "run_name": "Then(YACLib)/8/0/real_time", + "run_name": "Then/YACLib/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -219,10 +219,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/0/real_time", + "name": "Then/YACLib/16/0/real_time", "family_index": 8, "per_family_instance_index": 5, - "run_name": "Then(YACLib)/16/0/real_time", + "run_name": "Then/YACLib/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -233,10 +233,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/0/real_time", + "name": "Then/YACLib/32/0/real_time", "family_index": 8, "per_family_instance_index": 6, - "run_name": "Then(YACLib)/32/0/real_time", + "run_name": "Then/YACLib/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -247,10 +247,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/0/real_time", + "name": "Then/YACLib/64/0/real_time", "family_index": 8, "per_family_instance_index": 7, - "run_name": "Then(YACLib)/64/0/real_time", + "run_name": "Then/YACLib/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -261,10 +261,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/1/real_time", + "name": "Then/YACLib/0/1/real_time", "family_index": 8, "per_family_instance_index": 8, - "run_name": "Then(YACLib)/0/1/real_time", + "run_name": "Then/YACLib/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -275,10 +275,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/1/real_time", + "name": "Then/YACLib/1/1/real_time", "family_index": 8, "per_family_instance_index": 9, - "run_name": "Then(YACLib)/1/1/real_time", + "run_name": "Then/YACLib/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -289,10 +289,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/1/real_time", + "name": "Then/YACLib/2/1/real_time", "family_index": 8, "per_family_instance_index": 10, - "run_name": "Then(YACLib)/2/1/real_time", + "run_name": "Then/YACLib/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -303,10 +303,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/1/real_time", + "name": "Then/YACLib/4/1/real_time", "family_index": 8, "per_family_instance_index": 11, - "run_name": "Then(YACLib)/4/1/real_time", + "run_name": "Then/YACLib/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -317,10 +317,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/1/real_time", + "name": "Then/YACLib/8/1/real_time", "family_index": 8, "per_family_instance_index": 12, - "run_name": "Then(YACLib)/8/1/real_time", + "run_name": "Then/YACLib/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -331,10 +331,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/1/real_time", + "name": "Then/YACLib/16/1/real_time", "family_index": 8, "per_family_instance_index": 13, - "run_name": "Then(YACLib)/16/1/real_time", + "run_name": "Then/YACLib/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -345,10 +345,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/1/real_time", + "name": "Then/YACLib/32/1/real_time", "family_index": 8, "per_family_instance_index": 14, - "run_name": "Then(YACLib)/32/1/real_time", + "run_name": "Then/YACLib/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -359,10 +359,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/1/real_time", + "name": "Then/YACLib/64/1/real_time", "family_index": 8, "per_family_instance_index": 15, - "run_name": "Then(YACLib)/64/1/real_time", + "run_name": "Then/YACLib/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -373,10 +373,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/2/real_time", + "name": "Then/YACLib/0/2/real_time", "family_index": 8, "per_family_instance_index": 16, - "run_name": "Then(YACLib)/0/2/real_time", + "run_name": "Then/YACLib/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -387,10 +387,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/2/real_time", + "name": "Then/YACLib/1/2/real_time", "family_index": 8, "per_family_instance_index": 17, - "run_name": "Then(YACLib)/1/2/real_time", + "run_name": "Then/YACLib/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -401,10 +401,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/2/real_time", + "name": "Then/YACLib/2/2/real_time", "family_index": 8, "per_family_instance_index": 18, - "run_name": "Then(YACLib)/2/2/real_time", + "run_name": "Then/YACLib/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -415,10 +415,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/2/real_time", + "name": "Then/YACLib/4/2/real_time", "family_index": 8, "per_family_instance_index": 19, - "run_name": "Then(YACLib)/4/2/real_time", + "run_name": "Then/YACLib/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -429,10 +429,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/2/real_time", + "name": "Then/YACLib/8/2/real_time", "family_index": 8, "per_family_instance_index": 20, - "run_name": "Then(YACLib)/8/2/real_time", + "run_name": "Then/YACLib/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -443,10 +443,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/2/real_time", + "name": "Then/YACLib/16/2/real_time", "family_index": 8, "per_family_instance_index": 21, - "run_name": "Then(YACLib)/16/2/real_time", + "run_name": "Then/YACLib/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -457,10 +457,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/2/real_time", + "name": "Then/YACLib/32/2/real_time", "family_index": 8, "per_family_instance_index": 22, - "run_name": "Then(YACLib)/32/2/real_time", + "run_name": "Then/YACLib/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -471,10 +471,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/2/real_time", + "name": "Then/YACLib/64/2/real_time", "family_index": 8, "per_family_instance_index": 23, - "run_name": "Then(YACLib)/64/2/real_time", + "run_name": "Then/YACLib/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -485,10 +485,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/0/real_time", + "name": "Then/Folly/0/0/real_time", "family_index": 9, "per_family_instance_index": 0, - "run_name": "Then(Folly)/0/0/real_time", + "run_name": "Then/Folly/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -499,10 +499,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/0/real_time", + "name": "Then/Folly/1/0/real_time", "family_index": 9, "per_family_instance_index": 1, - "run_name": "Then(Folly)/1/0/real_time", + "run_name": "Then/Folly/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -513,10 +513,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/0/real_time", + "name": "Then/Folly/2/0/real_time", "family_index": 9, "per_family_instance_index": 2, - "run_name": "Then(Folly)/2/0/real_time", + "run_name": "Then/Folly/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -527,10 +527,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/0/real_time", + "name": "Then/Folly/4/0/real_time", "family_index": 9, "per_family_instance_index": 3, - "run_name": "Then(Folly)/4/0/real_time", + "run_name": "Then/Folly/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -541,10 +541,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/0/real_time", + "name": "Then/Folly/8/0/real_time", "family_index": 9, "per_family_instance_index": 4, - "run_name": "Then(Folly)/8/0/real_time", + "run_name": "Then/Folly/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -555,10 +555,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/0/real_time", + "name": "Then/Folly/16/0/real_time", "family_index": 9, "per_family_instance_index": 5, - "run_name": "Then(Folly)/16/0/real_time", + "run_name": "Then/Folly/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -569,10 +569,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/0/real_time", + "name": "Then/Folly/32/0/real_time", "family_index": 9, "per_family_instance_index": 6, - "run_name": "Then(Folly)/32/0/real_time", + "run_name": "Then/Folly/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -583,10 +583,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/0/real_time", + "name": "Then/Folly/64/0/real_time", "family_index": 9, "per_family_instance_index": 7, - "run_name": "Then(Folly)/64/0/real_time", + "run_name": "Then/Folly/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -597,10 +597,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/1/real_time", + "name": "Then/Folly/0/1/real_time", "family_index": 9, "per_family_instance_index": 8, - "run_name": "Then(Folly)/0/1/real_time", + "run_name": "Then/Folly/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -611,10 +611,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/1/real_time", + "name": "Then/Folly/1/1/real_time", "family_index": 9, "per_family_instance_index": 9, - "run_name": "Then(Folly)/1/1/real_time", + "run_name": "Then/Folly/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -625,10 +625,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/1/real_time", + "name": "Then/Folly/2/1/real_time", "family_index": 9, "per_family_instance_index": 10, - "run_name": "Then(Folly)/2/1/real_time", + "run_name": "Then/Folly/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -639,10 +639,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/1/real_time", + "name": "Then/Folly/4/1/real_time", "family_index": 9, "per_family_instance_index": 11, - "run_name": "Then(Folly)/4/1/real_time", + "run_name": "Then/Folly/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -653,10 +653,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/1/real_time", + "name": "Then/Folly/8/1/real_time", "family_index": 9, "per_family_instance_index": 12, - "run_name": "Then(Folly)/8/1/real_time", + "run_name": "Then/Folly/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -667,10 +667,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/1/real_time", + "name": "Then/Folly/16/1/real_time", "family_index": 9, "per_family_instance_index": 13, - "run_name": "Then(Folly)/16/1/real_time", + "run_name": "Then/Folly/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -681,10 +681,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/1/real_time", + "name": "Then/Folly/32/1/real_time", "family_index": 9, "per_family_instance_index": 14, - "run_name": "Then(Folly)/32/1/real_time", + "run_name": "Then/Folly/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -695,10 +695,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/1/real_time", + "name": "Then/Folly/64/1/real_time", "family_index": 9, "per_family_instance_index": 15, - "run_name": "Then(Folly)/64/1/real_time", + "run_name": "Then/Folly/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -709,10 +709,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/2/real_time", + "name": "Then/Folly/0/2/real_time", "family_index": 9, "per_family_instance_index": 16, - "run_name": "Then(Folly)/0/2/real_time", + "run_name": "Then/Folly/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -723,10 +723,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/2/real_time", + "name": "Then/Folly/1/2/real_time", "family_index": 9, "per_family_instance_index": 17, - "run_name": "Then(Folly)/1/2/real_time", + "run_name": "Then/Folly/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -737,10 +737,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/2/real_time", + "name": "Then/Folly/2/2/real_time", "family_index": 9, "per_family_instance_index": 18, - "run_name": "Then(Folly)/2/2/real_time", + "run_name": "Then/Folly/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -751,10 +751,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/2/real_time", + "name": "Then/Folly/4/2/real_time", "family_index": 9, "per_family_instance_index": 19, - "run_name": "Then(Folly)/4/2/real_time", + "run_name": "Then/Folly/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -765,10 +765,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/2/real_time", + "name": "Then/Folly/8/2/real_time", "family_index": 9, "per_family_instance_index": 20, - "run_name": "Then(Folly)/8/2/real_time", + "run_name": "Then/Folly/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -779,10 +779,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/2/real_time", + "name": "Then/Folly/16/2/real_time", "family_index": 9, "per_family_instance_index": 21, - "run_name": "Then(Folly)/16/2/real_time", + "run_name": "Then/Folly/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -793,10 +793,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/2/real_time", + "name": "Then/Folly/32/2/real_time", "family_index": 9, "per_family_instance_index": 22, - "run_name": "Then(Folly)/32/2/real_time", + "run_name": "Then/Folly/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -807,10 +807,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/2/real_time", + "name": "Then/Folly/64/2/real_time", "family_index": 9, "per_family_instance_index": 23, - "run_name": "Then(Folly)/64/2/real_time", + "run_name": "Then/Folly/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -821,10 +821,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/0/real_time", + "name": "Then/BoostThread/0/0/real_time", "family_index": 10, "per_family_instance_index": 0, - "run_name": "Then(BoostThread)/0/0/real_time", + "run_name": "Then/BoostThread/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -835,10 +835,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/0/real_time", + "name": "Then/BoostThread/1/0/real_time", "family_index": 10, "per_family_instance_index": 1, - "run_name": "Then(BoostThread)/1/0/real_time", + "run_name": "Then/BoostThread/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -849,10 +849,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/0/real_time", + "name": "Then/BoostThread/2/0/real_time", "family_index": 10, "per_family_instance_index": 2, - "run_name": "Then(BoostThread)/2/0/real_time", + "run_name": "Then/BoostThread/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -863,10 +863,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/0/real_time", + "name": "Then/BoostThread/4/0/real_time", "family_index": 10, "per_family_instance_index": 3, - "run_name": "Then(BoostThread)/4/0/real_time", + "run_name": "Then/BoostThread/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -877,10 +877,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/0/real_time", + "name": "Then/BoostThread/8/0/real_time", "family_index": 10, "per_family_instance_index": 4, - "run_name": "Then(BoostThread)/8/0/real_time", + "run_name": "Then/BoostThread/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -891,10 +891,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/0/real_time", + "name": "Then/BoostThread/16/0/real_time", "family_index": 10, "per_family_instance_index": 5, - "run_name": "Then(BoostThread)/16/0/real_time", + "run_name": "Then/BoostThread/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -905,10 +905,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/0/real_time", + "name": "Then/BoostThread/32/0/real_time", "family_index": 10, "per_family_instance_index": 6, - "run_name": "Then(BoostThread)/32/0/real_time", + "run_name": "Then/BoostThread/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -919,10 +919,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/0/real_time", + "name": "Then/BoostThread/64/0/real_time", "family_index": 10, "per_family_instance_index": 7, - "run_name": "Then(BoostThread)/64/0/real_time", + "run_name": "Then/BoostThread/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -933,10 +933,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/1/real_time", + "name": "Then/BoostThread/0/1/real_time", "family_index": 10, "per_family_instance_index": 8, - "run_name": "Then(BoostThread)/0/1/real_time", + "run_name": "Then/BoostThread/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -947,10 +947,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/1/real_time", + "name": "Then/BoostThread/1/1/real_time", "family_index": 10, "per_family_instance_index": 9, - "run_name": "Then(BoostThread)/1/1/real_time", + "run_name": "Then/BoostThread/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -961,10 +961,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/1/real_time", + "name": "Then/BoostThread/2/1/real_time", "family_index": 10, "per_family_instance_index": 10, - "run_name": "Then(BoostThread)/2/1/real_time", + "run_name": "Then/BoostThread/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -975,10 +975,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/1/real_time", + "name": "Then/BoostThread/4/1/real_time", "family_index": 10, "per_family_instance_index": 11, - "run_name": "Then(BoostThread)/4/1/real_time", + "run_name": "Then/BoostThread/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -989,10 +989,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/1/real_time", + "name": "Then/BoostThread/8/1/real_time", "family_index": 10, "per_family_instance_index": 12, - "run_name": "Then(BoostThread)/8/1/real_time", + "run_name": "Then/BoostThread/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1003,10 +1003,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/1/real_time", + "name": "Then/BoostThread/16/1/real_time", "family_index": 10, "per_family_instance_index": 13, - "run_name": "Then(BoostThread)/16/1/real_time", + "run_name": "Then/BoostThread/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1017,10 +1017,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/1/real_time", + "name": "Then/BoostThread/32/1/real_time", "family_index": 10, "per_family_instance_index": 14, - "run_name": "Then(BoostThread)/32/1/real_time", + "run_name": "Then/BoostThread/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1031,10 +1031,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/1/real_time", + "name": "Then/BoostThread/64/1/real_time", "family_index": 10, "per_family_instance_index": 15, - "run_name": "Then(BoostThread)/64/1/real_time", + "run_name": "Then/BoostThread/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1045,10 +1045,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/2/real_time", + "name": "Then/BoostThread/0/2/real_time", "family_index": 10, "per_family_instance_index": 16, - "run_name": "Then(BoostThread)/0/2/real_time", + "run_name": "Then/BoostThread/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1059,10 +1059,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/2/real_time", + "name": "Then/BoostThread/1/2/real_time", "family_index": 10, "per_family_instance_index": 17, - "run_name": "Then(BoostThread)/1/2/real_time", + "run_name": "Then/BoostThread/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1073,10 +1073,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/2/real_time", + "name": "Then/BoostThread/2/2/real_time", "family_index": 10, "per_family_instance_index": 18, - "run_name": "Then(BoostThread)/2/2/real_time", + "run_name": "Then/BoostThread/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1087,10 +1087,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/2/real_time", + "name": "Then/BoostThread/4/2/real_time", "family_index": 10, "per_family_instance_index": 19, - "run_name": "Then(BoostThread)/4/2/real_time", + "run_name": "Then/BoostThread/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1101,10 +1101,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/2/real_time", + "name": "Then/BoostThread/8/2/real_time", "family_index": 10, "per_family_instance_index": 20, - "run_name": "Then(BoostThread)/8/2/real_time", + "run_name": "Then/BoostThread/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1115,10 +1115,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/2/real_time", + "name": "Then/BoostThread/16/2/real_time", "family_index": 10, "per_family_instance_index": 21, - "run_name": "Then(BoostThread)/16/2/real_time", + "run_name": "Then/BoostThread/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1129,10 +1129,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/2/real_time", + "name": "Then/BoostThread/32/2/real_time", "family_index": 10, "per_family_instance_index": 22, - "run_name": "Then(BoostThread)/32/2/real_time", + "run_name": "Then/BoostThread/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1143,10 +1143,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/2/real_time", + "name": "Then/BoostThread/64/2/real_time", "family_index": 10, "per_family_instance_index": 23, - "run_name": "Then(BoostThread)/64/2/real_time", + "run_name": "Then/BoostThread/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1157,10 +1157,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/0/real_time", + "name": "ComplexBlob/YACLib/0/real_time", "family_index": 11, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/0/real_time", + "run_name": "ComplexBlob/YACLib/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1171,10 +1171,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/0/real_time", + "name": "ComplexBlob/Folly/0/real_time", "family_index": 12, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/0/real_time", + "run_name": "ComplexBlob/Folly/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1185,10 +1185,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/0/real_time", + "name": "ComplexBlob/BoostThread/0/real_time", "family_index": 13, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/0/real_time", + "run_name": "ComplexBlob/BoostThread/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1199,10 +1199,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2/real_time", + "name": "ComplexBlob/YACLib/2/real_time", "family_index": 14, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2/real_time", + "run_name": "ComplexBlob/YACLib/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1213,10 +1213,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/2/real_time", + "name": "ComplexBlob/Folly/2/real_time", "family_index": 15, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/2/real_time", + "run_name": "ComplexBlob/Folly/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1227,10 +1227,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/2/real_time", + "name": "ComplexBlob/BoostThread/2/real_time", "family_index": 16, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/2/real_time", + "run_name": "ComplexBlob/BoostThread/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1241,10 +1241,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4/real_time", + "name": "ComplexBlob/YACLib/4/real_time", "family_index": 17, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4/real_time", + "run_name": "ComplexBlob/YACLib/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1255,10 +1255,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/4/real_time", + "name": "ComplexBlob/Folly/4/real_time", "family_index": 18, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/4/real_time", + "run_name": "ComplexBlob/Folly/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1269,10 +1269,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/4/real_time", + "name": "ComplexBlob/BoostThread/4/real_time", "family_index": 19, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/4/real_time", + "run_name": "ComplexBlob/BoostThread/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1283,10 +1283,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8/real_time", + "name": "ComplexBlob/YACLib/8/real_time", "family_index": 20, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8/real_time", + "run_name": "ComplexBlob/YACLib/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1297,10 +1297,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/8/real_time", + "name": "ComplexBlob/Folly/8/real_time", "family_index": 21, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/8/real_time", + "run_name": "ComplexBlob/Folly/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1311,10 +1311,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/8/real_time", + "name": "ComplexBlob/BoostThread/8/real_time", "family_index": 22, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/8/real_time", + "run_name": "ComplexBlob/BoostThread/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1325,10 +1325,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/16/real_time", + "name": "ComplexBlob/YACLib/16/real_time", "family_index": 23, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/16/real_time", + "run_name": "ComplexBlob/YACLib/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1339,10 +1339,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/16/real_time", + "name": "ComplexBlob/Folly/16/real_time", "family_index": 24, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/16/real_time", + "run_name": "ComplexBlob/Folly/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1353,10 +1353,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/16/real_time", + "name": "ComplexBlob/BoostThread/16/real_time", "family_index": 25, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/16/real_time", + "run_name": "ComplexBlob/BoostThread/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1367,10 +1367,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/32/real_time", + "name": "ComplexBlob/YACLib/32/real_time", "family_index": 26, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/32/real_time", + "run_name": "ComplexBlob/YACLib/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1381,10 +1381,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/32/real_time", + "name": "ComplexBlob/Folly/32/real_time", "family_index": 27, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/32/real_time", + "run_name": "ComplexBlob/Folly/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1395,10 +1395,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/32/real_time", + "name": "ComplexBlob/BoostThread/32/real_time", "family_index": 28, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/32/real_time", + "run_name": "ComplexBlob/BoostThread/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1409,10 +1409,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/64/real_time", + "name": "ComplexBlob/YACLib/64/real_time", "family_index": 29, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/64/real_time", + "run_name": "ComplexBlob/YACLib/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1423,10 +1423,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/64/real_time", + "name": "ComplexBlob/Folly/64/real_time", "family_index": 30, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/64/real_time", + "run_name": "ComplexBlob/Folly/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1437,10 +1437,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/64/real_time", + "name": "ComplexBlob/BoostThread/64/real_time", "family_index": 31, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/64/real_time", + "run_name": "ComplexBlob/BoostThread/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1451,10 +1451,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/128/real_time", + "name": "ComplexBlob/YACLib/128/real_time", "family_index": 32, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/128/real_time", + "run_name": "ComplexBlob/YACLib/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1465,10 +1465,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/128/real_time", + "name": "ComplexBlob/Folly/128/real_time", "family_index": 33, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/128/real_time", + "run_name": "ComplexBlob/Folly/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1479,10 +1479,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/128/real_time", + "name": "ComplexBlob/BoostThread/128/real_time", "family_index": 34, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/128/real_time", + "run_name": "ComplexBlob/BoostThread/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1493,10 +1493,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/256/real_time", + "name": "ComplexBlob/YACLib/256/real_time", "family_index": 35, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/256/real_time", + "run_name": "ComplexBlob/YACLib/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1507,10 +1507,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/256/real_time", + "name": "ComplexBlob/Folly/256/real_time", "family_index": 36, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/256/real_time", + "run_name": "ComplexBlob/Folly/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1521,10 +1521,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/256/real_time", + "name": "ComplexBlob/BoostThread/256/real_time", "family_index": 37, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/256/real_time", + "run_name": "ComplexBlob/BoostThread/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1535,10 +1535,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/512/real_time", + "name": "ComplexBlob/YACLib/512/real_time", "family_index": 38, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/512/real_time", + "run_name": "ComplexBlob/YACLib/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1549,10 +1549,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/512/real_time", + "name": "ComplexBlob/Folly/512/real_time", "family_index": 39, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/512/real_time", + "run_name": "ComplexBlob/Folly/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1563,10 +1563,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/512/real_time", + "name": "ComplexBlob/BoostThread/512/real_time", "family_index": 40, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/512/real_time", + "run_name": "ComplexBlob/BoostThread/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1577,10 +1577,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/1024/real_time", + "name": "ComplexBlob/YACLib/1024/real_time", "family_index": 41, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/1024/real_time", + "run_name": "ComplexBlob/YACLib/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1591,10 +1591,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/1024/real_time", + "name": "ComplexBlob/Folly/1024/real_time", "family_index": 42, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/1024/real_time", + "run_name": "ComplexBlob/Folly/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1605,10 +1605,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/1024/real_time", + "name": "ComplexBlob/BoostThread/1024/real_time", "family_index": 43, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/1024/real_time", + "run_name": "ComplexBlob/BoostThread/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1619,10 +1619,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2048/real_time", + "name": "ComplexBlob/YACLib/2048/real_time", "family_index": 44, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2048/real_time", + "run_name": "ComplexBlob/YACLib/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1633,10 +1633,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/2048/real_time", + "name": "ComplexBlob/Folly/2048/real_time", "family_index": 45, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/2048/real_time", + "run_name": "ComplexBlob/Folly/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1647,10 +1647,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/2048/real_time", + "name": "ComplexBlob/BoostThread/2048/real_time", "family_index": 46, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/2048/real_time", + "run_name": "ComplexBlob/BoostThread/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1661,10 +1661,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4096/real_time", + "name": "ComplexBlob/YACLib/4096/real_time", "family_index": 47, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4096/real_time", + "run_name": "ComplexBlob/YACLib/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1675,10 +1675,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/4096/real_time", + "name": "ComplexBlob/Folly/4096/real_time", "family_index": 48, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/4096/real_time", + "run_name": "ComplexBlob/Folly/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1689,10 +1689,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/4096/real_time", + "name": "ComplexBlob/BoostThread/4096/real_time", "family_index": 49, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/4096/real_time", + "run_name": "ComplexBlob/BoostThread/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1703,10 +1703,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8192/real_time", + "name": "ComplexBlob/YACLib/8192/real_time", "family_index": 50, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8192/real_time", + "run_name": "ComplexBlob/YACLib/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1717,10 +1717,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/8192/real_time", + "name": "ComplexBlob/Folly/8192/real_time", "family_index": 51, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/8192/real_time", + "run_name": "ComplexBlob/Folly/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1731,10 +1731,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/8192/real_time", + "name": "ComplexBlob/BoostThread/8192/real_time", "family_index": 52, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/8192/real_time", + "run_name": "ComplexBlob/BoostThread/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1745,10 +1745,10 @@ "time_unit": "ns" }, { - "name": "NoContention(YACLib)/real_time", + "name": "NoContention/YACLib/real_time", "family_index": 53, "per_family_instance_index": 0, - "run_name": "NoContention(YACLib)/real_time", + "run_name": "NoContention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1759,10 +1759,10 @@ "time_unit": "ns" }, { - "name": "NoContention(Folly)/real_time", + "name": "NoContention/Folly/real_time", "family_index": 54, "per_family_instance_index": 0, - "run_name": "NoContention(Folly)/real_time", + "run_name": "NoContention/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1773,10 +1773,10 @@ "time_unit": "ns" }, { - "name": "NoContention(BoostThread)/real_time", + "name": "NoContention/BoostThread/real_time", "family_index": 55, "per_family_instance_index": 0, - "run_name": "NoContention(BoostThread)/real_time", + "run_name": "NoContention/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1787,10 +1787,10 @@ "time_unit": "ns" }, { - "name": "Contention(YACLib)/real_time", + "name": "Contention/YACLib/real_time", "family_index": 56, "per_family_instance_index": 0, - "run_name": "Contention(YACLib)/real_time", + "run_name": "Contention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1801,10 +1801,10 @@ "time_unit": "ns" }, { - "name": "Contention(Folly)/real_time", + "name": "Contention/Folly/real_time", "family_index": 57, "per_family_instance_index": 0, - "run_name": "Contention(Folly)/real_time", + "run_name": "Contention/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1815,10 +1815,10 @@ "time_unit": "ns" }, { - "name": "Contention(BoostThread)/real_time", + "name": "Contention/BoostThread/real_time", "family_index": 58, "per_family_instance_index": 0, - "run_name": "Contention(BoostThread)/real_time", + "run_name": "Contention/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, diff --git a/future/result/i5-3210M/clang_libstdcxx/picture/ComplexBlob.svg b/future/result/i5-3210M/clang_libstdcxx/picture/ComplexBlob.svg new file mode 100644 index 0000000..69d54f6 --- /dev/null +++ b/future/result/i5-3210M/clang_libstdcxx/picture/ComplexBlob.svg @@ -0,0 +1,1168 @@ + + + + + + + + 2022-04-10T19:11:48.730483 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-3210M/clang_libstdcxx/picture/ConstantFuture.svg b/future/result/i5-3210M/clang_libstdcxx/picture/ConstantFuture.svg new file mode 100644 index 0000000..3aa1c4e --- /dev/null +++ b/future/result/i5-3210M/clang_libstdcxx/picture/ConstantFuture.svg @@ -0,0 +1,946 @@ + + + + + + + + 2022-04-10T19:11:48.000372 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-3210M/clang_libstdcxx/picture/Contention.svg b/future/result/i5-3210M/clang_libstdcxx/picture/Contention.svg new file mode 100644 index 0000000..315cac4 --- /dev/null +++ b/future/result/i5-3210M/clang_libstdcxx/picture/Contention.svg @@ -0,0 +1,934 @@ + + + + + + + + 2022-04-10T19:11:49.002198 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-3210M/clang_libstdcxx/picture/NoContention.svg b/future/result/i5-3210M/clang_libstdcxx/picture/NoContention.svg new file mode 100644 index 0000000..f947eae --- /dev/null +++ b/future/result/i5-3210M/clang_libstdcxx/picture/NoContention.svg @@ -0,0 +1,1000 @@ + + + + + + + + 2022-04-10T19:11:48.869499 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-3210M/clang_libstdcxx/picture/PromiseAndFuture.svg b/future/result/i5-3210M/clang_libstdcxx/picture/PromiseAndFuture.svg new file mode 100644 index 0000000..7cdd607 --- /dev/null +++ b/future/result/i5-3210M/clang_libstdcxx/picture/PromiseAndFuture.svg @@ -0,0 +1,969 @@ + + + + + + + + 2022-04-10T19:11:48.135349 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-3210M/clang_libstdcxx/picture/ThenAllInline.svg b/future/result/i5-3210M/clang_libstdcxx/picture/ThenAllInline.svg new file mode 100644 index 0000000..aacb1c8 --- /dev/null +++ b/future/result/i5-3210M/clang_libstdcxx/picture/ThenAllInline.svg @@ -0,0 +1,1187 @@ + + + + + + + + 2022-04-10T19:11:48.283291 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-3210M/clang_libstdcxx/picture/ThenOneInline.svg b/future/result/i5-3210M/clang_libstdcxx/picture/ThenOneInline.svg new file mode 100644 index 0000000..819982b --- /dev/null +++ b/future/result/i5-3210M/clang_libstdcxx/picture/ThenOneInline.svg @@ -0,0 +1,1051 @@ + + + + + + + + 2022-04-10T19:11:48.435616 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-3210M/clang_libstdcxx/picture/ThenScheduler.svg b/future/result/i5-3210M/clang_libstdcxx/picture/ThenScheduler.svg new file mode 100644 index 0000000..69efe70 --- /dev/null +++ b/future/result/i5-3210M/clang_libstdcxx/picture/ThenScheduler.svg @@ -0,0 +1,1167 @@ + + + + + + + + 2022-04-10T19:11:48.577165 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-3210M/gcc_libstdcxx/data.json b/future/result/i5-3210M/gcc_libstdcxx/data.json index d39a8e8..5aafc98 100644 --- a/future/result/i5-3210M/gcc_libstdcxx/data.json +++ b/future/result/i5-3210M/gcc_libstdcxx/data.json @@ -37,10 +37,10 @@ }, "benchmarks": [ { - "name": "ConstantFuture(Std)/real_time", + "name": "ConstantFuture/Std/real_time", "family_index": 0, "per_family_instance_index": 0, - "run_name": "ConstantFuture(Std)/real_time", + "run_name": "ConstantFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -51,10 +51,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(YACLib)/real_time", + "name": "ConstantFuture/YACLib/real_time", "family_index": 1, "per_family_instance_index": 0, - "run_name": "ConstantFuture(YACLib)/real_time", + "run_name": "ConstantFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -65,10 +65,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(Folly)/real_time", + "name": "ConstantFuture/Folly/real_time", "family_index": 2, "per_family_instance_index": 0, - "run_name": "ConstantFuture(Folly)/real_time", + "run_name": "ConstantFuture/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -79,10 +79,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(BoostThread)/real_time", + "name": "ConstantFuture/BoostThread/real_time", "family_index": 3, "per_family_instance_index": 0, - "run_name": "ConstantFuture(BoostThread)/real_time", + "run_name": "ConstantFuture/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -93,10 +93,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(Std)/real_time", + "name": "PromiseAndFuture/Std/real_time", "family_index": 4, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(Std)/real_time", + "run_name": "PromiseAndFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -107,10 +107,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(YACLib)/real_time", + "name": "PromiseAndFuture/YACLib/real_time", "family_index": 5, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(YACLib)/real_time", + "run_name": "PromiseAndFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -121,10 +121,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(Folly)/real_time", + "name": "PromiseAndFuture/Folly/real_time", "family_index": 6, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(Folly)/real_time", + "run_name": "PromiseAndFuture/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -135,10 +135,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(BoostThread)/real_time", + "name": "PromiseAndFuture/BoostThread/real_time", "family_index": 7, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(BoostThread)/real_time", + "run_name": "PromiseAndFuture/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -149,10 +149,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/0/real_time", + "name": "Then/YACLib/0/0/real_time", "family_index": 8, "per_family_instance_index": 0, - "run_name": "Then(YACLib)/0/0/real_time", + "run_name": "Then/YACLib/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -163,10 +163,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/0/real_time", + "name": "Then/YACLib/1/0/real_time", "family_index": 8, "per_family_instance_index": 1, - "run_name": "Then(YACLib)/1/0/real_time", + "run_name": "Then/YACLib/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -177,10 +177,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/0/real_time", + "name": "Then/YACLib/2/0/real_time", "family_index": 8, "per_family_instance_index": 2, - "run_name": "Then(YACLib)/2/0/real_time", + "run_name": "Then/YACLib/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -191,10 +191,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/0/real_time", + "name": "Then/YACLib/4/0/real_time", "family_index": 8, "per_family_instance_index": 3, - "run_name": "Then(YACLib)/4/0/real_time", + "run_name": "Then/YACLib/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -205,10 +205,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/0/real_time", + "name": "Then/YACLib/8/0/real_time", "family_index": 8, "per_family_instance_index": 4, - "run_name": "Then(YACLib)/8/0/real_time", + "run_name": "Then/YACLib/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -219,10 +219,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/0/real_time", + "name": "Then/YACLib/16/0/real_time", "family_index": 8, "per_family_instance_index": 5, - "run_name": "Then(YACLib)/16/0/real_time", + "run_name": "Then/YACLib/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -233,10 +233,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/0/real_time", + "name": "Then/YACLib/32/0/real_time", "family_index": 8, "per_family_instance_index": 6, - "run_name": "Then(YACLib)/32/0/real_time", + "run_name": "Then/YACLib/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -247,10 +247,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/0/real_time", + "name": "Then/YACLib/64/0/real_time", "family_index": 8, "per_family_instance_index": 7, - "run_name": "Then(YACLib)/64/0/real_time", + "run_name": "Then/YACLib/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -261,10 +261,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/1/real_time", + "name": "Then/YACLib/0/1/real_time", "family_index": 8, "per_family_instance_index": 8, - "run_name": "Then(YACLib)/0/1/real_time", + "run_name": "Then/YACLib/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -275,10 +275,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/1/real_time", + "name": "Then/YACLib/1/1/real_time", "family_index": 8, "per_family_instance_index": 9, - "run_name": "Then(YACLib)/1/1/real_time", + "run_name": "Then/YACLib/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -289,10 +289,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/1/real_time", + "name": "Then/YACLib/2/1/real_time", "family_index": 8, "per_family_instance_index": 10, - "run_name": "Then(YACLib)/2/1/real_time", + "run_name": "Then/YACLib/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -303,10 +303,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/1/real_time", + "name": "Then/YACLib/4/1/real_time", "family_index": 8, "per_family_instance_index": 11, - "run_name": "Then(YACLib)/4/1/real_time", + "run_name": "Then/YACLib/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -317,10 +317,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/1/real_time", + "name": "Then/YACLib/8/1/real_time", "family_index": 8, "per_family_instance_index": 12, - "run_name": "Then(YACLib)/8/1/real_time", + "run_name": "Then/YACLib/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -331,10 +331,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/1/real_time", + "name": "Then/YACLib/16/1/real_time", "family_index": 8, "per_family_instance_index": 13, - "run_name": "Then(YACLib)/16/1/real_time", + "run_name": "Then/YACLib/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -345,10 +345,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/1/real_time", + "name": "Then/YACLib/32/1/real_time", "family_index": 8, "per_family_instance_index": 14, - "run_name": "Then(YACLib)/32/1/real_time", + "run_name": "Then/YACLib/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -359,10 +359,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/1/real_time", + "name": "Then/YACLib/64/1/real_time", "family_index": 8, "per_family_instance_index": 15, - "run_name": "Then(YACLib)/64/1/real_time", + "run_name": "Then/YACLib/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -373,10 +373,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/2/real_time", + "name": "Then/YACLib/0/2/real_time", "family_index": 8, "per_family_instance_index": 16, - "run_name": "Then(YACLib)/0/2/real_time", + "run_name": "Then/YACLib/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -387,10 +387,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/2/real_time", + "name": "Then/YACLib/1/2/real_time", "family_index": 8, "per_family_instance_index": 17, - "run_name": "Then(YACLib)/1/2/real_time", + "run_name": "Then/YACLib/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -401,10 +401,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/2/real_time", + "name": "Then/YACLib/2/2/real_time", "family_index": 8, "per_family_instance_index": 18, - "run_name": "Then(YACLib)/2/2/real_time", + "run_name": "Then/YACLib/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -415,10 +415,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/2/real_time", + "name": "Then/YACLib/4/2/real_time", "family_index": 8, "per_family_instance_index": 19, - "run_name": "Then(YACLib)/4/2/real_time", + "run_name": "Then/YACLib/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -429,10 +429,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/2/real_time", + "name": "Then/YACLib/8/2/real_time", "family_index": 8, "per_family_instance_index": 20, - "run_name": "Then(YACLib)/8/2/real_time", + "run_name": "Then/YACLib/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -443,10 +443,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/2/real_time", + "name": "Then/YACLib/16/2/real_time", "family_index": 8, "per_family_instance_index": 21, - "run_name": "Then(YACLib)/16/2/real_time", + "run_name": "Then/YACLib/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -457,10 +457,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/2/real_time", + "name": "Then/YACLib/32/2/real_time", "family_index": 8, "per_family_instance_index": 22, - "run_name": "Then(YACLib)/32/2/real_time", + "run_name": "Then/YACLib/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -471,10 +471,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/2/real_time", + "name": "Then/YACLib/64/2/real_time", "family_index": 8, "per_family_instance_index": 23, - "run_name": "Then(YACLib)/64/2/real_time", + "run_name": "Then/YACLib/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -485,10 +485,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/0/real_time", + "name": "Then/Folly/0/0/real_time", "family_index": 9, "per_family_instance_index": 0, - "run_name": "Then(Folly)/0/0/real_time", + "run_name": "Then/Folly/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -499,10 +499,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/0/real_time", + "name": "Then/Folly/1/0/real_time", "family_index": 9, "per_family_instance_index": 1, - "run_name": "Then(Folly)/1/0/real_time", + "run_name": "Then/Folly/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -513,10 +513,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/0/real_time", + "name": "Then/Folly/2/0/real_time", "family_index": 9, "per_family_instance_index": 2, - "run_name": "Then(Folly)/2/0/real_time", + "run_name": "Then/Folly/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -527,10 +527,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/0/real_time", + "name": "Then/Folly/4/0/real_time", "family_index": 9, "per_family_instance_index": 3, - "run_name": "Then(Folly)/4/0/real_time", + "run_name": "Then/Folly/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -541,10 +541,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/0/real_time", + "name": "Then/Folly/8/0/real_time", "family_index": 9, "per_family_instance_index": 4, - "run_name": "Then(Folly)/8/0/real_time", + "run_name": "Then/Folly/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -555,10 +555,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/0/real_time", + "name": "Then/Folly/16/0/real_time", "family_index": 9, "per_family_instance_index": 5, - "run_name": "Then(Folly)/16/0/real_time", + "run_name": "Then/Folly/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -569,10 +569,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/0/real_time", + "name": "Then/Folly/32/0/real_time", "family_index": 9, "per_family_instance_index": 6, - "run_name": "Then(Folly)/32/0/real_time", + "run_name": "Then/Folly/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -583,10 +583,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/0/real_time", + "name": "Then/Folly/64/0/real_time", "family_index": 9, "per_family_instance_index": 7, - "run_name": "Then(Folly)/64/0/real_time", + "run_name": "Then/Folly/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -597,10 +597,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/1/real_time", + "name": "Then/Folly/0/1/real_time", "family_index": 9, "per_family_instance_index": 8, - "run_name": "Then(Folly)/0/1/real_time", + "run_name": "Then/Folly/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -611,10 +611,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/1/real_time", + "name": "Then/Folly/1/1/real_time", "family_index": 9, "per_family_instance_index": 9, - "run_name": "Then(Folly)/1/1/real_time", + "run_name": "Then/Folly/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -625,10 +625,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/1/real_time", + "name": "Then/Folly/2/1/real_time", "family_index": 9, "per_family_instance_index": 10, - "run_name": "Then(Folly)/2/1/real_time", + "run_name": "Then/Folly/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -639,10 +639,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/1/real_time", + "name": "Then/Folly/4/1/real_time", "family_index": 9, "per_family_instance_index": 11, - "run_name": "Then(Folly)/4/1/real_time", + "run_name": "Then/Folly/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -653,10 +653,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/1/real_time", + "name": "Then/Folly/8/1/real_time", "family_index": 9, "per_family_instance_index": 12, - "run_name": "Then(Folly)/8/1/real_time", + "run_name": "Then/Folly/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -667,10 +667,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/1/real_time", + "name": "Then/Folly/16/1/real_time", "family_index": 9, "per_family_instance_index": 13, - "run_name": "Then(Folly)/16/1/real_time", + "run_name": "Then/Folly/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -681,10 +681,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/1/real_time", + "name": "Then/Folly/32/1/real_time", "family_index": 9, "per_family_instance_index": 14, - "run_name": "Then(Folly)/32/1/real_time", + "run_name": "Then/Folly/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -695,10 +695,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/1/real_time", + "name": "Then/Folly/64/1/real_time", "family_index": 9, "per_family_instance_index": 15, - "run_name": "Then(Folly)/64/1/real_time", + "run_name": "Then/Folly/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -709,10 +709,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/2/real_time", + "name": "Then/Folly/0/2/real_time", "family_index": 9, "per_family_instance_index": 16, - "run_name": "Then(Folly)/0/2/real_time", + "run_name": "Then/Folly/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -723,10 +723,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/2/real_time", + "name": "Then/Folly/1/2/real_time", "family_index": 9, "per_family_instance_index": 17, - "run_name": "Then(Folly)/1/2/real_time", + "run_name": "Then/Folly/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -737,10 +737,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/2/real_time", + "name": "Then/Folly/2/2/real_time", "family_index": 9, "per_family_instance_index": 18, - "run_name": "Then(Folly)/2/2/real_time", + "run_name": "Then/Folly/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -751,10 +751,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/2/real_time", + "name": "Then/Folly/4/2/real_time", "family_index": 9, "per_family_instance_index": 19, - "run_name": "Then(Folly)/4/2/real_time", + "run_name": "Then/Folly/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -765,10 +765,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/2/real_time", + "name": "Then/Folly/8/2/real_time", "family_index": 9, "per_family_instance_index": 20, - "run_name": "Then(Folly)/8/2/real_time", + "run_name": "Then/Folly/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -779,10 +779,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/2/real_time", + "name": "Then/Folly/16/2/real_time", "family_index": 9, "per_family_instance_index": 21, - "run_name": "Then(Folly)/16/2/real_time", + "run_name": "Then/Folly/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -793,10 +793,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/2/real_time", + "name": "Then/Folly/32/2/real_time", "family_index": 9, "per_family_instance_index": 22, - "run_name": "Then(Folly)/32/2/real_time", + "run_name": "Then/Folly/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -807,10 +807,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/2/real_time", + "name": "Then/Folly/64/2/real_time", "family_index": 9, "per_family_instance_index": 23, - "run_name": "Then(Folly)/64/2/real_time", + "run_name": "Then/Folly/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -821,10 +821,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/0/real_time", + "name": "Then/BoostThread/0/0/real_time", "family_index": 10, "per_family_instance_index": 0, - "run_name": "Then(BoostThread)/0/0/real_time", + "run_name": "Then/BoostThread/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -835,10 +835,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/0/real_time", + "name": "Then/BoostThread/1/0/real_time", "family_index": 10, "per_family_instance_index": 1, - "run_name": "Then(BoostThread)/1/0/real_time", + "run_name": "Then/BoostThread/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -849,10 +849,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/0/real_time", + "name": "Then/BoostThread/2/0/real_time", "family_index": 10, "per_family_instance_index": 2, - "run_name": "Then(BoostThread)/2/0/real_time", + "run_name": "Then/BoostThread/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -863,10 +863,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/0/real_time", + "name": "Then/BoostThread/4/0/real_time", "family_index": 10, "per_family_instance_index": 3, - "run_name": "Then(BoostThread)/4/0/real_time", + "run_name": "Then/BoostThread/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -877,10 +877,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/0/real_time", + "name": "Then/BoostThread/8/0/real_time", "family_index": 10, "per_family_instance_index": 4, - "run_name": "Then(BoostThread)/8/0/real_time", + "run_name": "Then/BoostThread/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -891,10 +891,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/0/real_time", + "name": "Then/BoostThread/16/0/real_time", "family_index": 10, "per_family_instance_index": 5, - "run_name": "Then(BoostThread)/16/0/real_time", + "run_name": "Then/BoostThread/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -905,10 +905,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/0/real_time", + "name": "Then/BoostThread/32/0/real_time", "family_index": 10, "per_family_instance_index": 6, - "run_name": "Then(BoostThread)/32/0/real_time", + "run_name": "Then/BoostThread/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -919,10 +919,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/0/real_time", + "name": "Then/BoostThread/64/0/real_time", "family_index": 10, "per_family_instance_index": 7, - "run_name": "Then(BoostThread)/64/0/real_time", + "run_name": "Then/BoostThread/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -933,10 +933,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/1/real_time", + "name": "Then/BoostThread/0/1/real_time", "family_index": 10, "per_family_instance_index": 8, - "run_name": "Then(BoostThread)/0/1/real_time", + "run_name": "Then/BoostThread/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -947,10 +947,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/1/real_time", + "name": "Then/BoostThread/1/1/real_time", "family_index": 10, "per_family_instance_index": 9, - "run_name": "Then(BoostThread)/1/1/real_time", + "run_name": "Then/BoostThread/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -961,10 +961,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/1/real_time", + "name": "Then/BoostThread/2/1/real_time", "family_index": 10, "per_family_instance_index": 10, - "run_name": "Then(BoostThread)/2/1/real_time", + "run_name": "Then/BoostThread/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -975,10 +975,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/1/real_time", + "name": "Then/BoostThread/4/1/real_time", "family_index": 10, "per_family_instance_index": 11, - "run_name": "Then(BoostThread)/4/1/real_time", + "run_name": "Then/BoostThread/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -989,10 +989,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/1/real_time", + "name": "Then/BoostThread/8/1/real_time", "family_index": 10, "per_family_instance_index": 12, - "run_name": "Then(BoostThread)/8/1/real_time", + "run_name": "Then/BoostThread/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1003,10 +1003,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/1/real_time", + "name": "Then/BoostThread/16/1/real_time", "family_index": 10, "per_family_instance_index": 13, - "run_name": "Then(BoostThread)/16/1/real_time", + "run_name": "Then/BoostThread/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1017,10 +1017,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/1/real_time", + "name": "Then/BoostThread/32/1/real_time", "family_index": 10, "per_family_instance_index": 14, - "run_name": "Then(BoostThread)/32/1/real_time", + "run_name": "Then/BoostThread/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1031,10 +1031,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/1/real_time", + "name": "Then/BoostThread/64/1/real_time", "family_index": 10, "per_family_instance_index": 15, - "run_name": "Then(BoostThread)/64/1/real_time", + "run_name": "Then/BoostThread/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1045,10 +1045,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/2/real_time", + "name": "Then/BoostThread/0/2/real_time", "family_index": 10, "per_family_instance_index": 16, - "run_name": "Then(BoostThread)/0/2/real_time", + "run_name": "Then/BoostThread/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1059,10 +1059,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/2/real_time", + "name": "Then/BoostThread/1/2/real_time", "family_index": 10, "per_family_instance_index": 17, - "run_name": "Then(BoostThread)/1/2/real_time", + "run_name": "Then/BoostThread/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1073,10 +1073,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/2/real_time", + "name": "Then/BoostThread/2/2/real_time", "family_index": 10, "per_family_instance_index": 18, - "run_name": "Then(BoostThread)/2/2/real_time", + "run_name": "Then/BoostThread/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1087,10 +1087,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/2/real_time", + "name": "Then/BoostThread/4/2/real_time", "family_index": 10, "per_family_instance_index": 19, - "run_name": "Then(BoostThread)/4/2/real_time", + "run_name": "Then/BoostThread/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1101,10 +1101,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/2/real_time", + "name": "Then/BoostThread/8/2/real_time", "family_index": 10, "per_family_instance_index": 20, - "run_name": "Then(BoostThread)/8/2/real_time", + "run_name": "Then/BoostThread/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1115,10 +1115,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/2/real_time", + "name": "Then/BoostThread/16/2/real_time", "family_index": 10, "per_family_instance_index": 21, - "run_name": "Then(BoostThread)/16/2/real_time", + "run_name": "Then/BoostThread/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1129,10 +1129,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/2/real_time", + "name": "Then/BoostThread/32/2/real_time", "family_index": 10, "per_family_instance_index": 22, - "run_name": "Then(BoostThread)/32/2/real_time", + "run_name": "Then/BoostThread/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1143,10 +1143,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/2/real_time", + "name": "Then/BoostThread/64/2/real_time", "family_index": 10, "per_family_instance_index": 23, - "run_name": "Then(BoostThread)/64/2/real_time", + "run_name": "Then/BoostThread/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1157,10 +1157,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/0/real_time", + "name": "ComplexBlob/YACLib/0/real_time", "family_index": 11, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/0/real_time", + "run_name": "ComplexBlob/YACLib/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1171,10 +1171,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/0/real_time", + "name": "ComplexBlob/Folly/0/real_time", "family_index": 12, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/0/real_time", + "run_name": "ComplexBlob/Folly/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1185,10 +1185,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/0/real_time", + "name": "ComplexBlob/BoostThread/0/real_time", "family_index": 13, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/0/real_time", + "run_name": "ComplexBlob/BoostThread/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1199,10 +1199,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2/real_time", + "name": "ComplexBlob/YACLib/2/real_time", "family_index": 14, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2/real_time", + "run_name": "ComplexBlob/YACLib/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1213,10 +1213,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/2/real_time", + "name": "ComplexBlob/Folly/2/real_time", "family_index": 15, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/2/real_time", + "run_name": "ComplexBlob/Folly/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1227,10 +1227,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/2/real_time", + "name": "ComplexBlob/BoostThread/2/real_time", "family_index": 16, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/2/real_time", + "run_name": "ComplexBlob/BoostThread/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1241,10 +1241,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4/real_time", + "name": "ComplexBlob/YACLib/4/real_time", "family_index": 17, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4/real_time", + "run_name": "ComplexBlob/YACLib/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1255,10 +1255,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/4/real_time", + "name": "ComplexBlob/Folly/4/real_time", "family_index": 18, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/4/real_time", + "run_name": "ComplexBlob/Folly/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1269,10 +1269,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/4/real_time", + "name": "ComplexBlob/BoostThread/4/real_time", "family_index": 19, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/4/real_time", + "run_name": "ComplexBlob/BoostThread/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1283,10 +1283,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8/real_time", + "name": "ComplexBlob/YACLib/8/real_time", "family_index": 20, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8/real_time", + "run_name": "ComplexBlob/YACLib/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1297,10 +1297,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/8/real_time", + "name": "ComplexBlob/Folly/8/real_time", "family_index": 21, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/8/real_time", + "run_name": "ComplexBlob/Folly/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1311,10 +1311,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/8/real_time", + "name": "ComplexBlob/BoostThread/8/real_time", "family_index": 22, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/8/real_time", + "run_name": "ComplexBlob/BoostThread/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1325,10 +1325,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/16/real_time", + "name": "ComplexBlob/YACLib/16/real_time", "family_index": 23, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/16/real_time", + "run_name": "ComplexBlob/YACLib/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1339,10 +1339,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/16/real_time", + "name": "ComplexBlob/Folly/16/real_time", "family_index": 24, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/16/real_time", + "run_name": "ComplexBlob/Folly/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1353,10 +1353,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/16/real_time", + "name": "ComplexBlob/BoostThread/16/real_time", "family_index": 25, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/16/real_time", + "run_name": "ComplexBlob/BoostThread/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1367,10 +1367,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/32/real_time", + "name": "ComplexBlob/YACLib/32/real_time", "family_index": 26, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/32/real_time", + "run_name": "ComplexBlob/YACLib/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1381,10 +1381,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/32/real_time", + "name": "ComplexBlob/Folly/32/real_time", "family_index": 27, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/32/real_time", + "run_name": "ComplexBlob/Folly/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1395,10 +1395,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/32/real_time", + "name": "ComplexBlob/BoostThread/32/real_time", "family_index": 28, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/32/real_time", + "run_name": "ComplexBlob/BoostThread/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1409,10 +1409,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/64/real_time", + "name": "ComplexBlob/YACLib/64/real_time", "family_index": 29, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/64/real_time", + "run_name": "ComplexBlob/YACLib/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1423,10 +1423,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/64/real_time", + "name": "ComplexBlob/Folly/64/real_time", "family_index": 30, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/64/real_time", + "run_name": "ComplexBlob/Folly/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1437,10 +1437,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/64/real_time", + "name": "ComplexBlob/BoostThread/64/real_time", "family_index": 31, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/64/real_time", + "run_name": "ComplexBlob/BoostThread/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1451,10 +1451,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/128/real_time", + "name": "ComplexBlob/YACLib/128/real_time", "family_index": 32, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/128/real_time", + "run_name": "ComplexBlob/YACLib/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1465,10 +1465,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/128/real_time", + "name": "ComplexBlob/Folly/128/real_time", "family_index": 33, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/128/real_time", + "run_name": "ComplexBlob/Folly/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1479,10 +1479,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/128/real_time", + "name": "ComplexBlob/BoostThread/128/real_time", "family_index": 34, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/128/real_time", + "run_name": "ComplexBlob/BoostThread/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1493,10 +1493,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/256/real_time", + "name": "ComplexBlob/YACLib/256/real_time", "family_index": 35, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/256/real_time", + "run_name": "ComplexBlob/YACLib/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1507,10 +1507,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/256/real_time", + "name": "ComplexBlob/Folly/256/real_time", "family_index": 36, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/256/real_time", + "run_name": "ComplexBlob/Folly/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1521,10 +1521,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/256/real_time", + "name": "ComplexBlob/BoostThread/256/real_time", "family_index": 37, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/256/real_time", + "run_name": "ComplexBlob/BoostThread/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1535,10 +1535,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/512/real_time", + "name": "ComplexBlob/YACLib/512/real_time", "family_index": 38, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/512/real_time", + "run_name": "ComplexBlob/YACLib/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1549,10 +1549,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/512/real_time", + "name": "ComplexBlob/Folly/512/real_time", "family_index": 39, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/512/real_time", + "run_name": "ComplexBlob/Folly/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1563,10 +1563,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/512/real_time", + "name": "ComplexBlob/BoostThread/512/real_time", "family_index": 40, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/512/real_time", + "run_name": "ComplexBlob/BoostThread/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1577,10 +1577,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/1024/real_time", + "name": "ComplexBlob/YACLib/1024/real_time", "family_index": 41, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/1024/real_time", + "run_name": "ComplexBlob/YACLib/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1591,10 +1591,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/1024/real_time", + "name": "ComplexBlob/Folly/1024/real_time", "family_index": 42, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/1024/real_time", + "run_name": "ComplexBlob/Folly/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1605,10 +1605,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/1024/real_time", + "name": "ComplexBlob/BoostThread/1024/real_time", "family_index": 43, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/1024/real_time", + "run_name": "ComplexBlob/BoostThread/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1619,10 +1619,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2048/real_time", + "name": "ComplexBlob/YACLib/2048/real_time", "family_index": 44, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2048/real_time", + "run_name": "ComplexBlob/YACLib/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1633,10 +1633,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/2048/real_time", + "name": "ComplexBlob/Folly/2048/real_time", "family_index": 45, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/2048/real_time", + "run_name": "ComplexBlob/Folly/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1647,10 +1647,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/2048/real_time", + "name": "ComplexBlob/BoostThread/2048/real_time", "family_index": 46, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/2048/real_time", + "run_name": "ComplexBlob/BoostThread/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1661,10 +1661,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4096/real_time", + "name": "ComplexBlob/YACLib/4096/real_time", "family_index": 47, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4096/real_time", + "run_name": "ComplexBlob/YACLib/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1675,10 +1675,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/4096/real_time", + "name": "ComplexBlob/Folly/4096/real_time", "family_index": 48, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/4096/real_time", + "run_name": "ComplexBlob/Folly/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1689,10 +1689,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/4096/real_time", + "name": "ComplexBlob/BoostThread/4096/real_time", "family_index": 49, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/4096/real_time", + "run_name": "ComplexBlob/BoostThread/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1703,10 +1703,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8192/real_time", + "name": "ComplexBlob/YACLib/8192/real_time", "family_index": 50, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8192/real_time", + "run_name": "ComplexBlob/YACLib/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1717,10 +1717,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/8192/real_time", + "name": "ComplexBlob/Folly/8192/real_time", "family_index": 51, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/8192/real_time", + "run_name": "ComplexBlob/Folly/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1731,10 +1731,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/8192/real_time", + "name": "ComplexBlob/BoostThread/8192/real_time", "family_index": 52, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/8192/real_time", + "run_name": "ComplexBlob/BoostThread/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1745,10 +1745,10 @@ "time_unit": "ns" }, { - "name": "NoContention(YACLib)/real_time", + "name": "NoContention/YACLib/real_time", "family_index": 53, "per_family_instance_index": 0, - "run_name": "NoContention(YACLib)/real_time", + "run_name": "NoContention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1759,10 +1759,10 @@ "time_unit": "ns" }, { - "name": "NoContention(Folly)/real_time", + "name": "NoContention/Folly/real_time", "family_index": 54, "per_family_instance_index": 0, - "run_name": "NoContention(Folly)/real_time", + "run_name": "NoContention/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1773,10 +1773,10 @@ "time_unit": "ns" }, { - "name": "NoContention(BoostThread)/real_time", + "name": "NoContention/BoostThread/real_time", "family_index": 55, "per_family_instance_index": 0, - "run_name": "NoContention(BoostThread)/real_time", + "run_name": "NoContention/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1787,10 +1787,10 @@ "time_unit": "ns" }, { - "name": "Contention(YACLib)/real_time", + "name": "Contention/YACLib/real_time", "family_index": 56, "per_family_instance_index": 0, - "run_name": "Contention(YACLib)/real_time", + "run_name": "Contention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1801,10 +1801,10 @@ "time_unit": "ns" }, { - "name": "Contention(Folly)/real_time", + "name": "Contention/Folly/real_time", "family_index": 57, "per_family_instance_index": 0, - "run_name": "Contention(Folly)/real_time", + "run_name": "Contention/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1815,10 +1815,10 @@ "time_unit": "ns" }, { - "name": "Contention(BoostThread)/real_time", + "name": "Contention/BoostThread/real_time", "family_index": 58, "per_family_instance_index": 0, - "run_name": "Contention(BoostThread)/real_time", + "run_name": "Contention/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, diff --git a/future/result/i5-3210M/gcc_libstdcxx/picture/ComplexBlob.svg b/future/result/i5-3210M/gcc_libstdcxx/picture/ComplexBlob.svg new file mode 100644 index 0000000..e97ff02 --- /dev/null +++ b/future/result/i5-3210M/gcc_libstdcxx/picture/ComplexBlob.svg @@ -0,0 +1,1168 @@ + + + + + + + + 2022-04-10T19:11:49.907104 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-3210M/gcc_libstdcxx/picture/ConstantFuture.svg b/future/result/i5-3210M/gcc_libstdcxx/picture/ConstantFuture.svg new file mode 100644 index 0000000..ab6a298 --- /dev/null +++ b/future/result/i5-3210M/gcc_libstdcxx/picture/ConstantFuture.svg @@ -0,0 +1,946 @@ + + + + + + + + 2022-04-10T19:11:49.135857 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-3210M/gcc_libstdcxx/picture/Contention.svg b/future/result/i5-3210M/gcc_libstdcxx/picture/Contention.svg new file mode 100644 index 0000000..8951b65 --- /dev/null +++ b/future/result/i5-3210M/gcc_libstdcxx/picture/Contention.svg @@ -0,0 +1,934 @@ + + + + + + + + 2022-04-10T19:11:50.220100 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-3210M/gcc_libstdcxx/picture/NoContention.svg b/future/result/i5-3210M/gcc_libstdcxx/picture/NoContention.svg new file mode 100644 index 0000000..8b199fb --- /dev/null +++ b/future/result/i5-3210M/gcc_libstdcxx/picture/NoContention.svg @@ -0,0 +1,1000 @@ + + + + + + + + 2022-04-10T19:11:50.065178 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-3210M/gcc_libstdcxx/picture/PromiseAndFuture.svg b/future/result/i5-3210M/gcc_libstdcxx/picture/PromiseAndFuture.svg new file mode 100644 index 0000000..75ee4b5 --- /dev/null +++ b/future/result/i5-3210M/gcc_libstdcxx/picture/PromiseAndFuture.svg @@ -0,0 +1,969 @@ + + + + + + + + 2022-04-10T19:11:49.317226 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-3210M/gcc_libstdcxx/picture/ThenAllInline.svg b/future/result/i5-3210M/gcc_libstdcxx/picture/ThenAllInline.svg new file mode 100644 index 0000000..5a6f1f7 --- /dev/null +++ b/future/result/i5-3210M/gcc_libstdcxx/picture/ThenAllInline.svg @@ -0,0 +1,1187 @@ + + + + + + + + 2022-04-10T19:11:49.456638 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-3210M/gcc_libstdcxx/picture/ThenOneInline.svg b/future/result/i5-3210M/gcc_libstdcxx/picture/ThenOneInline.svg new file mode 100644 index 0000000..743c2ae --- /dev/null +++ b/future/result/i5-3210M/gcc_libstdcxx/picture/ThenOneInline.svg @@ -0,0 +1,1051 @@ + + + + + + + + 2022-04-10T19:11:49.609335 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-3210M/gcc_libstdcxx/picture/ThenScheduler.svg b/future/result/i5-3210M/gcc_libstdcxx/picture/ThenScheduler.svg new file mode 100644 index 0000000..38cfc00 --- /dev/null +++ b/future/result/i5-3210M/gcc_libstdcxx/picture/ThenScheduler.svg @@ -0,0 +1,1149 @@ + + + + + + + + 2022-04-10T19:11:49.752001 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-5300U/clang_libcxx/data.json b/future/result/i5-5300U/clang_libcxx/data.json index 399ed05..c501fcd 100644 --- a/future/result/i5-5300U/clang_libcxx/data.json +++ b/future/result/i5-5300U/clang_libcxx/data.json @@ -37,10 +37,10 @@ }, "benchmarks": [ { - "name": "ConstantFuture(Std)/real_time", + "name": "ConstantFuture/Std/real_time", "family_index": 0, "per_family_instance_index": 0, - "run_name": "ConstantFuture(Std)/real_time", + "run_name": "ConstantFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -51,10 +51,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(YACLib)/real_time", + "name": "ConstantFuture/YACLib/real_time", "family_index": 1, "per_family_instance_index": 0, - "run_name": "ConstantFuture(YACLib)/real_time", + "run_name": "ConstantFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -65,10 +65,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(Std)/real_time", + "name": "PromiseAndFuture/Std/real_time", "family_index": 2, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(Std)/real_time", + "run_name": "PromiseAndFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -79,10 +79,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(YACLib)/real_time", + "name": "PromiseAndFuture/YACLib/real_time", "family_index": 3, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(YACLib)/real_time", + "run_name": "PromiseAndFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -93,10 +93,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/0/real_time", + "name": "Then/YACLib/0/0/real_time", "family_index": 4, "per_family_instance_index": 0, - "run_name": "Then(YACLib)/0/0/real_time", + "run_name": "Then/YACLib/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -107,10 +107,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/0/real_time", + "name": "Then/YACLib/1/0/real_time", "family_index": 4, "per_family_instance_index": 1, - "run_name": "Then(YACLib)/1/0/real_time", + "run_name": "Then/YACLib/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -121,10 +121,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/0/real_time", + "name": "Then/YACLib/2/0/real_time", "family_index": 4, "per_family_instance_index": 2, - "run_name": "Then(YACLib)/2/0/real_time", + "run_name": "Then/YACLib/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -135,10 +135,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/0/real_time", + "name": "Then/YACLib/4/0/real_time", "family_index": 4, "per_family_instance_index": 3, - "run_name": "Then(YACLib)/4/0/real_time", + "run_name": "Then/YACLib/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -149,10 +149,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/0/real_time", + "name": "Then/YACLib/8/0/real_time", "family_index": 4, "per_family_instance_index": 4, - "run_name": "Then(YACLib)/8/0/real_time", + "run_name": "Then/YACLib/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -163,10 +163,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/0/real_time", + "name": "Then/YACLib/16/0/real_time", "family_index": 4, "per_family_instance_index": 5, - "run_name": "Then(YACLib)/16/0/real_time", + "run_name": "Then/YACLib/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -177,10 +177,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/0/real_time", + "name": "Then/YACLib/32/0/real_time", "family_index": 4, "per_family_instance_index": 6, - "run_name": "Then(YACLib)/32/0/real_time", + "run_name": "Then/YACLib/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -191,10 +191,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/0/real_time", + "name": "Then/YACLib/64/0/real_time", "family_index": 4, "per_family_instance_index": 7, - "run_name": "Then(YACLib)/64/0/real_time", + "run_name": "Then/YACLib/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -205,10 +205,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/1/real_time", + "name": "Then/YACLib/0/1/real_time", "family_index": 4, "per_family_instance_index": 8, - "run_name": "Then(YACLib)/0/1/real_time", + "run_name": "Then/YACLib/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -219,10 +219,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/1/real_time", + "name": "Then/YACLib/1/1/real_time", "family_index": 4, "per_family_instance_index": 9, - "run_name": "Then(YACLib)/1/1/real_time", + "run_name": "Then/YACLib/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -233,10 +233,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/1/real_time", + "name": "Then/YACLib/2/1/real_time", "family_index": 4, "per_family_instance_index": 10, - "run_name": "Then(YACLib)/2/1/real_time", + "run_name": "Then/YACLib/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -247,10 +247,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/1/real_time", + "name": "Then/YACLib/4/1/real_time", "family_index": 4, "per_family_instance_index": 11, - "run_name": "Then(YACLib)/4/1/real_time", + "run_name": "Then/YACLib/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -261,10 +261,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/1/real_time", + "name": "Then/YACLib/8/1/real_time", "family_index": 4, "per_family_instance_index": 12, - "run_name": "Then(YACLib)/8/1/real_time", + "run_name": "Then/YACLib/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -275,10 +275,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/1/real_time", + "name": "Then/YACLib/16/1/real_time", "family_index": 4, "per_family_instance_index": 13, - "run_name": "Then(YACLib)/16/1/real_time", + "run_name": "Then/YACLib/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -289,10 +289,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/1/real_time", + "name": "Then/YACLib/32/1/real_time", "family_index": 4, "per_family_instance_index": 14, - "run_name": "Then(YACLib)/32/1/real_time", + "run_name": "Then/YACLib/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -303,10 +303,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/1/real_time", + "name": "Then/YACLib/64/1/real_time", "family_index": 4, "per_family_instance_index": 15, - "run_name": "Then(YACLib)/64/1/real_time", + "run_name": "Then/YACLib/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -317,10 +317,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/2/real_time", + "name": "Then/YACLib/0/2/real_time", "family_index": 4, "per_family_instance_index": 16, - "run_name": "Then(YACLib)/0/2/real_time", + "run_name": "Then/YACLib/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -331,10 +331,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/2/real_time", + "name": "Then/YACLib/1/2/real_time", "family_index": 4, "per_family_instance_index": 17, - "run_name": "Then(YACLib)/1/2/real_time", + "run_name": "Then/YACLib/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -345,10 +345,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/2/real_time", + "name": "Then/YACLib/2/2/real_time", "family_index": 4, "per_family_instance_index": 18, - "run_name": "Then(YACLib)/2/2/real_time", + "run_name": "Then/YACLib/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -359,10 +359,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/2/real_time", + "name": "Then/YACLib/4/2/real_time", "family_index": 4, "per_family_instance_index": 19, - "run_name": "Then(YACLib)/4/2/real_time", + "run_name": "Then/YACLib/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -373,10 +373,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/2/real_time", + "name": "Then/YACLib/8/2/real_time", "family_index": 4, "per_family_instance_index": 20, - "run_name": "Then(YACLib)/8/2/real_time", + "run_name": "Then/YACLib/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -387,10 +387,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/2/real_time", + "name": "Then/YACLib/16/2/real_time", "family_index": 4, "per_family_instance_index": 21, - "run_name": "Then(YACLib)/16/2/real_time", + "run_name": "Then/YACLib/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -401,10 +401,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/2/real_time", + "name": "Then/YACLib/32/2/real_time", "family_index": 4, "per_family_instance_index": 22, - "run_name": "Then(YACLib)/32/2/real_time", + "run_name": "Then/YACLib/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -415,10 +415,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/2/real_time", + "name": "Then/YACLib/64/2/real_time", "family_index": 4, "per_family_instance_index": 23, - "run_name": "Then(YACLib)/64/2/real_time", + "run_name": "Then/YACLib/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -429,10 +429,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/0/real_time", + "name": "ComplexBlob/YACLib/0/real_time", "family_index": 5, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/0/real_time", + "run_name": "ComplexBlob/YACLib/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -443,10 +443,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2/real_time", + "name": "ComplexBlob/YACLib/2/real_time", "family_index": 6, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2/real_time", + "run_name": "ComplexBlob/YACLib/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -457,10 +457,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4/real_time", + "name": "ComplexBlob/YACLib/4/real_time", "family_index": 7, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4/real_time", + "run_name": "ComplexBlob/YACLib/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -471,10 +471,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8/real_time", + "name": "ComplexBlob/YACLib/8/real_time", "family_index": 8, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8/real_time", + "run_name": "ComplexBlob/YACLib/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -485,10 +485,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/16/real_time", + "name": "ComplexBlob/YACLib/16/real_time", "family_index": 9, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/16/real_time", + "run_name": "ComplexBlob/YACLib/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -499,10 +499,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/32/real_time", + "name": "ComplexBlob/YACLib/32/real_time", "family_index": 10, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/32/real_time", + "run_name": "ComplexBlob/YACLib/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -513,10 +513,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/64/real_time", + "name": "ComplexBlob/YACLib/64/real_time", "family_index": 11, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/64/real_time", + "run_name": "ComplexBlob/YACLib/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -527,10 +527,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/128/real_time", + "name": "ComplexBlob/YACLib/128/real_time", "family_index": 12, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/128/real_time", + "run_name": "ComplexBlob/YACLib/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -541,10 +541,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/256/real_time", + "name": "ComplexBlob/YACLib/256/real_time", "family_index": 13, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/256/real_time", + "run_name": "ComplexBlob/YACLib/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -555,10 +555,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/512/real_time", + "name": "ComplexBlob/YACLib/512/real_time", "family_index": 14, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/512/real_time", + "run_name": "ComplexBlob/YACLib/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -569,10 +569,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/1024/real_time", + "name": "ComplexBlob/YACLib/1024/real_time", "family_index": 15, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/1024/real_time", + "run_name": "ComplexBlob/YACLib/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -583,10 +583,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2048/real_time", + "name": "ComplexBlob/YACLib/2048/real_time", "family_index": 16, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2048/real_time", + "run_name": "ComplexBlob/YACLib/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -597,10 +597,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4096/real_time", + "name": "ComplexBlob/YACLib/4096/real_time", "family_index": 17, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4096/real_time", + "run_name": "ComplexBlob/YACLib/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -611,10 +611,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8192/real_time", + "name": "ComplexBlob/YACLib/8192/real_time", "family_index": 18, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8192/real_time", + "run_name": "ComplexBlob/YACLib/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -625,10 +625,10 @@ "time_unit": "ns" }, { - "name": "NoContention(YACLib)/real_time", + "name": "NoContention/YACLib/real_time", "family_index": 19, "per_family_instance_index": 0, - "run_name": "NoContention(YACLib)/real_time", + "run_name": "NoContention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -639,10 +639,10 @@ "time_unit": "ns" }, { - "name": "Contention(YACLib)/real_time", + "name": "Contention/YACLib/real_time", "family_index": 20, "per_family_instance_index": 0, - "run_name": "Contention(YACLib)/real_time", + "run_name": "Contention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, diff --git a/future/result/i5-5300U/clang_libcxx/picture/ComplexBlob.svg b/future/result/i5-5300U/clang_libcxx/picture/ComplexBlob.svg new file mode 100644 index 0000000..2af70ae --- /dev/null +++ b/future/result/i5-5300U/clang_libcxx/picture/ComplexBlob.svg @@ -0,0 +1,720 @@ + + + + + + + + 2022-04-10T19:11:44.012784 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-5300U/clang_libcxx/picture/ConstantFuture.svg b/future/result/i5-5300U/clang_libcxx/picture/ConstantFuture.svg new file mode 100644 index 0000000..ac658b5 --- /dev/null +++ b/future/result/i5-5300U/clang_libcxx/picture/ConstantFuture.svg @@ -0,0 +1,865 @@ + + + + + + + + 2022-04-10T19:11:43.103904 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-5300U/clang_libcxx/picture/Contention.svg b/future/result/i5-5300U/clang_libcxx/picture/Contention.svg new file mode 100644 index 0000000..8c8b8a7 --- /dev/null +++ b/future/result/i5-5300U/clang_libcxx/picture/Contention.svg @@ -0,0 +1,669 @@ + + + + + + + + 2022-04-10T19:11:44.268061 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-5300U/clang_libcxx/picture/NoContention.svg b/future/result/i5-5300U/clang_libcxx/picture/NoContention.svg new file mode 100644 index 0000000..b730289 --- /dev/null +++ b/future/result/i5-5300U/clang_libcxx/picture/NoContention.svg @@ -0,0 +1,669 @@ + + + + + + + + 2022-04-10T19:11:44.142330 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-5300U/clang_libcxx/picture/PromiseAndFuture.svg b/future/result/i5-5300U/clang_libcxx/picture/PromiseAndFuture.svg new file mode 100644 index 0000000..73864f8 --- /dev/null +++ b/future/result/i5-5300U/clang_libcxx/picture/PromiseAndFuture.svg @@ -0,0 +1,765 @@ + + + + + + + + 2022-04-10T19:11:43.282763 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-5300U/clang_libcxx/picture/ThenAllInline.svg b/future/result/i5-5300U/clang_libcxx/picture/ThenAllInline.svg new file mode 100644 index 0000000..3512eae --- /dev/null +++ b/future/result/i5-5300U/clang_libcxx/picture/ThenAllInline.svg @@ -0,0 +1,662 @@ + + + + + + + + 2022-04-10T19:11:43.451518 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-5300U/clang_libcxx/picture/ThenOneInline.svg b/future/result/i5-5300U/clang_libcxx/picture/ThenOneInline.svg new file mode 100644 index 0000000..fdbe439 --- /dev/null +++ b/future/result/i5-5300U/clang_libcxx/picture/ThenOneInline.svg @@ -0,0 +1,733 @@ + + + + + + + + 2022-04-10T19:11:43.611497 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-5300U/clang_libcxx/picture/ThenScheduler.svg b/future/result/i5-5300U/clang_libcxx/picture/ThenScheduler.svg new file mode 100644 index 0000000..5fc0d8f --- /dev/null +++ b/future/result/i5-5300U/clang_libcxx/picture/ThenScheduler.svg @@ -0,0 +1,809 @@ + + + + + + + + 2022-04-10T19:11:43.781583 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-5300U/clang_libstdcxx/data.json b/future/result/i5-5300U/clang_libstdcxx/data.json index 927e4b3..a3dd406 100644 --- a/future/result/i5-5300U/clang_libstdcxx/data.json +++ b/future/result/i5-5300U/clang_libstdcxx/data.json @@ -37,10 +37,10 @@ }, "benchmarks": [ { - "name": "ConstantFuture(Std)/real_time", + "name": "ConstantFuture/Std/real_time", "family_index": 0, "per_family_instance_index": 0, - "run_name": "ConstantFuture(Std)/real_time", + "run_name": "ConstantFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -51,10 +51,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(YACLib)/real_time", + "name": "ConstantFuture/YACLib/real_time", "family_index": 1, "per_family_instance_index": 0, - "run_name": "ConstantFuture(YACLib)/real_time", + "run_name": "ConstantFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -65,10 +65,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(Folly)/real_time", + "name": "ConstantFuture/Folly/real_time", "family_index": 2, "per_family_instance_index": 0, - "run_name": "ConstantFuture(Folly)/real_time", + "run_name": "ConstantFuture/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -79,10 +79,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(BoostThread)/real_time", + "name": "ConstantFuture/BoostThread/real_time", "family_index": 3, "per_family_instance_index": 0, - "run_name": "ConstantFuture(BoostThread)/real_time", + "run_name": "ConstantFuture/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -93,10 +93,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(Std)/real_time", + "name": "PromiseAndFuture/Std/real_time", "family_index": 4, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(Std)/real_time", + "run_name": "PromiseAndFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -107,10 +107,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(YACLib)/real_time", + "name": "PromiseAndFuture/YACLib/real_time", "family_index": 5, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(YACLib)/real_time", + "run_name": "PromiseAndFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -121,10 +121,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(Folly)/real_time", + "name": "PromiseAndFuture/Folly/real_time", "family_index": 6, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(Folly)/real_time", + "run_name": "PromiseAndFuture/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -135,10 +135,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(BoostThread)/real_time", + "name": "PromiseAndFuture/BoostThread/real_time", "family_index": 7, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(BoostThread)/real_time", + "run_name": "PromiseAndFuture/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -149,10 +149,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/0/real_time", + "name": "Then/YACLib/0/0/real_time", "family_index": 8, "per_family_instance_index": 0, - "run_name": "Then(YACLib)/0/0/real_time", + "run_name": "Then/YACLib/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -163,10 +163,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/0/real_time", + "name": "Then/YACLib/1/0/real_time", "family_index": 8, "per_family_instance_index": 1, - "run_name": "Then(YACLib)/1/0/real_time", + "run_name": "Then/YACLib/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -177,10 +177,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/0/real_time", + "name": "Then/YACLib/2/0/real_time", "family_index": 8, "per_family_instance_index": 2, - "run_name": "Then(YACLib)/2/0/real_time", + "run_name": "Then/YACLib/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -191,10 +191,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/0/real_time", + "name": "Then/YACLib/4/0/real_time", "family_index": 8, "per_family_instance_index": 3, - "run_name": "Then(YACLib)/4/0/real_time", + "run_name": "Then/YACLib/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -205,10 +205,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/0/real_time", + "name": "Then/YACLib/8/0/real_time", "family_index": 8, "per_family_instance_index": 4, - "run_name": "Then(YACLib)/8/0/real_time", + "run_name": "Then/YACLib/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -219,10 +219,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/0/real_time", + "name": "Then/YACLib/16/0/real_time", "family_index": 8, "per_family_instance_index": 5, - "run_name": "Then(YACLib)/16/0/real_time", + "run_name": "Then/YACLib/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -233,10 +233,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/0/real_time", + "name": "Then/YACLib/32/0/real_time", "family_index": 8, "per_family_instance_index": 6, - "run_name": "Then(YACLib)/32/0/real_time", + "run_name": "Then/YACLib/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -247,10 +247,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/0/real_time", + "name": "Then/YACLib/64/0/real_time", "family_index": 8, "per_family_instance_index": 7, - "run_name": "Then(YACLib)/64/0/real_time", + "run_name": "Then/YACLib/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -261,10 +261,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/1/real_time", + "name": "Then/YACLib/0/1/real_time", "family_index": 8, "per_family_instance_index": 8, - "run_name": "Then(YACLib)/0/1/real_time", + "run_name": "Then/YACLib/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -275,10 +275,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/1/real_time", + "name": "Then/YACLib/1/1/real_time", "family_index": 8, "per_family_instance_index": 9, - "run_name": "Then(YACLib)/1/1/real_time", + "run_name": "Then/YACLib/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -289,10 +289,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/1/real_time", + "name": "Then/YACLib/2/1/real_time", "family_index": 8, "per_family_instance_index": 10, - "run_name": "Then(YACLib)/2/1/real_time", + "run_name": "Then/YACLib/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -303,10 +303,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/1/real_time", + "name": "Then/YACLib/4/1/real_time", "family_index": 8, "per_family_instance_index": 11, - "run_name": "Then(YACLib)/4/1/real_time", + "run_name": "Then/YACLib/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -317,10 +317,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/1/real_time", + "name": "Then/YACLib/8/1/real_time", "family_index": 8, "per_family_instance_index": 12, - "run_name": "Then(YACLib)/8/1/real_time", + "run_name": "Then/YACLib/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -331,10 +331,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/1/real_time", + "name": "Then/YACLib/16/1/real_time", "family_index": 8, "per_family_instance_index": 13, - "run_name": "Then(YACLib)/16/1/real_time", + "run_name": "Then/YACLib/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -345,10 +345,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/1/real_time", + "name": "Then/YACLib/32/1/real_time", "family_index": 8, "per_family_instance_index": 14, - "run_name": "Then(YACLib)/32/1/real_time", + "run_name": "Then/YACLib/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -359,10 +359,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/1/real_time", + "name": "Then/YACLib/64/1/real_time", "family_index": 8, "per_family_instance_index": 15, - "run_name": "Then(YACLib)/64/1/real_time", + "run_name": "Then/YACLib/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -373,10 +373,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/2/real_time", + "name": "Then/YACLib/0/2/real_time", "family_index": 8, "per_family_instance_index": 16, - "run_name": "Then(YACLib)/0/2/real_time", + "run_name": "Then/YACLib/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -387,10 +387,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/2/real_time", + "name": "Then/YACLib/1/2/real_time", "family_index": 8, "per_family_instance_index": 17, - "run_name": "Then(YACLib)/1/2/real_time", + "run_name": "Then/YACLib/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -401,10 +401,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/2/real_time", + "name": "Then/YACLib/2/2/real_time", "family_index": 8, "per_family_instance_index": 18, - "run_name": "Then(YACLib)/2/2/real_time", + "run_name": "Then/YACLib/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -415,10 +415,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/2/real_time", + "name": "Then/YACLib/4/2/real_time", "family_index": 8, "per_family_instance_index": 19, - "run_name": "Then(YACLib)/4/2/real_time", + "run_name": "Then/YACLib/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -429,10 +429,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/2/real_time", + "name": "Then/YACLib/8/2/real_time", "family_index": 8, "per_family_instance_index": 20, - "run_name": "Then(YACLib)/8/2/real_time", + "run_name": "Then/YACLib/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -443,10 +443,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/2/real_time", + "name": "Then/YACLib/16/2/real_time", "family_index": 8, "per_family_instance_index": 21, - "run_name": "Then(YACLib)/16/2/real_time", + "run_name": "Then/YACLib/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -457,10 +457,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/2/real_time", + "name": "Then/YACLib/32/2/real_time", "family_index": 8, "per_family_instance_index": 22, - "run_name": "Then(YACLib)/32/2/real_time", + "run_name": "Then/YACLib/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -471,10 +471,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/2/real_time", + "name": "Then/YACLib/64/2/real_time", "family_index": 8, "per_family_instance_index": 23, - "run_name": "Then(YACLib)/64/2/real_time", + "run_name": "Then/YACLib/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -485,10 +485,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/0/real_time", + "name": "Then/Folly/0/0/real_time", "family_index": 9, "per_family_instance_index": 0, - "run_name": "Then(Folly)/0/0/real_time", + "run_name": "Then/Folly/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -499,10 +499,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/0/real_time", + "name": "Then/Folly/1/0/real_time", "family_index": 9, "per_family_instance_index": 1, - "run_name": "Then(Folly)/1/0/real_time", + "run_name": "Then/Folly/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -513,10 +513,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/0/real_time", + "name": "Then/Folly/2/0/real_time", "family_index": 9, "per_family_instance_index": 2, - "run_name": "Then(Folly)/2/0/real_time", + "run_name": "Then/Folly/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -527,10 +527,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/0/real_time", + "name": "Then/Folly/4/0/real_time", "family_index": 9, "per_family_instance_index": 3, - "run_name": "Then(Folly)/4/0/real_time", + "run_name": "Then/Folly/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -541,10 +541,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/0/real_time", + "name": "Then/Folly/8/0/real_time", "family_index": 9, "per_family_instance_index": 4, - "run_name": "Then(Folly)/8/0/real_time", + "run_name": "Then/Folly/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -555,10 +555,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/0/real_time", + "name": "Then/Folly/16/0/real_time", "family_index": 9, "per_family_instance_index": 5, - "run_name": "Then(Folly)/16/0/real_time", + "run_name": "Then/Folly/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -569,10 +569,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/0/real_time", + "name": "Then/Folly/32/0/real_time", "family_index": 9, "per_family_instance_index": 6, - "run_name": "Then(Folly)/32/0/real_time", + "run_name": "Then/Folly/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -583,10 +583,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/0/real_time", + "name": "Then/Folly/64/0/real_time", "family_index": 9, "per_family_instance_index": 7, - "run_name": "Then(Folly)/64/0/real_time", + "run_name": "Then/Folly/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -597,10 +597,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/1/real_time", + "name": "Then/Folly/0/1/real_time", "family_index": 9, "per_family_instance_index": 8, - "run_name": "Then(Folly)/0/1/real_time", + "run_name": "Then/Folly/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -611,10 +611,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/1/real_time", + "name": "Then/Folly/1/1/real_time", "family_index": 9, "per_family_instance_index": 9, - "run_name": "Then(Folly)/1/1/real_time", + "run_name": "Then/Folly/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -625,10 +625,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/1/real_time", + "name": "Then/Folly/2/1/real_time", "family_index": 9, "per_family_instance_index": 10, - "run_name": "Then(Folly)/2/1/real_time", + "run_name": "Then/Folly/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -639,10 +639,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/1/real_time", + "name": "Then/Folly/4/1/real_time", "family_index": 9, "per_family_instance_index": 11, - "run_name": "Then(Folly)/4/1/real_time", + "run_name": "Then/Folly/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -653,10 +653,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/1/real_time", + "name": "Then/Folly/8/1/real_time", "family_index": 9, "per_family_instance_index": 12, - "run_name": "Then(Folly)/8/1/real_time", + "run_name": "Then/Folly/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -667,10 +667,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/1/real_time", + "name": "Then/Folly/16/1/real_time", "family_index": 9, "per_family_instance_index": 13, - "run_name": "Then(Folly)/16/1/real_time", + "run_name": "Then/Folly/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -681,10 +681,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/1/real_time", + "name": "Then/Folly/32/1/real_time", "family_index": 9, "per_family_instance_index": 14, - "run_name": "Then(Folly)/32/1/real_time", + "run_name": "Then/Folly/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -695,10 +695,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/1/real_time", + "name": "Then/Folly/64/1/real_time", "family_index": 9, "per_family_instance_index": 15, - "run_name": "Then(Folly)/64/1/real_time", + "run_name": "Then/Folly/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -709,10 +709,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/2/real_time", + "name": "Then/Folly/0/2/real_time", "family_index": 9, "per_family_instance_index": 16, - "run_name": "Then(Folly)/0/2/real_time", + "run_name": "Then/Folly/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -723,10 +723,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/2/real_time", + "name": "Then/Folly/1/2/real_time", "family_index": 9, "per_family_instance_index": 17, - "run_name": "Then(Folly)/1/2/real_time", + "run_name": "Then/Folly/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -737,10 +737,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/2/real_time", + "name": "Then/Folly/2/2/real_time", "family_index": 9, "per_family_instance_index": 18, - "run_name": "Then(Folly)/2/2/real_time", + "run_name": "Then/Folly/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -751,10 +751,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/2/real_time", + "name": "Then/Folly/4/2/real_time", "family_index": 9, "per_family_instance_index": 19, - "run_name": "Then(Folly)/4/2/real_time", + "run_name": "Then/Folly/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -765,10 +765,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/2/real_time", + "name": "Then/Folly/8/2/real_time", "family_index": 9, "per_family_instance_index": 20, - "run_name": "Then(Folly)/8/2/real_time", + "run_name": "Then/Folly/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -779,10 +779,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/2/real_time", + "name": "Then/Folly/16/2/real_time", "family_index": 9, "per_family_instance_index": 21, - "run_name": "Then(Folly)/16/2/real_time", + "run_name": "Then/Folly/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -793,10 +793,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/2/real_time", + "name": "Then/Folly/32/2/real_time", "family_index": 9, "per_family_instance_index": 22, - "run_name": "Then(Folly)/32/2/real_time", + "run_name": "Then/Folly/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -807,10 +807,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/2/real_time", + "name": "Then/Folly/64/2/real_time", "family_index": 9, "per_family_instance_index": 23, - "run_name": "Then(Folly)/64/2/real_time", + "run_name": "Then/Folly/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -821,10 +821,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/0/real_time", + "name": "Then/BoostThread/0/0/real_time", "family_index": 10, "per_family_instance_index": 0, - "run_name": "Then(BoostThread)/0/0/real_time", + "run_name": "Then/BoostThread/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -835,10 +835,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/0/real_time", + "name": "Then/BoostThread/1/0/real_time", "family_index": 10, "per_family_instance_index": 1, - "run_name": "Then(BoostThread)/1/0/real_time", + "run_name": "Then/BoostThread/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -849,10 +849,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/0/real_time", + "name": "Then/BoostThread/2/0/real_time", "family_index": 10, "per_family_instance_index": 2, - "run_name": "Then(BoostThread)/2/0/real_time", + "run_name": "Then/BoostThread/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -863,10 +863,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/0/real_time", + "name": "Then/BoostThread/4/0/real_time", "family_index": 10, "per_family_instance_index": 3, - "run_name": "Then(BoostThread)/4/0/real_time", + "run_name": "Then/BoostThread/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -877,10 +877,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/0/real_time", + "name": "Then/BoostThread/8/0/real_time", "family_index": 10, "per_family_instance_index": 4, - "run_name": "Then(BoostThread)/8/0/real_time", + "run_name": "Then/BoostThread/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -891,10 +891,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/0/real_time", + "name": "Then/BoostThread/16/0/real_time", "family_index": 10, "per_family_instance_index": 5, - "run_name": "Then(BoostThread)/16/0/real_time", + "run_name": "Then/BoostThread/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -905,10 +905,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/0/real_time", + "name": "Then/BoostThread/32/0/real_time", "family_index": 10, "per_family_instance_index": 6, - "run_name": "Then(BoostThread)/32/0/real_time", + "run_name": "Then/BoostThread/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -919,10 +919,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/0/real_time", + "name": "Then/BoostThread/64/0/real_time", "family_index": 10, "per_family_instance_index": 7, - "run_name": "Then(BoostThread)/64/0/real_time", + "run_name": "Then/BoostThread/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -933,10 +933,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/1/real_time", + "name": "Then/BoostThread/0/1/real_time", "family_index": 10, "per_family_instance_index": 8, - "run_name": "Then(BoostThread)/0/1/real_time", + "run_name": "Then/BoostThread/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -947,10 +947,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/1/real_time", + "name": "Then/BoostThread/1/1/real_time", "family_index": 10, "per_family_instance_index": 9, - "run_name": "Then(BoostThread)/1/1/real_time", + "run_name": "Then/BoostThread/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -961,10 +961,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/1/real_time", + "name": "Then/BoostThread/2/1/real_time", "family_index": 10, "per_family_instance_index": 10, - "run_name": "Then(BoostThread)/2/1/real_time", + "run_name": "Then/BoostThread/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -975,10 +975,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/1/real_time", + "name": "Then/BoostThread/4/1/real_time", "family_index": 10, "per_family_instance_index": 11, - "run_name": "Then(BoostThread)/4/1/real_time", + "run_name": "Then/BoostThread/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -989,10 +989,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/1/real_time", + "name": "Then/BoostThread/8/1/real_time", "family_index": 10, "per_family_instance_index": 12, - "run_name": "Then(BoostThread)/8/1/real_time", + "run_name": "Then/BoostThread/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1003,10 +1003,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/1/real_time", + "name": "Then/BoostThread/16/1/real_time", "family_index": 10, "per_family_instance_index": 13, - "run_name": "Then(BoostThread)/16/1/real_time", + "run_name": "Then/BoostThread/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1017,10 +1017,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/1/real_time", + "name": "Then/BoostThread/32/1/real_time", "family_index": 10, "per_family_instance_index": 14, - "run_name": "Then(BoostThread)/32/1/real_time", + "run_name": "Then/BoostThread/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1031,10 +1031,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/1/real_time", + "name": "Then/BoostThread/64/1/real_time", "family_index": 10, "per_family_instance_index": 15, - "run_name": "Then(BoostThread)/64/1/real_time", + "run_name": "Then/BoostThread/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1045,10 +1045,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/2/real_time", + "name": "Then/BoostThread/0/2/real_time", "family_index": 10, "per_family_instance_index": 16, - "run_name": "Then(BoostThread)/0/2/real_time", + "run_name": "Then/BoostThread/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1059,10 +1059,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/2/real_time", + "name": "Then/BoostThread/1/2/real_time", "family_index": 10, "per_family_instance_index": 17, - "run_name": "Then(BoostThread)/1/2/real_time", + "run_name": "Then/BoostThread/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1073,10 +1073,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/2/real_time", + "name": "Then/BoostThread/2/2/real_time", "family_index": 10, "per_family_instance_index": 18, - "run_name": "Then(BoostThread)/2/2/real_time", + "run_name": "Then/BoostThread/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1087,10 +1087,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/2/real_time", + "name": "Then/BoostThread/4/2/real_time", "family_index": 10, "per_family_instance_index": 19, - "run_name": "Then(BoostThread)/4/2/real_time", + "run_name": "Then/BoostThread/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1101,10 +1101,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/2/real_time", + "name": "Then/BoostThread/8/2/real_time", "family_index": 10, "per_family_instance_index": 20, - "run_name": "Then(BoostThread)/8/2/real_time", + "run_name": "Then/BoostThread/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1115,10 +1115,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/2/real_time", + "name": "Then/BoostThread/16/2/real_time", "family_index": 10, "per_family_instance_index": 21, - "run_name": "Then(BoostThread)/16/2/real_time", + "run_name": "Then/BoostThread/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1129,10 +1129,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/2/real_time", + "name": "Then/BoostThread/32/2/real_time", "family_index": 10, "per_family_instance_index": 22, - "run_name": "Then(BoostThread)/32/2/real_time", + "run_name": "Then/BoostThread/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1143,10 +1143,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/2/real_time", + "name": "Then/BoostThread/64/2/real_time", "family_index": 10, "per_family_instance_index": 23, - "run_name": "Then(BoostThread)/64/2/real_time", + "run_name": "Then/BoostThread/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1157,10 +1157,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/0/real_time", + "name": "ComplexBlob/YACLib/0/real_time", "family_index": 11, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/0/real_time", + "run_name": "ComplexBlob/YACLib/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1171,10 +1171,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/0/real_time", + "name": "ComplexBlob/Folly/0/real_time", "family_index": 12, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/0/real_time", + "run_name": "ComplexBlob/Folly/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1185,10 +1185,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/0/real_time", + "name": "ComplexBlob/BoostThread/0/real_time", "family_index": 13, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/0/real_time", + "run_name": "ComplexBlob/BoostThread/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1199,10 +1199,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2/real_time", + "name": "ComplexBlob/YACLib/2/real_time", "family_index": 14, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2/real_time", + "run_name": "ComplexBlob/YACLib/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1213,10 +1213,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/2/real_time", + "name": "ComplexBlob/Folly/2/real_time", "family_index": 15, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/2/real_time", + "run_name": "ComplexBlob/Folly/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1227,10 +1227,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/2/real_time", + "name": "ComplexBlob/BoostThread/2/real_time", "family_index": 16, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/2/real_time", + "run_name": "ComplexBlob/BoostThread/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1241,10 +1241,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4/real_time", + "name": "ComplexBlob/YACLib/4/real_time", "family_index": 17, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4/real_time", + "run_name": "ComplexBlob/YACLib/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1255,10 +1255,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/4/real_time", + "name": "ComplexBlob/Folly/4/real_time", "family_index": 18, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/4/real_time", + "run_name": "ComplexBlob/Folly/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1269,10 +1269,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/4/real_time", + "name": "ComplexBlob/BoostThread/4/real_time", "family_index": 19, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/4/real_time", + "run_name": "ComplexBlob/BoostThread/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1283,10 +1283,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8/real_time", + "name": "ComplexBlob/YACLib/8/real_time", "family_index": 20, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8/real_time", + "run_name": "ComplexBlob/YACLib/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1297,10 +1297,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/8/real_time", + "name": "ComplexBlob/Folly/8/real_time", "family_index": 21, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/8/real_time", + "run_name": "ComplexBlob/Folly/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1311,10 +1311,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/8/real_time", + "name": "ComplexBlob/BoostThread/8/real_time", "family_index": 22, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/8/real_time", + "run_name": "ComplexBlob/BoostThread/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1325,10 +1325,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/16/real_time", + "name": "ComplexBlob/YACLib/16/real_time", "family_index": 23, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/16/real_time", + "run_name": "ComplexBlob/YACLib/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1339,10 +1339,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/16/real_time", + "name": "ComplexBlob/Folly/16/real_time", "family_index": 24, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/16/real_time", + "run_name": "ComplexBlob/Folly/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1353,10 +1353,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/16/real_time", + "name": "ComplexBlob/BoostThread/16/real_time", "family_index": 25, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/16/real_time", + "run_name": "ComplexBlob/BoostThread/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1367,10 +1367,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/32/real_time", + "name": "ComplexBlob/YACLib/32/real_time", "family_index": 26, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/32/real_time", + "run_name": "ComplexBlob/YACLib/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1381,10 +1381,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/32/real_time", + "name": "ComplexBlob/Folly/32/real_time", "family_index": 27, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/32/real_time", + "run_name": "ComplexBlob/Folly/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1395,10 +1395,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/32/real_time", + "name": "ComplexBlob/BoostThread/32/real_time", "family_index": 28, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/32/real_time", + "run_name": "ComplexBlob/BoostThread/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1409,10 +1409,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/64/real_time", + "name": "ComplexBlob/YACLib/64/real_time", "family_index": 29, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/64/real_time", + "run_name": "ComplexBlob/YACLib/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1423,10 +1423,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/64/real_time", + "name": "ComplexBlob/Folly/64/real_time", "family_index": 30, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/64/real_time", + "run_name": "ComplexBlob/Folly/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1437,10 +1437,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/64/real_time", + "name": "ComplexBlob/BoostThread/64/real_time", "family_index": 31, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/64/real_time", + "run_name": "ComplexBlob/BoostThread/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1451,10 +1451,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/128/real_time", + "name": "ComplexBlob/YACLib/128/real_time", "family_index": 32, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/128/real_time", + "run_name": "ComplexBlob/YACLib/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1465,10 +1465,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/128/real_time", + "name": "ComplexBlob/Folly/128/real_time", "family_index": 33, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/128/real_time", + "run_name": "ComplexBlob/Folly/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1479,10 +1479,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/128/real_time", + "name": "ComplexBlob/BoostThread/128/real_time", "family_index": 34, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/128/real_time", + "run_name": "ComplexBlob/BoostThread/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1493,10 +1493,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/256/real_time", + "name": "ComplexBlob/YACLib/256/real_time", "family_index": 35, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/256/real_time", + "run_name": "ComplexBlob/YACLib/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1507,10 +1507,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/256/real_time", + "name": "ComplexBlob/Folly/256/real_time", "family_index": 36, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/256/real_time", + "run_name": "ComplexBlob/Folly/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1521,10 +1521,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/256/real_time", + "name": "ComplexBlob/BoostThread/256/real_time", "family_index": 37, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/256/real_time", + "run_name": "ComplexBlob/BoostThread/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1535,10 +1535,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/512/real_time", + "name": "ComplexBlob/YACLib/512/real_time", "family_index": 38, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/512/real_time", + "run_name": "ComplexBlob/YACLib/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1549,10 +1549,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/512/real_time", + "name": "ComplexBlob/Folly/512/real_time", "family_index": 39, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/512/real_time", + "run_name": "ComplexBlob/Folly/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1563,10 +1563,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/512/real_time", + "name": "ComplexBlob/BoostThread/512/real_time", "family_index": 40, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/512/real_time", + "run_name": "ComplexBlob/BoostThread/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1577,10 +1577,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/1024/real_time", + "name": "ComplexBlob/YACLib/1024/real_time", "family_index": 41, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/1024/real_time", + "run_name": "ComplexBlob/YACLib/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1591,10 +1591,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/1024/real_time", + "name": "ComplexBlob/Folly/1024/real_time", "family_index": 42, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/1024/real_time", + "run_name": "ComplexBlob/Folly/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1605,10 +1605,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/1024/real_time", + "name": "ComplexBlob/BoostThread/1024/real_time", "family_index": 43, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/1024/real_time", + "run_name": "ComplexBlob/BoostThread/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1619,10 +1619,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2048/real_time", + "name": "ComplexBlob/YACLib/2048/real_time", "family_index": 44, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2048/real_time", + "run_name": "ComplexBlob/YACLib/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1633,10 +1633,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/2048/real_time", + "name": "ComplexBlob/Folly/2048/real_time", "family_index": 45, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/2048/real_time", + "run_name": "ComplexBlob/Folly/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1647,10 +1647,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/2048/real_time", + "name": "ComplexBlob/BoostThread/2048/real_time", "family_index": 46, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/2048/real_time", + "run_name": "ComplexBlob/BoostThread/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1661,10 +1661,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4096/real_time", + "name": "ComplexBlob/YACLib/4096/real_time", "family_index": 47, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4096/real_time", + "run_name": "ComplexBlob/YACLib/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1675,10 +1675,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/4096/real_time", + "name": "ComplexBlob/Folly/4096/real_time", "family_index": 48, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/4096/real_time", + "run_name": "ComplexBlob/Folly/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1689,10 +1689,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/4096/real_time", + "name": "ComplexBlob/BoostThread/4096/real_time", "family_index": 49, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/4096/real_time", + "run_name": "ComplexBlob/BoostThread/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1703,10 +1703,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8192/real_time", + "name": "ComplexBlob/YACLib/8192/real_time", "family_index": 50, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8192/real_time", + "run_name": "ComplexBlob/YACLib/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1717,10 +1717,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/8192/real_time", + "name": "ComplexBlob/Folly/8192/real_time", "family_index": 51, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/8192/real_time", + "run_name": "ComplexBlob/Folly/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1731,10 +1731,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/8192/real_time", + "name": "ComplexBlob/BoostThread/8192/real_time", "family_index": 52, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/8192/real_time", + "run_name": "ComplexBlob/BoostThread/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1745,10 +1745,10 @@ "time_unit": "ns" }, { - "name": "NoContention(YACLib)/real_time", + "name": "NoContention/YACLib/real_time", "family_index": 53, "per_family_instance_index": 0, - "run_name": "NoContention(YACLib)/real_time", + "run_name": "NoContention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1759,10 +1759,10 @@ "time_unit": "ns" }, { - "name": "NoContention(Folly)/real_time", + "name": "NoContention/Folly/real_time", "family_index": 54, "per_family_instance_index": 0, - "run_name": "NoContention(Folly)/real_time", + "run_name": "NoContention/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1773,10 +1773,10 @@ "time_unit": "ns" }, { - "name": "NoContention(BoostThread)/real_time", + "name": "NoContention/BoostThread/real_time", "family_index": 55, "per_family_instance_index": 0, - "run_name": "NoContention(BoostThread)/real_time", + "run_name": "NoContention/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1787,10 +1787,10 @@ "time_unit": "ns" }, { - "name": "Contention(YACLib)/real_time", + "name": "Contention/YACLib/real_time", "family_index": 56, "per_family_instance_index": 0, - "run_name": "Contention(YACLib)/real_time", + "run_name": "Contention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1801,10 +1801,10 @@ "time_unit": "ns" }, { - "name": "Contention(Folly)/real_time", + "name": "Contention/Folly/real_time", "family_index": 57, "per_family_instance_index": 0, - "run_name": "Contention(Folly)/real_time", + "run_name": "Contention/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1815,10 +1815,10 @@ "time_unit": "ns" }, { - "name": "Contention(BoostThread)/real_time", + "name": "Contention/BoostThread/real_time", "family_index": 58, "per_family_instance_index": 0, - "run_name": "Contention(BoostThread)/real_time", + "run_name": "Contention/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, diff --git a/future/result/i5-5300U/clang_libstdcxx/picture/ComplexBlob.svg b/future/result/i5-5300U/clang_libstdcxx/picture/ComplexBlob.svg new file mode 100644 index 0000000..6989c73 --- /dev/null +++ b/future/result/i5-5300U/clang_libstdcxx/picture/ComplexBlob.svg @@ -0,0 +1,1266 @@ + + + + + + + + 2022-04-10T19:11:41.074404 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-5300U/clang_libstdcxx/picture/ConstantFuture.svg b/future/result/i5-5300U/clang_libstdcxx/picture/ConstantFuture.svg new file mode 100644 index 0000000..44abd15 --- /dev/null +++ b/future/result/i5-5300U/clang_libstdcxx/picture/ConstantFuture.svg @@ -0,0 +1,943 @@ + + + + + + + + 2022-04-10T19:11:39.885462 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-5300U/clang_libstdcxx/picture/Contention.svg b/future/result/i5-5300U/clang_libstdcxx/picture/Contention.svg new file mode 100644 index 0000000..dd26678 --- /dev/null +++ b/future/result/i5-5300U/clang_libstdcxx/picture/Contention.svg @@ -0,0 +1,934 @@ + + + + + + + + 2022-04-10T19:11:41.483541 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-5300U/clang_libstdcxx/picture/NoContention.svg b/future/result/i5-5300U/clang_libstdcxx/picture/NoContention.svg new file mode 100644 index 0000000..9c432e3 --- /dev/null +++ b/future/result/i5-5300U/clang_libstdcxx/picture/NoContention.svg @@ -0,0 +1,875 @@ + + + + + + + + 2022-04-10T19:11:41.301298 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-5300U/clang_libstdcxx/picture/PromiseAndFuture.svg b/future/result/i5-5300U/clang_libstdcxx/picture/PromiseAndFuture.svg new file mode 100644 index 0000000..8b134ae --- /dev/null +++ b/future/result/i5-5300U/clang_libstdcxx/picture/PromiseAndFuture.svg @@ -0,0 +1,966 @@ + + + + + + + + 2022-04-10T19:11:40.085315 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-5300U/clang_libstdcxx/picture/ThenAllInline.svg b/future/result/i5-5300U/clang_libstdcxx/picture/ThenAllInline.svg new file mode 100644 index 0000000..22dff6d --- /dev/null +++ b/future/result/i5-5300U/clang_libstdcxx/picture/ThenAllInline.svg @@ -0,0 +1,1187 @@ + + + + + + + + 2022-04-10T19:11:40.296390 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-5300U/clang_libstdcxx/picture/ThenOneInline.svg b/future/result/i5-5300U/clang_libstdcxx/picture/ThenOneInline.svg new file mode 100644 index 0000000..46574ef --- /dev/null +++ b/future/result/i5-5300U/clang_libstdcxx/picture/ThenOneInline.svg @@ -0,0 +1,1085 @@ + + + + + + + + 2022-04-10T19:11:40.510509 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-5300U/clang_libstdcxx/picture/ThenScheduler.svg b/future/result/i5-5300U/clang_libstdcxx/picture/ThenScheduler.svg new file mode 100644 index 0000000..cc7fad7 --- /dev/null +++ b/future/result/i5-5300U/clang_libstdcxx/picture/ThenScheduler.svg @@ -0,0 +1,1149 @@ + + + + + + + + 2022-04-10T19:11:40.771929 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-5300U/gcc_libstdcxx/data.json b/future/result/i5-5300U/gcc_libstdcxx/data.json index 25bf0a2..469029a 100644 --- a/future/result/i5-5300U/gcc_libstdcxx/data.json +++ b/future/result/i5-5300U/gcc_libstdcxx/data.json @@ -37,10 +37,10 @@ }, "benchmarks": [ { - "name": "ConstantFuture(Std)/real_time", + "name": "ConstantFuture/Std/real_time", "family_index": 0, "per_family_instance_index": 0, - "run_name": "ConstantFuture(Std)/real_time", + "run_name": "ConstantFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -51,10 +51,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(YACLib)/real_time", + "name": "ConstantFuture/YACLib/real_time", "family_index": 1, "per_family_instance_index": 0, - "run_name": "ConstantFuture(YACLib)/real_time", + "run_name": "ConstantFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -65,10 +65,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(Folly)/real_time", + "name": "ConstantFuture/Folly/real_time", "family_index": 2, "per_family_instance_index": 0, - "run_name": "ConstantFuture(Folly)/real_time", + "run_name": "ConstantFuture/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -79,10 +79,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(BoostThread)/real_time", + "name": "ConstantFuture/BoostThread/real_time", "family_index": 3, "per_family_instance_index": 0, - "run_name": "ConstantFuture(BoostThread)/real_time", + "run_name": "ConstantFuture/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -93,10 +93,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(Std)/real_time", + "name": "PromiseAndFuture/Std/real_time", "family_index": 4, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(Std)/real_time", + "run_name": "PromiseAndFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -107,10 +107,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(YACLib)/real_time", + "name": "PromiseAndFuture/YACLib/real_time", "family_index": 5, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(YACLib)/real_time", + "run_name": "PromiseAndFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -121,10 +121,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(Folly)/real_time", + "name": "PromiseAndFuture/Folly/real_time", "family_index": 6, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(Folly)/real_time", + "run_name": "PromiseAndFuture/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -135,10 +135,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(BoostThread)/real_time", + "name": "PromiseAndFuture/BoostThread/real_time", "family_index": 7, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(BoostThread)/real_time", + "run_name": "PromiseAndFuture/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -149,10 +149,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/0/real_time", + "name": "Then/YACLib/0/0/real_time", "family_index": 8, "per_family_instance_index": 0, - "run_name": "Then(YACLib)/0/0/real_time", + "run_name": "Then/YACLib/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -163,10 +163,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/0/real_time", + "name": "Then/YACLib/1/0/real_time", "family_index": 8, "per_family_instance_index": 1, - "run_name": "Then(YACLib)/1/0/real_time", + "run_name": "Then/YACLib/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -177,10 +177,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/0/real_time", + "name": "Then/YACLib/2/0/real_time", "family_index": 8, "per_family_instance_index": 2, - "run_name": "Then(YACLib)/2/0/real_time", + "run_name": "Then/YACLib/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -191,10 +191,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/0/real_time", + "name": "Then/YACLib/4/0/real_time", "family_index": 8, "per_family_instance_index": 3, - "run_name": "Then(YACLib)/4/0/real_time", + "run_name": "Then/YACLib/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -205,10 +205,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/0/real_time", + "name": "Then/YACLib/8/0/real_time", "family_index": 8, "per_family_instance_index": 4, - "run_name": "Then(YACLib)/8/0/real_time", + "run_name": "Then/YACLib/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -219,10 +219,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/0/real_time", + "name": "Then/YACLib/16/0/real_time", "family_index": 8, "per_family_instance_index": 5, - "run_name": "Then(YACLib)/16/0/real_time", + "run_name": "Then/YACLib/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -233,10 +233,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/0/real_time", + "name": "Then/YACLib/32/0/real_time", "family_index": 8, "per_family_instance_index": 6, - "run_name": "Then(YACLib)/32/0/real_time", + "run_name": "Then/YACLib/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -247,10 +247,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/0/real_time", + "name": "Then/YACLib/64/0/real_time", "family_index": 8, "per_family_instance_index": 7, - "run_name": "Then(YACLib)/64/0/real_time", + "run_name": "Then/YACLib/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -261,10 +261,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/1/real_time", + "name": "Then/YACLib/0/1/real_time", "family_index": 8, "per_family_instance_index": 8, - "run_name": "Then(YACLib)/0/1/real_time", + "run_name": "Then/YACLib/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -275,10 +275,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/1/real_time", + "name": "Then/YACLib/1/1/real_time", "family_index": 8, "per_family_instance_index": 9, - "run_name": "Then(YACLib)/1/1/real_time", + "run_name": "Then/YACLib/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -289,10 +289,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/1/real_time", + "name": "Then/YACLib/2/1/real_time", "family_index": 8, "per_family_instance_index": 10, - "run_name": "Then(YACLib)/2/1/real_time", + "run_name": "Then/YACLib/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -303,10 +303,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/1/real_time", + "name": "Then/YACLib/4/1/real_time", "family_index": 8, "per_family_instance_index": 11, - "run_name": "Then(YACLib)/4/1/real_time", + "run_name": "Then/YACLib/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -317,10 +317,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/1/real_time", + "name": "Then/YACLib/8/1/real_time", "family_index": 8, "per_family_instance_index": 12, - "run_name": "Then(YACLib)/8/1/real_time", + "run_name": "Then/YACLib/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -331,10 +331,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/1/real_time", + "name": "Then/YACLib/16/1/real_time", "family_index": 8, "per_family_instance_index": 13, - "run_name": "Then(YACLib)/16/1/real_time", + "run_name": "Then/YACLib/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -345,10 +345,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/1/real_time", + "name": "Then/YACLib/32/1/real_time", "family_index": 8, "per_family_instance_index": 14, - "run_name": "Then(YACLib)/32/1/real_time", + "run_name": "Then/YACLib/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -359,10 +359,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/1/real_time", + "name": "Then/YACLib/64/1/real_time", "family_index": 8, "per_family_instance_index": 15, - "run_name": "Then(YACLib)/64/1/real_time", + "run_name": "Then/YACLib/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -373,10 +373,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/2/real_time", + "name": "Then/YACLib/0/2/real_time", "family_index": 8, "per_family_instance_index": 16, - "run_name": "Then(YACLib)/0/2/real_time", + "run_name": "Then/YACLib/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -387,10 +387,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/2/real_time", + "name": "Then/YACLib/1/2/real_time", "family_index": 8, "per_family_instance_index": 17, - "run_name": "Then(YACLib)/1/2/real_time", + "run_name": "Then/YACLib/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -401,10 +401,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/2/real_time", + "name": "Then/YACLib/2/2/real_time", "family_index": 8, "per_family_instance_index": 18, - "run_name": "Then(YACLib)/2/2/real_time", + "run_name": "Then/YACLib/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -415,10 +415,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/2/real_time", + "name": "Then/YACLib/4/2/real_time", "family_index": 8, "per_family_instance_index": 19, - "run_name": "Then(YACLib)/4/2/real_time", + "run_name": "Then/YACLib/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -429,10 +429,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/2/real_time", + "name": "Then/YACLib/8/2/real_time", "family_index": 8, "per_family_instance_index": 20, - "run_name": "Then(YACLib)/8/2/real_time", + "run_name": "Then/YACLib/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -443,10 +443,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/2/real_time", + "name": "Then/YACLib/16/2/real_time", "family_index": 8, "per_family_instance_index": 21, - "run_name": "Then(YACLib)/16/2/real_time", + "run_name": "Then/YACLib/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -457,10 +457,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/2/real_time", + "name": "Then/YACLib/32/2/real_time", "family_index": 8, "per_family_instance_index": 22, - "run_name": "Then(YACLib)/32/2/real_time", + "run_name": "Then/YACLib/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -471,10 +471,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/2/real_time", + "name": "Then/YACLib/64/2/real_time", "family_index": 8, "per_family_instance_index": 23, - "run_name": "Then(YACLib)/64/2/real_time", + "run_name": "Then/YACLib/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -485,10 +485,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/0/real_time", + "name": "Then/Folly/0/0/real_time", "family_index": 9, "per_family_instance_index": 0, - "run_name": "Then(Folly)/0/0/real_time", + "run_name": "Then/Folly/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -499,10 +499,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/0/real_time", + "name": "Then/Folly/1/0/real_time", "family_index": 9, "per_family_instance_index": 1, - "run_name": "Then(Folly)/1/0/real_time", + "run_name": "Then/Folly/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -513,10 +513,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/0/real_time", + "name": "Then/Folly/2/0/real_time", "family_index": 9, "per_family_instance_index": 2, - "run_name": "Then(Folly)/2/0/real_time", + "run_name": "Then/Folly/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -527,10 +527,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/0/real_time", + "name": "Then/Folly/4/0/real_time", "family_index": 9, "per_family_instance_index": 3, - "run_name": "Then(Folly)/4/0/real_time", + "run_name": "Then/Folly/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -541,10 +541,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/0/real_time", + "name": "Then/Folly/8/0/real_time", "family_index": 9, "per_family_instance_index": 4, - "run_name": "Then(Folly)/8/0/real_time", + "run_name": "Then/Folly/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -555,10 +555,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/0/real_time", + "name": "Then/Folly/16/0/real_time", "family_index": 9, "per_family_instance_index": 5, - "run_name": "Then(Folly)/16/0/real_time", + "run_name": "Then/Folly/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -569,10 +569,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/0/real_time", + "name": "Then/Folly/32/0/real_time", "family_index": 9, "per_family_instance_index": 6, - "run_name": "Then(Folly)/32/0/real_time", + "run_name": "Then/Folly/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -583,10 +583,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/0/real_time", + "name": "Then/Folly/64/0/real_time", "family_index": 9, "per_family_instance_index": 7, - "run_name": "Then(Folly)/64/0/real_time", + "run_name": "Then/Folly/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -597,10 +597,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/1/real_time", + "name": "Then/Folly/0/1/real_time", "family_index": 9, "per_family_instance_index": 8, - "run_name": "Then(Folly)/0/1/real_time", + "run_name": "Then/Folly/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -611,10 +611,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/1/real_time", + "name": "Then/Folly/1/1/real_time", "family_index": 9, "per_family_instance_index": 9, - "run_name": "Then(Folly)/1/1/real_time", + "run_name": "Then/Folly/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -625,10 +625,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/1/real_time", + "name": "Then/Folly/2/1/real_time", "family_index": 9, "per_family_instance_index": 10, - "run_name": "Then(Folly)/2/1/real_time", + "run_name": "Then/Folly/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -639,10 +639,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/1/real_time", + "name": "Then/Folly/4/1/real_time", "family_index": 9, "per_family_instance_index": 11, - "run_name": "Then(Folly)/4/1/real_time", + "run_name": "Then/Folly/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -653,10 +653,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/1/real_time", + "name": "Then/Folly/8/1/real_time", "family_index": 9, "per_family_instance_index": 12, - "run_name": "Then(Folly)/8/1/real_time", + "run_name": "Then/Folly/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -667,10 +667,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/1/real_time", + "name": "Then/Folly/16/1/real_time", "family_index": 9, "per_family_instance_index": 13, - "run_name": "Then(Folly)/16/1/real_time", + "run_name": "Then/Folly/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -681,10 +681,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/1/real_time", + "name": "Then/Folly/32/1/real_time", "family_index": 9, "per_family_instance_index": 14, - "run_name": "Then(Folly)/32/1/real_time", + "run_name": "Then/Folly/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -695,10 +695,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/1/real_time", + "name": "Then/Folly/64/1/real_time", "family_index": 9, "per_family_instance_index": 15, - "run_name": "Then(Folly)/64/1/real_time", + "run_name": "Then/Folly/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -709,10 +709,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/2/real_time", + "name": "Then/Folly/0/2/real_time", "family_index": 9, "per_family_instance_index": 16, - "run_name": "Then(Folly)/0/2/real_time", + "run_name": "Then/Folly/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -723,10 +723,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/2/real_time", + "name": "Then/Folly/1/2/real_time", "family_index": 9, "per_family_instance_index": 17, - "run_name": "Then(Folly)/1/2/real_time", + "run_name": "Then/Folly/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -737,10 +737,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/2/real_time", + "name": "Then/Folly/2/2/real_time", "family_index": 9, "per_family_instance_index": 18, - "run_name": "Then(Folly)/2/2/real_time", + "run_name": "Then/Folly/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -751,10 +751,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/2/real_time", + "name": "Then/Folly/4/2/real_time", "family_index": 9, "per_family_instance_index": 19, - "run_name": "Then(Folly)/4/2/real_time", + "run_name": "Then/Folly/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -765,10 +765,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/2/real_time", + "name": "Then/Folly/8/2/real_time", "family_index": 9, "per_family_instance_index": 20, - "run_name": "Then(Folly)/8/2/real_time", + "run_name": "Then/Folly/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -779,10 +779,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/2/real_time", + "name": "Then/Folly/16/2/real_time", "family_index": 9, "per_family_instance_index": 21, - "run_name": "Then(Folly)/16/2/real_time", + "run_name": "Then/Folly/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -793,10 +793,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/2/real_time", + "name": "Then/Folly/32/2/real_time", "family_index": 9, "per_family_instance_index": 22, - "run_name": "Then(Folly)/32/2/real_time", + "run_name": "Then/Folly/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -807,10 +807,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/2/real_time", + "name": "Then/Folly/64/2/real_time", "family_index": 9, "per_family_instance_index": 23, - "run_name": "Then(Folly)/64/2/real_time", + "run_name": "Then/Folly/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -821,10 +821,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/0/real_time", + "name": "Then/BoostThread/0/0/real_time", "family_index": 10, "per_family_instance_index": 0, - "run_name": "Then(BoostThread)/0/0/real_time", + "run_name": "Then/BoostThread/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -835,10 +835,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/0/real_time", + "name": "Then/BoostThread/1/0/real_time", "family_index": 10, "per_family_instance_index": 1, - "run_name": "Then(BoostThread)/1/0/real_time", + "run_name": "Then/BoostThread/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -849,10 +849,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/0/real_time", + "name": "Then/BoostThread/2/0/real_time", "family_index": 10, "per_family_instance_index": 2, - "run_name": "Then(BoostThread)/2/0/real_time", + "run_name": "Then/BoostThread/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -863,10 +863,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/0/real_time", + "name": "Then/BoostThread/4/0/real_time", "family_index": 10, "per_family_instance_index": 3, - "run_name": "Then(BoostThread)/4/0/real_time", + "run_name": "Then/BoostThread/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -877,10 +877,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/0/real_time", + "name": "Then/BoostThread/8/0/real_time", "family_index": 10, "per_family_instance_index": 4, - "run_name": "Then(BoostThread)/8/0/real_time", + "run_name": "Then/BoostThread/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -891,10 +891,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/0/real_time", + "name": "Then/BoostThread/16/0/real_time", "family_index": 10, "per_family_instance_index": 5, - "run_name": "Then(BoostThread)/16/0/real_time", + "run_name": "Then/BoostThread/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -905,10 +905,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/0/real_time", + "name": "Then/BoostThread/32/0/real_time", "family_index": 10, "per_family_instance_index": 6, - "run_name": "Then(BoostThread)/32/0/real_time", + "run_name": "Then/BoostThread/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -919,10 +919,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/0/real_time", + "name": "Then/BoostThread/64/0/real_time", "family_index": 10, "per_family_instance_index": 7, - "run_name": "Then(BoostThread)/64/0/real_time", + "run_name": "Then/BoostThread/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -933,10 +933,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/1/real_time", + "name": "Then/BoostThread/0/1/real_time", "family_index": 10, "per_family_instance_index": 8, - "run_name": "Then(BoostThread)/0/1/real_time", + "run_name": "Then/BoostThread/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -947,10 +947,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/1/real_time", + "name": "Then/BoostThread/1/1/real_time", "family_index": 10, "per_family_instance_index": 9, - "run_name": "Then(BoostThread)/1/1/real_time", + "run_name": "Then/BoostThread/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -961,10 +961,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/1/real_time", + "name": "Then/BoostThread/2/1/real_time", "family_index": 10, "per_family_instance_index": 10, - "run_name": "Then(BoostThread)/2/1/real_time", + "run_name": "Then/BoostThread/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -975,10 +975,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/1/real_time", + "name": "Then/BoostThread/4/1/real_time", "family_index": 10, "per_family_instance_index": 11, - "run_name": "Then(BoostThread)/4/1/real_time", + "run_name": "Then/BoostThread/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -989,10 +989,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/1/real_time", + "name": "Then/BoostThread/8/1/real_time", "family_index": 10, "per_family_instance_index": 12, - "run_name": "Then(BoostThread)/8/1/real_time", + "run_name": "Then/BoostThread/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1003,10 +1003,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/1/real_time", + "name": "Then/BoostThread/16/1/real_time", "family_index": 10, "per_family_instance_index": 13, - "run_name": "Then(BoostThread)/16/1/real_time", + "run_name": "Then/BoostThread/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1017,10 +1017,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/1/real_time", + "name": "Then/BoostThread/32/1/real_time", "family_index": 10, "per_family_instance_index": 14, - "run_name": "Then(BoostThread)/32/1/real_time", + "run_name": "Then/BoostThread/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1031,10 +1031,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/1/real_time", + "name": "Then/BoostThread/64/1/real_time", "family_index": 10, "per_family_instance_index": 15, - "run_name": "Then(BoostThread)/64/1/real_time", + "run_name": "Then/BoostThread/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1045,10 +1045,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/2/real_time", + "name": "Then/BoostThread/0/2/real_time", "family_index": 10, "per_family_instance_index": 16, - "run_name": "Then(BoostThread)/0/2/real_time", + "run_name": "Then/BoostThread/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1059,10 +1059,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/2/real_time", + "name": "Then/BoostThread/1/2/real_time", "family_index": 10, "per_family_instance_index": 17, - "run_name": "Then(BoostThread)/1/2/real_time", + "run_name": "Then/BoostThread/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1073,10 +1073,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/2/real_time", + "name": "Then/BoostThread/2/2/real_time", "family_index": 10, "per_family_instance_index": 18, - "run_name": "Then(BoostThread)/2/2/real_time", + "run_name": "Then/BoostThread/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1087,10 +1087,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/2/real_time", + "name": "Then/BoostThread/4/2/real_time", "family_index": 10, "per_family_instance_index": 19, - "run_name": "Then(BoostThread)/4/2/real_time", + "run_name": "Then/BoostThread/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1101,10 +1101,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/2/real_time", + "name": "Then/BoostThread/8/2/real_time", "family_index": 10, "per_family_instance_index": 20, - "run_name": "Then(BoostThread)/8/2/real_time", + "run_name": "Then/BoostThread/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1115,10 +1115,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/2/real_time", + "name": "Then/BoostThread/16/2/real_time", "family_index": 10, "per_family_instance_index": 21, - "run_name": "Then(BoostThread)/16/2/real_time", + "run_name": "Then/BoostThread/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1129,10 +1129,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/2/real_time", + "name": "Then/BoostThread/32/2/real_time", "family_index": 10, "per_family_instance_index": 22, - "run_name": "Then(BoostThread)/32/2/real_time", + "run_name": "Then/BoostThread/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1143,10 +1143,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/2/real_time", + "name": "Then/BoostThread/64/2/real_time", "family_index": 10, "per_family_instance_index": 23, - "run_name": "Then(BoostThread)/64/2/real_time", + "run_name": "Then/BoostThread/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1157,10 +1157,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/0/real_time", + "name": "ComplexBlob/YACLib/0/real_time", "family_index": 11, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/0/real_time", + "run_name": "ComplexBlob/YACLib/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1171,10 +1171,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/0/real_time", + "name": "ComplexBlob/Folly/0/real_time", "family_index": 12, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/0/real_time", + "run_name": "ComplexBlob/Folly/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1185,10 +1185,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/0/real_time", + "name": "ComplexBlob/BoostThread/0/real_time", "family_index": 13, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/0/real_time", + "run_name": "ComplexBlob/BoostThread/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1199,10 +1199,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2/real_time", + "name": "ComplexBlob/YACLib/2/real_time", "family_index": 14, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2/real_time", + "run_name": "ComplexBlob/YACLib/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1213,10 +1213,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/2/real_time", + "name": "ComplexBlob/Folly/2/real_time", "family_index": 15, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/2/real_time", + "run_name": "ComplexBlob/Folly/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1227,10 +1227,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/2/real_time", + "name": "ComplexBlob/BoostThread/2/real_time", "family_index": 16, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/2/real_time", + "run_name": "ComplexBlob/BoostThread/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1241,10 +1241,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4/real_time", + "name": "ComplexBlob/YACLib/4/real_time", "family_index": 17, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4/real_time", + "run_name": "ComplexBlob/YACLib/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1255,10 +1255,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/4/real_time", + "name": "ComplexBlob/Folly/4/real_time", "family_index": 18, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/4/real_time", + "run_name": "ComplexBlob/Folly/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1269,10 +1269,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/4/real_time", + "name": "ComplexBlob/BoostThread/4/real_time", "family_index": 19, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/4/real_time", + "run_name": "ComplexBlob/BoostThread/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1283,10 +1283,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8/real_time", + "name": "ComplexBlob/YACLib/8/real_time", "family_index": 20, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8/real_time", + "run_name": "ComplexBlob/YACLib/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1297,10 +1297,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/8/real_time", + "name": "ComplexBlob/Folly/8/real_time", "family_index": 21, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/8/real_time", + "run_name": "ComplexBlob/Folly/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1311,10 +1311,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/8/real_time", + "name": "ComplexBlob/BoostThread/8/real_time", "family_index": 22, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/8/real_time", + "run_name": "ComplexBlob/BoostThread/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1325,10 +1325,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/16/real_time", + "name": "ComplexBlob/YACLib/16/real_time", "family_index": 23, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/16/real_time", + "run_name": "ComplexBlob/YACLib/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1339,10 +1339,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/16/real_time", + "name": "ComplexBlob/Folly/16/real_time", "family_index": 24, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/16/real_time", + "run_name": "ComplexBlob/Folly/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1353,10 +1353,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/16/real_time", + "name": "ComplexBlob/BoostThread/16/real_time", "family_index": 25, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/16/real_time", + "run_name": "ComplexBlob/BoostThread/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1367,10 +1367,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/32/real_time", + "name": "ComplexBlob/YACLib/32/real_time", "family_index": 26, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/32/real_time", + "run_name": "ComplexBlob/YACLib/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1381,10 +1381,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/32/real_time", + "name": "ComplexBlob/Folly/32/real_time", "family_index": 27, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/32/real_time", + "run_name": "ComplexBlob/Folly/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1395,10 +1395,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/32/real_time", + "name": "ComplexBlob/BoostThread/32/real_time", "family_index": 28, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/32/real_time", + "run_name": "ComplexBlob/BoostThread/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1409,10 +1409,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/64/real_time", + "name": "ComplexBlob/YACLib/64/real_time", "family_index": 29, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/64/real_time", + "run_name": "ComplexBlob/YACLib/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1423,10 +1423,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/64/real_time", + "name": "ComplexBlob/Folly/64/real_time", "family_index": 30, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/64/real_time", + "run_name": "ComplexBlob/Folly/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1437,10 +1437,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/64/real_time", + "name": "ComplexBlob/BoostThread/64/real_time", "family_index": 31, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/64/real_time", + "run_name": "ComplexBlob/BoostThread/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1451,10 +1451,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/128/real_time", + "name": "ComplexBlob/YACLib/128/real_time", "family_index": 32, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/128/real_time", + "run_name": "ComplexBlob/YACLib/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1465,10 +1465,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/128/real_time", + "name": "ComplexBlob/Folly/128/real_time", "family_index": 33, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/128/real_time", + "run_name": "ComplexBlob/Folly/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1479,10 +1479,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/128/real_time", + "name": "ComplexBlob/BoostThread/128/real_time", "family_index": 34, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/128/real_time", + "run_name": "ComplexBlob/BoostThread/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1493,10 +1493,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/256/real_time", + "name": "ComplexBlob/YACLib/256/real_time", "family_index": 35, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/256/real_time", + "run_name": "ComplexBlob/YACLib/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1507,10 +1507,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/256/real_time", + "name": "ComplexBlob/Folly/256/real_time", "family_index": 36, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/256/real_time", + "run_name": "ComplexBlob/Folly/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1521,10 +1521,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/256/real_time", + "name": "ComplexBlob/BoostThread/256/real_time", "family_index": 37, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/256/real_time", + "run_name": "ComplexBlob/BoostThread/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1535,10 +1535,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/512/real_time", + "name": "ComplexBlob/YACLib/512/real_time", "family_index": 38, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/512/real_time", + "run_name": "ComplexBlob/YACLib/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1549,10 +1549,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/512/real_time", + "name": "ComplexBlob/Folly/512/real_time", "family_index": 39, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/512/real_time", + "run_name": "ComplexBlob/Folly/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1563,10 +1563,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/512/real_time", + "name": "ComplexBlob/BoostThread/512/real_time", "family_index": 40, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/512/real_time", + "run_name": "ComplexBlob/BoostThread/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1577,10 +1577,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/1024/real_time", + "name": "ComplexBlob/YACLib/1024/real_time", "family_index": 41, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/1024/real_time", + "run_name": "ComplexBlob/YACLib/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1591,10 +1591,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/1024/real_time", + "name": "ComplexBlob/Folly/1024/real_time", "family_index": 42, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/1024/real_time", + "run_name": "ComplexBlob/Folly/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1605,10 +1605,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/1024/real_time", + "name": "ComplexBlob/BoostThread/1024/real_time", "family_index": 43, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/1024/real_time", + "run_name": "ComplexBlob/BoostThread/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1619,10 +1619,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2048/real_time", + "name": "ComplexBlob/YACLib/2048/real_time", "family_index": 44, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2048/real_time", + "run_name": "ComplexBlob/YACLib/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1633,10 +1633,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/2048/real_time", + "name": "ComplexBlob/Folly/2048/real_time", "family_index": 45, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/2048/real_time", + "run_name": "ComplexBlob/Folly/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1647,10 +1647,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/2048/real_time", + "name": "ComplexBlob/BoostThread/2048/real_time", "family_index": 46, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/2048/real_time", + "run_name": "ComplexBlob/BoostThread/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1661,10 +1661,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4096/real_time", + "name": "ComplexBlob/YACLib/4096/real_time", "family_index": 47, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4096/real_time", + "run_name": "ComplexBlob/YACLib/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1675,10 +1675,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/4096/real_time", + "name": "ComplexBlob/Folly/4096/real_time", "family_index": 48, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/4096/real_time", + "run_name": "ComplexBlob/Folly/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1689,10 +1689,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/4096/real_time", + "name": "ComplexBlob/BoostThread/4096/real_time", "family_index": 49, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/4096/real_time", + "run_name": "ComplexBlob/BoostThread/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1703,10 +1703,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8192/real_time", + "name": "ComplexBlob/YACLib/8192/real_time", "family_index": 50, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8192/real_time", + "run_name": "ComplexBlob/YACLib/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1717,10 +1717,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/8192/real_time", + "name": "ComplexBlob/Folly/8192/real_time", "family_index": 51, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/8192/real_time", + "run_name": "ComplexBlob/Folly/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1731,10 +1731,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/8192/real_time", + "name": "ComplexBlob/BoostThread/8192/real_time", "family_index": 52, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/8192/real_time", + "run_name": "ComplexBlob/BoostThread/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1745,10 +1745,10 @@ "time_unit": "ns" }, { - "name": "NoContention(YACLib)/real_time", + "name": "NoContention/YACLib/real_time", "family_index": 53, "per_family_instance_index": 0, - "run_name": "NoContention(YACLib)/real_time", + "run_name": "NoContention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1759,10 +1759,10 @@ "time_unit": "ns" }, { - "name": "NoContention(Folly)/real_time", + "name": "NoContention/Folly/real_time", "family_index": 54, "per_family_instance_index": 0, - "run_name": "NoContention(Folly)/real_time", + "run_name": "NoContention/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1773,10 +1773,10 @@ "time_unit": "ns" }, { - "name": "NoContention(BoostThread)/real_time", + "name": "NoContention/BoostThread/real_time", "family_index": 55, "per_family_instance_index": 0, - "run_name": "NoContention(BoostThread)/real_time", + "run_name": "NoContention/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1787,10 +1787,10 @@ "time_unit": "ns" }, { - "name": "Contention(YACLib)/real_time", + "name": "Contention/YACLib/real_time", "family_index": 56, "per_family_instance_index": 0, - "run_name": "Contention(YACLib)/real_time", + "run_name": "Contention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1801,10 +1801,10 @@ "time_unit": "ns" }, { - "name": "Contention(Folly)/real_time", + "name": "Contention/Folly/real_time", "family_index": 57, "per_family_instance_index": 0, - "run_name": "Contention(Folly)/real_time", + "run_name": "Contention/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1815,10 +1815,10 @@ "time_unit": "ns" }, { - "name": "Contention(BoostThread)/real_time", + "name": "Contention/BoostThread/real_time", "family_index": 58, "per_family_instance_index": 0, - "run_name": "Contention(BoostThread)/real_time", + "run_name": "Contention/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, diff --git a/future/result/i5-5300U/gcc_libstdcxx/picture/ComplexBlob.svg b/future/result/i5-5300U/gcc_libstdcxx/picture/ComplexBlob.svg new file mode 100644 index 0000000..6e74462 --- /dev/null +++ b/future/result/i5-5300U/gcc_libstdcxx/picture/ComplexBlob.svg @@ -0,0 +1,1266 @@ + + + + + + + + 2022-04-10T19:11:42.625545 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-5300U/gcc_libstdcxx/picture/ConstantFuture.svg b/future/result/i5-5300U/gcc_libstdcxx/picture/ConstantFuture.svg new file mode 100644 index 0000000..46c889f --- /dev/null +++ b/future/result/i5-5300U/gcc_libstdcxx/picture/ConstantFuture.svg @@ -0,0 +1,943 @@ + + + + + + + + 2022-04-10T19:11:41.644923 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-5300U/gcc_libstdcxx/picture/Contention.svg b/future/result/i5-5300U/gcc_libstdcxx/picture/Contention.svg new file mode 100644 index 0000000..b147bbc --- /dev/null +++ b/future/result/i5-5300U/gcc_libstdcxx/picture/Contention.svg @@ -0,0 +1,934 @@ + + + + + + + + 2022-04-10T19:11:42.921443 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-5300U/gcc_libstdcxx/picture/NoContention.svg b/future/result/i5-5300U/gcc_libstdcxx/picture/NoContention.svg new file mode 100644 index 0000000..d0913df --- /dev/null +++ b/future/result/i5-5300U/gcc_libstdcxx/picture/NoContention.svg @@ -0,0 +1,875 @@ + + + + + + + + 2022-04-10T19:11:42.784636 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-5300U/gcc_libstdcxx/picture/PromiseAndFuture.svg b/future/result/i5-5300U/gcc_libstdcxx/picture/PromiseAndFuture.svg new file mode 100644 index 0000000..6a68c9a --- /dev/null +++ b/future/result/i5-5300U/gcc_libstdcxx/picture/PromiseAndFuture.svg @@ -0,0 +1,966 @@ + + + + + + + + 2022-04-10T19:11:41.863833 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-5300U/gcc_libstdcxx/picture/ThenAllInline.svg b/future/result/i5-5300U/gcc_libstdcxx/picture/ThenAllInline.svg new file mode 100644 index 0000000..d97209d --- /dev/null +++ b/future/result/i5-5300U/gcc_libstdcxx/picture/ThenAllInline.svg @@ -0,0 +1,1187 @@ + + + + + + + + 2022-04-10T19:11:42.064058 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-5300U/gcc_libstdcxx/picture/ThenOneInline.svg b/future/result/i5-5300U/gcc_libstdcxx/picture/ThenOneInline.svg new file mode 100644 index 0000000..f8c73a4 --- /dev/null +++ b/future/result/i5-5300U/gcc_libstdcxx/picture/ThenOneInline.svg @@ -0,0 +1,1051 @@ + + + + + + + + 2022-04-10T19:11:42.248550 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i5-5300U/gcc_libstdcxx/picture/ThenScheduler.svg b/future/result/i5-5300U/gcc_libstdcxx/picture/ThenScheduler.svg new file mode 100644 index 0000000..a7d45eb --- /dev/null +++ b/future/result/i5-5300U/gcc_libstdcxx/picture/ThenScheduler.svg @@ -0,0 +1,1167 @@ + + + + + + + + 2022-04-10T19:11:42.407406 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-11850H/README.md b/future/result/i7-11850H/README.md index 74376f1..fdea6e4 100644 --- a/future/result/i7-11850H/README.md +++ b/future/result/i7-11850H/README.md @@ -59,178 +59,178 @@ Load Average: 0.22, 0.36, 0.17 ---------------------------------------------------------------------------------- Benchmark Time CPU Iterations ---------------------------------------------------------------------------------- -ConstantFuture(Std)/real_time 129 ns 129 ns 5436771 -ConstantFuture(YACLib)/real_time 14.9 ns 14.9 ns 46948391 -ConstantFuture(Folly)/real_time 15.6 ns 15.6 ns 44933294 -ConstantFuture(BoostThread)/real_time 104 ns 104 ns 6739487 +ConstantFuture/Std/real_time 129 ns 129 ns 5436771 +ConstantFuture/YACLib/real_time 14.9 ns 14.9 ns 46948391 +ConstantFuture/Folly/real_time 15.6 ns 15.6 ns 44933294 +ConstantFuture/BoostThread/real_time 104 ns 104 ns 6739487 -PromiseAndFuture(Std)/real_time 132 ns 132 ns 5303394 -PromiseAndFuture(YACLib)/real_time 26.2 ns 26.2 ns 26741427 -PromiseAndFuture(Folly)/real_time 42.2 ns 42.0 ns 16574648 -PromiseAndFuture(BoostThread)/real_time 113 ns 113 ns 6203199 +PromiseAndFuture/Std/real_time 132 ns 132 ns 5303394 +PromiseAndFuture/YACLib/real_time 26.2 ns 26.2 ns 26741427 +PromiseAndFuture/Folly/real_time 42.2 ns 42.0 ns 16574648 +PromiseAndFuture/BoostThread/real_time 113 ns 113 ns 6203199 -Then(YACLib)/0/0/real_time 59.3 ns 59.3 ns 11790715 -Then(Folly)/0/0/real_time 111 ns 110 ns 6609518 -Then(BoostThread)/0/0/real_time 677 ns 675 ns 1027172 +Then/YACLib/0/0/real_time 59.3 ns 59.3 ns 11790715 +Then/Folly/0/0/real_time 111 ns 110 ns 6609518 +Then/BoostThread/0/0/real_time 677 ns 675 ns 1027172 -Then(YACLib)/1/0/real_time 123 ns 123 ns 5689354 -Then(Folly)/1/0/real_time 244 ns 243 ns 2341937 -Then(BoostThread)/1/0/real_time 1469 ns 1466 ns 470493 +Then/YACLib/1/0/real_time 123 ns 123 ns 5689354 +Then/Folly/1/0/real_time 244 ns 243 ns 2341937 +Then/BoostThread/1/0/real_time 1469 ns 1466 ns 470493 -Then(YACLib)/2/0/real_time 187 ns 187 ns 3741530 -Then(Folly)/2/0/real_time 381 ns 379 ns 1836613 -Then(BoostThread)/2/0/real_time 2248 ns 2243 ns 313011 +Then/YACLib/2/0/real_time 187 ns 187 ns 3741530 +Then/Folly/2/0/real_time 381 ns 379 ns 1836613 +Then/BoostThread/2/0/real_time 2248 ns 2243 ns 313011 -Then(YACLib)/4/0/real_time 329 ns 329 ns 2125063 -Then(Folly)/4/0/real_time 673 ns 669 ns 1038724 -Then(BoostThread)/4/0/real_time 3793 ns 3785 ns 185715 +Then/YACLib/4/0/real_time 329 ns 329 ns 2125063 +Then/Folly/4/0/real_time 673 ns 669 ns 1038724 +Then/BoostThread/4/0/real_time 3793 ns 3785 ns 185715 -Then(YACLib)/8/0/real_time 589 ns 589 ns 1187586 -Then(Folly)/8/0/real_time 1228 ns 1222 ns 570623 -Then(BoostThread)/8/0/real_time 6804 ns 6790 ns 103395 +Then/YACLib/8/0/real_time 589 ns 589 ns 1187586 +Then/Folly/8/0/real_time 1228 ns 1222 ns 570623 +Then/BoostThread/8/0/real_time 6804 ns 6790 ns 103395 -Then(YACLib)/16/0/real_time 1103 ns 1102 ns 638875 -Then(Folly)/16/0/real_time 2339 ns 2327 ns 300356 -Then(BoostThread)/16/0/real_time 12861 ns 12834 ns 54564 +Then/YACLib/16/0/real_time 1103 ns 1102 ns 638875 +Then/Folly/16/0/real_time 2339 ns 2327 ns 300356 +Then/BoostThread/16/0/real_time 12861 ns 12834 ns 54564 -Then(YACLib)/32/0/real_time 2132 ns 2128 ns 329145 -Then(Folly)/32/0/real_time 5389 ns 5375 ns 100000 -Then(BoostThread)/32/0/real_time 24923 ns 24868 ns 28227 +Then/YACLib/32/0/real_time 2132 ns 2128 ns 329145 +Then/Folly/32/0/real_time 5389 ns 5375 ns 100000 +Then/BoostThread/32/0/real_time 24923 ns 24868 ns 28227 -Then(YACLib)/64/0/real_time 4214 ns 4195 ns 166677 -Then(Folly)/64/0/real_time 9026 ns 8983 ns 77503 -Then(BoostThread)/64/0/real_time 49269 ns 49165 ns 14314 +Then/YACLib/64/0/real_time 4214 ns 4195 ns 166677 +Then/Folly/64/0/real_time 9026 ns 8983 ns 77503 +Then/BoostThread/64/0/real_time 49269 ns 49165 ns 14314 -Then(YACLib)/0/1/real_time 5577 ns 3609 ns 127438 -Then(Folly)/0/1/real_time 5615 ns 3865 ns 125794 -Then(BoostThread)/0/1/real_time 6674 ns 4647 ns 103925 +Then/YACLib/0/1/real_time 5577 ns 3609 ns 127438 +Then/Folly/0/1/real_time 5615 ns 3865 ns 125794 +Then/BoostThread/0/1/real_time 6674 ns 4647 ns 103925 -Then(YACLib)/1/1/real_time 5761 ns 3771 ns 123879 -Then(Folly)/1/1/real_time 5929 ns 4063 ns 117985 -Then(BoostThread)/1/1/real_time 7221 ns 5355 ns 95286 +Then/YACLib/1/1/real_time 5761 ns 3771 ns 123879 +Then/Folly/1/1/real_time 5929 ns 4063 ns 117985 +Then/BoostThread/1/1/real_time 7221 ns 5355 ns 95286 -Then(YACLib)/2/1/real_time 5721 ns 3798 ns 120948 -Then(Folly)/2/1/real_time 6434 ns 4416 ns 109074 -Then(BoostThread)/2/1/real_time 7537 ns 5798 ns 93137 +Then/YACLib/2/1/real_time 5721 ns 3798 ns 120948 +Then/Folly/2/1/real_time 6434 ns 4416 ns 109074 +Then/BoostThread/2/1/real_time 7537 ns 5798 ns 93137 -Then(YACLib)/4/1/real_time 5932 ns 3985 ns 116606 -Then(Folly)/4/1/real_time 6623 ns 4781 ns 104123 -Then(BoostThread)/4/1/real_time 8712 ns 7182 ns 80230 +Then/YACLib/4/1/real_time 5932 ns 3985 ns 116606 +Then/Folly/4/1/real_time 6623 ns 4781 ns 104123 +Then/BoostThread/4/1/real_time 8712 ns 7182 ns 80230 -Then(YACLib)/8/1/real_time 6376 ns 4435 ns 109794 -Then(Folly)/8/1/real_time 6959 ns 4936 ns 105988 -Then(BoostThread)/8/1/real_time 11134 ns 9958 ns 62541 +Then/YACLib/8/1/real_time 6376 ns 4435 ns 109794 +Then/Folly/8/1/real_time 6959 ns 4936 ns 105988 +Then/BoostThread/8/1/real_time 11134 ns 9958 ns 62541 -Then(YACLib)/16/1/real_time 6911 ns 5198 ns 102453 -Then(Folly)/16/1/real_time 8088 ns 6376 ns 85610 -Then(BoostThread)/16/1/real_time 19402 ns 18007 ns 36085 +Then/YACLib/16/1/real_time 6911 ns 5198 ns 102453 +Then/Folly/16/1/real_time 8088 ns 6376 ns 85610 +Then/BoostThread/16/1/real_time 19402 ns 18007 ns 36085 -Then(YACLib)/32/1/real_time 7780 ns 6515 ns 89439 -Then(Folly)/32/1/real_time 23715 ns 21178 ns 29800 -Then(BoostThread)/32/1/real_time 34418 ns 33001 ns 20105 +Then/YACLib/32/1/real_time 7780 ns 6515 ns 89439 +Then/Folly/32/1/real_time 23715 ns 21178 ns 29800 +Then/BoostThread/32/1/real_time 34418 ns 33001 ns 20105 -Then(YACLib)/64/1/real_time 7900 ns 7859 ns 88609 -Then(Folly)/64/1/real_time 46854 ns 41808 ns 14899 -Then(BoostThread)/64/1/real_time 61609 ns 60141 ns 11319 +Then/YACLib/64/1/real_time 7900 ns 7859 ns 88609 +Then/Folly/64/1/real_time 46854 ns 41808 ns 14899 +Then/BoostThread/64/1/real_time 61609 ns 60141 ns 11319 -Then(YACLib)/0/2/real_time 5566 ns 3620 ns 127029 -Then(Folly)/0/2/real_time 5758 ns 3926 ns 123716 -Then(BoostThread)/0/2/real_time 6828 ns 4813 ns 103466 +Then/YACLib/0/2/real_time 5566 ns 3620 ns 127029 +Then/Folly/0/2/real_time 5758 ns 3926 ns 123716 +Then/BoostThread/0/2/real_time 6828 ns 4813 ns 103466 -Then(YACLib)/1/2/real_time 5878 ns 3790 ns 122339 -Then(Folly)/1/2/real_time 6289 ns 4269 ns 109821 -Then(BoostThread)/1/2/real_time 7805 ns 5567 ns 88761 +Then/YACLib/1/2/real_time 5878 ns 3790 ns 122339 +Then/Folly/1/2/real_time 6289 ns 4269 ns 109821 +Then/BoostThread/1/2/real_time 7805 ns 5567 ns 88761 -Then(YACLib)/2/2/real_time 5967 ns 3851 ns 116674 -Then(Folly)/2/2/real_time 6740 ns 4527 ns 105427 -Then(BoostThread)/2/2/real_time 8884 ns 6519 ns 79282 +Then/YACLib/2/2/real_time 5967 ns 3851 ns 116674 +Then/Folly/2/2/real_time 6740 ns 4527 ns 105427 +Then/BoostThread/2/2/real_time 8884 ns 6519 ns 79282 -Then(YACLib)/4/2/real_time 6336 ns 4093 ns 111494 -Then(Folly)/4/2/real_time 7245 ns 4771 ns 94545 -Then(BoostThread)/4/2/real_time 11883 ns 8730 ns 58917 +Then/YACLib/4/2/real_time 6336 ns 4093 ns 111494 +Then/Folly/4/2/real_time 7245 ns 4771 ns 94545 +Then/BoostThread/4/2/real_time 11883 ns 8730 ns 58917 -Then(YACLib)/8/2/real_time 7084 ns 4538 ns 98081 -Then(Folly)/8/2/real_time 7875 ns 5142 ns 87621 -Then(BoostThread)/8/2/real_time 18978 ns 13130 ns 36631 +Then/YACLib/8/2/real_time 7084 ns 4538 ns 98081 +Then/Folly/8/2/real_time 7875 ns 5142 ns 87621 +Then/BoostThread/8/2/real_time 18978 ns 13130 ns 36631 -Then(YACLib)/16/2/real_time 9076 ns 5933 ns 77800 -Then(Folly)/16/2/real_time 10453 ns 6761 ns 66647 -Then(BoostThread)/16/2/real_time 30228 ns 20516 ns 23319 +Then/YACLib/16/2/real_time 9076 ns 5933 ns 77800 +Then/Folly/16/2/real_time 10453 ns 6761 ns 66647 +Then/BoostThread/16/2/real_time 30228 ns 20516 ns 23319 -Then(YACLib)/32/2/real_time 14110 ns 9830 ns 49214 -Then(Folly)/32/2/real_time 23486 ns 17718 ns 28886 -Then(BoostThread)/32/2/real_time 52712 ns 35036 ns 12242 +Then/YACLib/32/2/real_time 14110 ns 9830 ns 49214 +Then/Folly/32/2/real_time 23486 ns 17718 ns 28886 +Then/BoostThread/32/2/real_time 52712 ns 35036 ns 12242 -Then(YACLib)/64/2/real_time 24624 ns 18005 ns 28337 -Then(Folly)/64/2/real_time 51350 ns 42603 ns 13850 -Then(BoostThread)/64/2/real_time 99465 ns 68384 ns 7064 +Then/YACLib/64/2/real_time 24624 ns 18005 ns 28337 +Then/Folly/64/2/real_time 51350 ns 42603 ns 13850 +Then/BoostThread/64/2/real_time 99465 ns 68384 ns 7064 -ComplexBlob(YACLib)/0/real_time 13082 ns 13043 ns 53315 -ComplexBlob(Folly)/0/real_time 30684 ns 30588 ns 22680 -ComplexBlob(BoostThread)/0/real_time 108613 ns 105015 ns 6540 +ComplexBlob/YACLib/0/real_time 13082 ns 13043 ns 53315 +ComplexBlob/Folly/0/real_time 30684 ns 30588 ns 22680 +ComplexBlob/BoostThread/0/real_time 108613 ns 105015 ns 6540 -ComplexBlob(YACLib)/2/real_time 12536 ns 12501 ns 56030 -ComplexBlob(Folly)/2/real_time 30113 ns 30028 ns 23100 -ComplexBlob(BoostThread)/2/real_time 107469 ns 103865 ns 6590 +ComplexBlob/YACLib/2/real_time 12536 ns 12501 ns 56030 +ComplexBlob/Folly/2/real_time 30113 ns 30028 ns 23100 +ComplexBlob/BoostThread/2/real_time 107469 ns 103865 ns 6590 -ComplexBlob(YACLib)/4/real_time 12493 ns 12456 ns 55464 -ComplexBlob(Folly)/4/real_time 30122 ns 30042 ns 23219 -ComplexBlob(BoostThread)/4/real_time 107629 ns 104175 ns 6499 +ComplexBlob/YACLib/4/real_time 12493 ns 12456 ns 55464 +ComplexBlob/Folly/4/real_time 30122 ns 30042 ns 23219 +ComplexBlob/BoostThread/4/real_time 107629 ns 104175 ns 6499 -ComplexBlob(YACLib)/8/real_time 12339 ns 12304 ns 56225 -ComplexBlob(Folly)/8/real_time 29650 ns 29568 ns 23557 -ComplexBlob(BoostThread)/8/real_time 106035 ns 102510 ns 6599 +ComplexBlob/YACLib/8/real_time 12339 ns 12304 ns 56225 +ComplexBlob/Folly/8/real_time 29650 ns 29568 ns 23557 +ComplexBlob/BoostThread/8/real_time 106035 ns 102510 ns 6599 -ComplexBlob(YACLib)/16/real_time 13680 ns 13650 ns 51020 -ComplexBlob(Folly)/16/real_time 29600 ns 29531 ns 23719 -ComplexBlob(BoostThread)/16/real_time 106127 ns 102636 ns 6622 +ComplexBlob/YACLib/16/real_time 13680 ns 13650 ns 51020 +ComplexBlob/Folly/16/real_time 29600 ns 29531 ns 23719 +ComplexBlob/BoostThread/16/real_time 106127 ns 102636 ns 6622 -ComplexBlob(YACLib)/32/real_time 13563 ns 13535 ns 51506 -ComplexBlob(Folly)/32/real_time 29962 ns 29894 ns 23199 -ComplexBlob(BoostThread)/32/real_time 105512 ns 101885 ns 6650 +ComplexBlob/YACLib/32/real_time 13563 ns 13535 ns 51506 +ComplexBlob/Folly/32/real_time 29962 ns 29894 ns 23199 +ComplexBlob/BoostThread/32/real_time 105512 ns 101885 ns 6650 -ComplexBlob(YACLib)/64/real_time 12974 ns 12948 ns 53877 -ComplexBlob(Folly)/64/real_time 30491 ns 30417 ns 22937 -ComplexBlob(BoostThread)/64/real_time 105392 ns 101666 ns 6650 +ComplexBlob/YACLib/64/real_time 12974 ns 12948 ns 53877 +ComplexBlob/Folly/64/real_time 30491 ns 30417 ns 22937 +ComplexBlob/BoostThread/64/real_time 105392 ns 101666 ns 6650 -ComplexBlob(YACLib)/128/real_time 14425 ns 14393 ns 48313 -ComplexBlob(Folly)/128/real_time 31428 ns 31360 ns 22310 -ComplexBlob(BoostThread)/128/real_time 106523 ns 102777 ns 6626 +ComplexBlob/YACLib/128/real_time 14425 ns 14393 ns 48313 +ComplexBlob/Folly/128/real_time 31428 ns 31360 ns 22310 +ComplexBlob/BoostThread/128/real_time 106523 ns 102777 ns 6626 -ComplexBlob(YACLib)/256/real_time 14646 ns 14616 ns 47604 -ComplexBlob(Folly)/256/real_time 32274 ns 32209 ns 21744 -ComplexBlob(BoostThread)/256/real_time 107286 ns 103565 ns 6556 +ComplexBlob/YACLib/256/real_time 14646 ns 14616 ns 47604 +ComplexBlob/Folly/256/real_time 32274 ns 32209 ns 21744 +ComplexBlob/BoostThread/256/real_time 107286 ns 103565 ns 6556 -ComplexBlob(YACLib)/512/real_time 21045 ns 21002 ns 32863 -ComplexBlob(Folly)/512/real_time 37927 ns 37846 ns 18466 -ComplexBlob(BoostThread)/512/real_time 118559 ns 114792 ns 5940 +ComplexBlob/YACLib/512/real_time 21045 ns 21002 ns 32863 +ComplexBlob/Folly/512/real_time 37927 ns 37846 ns 18466 +ComplexBlob/BoostThread/512/real_time 118559 ns 114792 ns 5940 -ComplexBlob(YACLib)/1024/real_time 30208 ns 30151 ns 23064 -ComplexBlob(Folly)/1024/real_time 44751 ns 44658 ns 15656 -ComplexBlob(BoostThread)/1024/real_time 141096 ns 137544 ns 4946 +ComplexBlob/YACLib/1024/real_time 30208 ns 30151 ns 23064 +ComplexBlob/Folly/1024/real_time 44751 ns 44658 ns 15656 +ComplexBlob/BoostThread/1024/real_time 141096 ns 137544 ns 4946 -ComplexBlob(YACLib)/2048/real_time 34314 ns 34204 ns 20390 -ComplexBlob(Folly)/2048/real_time 48533 ns 48380 ns 14424 -ComplexBlob(BoostThread)/2048/real_time 155948 ns 152166 ns 4486 +ComplexBlob/YACLib/2048/real_time 34314 ns 34204 ns 20390 +ComplexBlob/Folly/2048/real_time 48533 ns 48380 ns 14424 +ComplexBlob/BoostThread/2048/real_time 155948 ns 152166 ns 4486 -ComplexBlob(YACLib)/4096/real_time 54259 ns 54010 ns 13015 -ComplexBlob(Folly)/4096/real_time 69187 ns 68992 ns 10057 -ComplexBlob(BoostThread)/4096/real_time 176848 ns 173475 ns 3871 +ComplexBlob/YACLib/4096/real_time 54259 ns 54010 ns 13015 +ComplexBlob/Folly/4096/real_time 69187 ns 68992 ns 10057 +ComplexBlob/BoostThread/4096/real_time 176848 ns 173475 ns 3871 -ComplexBlob(YACLib)/8192/real_time 127257 ns 127246 ns 5516 -ComplexBlob(Folly)/8192/real_time 135525 ns 135513 ns 5145 -ComplexBlob(BoostThread)/8192/real_time 245158 ns 241978 ns 2858 +ComplexBlob/YACLib/8192/real_time 127257 ns 127246 ns 5516 +ComplexBlob/Folly/8192/real_time 135525 ns 135513 ns 5145 +ComplexBlob/BoostThread/8192/real_time 245158 ns 241978 ns 2858 -NoContention(YACLib)/real_time 716841 ns 319033 ns 976 -NoContention(Folly)/real_time 1164090 ns 519442 ns 601 -NoContention(BoostThread)/real_time 3904441 ns 1904416 ns 179 +NoContention/YACLib/real_time 716841 ns 319033 ns 976 +NoContention/Folly/real_time 1164090 ns 519442 ns 601 +NoContention/BoostThread/real_time 3904441 ns 1904416 ns 179 -Contention(YACLib)/real_time 1117828 ns 301887 ns 629 -Contention(Folly)/real_time 1991801 ns 563274 ns 351 -Contention(BoostThread)/real_time 5988780 ns 1868434 ns 120 +Contention/YACLib/real_time 1117828 ns 301887 ns 629 +Contention/Folly/real_time 1991801 ns 563274 ns 351 +Contention/BoostThread/real_time 5988780 ns 1868434 ns 120 ``` @@ -273,178 +273,178 @@ Load Average: 0.92, 0.62, 0.29 ---------------------------------------------------------------------------------- Benchmark Time CPU Iterations ---------------------------------------------------------------------------------- -ConstantFuture(Std)/real_time 139 ns 139 ns 5137530 -ConstantFuture(YACLib)/real_time 15.4 ns 15.3 ns 45652617 -ConstantFuture(Folly)/real_time 16.3 ns 16.2 ns 42920633 -ConstantFuture(BoostThread)/real_time 107 ns 107 ns 6558398 +ConstantFuture/Std/real_time 139 ns 139 ns 5137530 +ConstantFuture/YACLib/real_time 15.4 ns 15.3 ns 45652617 +ConstantFuture/Folly/real_time 16.3 ns 16.2 ns 42920633 +ConstantFuture/BoostThread/real_time 107 ns 107 ns 6558398 -PromiseAndFuture(Std)/real_time 146 ns 145 ns 4781574 -PromiseAndFuture(YACLib)/real_time 30.9 ns 30.7 ns 22732174 -PromiseAndFuture(Folly)/real_time 53.1 ns 52.9 ns 13139125 -PromiseAndFuture(BoostThread)/real_time 115 ns 114 ns 5245917 +PromiseAndFuture/Std/real_time 146 ns 145 ns 4781574 +PromiseAndFuture/YACLib/real_time 30.9 ns 30.7 ns 22732174 +PromiseAndFuture/Folly/real_time 53.1 ns 52.9 ns 13139125 +PromiseAndFuture/BoostThread/real_time 115 ns 114 ns 5245917 -Then(YACLib)/0/0/real_time 74.8 ns 74.5 ns 9608639 -Then(Folly)/0/0/real_time 121 ns 121 ns 5704559 -Then(BoostThread)/0/0/real_time 641 ns 637 ns 1115940 +Then/YACLib/0/0/real_time 74.8 ns 74.5 ns 9608639 +Then/Folly/0/0/real_time 121 ns 121 ns 5704559 +Then/BoostThread/0/0/real_time 641 ns 637 ns 1115940 -Then(YACLib)/1/0/real_time 150 ns 149 ns 4685896 -Then(Folly)/1/0/real_time 290 ns 289 ns 2427066 -Then(BoostThread)/1/0/real_time 1419 ns 1408 ns 497423 +Then/YACLib/1/0/real_time 150 ns 149 ns 4685896 +Then/Folly/1/0/real_time 290 ns 289 ns 2427066 +Then/BoostThread/1/0/real_time 1419 ns 1408 ns 497423 -Then(YACLib)/2/0/real_time 228 ns 227 ns 3068577 -Then(Folly)/2/0/real_time 458 ns 456 ns 1523096 -Then(BoostThread)/2/0/real_time 2158 ns 2142 ns 324954 +Then/YACLib/2/0/real_time 228 ns 227 ns 3068577 +Then/Folly/2/0/real_time 458 ns 456 ns 1523096 +Then/BoostThread/2/0/real_time 2158 ns 2142 ns 324954 -Then(YACLib)/4/0/real_time 400 ns 398 ns 1768683 -Then(Folly)/4/0/real_time 823 ns 820 ns 865793 -Then(BoostThread)/4/0/real_time 3636 ns 3609 ns 193201 +Then/YACLib/4/0/real_time 400 ns 398 ns 1768683 +Then/Folly/4/0/real_time 823 ns 820 ns 865793 +Then/BoostThread/4/0/real_time 3636 ns 3609 ns 193201 -Then(YACLib)/8/0/real_time 712 ns 709 ns 977221 -Then(Folly)/8/0/real_time 1483 ns 1478 ns 469934 -Then(BoostThread)/8/0/real_time 6570 ns 6518 ns 106161 +Then/YACLib/8/0/real_time 712 ns 709 ns 977221 +Then/Folly/8/0/real_time 1483 ns 1478 ns 469934 +Then/BoostThread/8/0/real_time 6570 ns 6518 ns 106161 -Then(YACLib)/16/0/real_time 1326 ns 1321 ns 527118 -Then(Folly)/16/0/real_time 2839 ns 2828 ns 247090 -Then(BoostThread)/16/0/real_time 12654 ns 12560 ns 56093 +Then/YACLib/16/0/real_time 1326 ns 1321 ns 527118 +Then/Folly/16/0/real_time 2839 ns 2828 ns 247090 +Then/BoostThread/16/0/real_time 12654 ns 12560 ns 56093 -Then(YACLib)/32/0/real_time 2561 ns 2550 ns 274199 -Then(Folly)/32/0/real_time 5746 ns 5729 ns 127100 -Then(BoostThread)/32/0/real_time 24687 ns 24522 ns 28999 +Then/YACLib/32/0/real_time 2561 ns 2550 ns 274199 +Then/Folly/32/0/real_time 5746 ns 5729 ns 127100 +Then/BoostThread/32/0/real_time 24687 ns 24522 ns 28999 -Then(YACLib)/64/0/real_time 5035 ns 5012 ns 139400 -Then(Folly)/64/0/real_time 10886 ns 10846 ns 63989 -Then(BoostThread)/64/0/real_time 47888 ns 47532 ns 14574 +Then/YACLib/64/0/real_time 5035 ns 5012 ns 139400 +Then/Folly/64/0/real_time 10886 ns 10846 ns 63989 +Then/BoostThread/64/0/real_time 47888 ns 47532 ns 14574 -Then(YACLib)/0/1/real_time 5913 ns 3909 ns 117565 -Then(Folly)/0/1/real_time 5977 ns 4102 ns 135842 -Then(BoostThread)/0/1/real_time 6686 ns 4755 ns 105158 +Then/YACLib/0/1/real_time 5913 ns 3909 ns 117565 +Then/Folly/0/1/real_time 5977 ns 4102 ns 135842 +Then/BoostThread/0/1/real_time 6686 ns 4755 ns 105158 -Then(YACLib)/1/1/real_time 5803 ns 3848 ns 120910 -Then(Folly)/1/1/real_time 6531 ns 4575 ns 105819 -Then(BoostThread)/1/1/real_time 7450 ns 5593 ns 93807 +Then/YACLib/1/1/real_time 5803 ns 3848 ns 120910 +Then/Folly/1/1/real_time 6531 ns 4575 ns 105819 +Then/BoostThread/1/1/real_time 7450 ns 5593 ns 93807 -Then(YACLib)/2/1/real_time 5945 ns 3991 ns 118416 -Then(Folly)/2/1/real_time 6621 ns 4657 ns 105053 -Then(BoostThread)/2/1/real_time 8017 ns 6240 ns 87096 +Then/YACLib/2/1/real_time 5945 ns 3991 ns 118416 +Then/Folly/2/1/real_time 6621 ns 4657 ns 105053 +Then/BoostThread/2/1/real_time 8017 ns 6240 ns 87096 -Then(YACLib)/4/1/real_time 6131 ns 4133 ns 113399 -Then(Folly)/4/1/real_time 6769 ns 4984 ns 103009 -Then(BoostThread)/4/1/real_time 9283 ns 7624 ns 76395 +Then/YACLib/4/1/real_time 6131 ns 4133 ns 113399 +Then/Folly/4/1/real_time 6769 ns 4984 ns 103009 +Then/BoostThread/4/1/real_time 9283 ns 7624 ns 76395 -Then(YACLib)/8/1/real_time 6523 ns 4534 ns 106687 -Then(Folly)/8/1/real_time 7113 ns 4958 ns 98552 -Then(BoostThread)/8/1/real_time 11641 ns 10522 ns 60212 +Then/YACLib/8/1/real_time 6523 ns 4534 ns 106687 +Then/Folly/8/1/real_time 7113 ns 4958 ns 98552 +Then/BoostThread/8/1/real_time 11641 ns 10522 ns 60212 -Then(YACLib)/16/1/real_time 7283 ns 5526 ns 95610 -Then(Folly)/16/1/real_time 8483 ns 6344 ns 83075 -Then(BoostThread)/16/1/real_time 21068 ns 19702 ns 33158 +Then/YACLib/16/1/real_time 7283 ns 5526 ns 95610 +Then/Folly/16/1/real_time 8483 ns 6344 ns 83075 +Then/BoostThread/16/1/real_time 21068 ns 19702 ns 33158 -Then(YACLib)/32/1/real_time 8324 ns 6938 ns 84260 -Then(Folly)/32/1/real_time 22046 ns 18447 ns 30514 -Then(BoostThread)/32/1/real_time 33973 ns 32617 ns 20263 +Then/YACLib/32/1/real_time 8324 ns 6938 ns 84260 +Then/Folly/32/1/real_time 22046 ns 18447 ns 30514 +Then/BoostThread/32/1/real_time 33973 ns 32617 ns 20263 -Then(YACLib)/64/1/real_time 8640 ns 8551 ns 80685 -Then(Folly)/64/1/real_time 41652 ns 34634 ns 16955 -Then(BoostThread)/64/1/real_time 59942 ns 58679 ns 11841 +Then/YACLib/64/1/real_time 8640 ns 8551 ns 80685 +Then/Folly/64/1/real_time 41652 ns 34634 ns 16955 +Then/BoostThread/64/1/real_time 59942 ns 58679 ns 11841 -Then(YACLib)/0/2/real_time 5788 ns 3843 ns 120072 -Then(Folly)/0/2/real_time 6041 ns 4129 ns 115401 -Then(BoostThread)/0/2/real_time 6554 ns 4675 ns 106586 +Then/YACLib/0/2/real_time 5788 ns 3843 ns 120072 +Then/Folly/0/2/real_time 6041 ns 4129 ns 115401 +Then/BoostThread/0/2/real_time 6554 ns 4675 ns 106586 -Then(YACLib)/1/2/real_time 5941 ns 3834 ns 115542 -Then(Folly)/1/2/real_time 6439 ns 4352 ns 109226 -Then(BoostThread)/1/2/real_time 7678 ns 5608 ns 91625 +Then/YACLib/1/2/real_time 5941 ns 3834 ns 115542 +Then/Folly/1/2/real_time 6439 ns 4352 ns 109226 +Then/BoostThread/1/2/real_time 7678 ns 5608 ns 91625 -Then(YACLib)/2/2/real_time 6193 ns 4053 ns 111555 -Then(Folly)/2/2/real_time 6689 ns 4525 ns 103573 -Then(BoostThread)/2/2/real_time 8624 ns 6424 ns 81366 +Then/YACLib/2/2/real_time 6193 ns 4053 ns 111555 +Then/Folly/2/2/real_time 6689 ns 4525 ns 103573 +Then/BoostThread/2/2/real_time 8624 ns 6424 ns 81366 -Then(YACLib)/4/2/real_time 6847 ns 4432 ns 104796 -Then(Folly)/4/2/real_time 7288 ns 4901 ns 94625 -Then(BoostThread)/4/2/real_time 12340 ns 8866 ns 57748 +Then/YACLib/4/2/real_time 6847 ns 4432 ns 104796 +Then/Folly/4/2/real_time 7288 ns 4901 ns 94625 +Then/BoostThread/4/2/real_time 12340 ns 8866 ns 57748 -Then(YACLib)/8/2/real_time 7709 ns 4908 ns 90696 -Then(Folly)/8/2/real_time 8180 ns 5492 ns 87118 -Then(BoostThread)/8/2/real_time 18426 ns 12980 ns 37949 +Then/YACLib/8/2/real_time 7709 ns 4908 ns 90696 +Then/Folly/8/2/real_time 8180 ns 5492 ns 87118 +Then/BoostThread/8/2/real_time 18426 ns 12980 ns 37949 -Then(YACLib)/16/2/real_time 9809 ns 6584 ns 72322 -Then(Folly)/16/2/real_time 11302 ns 7347 ns 62623 -Then(BoostThread)/16/2/real_time 30710 ns 21123 ns 22801 +Then/YACLib/16/2/real_time 9809 ns 6584 ns 72322 +Then/Folly/16/2/real_time 11302 ns 7347 ns 62623 +Then/BoostThread/16/2/real_time 30710 ns 21123 ns 22801 -Then(YACLib)/32/2/real_time 14923 ns 11094 ns 45749 -Then(Folly)/32/2/real_time 26931 ns 20699 ns 29906 -Then(BoostThread)/32/2/real_time 55202 ns 38270 ns 12734 +Then/YACLib/32/2/real_time 14923 ns 11094 ns 45749 +Then/Folly/32/2/real_time 26931 ns 20699 ns 29906 +Then/BoostThread/32/2/real_time 55202 ns 38270 ns 12734 -Then(YACLib)/64/2/real_time 26156 ns 21206 ns 27891 -Then(Folly)/64/2/real_time 50322 ns 40277 ns 13515 -Then(BoostThread)/64/2/real_time 106081 ns 73730 ns 6576 +Then/YACLib/64/2/real_time 26156 ns 21206 ns 27891 +Then/Folly/64/2/real_time 50322 ns 40277 ns 13515 +Then/BoostThread/64/2/real_time 106081 ns 73730 ns 6576 -ComplexBlob(YACLib)/0/real_time 15346 ns 15293 ns 45441 -ComplexBlob(Folly)/0/real_time 32217 ns 32108 ns 21686 -ComplexBlob(BoostThread)/0/real_time 105486 ns 101879 ns 6674 +ComplexBlob/YACLib/0/real_time 15346 ns 15293 ns 45441 +ComplexBlob/Folly/0/real_time 32217 ns 32108 ns 21686 +ComplexBlob/BoostThread/0/real_time 105486 ns 101879 ns 6674 -ComplexBlob(YACLib)/2/real_time 14194 ns 14147 ns 48952 -ComplexBlob(Folly)/2/real_time 32616 ns 32507 ns 21399 -ComplexBlob(BoostThread)/2/real_time 104805 ns 101347 ns 6718 +ComplexBlob/YACLib/2/real_time 14194 ns 14147 ns 48952 +ComplexBlob/Folly/2/real_time 32616 ns 32507 ns 21399 +ComplexBlob/BoostThread/2/real_time 104805 ns 101347 ns 6718 -ComplexBlob(YACLib)/4/real_time 14335 ns 14283 ns 49268 -ComplexBlob(Folly)/4/real_time 32704 ns 32581 ns 21347 -ComplexBlob(BoostThread)/4/real_time 102990 ns 99724 ns 6744 +ComplexBlob/YACLib/4/real_time 14335 ns 14283 ns 49268 +ComplexBlob/Folly/4/real_time 32704 ns 32581 ns 21347 +ComplexBlob/BoostThread/4/real_time 102990 ns 99724 ns 6744 -ComplexBlob(YACLib)/8/real_time 12941 ns 12904 ns 54593 -ComplexBlob(Folly)/8/real_time 30196 ns 30004 ns 23143 -ComplexBlob(BoostThread)/8/real_time 98775 ns 95798 ns 7089 +ComplexBlob/YACLib/8/real_time 12941 ns 12904 ns 54593 +ComplexBlob/Folly/8/real_time 30196 ns 30004 ns 23143 +ComplexBlob/BoostThread/8/real_time 98775 ns 95798 ns 7089 -ComplexBlob(YACLib)/16/real_time 13992 ns 13963 ns 50115 -ComplexBlob(Folly)/16/real_time 29328 ns 29162 ns 23746 -ComplexBlob(BoostThread)/16/real_time 98273 ns 95366 ns 7121 +ComplexBlob/YACLib/16/real_time 13992 ns 13963 ns 50115 +ComplexBlob/Folly/16/real_time 29328 ns 29162 ns 23746 +ComplexBlob/BoostThread/16/real_time 98273 ns 95366 ns 7121 -ComplexBlob(YACLib)/32/real_time 13898 ns 13868 ns 50482 -ComplexBlob(Folly)/32/real_time 29096 ns 28954 ns 24237 -ComplexBlob(BoostThread)/32/real_time 98355 ns 95451 ns 7111 +ComplexBlob/YACLib/32/real_time 13898 ns 13868 ns 50482 +ComplexBlob/Folly/32/real_time 29096 ns 28954 ns 24237 +ComplexBlob/BoostThread/32/real_time 98355 ns 95451 ns 7111 -ComplexBlob(YACLib)/64/real_time 14379 ns 14318 ns 49373 -ComplexBlob(Folly)/64/real_time 31230 ns 31117 ns 22204 -ComplexBlob(BoostThread)/64/real_time 103823 ns 100309 ns 6779 +ComplexBlob/YACLib/64/real_time 14379 ns 14318 ns 49373 +ComplexBlob/Folly/64/real_time 31230 ns 31117 ns 22204 +ComplexBlob/BoostThread/64/real_time 103823 ns 100309 ns 6779 -ComplexBlob(YACLib)/128/real_time 16263 ns 16199 ns 43716 -ComplexBlob(Folly)/128/real_time 31968 ns 31861 ns 21806 -ComplexBlob(BoostThread)/128/real_time 104064 ns 100281 ns 6759 +ComplexBlob/YACLib/128/real_time 16263 ns 16199 ns 43716 +ComplexBlob/Folly/128/real_time 31968 ns 31861 ns 21806 +ComplexBlob/BoostThread/128/real_time 104064 ns 100281 ns 6759 -ComplexBlob(YACLib)/256/real_time 16082 ns 16007 ns 43301 -ComplexBlob(Folly)/256/real_time 33046 ns 32904 ns 21056 -ComplexBlob(BoostThread)/256/real_time 105271 ns 101535 ns 6686 +ComplexBlob/YACLib/256/real_time 16082 ns 16007 ns 43301 +ComplexBlob/Folly/256/real_time 33046 ns 32904 ns 21056 +ComplexBlob/BoostThread/256/real_time 105271 ns 101535 ns 6686 -ComplexBlob(YACLib)/512/real_time 17442 ns 17381 ns 39884 -ComplexBlob(Folly)/512/real_time 34686 ns 34543 ns 20176 -ComplexBlob(BoostThread)/512/real_time 106351 ns 102546 ns 6618 +ComplexBlob/YACLib/512/real_time 17442 ns 17381 ns 39884 +ComplexBlob/Folly/512/real_time 34686 ns 34543 ns 20176 +ComplexBlob/BoostThread/512/real_time 106351 ns 102546 ns 6618 -ComplexBlob(YACLib)/1024/real_time 27506 ns 27401 ns 25395 -ComplexBlob(Folly)/1024/real_time 42317 ns 42130 ns 16525 -ComplexBlob(BoostThread)/1024/real_time 124590 ns 121059 ns 5644 +ComplexBlob/YACLib/1024/real_time 27506 ns 27401 ns 25395 +ComplexBlob/Folly/1024/real_time 42317 ns 42130 ns 16525 +ComplexBlob/BoostThread/1024/real_time 124590 ns 121059 ns 5644 -ComplexBlob(YACLib)/2048/real_time 33180 ns 33059 ns 21088 -ComplexBlob(Folly)/2048/real_time 48386 ns 48215 ns 14447 -ComplexBlob(BoostThread)/2048/real_time 125508 ns 122316 ns 5403 +ComplexBlob/YACLib/2048/real_time 33180 ns 33059 ns 21088 +ComplexBlob/Folly/2048/real_time 48386 ns 48215 ns 14447 +ComplexBlob/BoostThread/2048/real_time 125508 ns 122316 ns 5403 -ComplexBlob(YACLib)/4096/real_time 42182 ns 42170 ns 16597 -ComplexBlob(Folly)/4096/real_time 59954 ns 59949 ns 11643 -ComplexBlob(BoostThread)/4096/real_time 132468 ns 129450 ns 5289 +ComplexBlob/YACLib/4096/real_time 42182 ns 42170 ns 16597 +ComplexBlob/Folly/4096/real_time 59954 ns 59949 ns 11643 +ComplexBlob/BoostThread/4096/real_time 132468 ns 129450 ns 5289 -ComplexBlob(YACLib)/8192/real_time 114877 ns 114869 ns 6086 -ComplexBlob(Folly)/8192/real_time 130345 ns 130336 ns 5364 -ComplexBlob(BoostThread)/8192/real_time 179593 ns 176434 ns 3895 +ComplexBlob/YACLib/8192/real_time 114877 ns 114869 ns 6086 +ComplexBlob/Folly/8192/real_time 130345 ns 130336 ns 5364 +ComplexBlob/BoostThread/8192/real_time 179593 ns 176434 ns 3895 -NoContention(YACLib)/real_time 750686 ns 314437 ns 928 -NoContention(Folly)/real_time 1225356 ns 505605 ns 571 -NoContention(BoostThread)/real_time 3862092 ns 1873659 ns 181 +NoContention/YACLib/real_time 750686 ns 314437 ns 928 +NoContention/Folly/real_time 1225356 ns 505605 ns 571 +NoContention/BoostThread/real_time 3862092 ns 1873659 ns 181 -Contention(YACLib)/real_time 1155390 ns 291587 ns 611 -Contention(Folly)/real_time 2117608 ns 560854 ns 330 -Contention(BoostThread)/real_time 5971219 ns 1824637 ns 119 +Contention/YACLib/real_time 1155390 ns 291587 ns 611 +Contention/Folly/real_time 2117608 ns 560854 ns 330 +Contention/BoostThread/real_time 5971219 ns 1824637 ns 119 ``` @@ -488,94 +488,94 @@ Load Average: 0.80, 0.81, 0.67 ----------------------------------------------------------------------------- Benchmark Time CPU Iterations ----------------------------------------------------------------------------- -ConstantFuture(Std)/real_time 41.1 ns 41.0 ns 17436305 -ConstantFuture(YACLib)/real_time 16.4 ns 16.3 ns 43327014 +ConstantFuture/Std/real_time 41.1 ns 41.0 ns 17436305 +ConstantFuture/YACLib/real_time 16.4 ns 16.3 ns 43327014 -PromiseAndFuture(Std)/real_time 49.8 ns 49.6 ns 14091817 -PromiseAndFuture(YACLib)/real_time 32.8 ns 32.7 ns 21429744 +PromiseAndFuture/Std/real_time 49.8 ns 49.6 ns 14091817 +PromiseAndFuture/YACLib/real_time 32.8 ns 32.7 ns 21429744 -Then(YACLib)/0/0/real_time 73.4 ns 73.2 ns 9485851 +Then/YACLib/0/0/real_time 73.4 ns 73.2 ns 9485851 -Then(YACLib)/1/0/real_time 152 ns 152 ns 4410053 +Then/YACLib/1/0/real_time 152 ns 152 ns 4410053 -Then(YACLib)/2/0/real_time 228 ns 228 ns 3093238 +Then/YACLib/2/0/real_time 228 ns 228 ns 3093238 -Then(YACLib)/4/0/real_time 399 ns 398 ns 1787154 +Then/YACLib/4/0/real_time 399 ns 398 ns 1787154 -Then(YACLib)/8/0/real_time 716 ns 715 ns 989649 +Then/YACLib/8/0/real_time 716 ns 715 ns 989649 -Then(YACLib)/16/0/real_time 1317 ns 1315 ns 530073 +Then/YACLib/16/0/real_time 1317 ns 1315 ns 530073 -Then(YACLib)/32/0/real_time 2539 ns 2533 ns 276433 +Then/YACLib/32/0/real_time 2539 ns 2533 ns 276433 -Then(YACLib)/64/0/real_time 4943 ns 4932 ns 141286 +Then/YACLib/64/0/real_time 4943 ns 4932 ns 141286 -Then(YACLib)/0/1/real_time 5878 ns 3852 ns 118884 +Then/YACLib/0/1/real_time 5878 ns 3852 ns 118884 -Then(YACLib)/1/1/real_time 6069 ns 4032 ns 116418 +Then/YACLib/1/1/real_time 6069 ns 4032 ns 116418 -Then(YACLib)/2/1/real_time 6024 ns 4056 ns 115451 +Then/YACLib/2/1/real_time 6024 ns 4056 ns 115451 -Then(YACLib)/4/1/real_time 6126 ns 4199 ns 112194 +Then/YACLib/4/1/real_time 6126 ns 4199 ns 112194 -Then(YACLib)/8/1/real_time 6689 ns 4691 ns 105765 +Then/YACLib/8/1/real_time 6689 ns 4691 ns 105765 -Then(YACLib)/16/1/real_time 7128 ns 5405 ns 97268 +Then/YACLib/16/1/real_time 7128 ns 5405 ns 97268 -Then(YACLib)/32/1/real_time 8147 ns 7084 ns 88009 +Then/YACLib/32/1/real_time 8147 ns 7084 ns 88009 -Then(YACLib)/64/1/real_time 8754 ns 8692 ns 79270 +Then/YACLib/64/1/real_time 8754 ns 8692 ns 79270 -Then(YACLib)/0/2/real_time 5779 ns 3798 ns 120670 +Then/YACLib/0/2/real_time 5779 ns 3798 ns 120670 -Then(YACLib)/1/2/real_time 5984 ns 3965 ns 117194 +Then/YACLib/1/2/real_time 5984 ns 3965 ns 117194 -Then(YACLib)/2/2/real_time 6314 ns 4136 ns 111981 +Then/YACLib/2/2/real_time 6314 ns 4136 ns 111981 -Then(YACLib)/4/2/real_time 6645 ns 4327 ns 105767 +Then/YACLib/4/2/real_time 6645 ns 4327 ns 105767 -Then(YACLib)/8/2/real_time 7312 ns 4756 ns 94191 +Then/YACLib/8/2/real_time 7312 ns 4756 ns 94191 -Then(YACLib)/16/2/real_time 9066 ns 5884 ns 77092 +Then/YACLib/16/2/real_time 9066 ns 5884 ns 77092 -Then(YACLib)/32/2/real_time 14429 ns 9621 ns 48712 +Then/YACLib/32/2/real_time 14429 ns 9621 ns 48712 -Then(YACLib)/64/2/real_time 24817 ns 16941 ns 28326 +Then/YACLib/64/2/real_time 24817 ns 16941 ns 28326 -ComplexBlob(YACLib)/0/real_time 15105 ns 15045 ns 49675 +ComplexBlob/YACLib/0/real_time 15105 ns 15045 ns 49675 -ComplexBlob(YACLib)/2/real_time 13636 ns 13577 ns 53415 +ComplexBlob/YACLib/2/real_time 13636 ns 13577 ns 53415 -ComplexBlob(YACLib)/4/real_time 13759 ns 13703 ns 53228 +ComplexBlob/YACLib/4/real_time 13759 ns 13703 ns 53228 -ComplexBlob(YACLib)/8/real_time 13149 ns 13088 ns 52965 +ComplexBlob/YACLib/8/real_time 13149 ns 13088 ns 52965 -ComplexBlob(YACLib)/16/real_time 16103 ns 16051 ns 47824 +ComplexBlob/YACLib/16/real_time 16103 ns 16051 ns 47824 -ComplexBlob(YACLib)/32/real_time 14720 ns 14665 ns 47499 +ComplexBlob/YACLib/32/real_time 14720 ns 14665 ns 47499 -ComplexBlob(YACLib)/64/real_time 13941 ns 13872 ns 50286 +ComplexBlob/YACLib/64/real_time 13941 ns 13872 ns 50286 -ComplexBlob(YACLib)/128/real_time 14453 ns 14387 ns 48276 +ComplexBlob/YACLib/128/real_time 14453 ns 14387 ns 48276 -ComplexBlob(YACLib)/256/real_time 15179 ns 15107 ns 46252 +ComplexBlob/YACLib/256/real_time 15179 ns 15107 ns 46252 -ComplexBlob(YACLib)/512/real_time 16462 ns 16376 ns 42430 +ComplexBlob/YACLib/512/real_time 16462 ns 16376 ns 42430 -ComplexBlob(YACLib)/1024/real_time 26172 ns 26043 ns 26664 +ComplexBlob/YACLib/1024/real_time 26172 ns 26043 ns 26664 -ComplexBlob(YACLib)/2048/real_time 30658 ns 30515 ns 22873 +ComplexBlob/YACLib/2048/real_time 30658 ns 30515 ns 22873 -ComplexBlob(YACLib)/4096/real_time 45413 ns 45353 ns 15430 +ComplexBlob/YACLib/4096/real_time 45413 ns 45353 ns 15430 -ComplexBlob(YACLib)/8192/real_time 130512 ns 130338 ns 5386 +ComplexBlob/YACLib/8192/real_time 130512 ns 130338 ns 5386 -NoContention(YACLib)/real_time 735608 ns 301239 ns 952 +NoContention/YACLib/real_time 735608 ns 301239 ns 952 -Contention(YACLib)/real_time 1026614 ns 242974 ns 646 +Contention/YACLib/real_time 1026614 ns 242974 ns 646 ``` diff --git a/future/result/i7-11850H/clang_libcxx/data.json b/future/result/i7-11850H/clang_libcxx/data.json index 1838676..8f45638 100644 --- a/future/result/i7-11850H/clang_libcxx/data.json +++ b/future/result/i7-11850H/clang_libcxx/data.json @@ -37,10 +37,10 @@ }, "benchmarks": [ { - "name": "ConstantFuture(Std)/real_time", + "name": "ConstantFuture/Std/real_time", "family_index": 0, "per_family_instance_index": 0, - "run_name": "ConstantFuture(Std)/real_time", + "run_name": "ConstantFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -51,10 +51,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(YACLib)/real_time", + "name": "ConstantFuture/YACLib/real_time", "family_index": 1, "per_family_instance_index": 0, - "run_name": "ConstantFuture(YACLib)/real_time", + "run_name": "ConstantFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -65,10 +65,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(Std)/real_time", + "name": "PromiseAndFuture/Std/real_time", "family_index": 2, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(Std)/real_time", + "run_name": "PromiseAndFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -79,10 +79,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(YACLib)/real_time", + "name": "PromiseAndFuture/YACLib/real_time", "family_index": 3, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(YACLib)/real_time", + "run_name": "PromiseAndFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -93,10 +93,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/0/real_time", + "name": "Then/YACLib/0/0/real_time", "family_index": 4, "per_family_instance_index": 0, - "run_name": "Then(YACLib)/0/0/real_time", + "run_name": "Then/YACLib/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -107,10 +107,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/0/real_time", + "name": "Then/YACLib/1/0/real_time", "family_index": 4, "per_family_instance_index": 1, - "run_name": "Then(YACLib)/1/0/real_time", + "run_name": "Then/YACLib/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -121,10 +121,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/0/real_time", + "name": "Then/YACLib/2/0/real_time", "family_index": 4, "per_family_instance_index": 2, - "run_name": "Then(YACLib)/2/0/real_time", + "run_name": "Then/YACLib/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -135,10 +135,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/0/real_time", + "name": "Then/YACLib/4/0/real_time", "family_index": 4, "per_family_instance_index": 3, - "run_name": "Then(YACLib)/4/0/real_time", + "run_name": "Then/YACLib/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -149,10 +149,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/0/real_time", + "name": "Then/YACLib/8/0/real_time", "family_index": 4, "per_family_instance_index": 4, - "run_name": "Then(YACLib)/8/0/real_time", + "run_name": "Then/YACLib/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -163,10 +163,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/0/real_time", + "name": "Then/YACLib/16/0/real_time", "family_index": 4, "per_family_instance_index": 5, - "run_name": "Then(YACLib)/16/0/real_time", + "run_name": "Then/YACLib/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -177,10 +177,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/0/real_time", + "name": "Then/YACLib/32/0/real_time", "family_index": 4, "per_family_instance_index": 6, - "run_name": "Then(YACLib)/32/0/real_time", + "run_name": "Then/YACLib/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -191,10 +191,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/0/real_time", + "name": "Then/YACLib/64/0/real_time", "family_index": 4, "per_family_instance_index": 7, - "run_name": "Then(YACLib)/64/0/real_time", + "run_name": "Then/YACLib/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -205,10 +205,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/1/real_time", + "name": "Then/YACLib/0/1/real_time", "family_index": 4, "per_family_instance_index": 8, - "run_name": "Then(YACLib)/0/1/real_time", + "run_name": "Then/YACLib/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -219,10 +219,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/1/real_time", + "name": "Then/YACLib/1/1/real_time", "family_index": 4, "per_family_instance_index": 9, - "run_name": "Then(YACLib)/1/1/real_time", + "run_name": "Then/YACLib/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -233,10 +233,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/1/real_time", + "name": "Then/YACLib/2/1/real_time", "family_index": 4, "per_family_instance_index": 10, - "run_name": "Then(YACLib)/2/1/real_time", + "run_name": "Then/YACLib/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -247,10 +247,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/1/real_time", + "name": "Then/YACLib/4/1/real_time", "family_index": 4, "per_family_instance_index": 11, - "run_name": "Then(YACLib)/4/1/real_time", + "run_name": "Then/YACLib/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -261,10 +261,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/1/real_time", + "name": "Then/YACLib/8/1/real_time", "family_index": 4, "per_family_instance_index": 12, - "run_name": "Then(YACLib)/8/1/real_time", + "run_name": "Then/YACLib/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -275,10 +275,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/1/real_time", + "name": "Then/YACLib/16/1/real_time", "family_index": 4, "per_family_instance_index": 13, - "run_name": "Then(YACLib)/16/1/real_time", + "run_name": "Then/YACLib/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -289,10 +289,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/1/real_time", + "name": "Then/YACLib/32/1/real_time", "family_index": 4, "per_family_instance_index": 14, - "run_name": "Then(YACLib)/32/1/real_time", + "run_name": "Then/YACLib/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -303,10 +303,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/1/real_time", + "name": "Then/YACLib/64/1/real_time", "family_index": 4, "per_family_instance_index": 15, - "run_name": "Then(YACLib)/64/1/real_time", + "run_name": "Then/YACLib/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -317,10 +317,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/2/real_time", + "name": "Then/YACLib/0/2/real_time", "family_index": 4, "per_family_instance_index": 16, - "run_name": "Then(YACLib)/0/2/real_time", + "run_name": "Then/YACLib/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -331,10 +331,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/2/real_time", + "name": "Then/YACLib/1/2/real_time", "family_index": 4, "per_family_instance_index": 17, - "run_name": "Then(YACLib)/1/2/real_time", + "run_name": "Then/YACLib/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -345,10 +345,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/2/real_time", + "name": "Then/YACLib/2/2/real_time", "family_index": 4, "per_family_instance_index": 18, - "run_name": "Then(YACLib)/2/2/real_time", + "run_name": "Then/YACLib/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -359,10 +359,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/2/real_time", + "name": "Then/YACLib/4/2/real_time", "family_index": 4, "per_family_instance_index": 19, - "run_name": "Then(YACLib)/4/2/real_time", + "run_name": "Then/YACLib/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -373,10 +373,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/2/real_time", + "name": "Then/YACLib/8/2/real_time", "family_index": 4, "per_family_instance_index": 20, - "run_name": "Then(YACLib)/8/2/real_time", + "run_name": "Then/YACLib/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -387,10 +387,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/2/real_time", + "name": "Then/YACLib/16/2/real_time", "family_index": 4, "per_family_instance_index": 21, - "run_name": "Then(YACLib)/16/2/real_time", + "run_name": "Then/YACLib/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -401,10 +401,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/2/real_time", + "name": "Then/YACLib/32/2/real_time", "family_index": 4, "per_family_instance_index": 22, - "run_name": "Then(YACLib)/32/2/real_time", + "run_name": "Then/YACLib/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -415,10 +415,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/2/real_time", + "name": "Then/YACLib/64/2/real_time", "family_index": 4, "per_family_instance_index": 23, - "run_name": "Then(YACLib)/64/2/real_time", + "run_name": "Then/YACLib/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -429,10 +429,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/0/real_time", + "name": "ComplexBlob/YACLib/0/real_time", "family_index": 5, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/0/real_time", + "run_name": "ComplexBlob/YACLib/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -443,10 +443,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2/real_time", + "name": "ComplexBlob/YACLib/2/real_time", "family_index": 6, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2/real_time", + "run_name": "ComplexBlob/YACLib/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -457,10 +457,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4/real_time", + "name": "ComplexBlob/YACLib/4/real_time", "family_index": 7, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4/real_time", + "run_name": "ComplexBlob/YACLib/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -471,10 +471,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8/real_time", + "name": "ComplexBlob/YACLib/8/real_time", "family_index": 8, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8/real_time", + "run_name": "ComplexBlob/YACLib/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -485,10 +485,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/16/real_time", + "name": "ComplexBlob/YACLib/16/real_time", "family_index": 9, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/16/real_time", + "run_name": "ComplexBlob/YACLib/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -499,10 +499,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/32/real_time", + "name": "ComplexBlob/YACLib/32/real_time", "family_index": 10, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/32/real_time", + "run_name": "ComplexBlob/YACLib/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -513,10 +513,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/64/real_time", + "name": "ComplexBlob/YACLib/64/real_time", "family_index": 11, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/64/real_time", + "run_name": "ComplexBlob/YACLib/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -527,10 +527,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/128/real_time", + "name": "ComplexBlob/YACLib/128/real_time", "family_index": 12, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/128/real_time", + "run_name": "ComplexBlob/YACLib/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -541,10 +541,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/256/real_time", + "name": "ComplexBlob/YACLib/256/real_time", "family_index": 13, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/256/real_time", + "run_name": "ComplexBlob/YACLib/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -555,10 +555,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/512/real_time", + "name": "ComplexBlob/YACLib/512/real_time", "family_index": 14, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/512/real_time", + "run_name": "ComplexBlob/YACLib/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -569,10 +569,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/1024/real_time", + "name": "ComplexBlob/YACLib/1024/real_time", "family_index": 15, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/1024/real_time", + "run_name": "ComplexBlob/YACLib/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -583,10 +583,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2048/real_time", + "name": "ComplexBlob/YACLib/2048/real_time", "family_index": 16, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2048/real_time", + "run_name": "ComplexBlob/YACLib/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -597,10 +597,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4096/real_time", + "name": "ComplexBlob/YACLib/4096/real_time", "family_index": 17, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4096/real_time", + "run_name": "ComplexBlob/YACLib/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -611,10 +611,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8192/real_time", + "name": "ComplexBlob/YACLib/8192/real_time", "family_index": 18, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8192/real_time", + "run_name": "ComplexBlob/YACLib/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -625,10 +625,10 @@ "time_unit": "ns" }, { - "name": "NoContention(YACLib)/real_time", + "name": "NoContention/YACLib/real_time", "family_index": 19, "per_family_instance_index": 0, - "run_name": "NoContention(YACLib)/real_time", + "run_name": "NoContention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -639,10 +639,10 @@ "time_unit": "ns" }, { - "name": "Contention(YACLib)/real_time", + "name": "Contention/YACLib/real_time", "family_index": 20, "per_family_instance_index": 0, - "run_name": "Contention(YACLib)/real_time", + "run_name": "Contention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, diff --git a/future/result/i7-11850H/clang_libcxx/picture/ComplexBlob.svg b/future/result/i7-11850H/clang_libcxx/picture/ComplexBlob.svg new file mode 100644 index 0000000..6fff5d7 --- /dev/null +++ b/future/result/i7-11850H/clang_libcxx/picture/ComplexBlob.svg @@ -0,0 +1,702 @@ + + + + + + + + 2022-04-10T19:11:39.373426 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-11850H/clang_libcxx/picture/ConstantFuture.svg b/future/result/i7-11850H/clang_libcxx/picture/ConstantFuture.svg new file mode 100644 index 0000000..f2fb125 --- /dev/null +++ b/future/result/i7-11850H/clang_libcxx/picture/ConstantFuture.svg @@ -0,0 +1,839 @@ + + + + + + + + 2022-04-10T19:11:38.403088 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-11850H/clang_libcxx/picture/Contention.svg b/future/result/i7-11850H/clang_libcxx/picture/Contention.svg new file mode 100644 index 0000000..b4635fa --- /dev/null +++ b/future/result/i7-11850H/clang_libcxx/picture/Contention.svg @@ -0,0 +1,574 @@ + + + + + + + + 2022-04-10T19:11:39.711399 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-11850H/clang_libcxx/picture/NoContention.svg b/future/result/i7-11850H/clang_libcxx/picture/NoContention.svg new file mode 100644 index 0000000..2011633 --- /dev/null +++ b/future/result/i7-11850H/clang_libcxx/picture/NoContention.svg @@ -0,0 +1,669 @@ + + + + + + + + 2022-04-10T19:11:39.533759 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-11850H/clang_libcxx/picture/PromiseAndFuture.svg b/future/result/i7-11850H/clang_libcxx/picture/PromiseAndFuture.svg new file mode 100644 index 0000000..1fb2cdb --- /dev/null +++ b/future/result/i7-11850H/clang_libcxx/picture/PromiseAndFuture.svg @@ -0,0 +1,910 @@ + + + + + + + + 2022-04-10T19:11:38.557437 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-11850H/clang_libcxx/picture/ThenAllInline.svg b/future/result/i7-11850H/clang_libcxx/picture/ThenAllInline.svg new file mode 100644 index 0000000..b3c1ba8 --- /dev/null +++ b/future/result/i7-11850H/clang_libcxx/picture/ThenAllInline.svg @@ -0,0 +1,815 @@ + + + + + + + + 2022-04-10T19:11:38.737114 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-11850H/clang_libcxx/picture/ThenOneInline.svg b/future/result/i7-11850H/clang_libcxx/picture/ThenOneInline.svg new file mode 100644 index 0000000..74228a2 --- /dev/null +++ b/future/result/i7-11850H/clang_libcxx/picture/ThenOneInline.svg @@ -0,0 +1,694 @@ + + + + + + + + 2022-04-10T19:11:38.923301 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-11850H/clang_libcxx/picture/ThenScheduler.svg b/future/result/i7-11850H/clang_libcxx/picture/ThenScheduler.svg new file mode 100644 index 0000000..d50bc0a --- /dev/null +++ b/future/result/i7-11850H/clang_libcxx/picture/ThenScheduler.svg @@ -0,0 +1,797 @@ + + + + + + + + 2022-04-10T19:11:39.080297 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-11850H/clang_libstdcxx/data.json b/future/result/i7-11850H/clang_libstdcxx/data.json index 21de445..2c77c53 100644 --- a/future/result/i7-11850H/clang_libstdcxx/data.json +++ b/future/result/i7-11850H/clang_libstdcxx/data.json @@ -37,10 +37,10 @@ }, "benchmarks": [ { - "name": "ConstantFuture(Std)/real_time", + "name": "ConstantFuture/Std/real_time", "family_index": 0, "per_family_instance_index": 0, - "run_name": "ConstantFuture(Std)/real_time", + "run_name": "ConstantFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -51,10 +51,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(YACLib)/real_time", + "name": "ConstantFuture/YACLib/real_time", "family_index": 1, "per_family_instance_index": 0, - "run_name": "ConstantFuture(YACLib)/real_time", + "run_name": "ConstantFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -65,10 +65,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(Folly)/real_time", + "name": "ConstantFuture/Folly/real_time", "family_index": 2, "per_family_instance_index": 0, - "run_name": "ConstantFuture(Folly)/real_time", + "run_name": "ConstantFuture/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -79,10 +79,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(BoostThread)/real_time", + "name": "ConstantFuture/BoostThread/real_time", "family_index": 3, "per_family_instance_index": 0, - "run_name": "ConstantFuture(BoostThread)/real_time", + "run_name": "ConstantFuture/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -93,10 +93,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(Std)/real_time", + "name": "PromiseAndFuture/Std/real_time", "family_index": 4, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(Std)/real_time", + "run_name": "PromiseAndFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -107,10 +107,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(YACLib)/real_time", + "name": "PromiseAndFuture/YACLib/real_time", "family_index": 5, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(YACLib)/real_time", + "run_name": "PromiseAndFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -121,10 +121,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(Folly)/real_time", + "name": "PromiseAndFuture/Folly/real_time", "family_index": 6, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(Folly)/real_time", + "run_name": "PromiseAndFuture/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -135,10 +135,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(BoostThread)/real_time", + "name": "PromiseAndFuture/BoostThread/real_time", "family_index": 7, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(BoostThread)/real_time", + "run_name": "PromiseAndFuture/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -149,10 +149,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/0/real_time", + "name": "Then/YACLib/0/0/real_time", "family_index": 8, "per_family_instance_index": 0, - "run_name": "Then(YACLib)/0/0/real_time", + "run_name": "Then/YACLib/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -163,10 +163,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/0/real_time", + "name": "Then/YACLib/1/0/real_time", "family_index": 8, "per_family_instance_index": 1, - "run_name": "Then(YACLib)/1/0/real_time", + "run_name": "Then/YACLib/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -177,10 +177,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/0/real_time", + "name": "Then/YACLib/2/0/real_time", "family_index": 8, "per_family_instance_index": 2, - "run_name": "Then(YACLib)/2/0/real_time", + "run_name": "Then/YACLib/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -191,10 +191,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/0/real_time", + "name": "Then/YACLib/4/0/real_time", "family_index": 8, "per_family_instance_index": 3, - "run_name": "Then(YACLib)/4/0/real_time", + "run_name": "Then/YACLib/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -205,10 +205,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/0/real_time", + "name": "Then/YACLib/8/0/real_time", "family_index": 8, "per_family_instance_index": 4, - "run_name": "Then(YACLib)/8/0/real_time", + "run_name": "Then/YACLib/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -219,10 +219,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/0/real_time", + "name": "Then/YACLib/16/0/real_time", "family_index": 8, "per_family_instance_index": 5, - "run_name": "Then(YACLib)/16/0/real_time", + "run_name": "Then/YACLib/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -233,10 +233,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/0/real_time", + "name": "Then/YACLib/32/0/real_time", "family_index": 8, "per_family_instance_index": 6, - "run_name": "Then(YACLib)/32/0/real_time", + "run_name": "Then/YACLib/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -247,10 +247,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/0/real_time", + "name": "Then/YACLib/64/0/real_time", "family_index": 8, "per_family_instance_index": 7, - "run_name": "Then(YACLib)/64/0/real_time", + "run_name": "Then/YACLib/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -261,10 +261,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/1/real_time", + "name": "Then/YACLib/0/1/real_time", "family_index": 8, "per_family_instance_index": 8, - "run_name": "Then(YACLib)/0/1/real_time", + "run_name": "Then/YACLib/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -275,10 +275,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/1/real_time", + "name": "Then/YACLib/1/1/real_time", "family_index": 8, "per_family_instance_index": 9, - "run_name": "Then(YACLib)/1/1/real_time", + "run_name": "Then/YACLib/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -289,10 +289,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/1/real_time", + "name": "Then/YACLib/2/1/real_time", "family_index": 8, "per_family_instance_index": 10, - "run_name": "Then(YACLib)/2/1/real_time", + "run_name": "Then/YACLib/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -303,10 +303,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/1/real_time", + "name": "Then/YACLib/4/1/real_time", "family_index": 8, "per_family_instance_index": 11, - "run_name": "Then(YACLib)/4/1/real_time", + "run_name": "Then/YACLib/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -317,10 +317,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/1/real_time", + "name": "Then/YACLib/8/1/real_time", "family_index": 8, "per_family_instance_index": 12, - "run_name": "Then(YACLib)/8/1/real_time", + "run_name": "Then/YACLib/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -331,10 +331,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/1/real_time", + "name": "Then/YACLib/16/1/real_time", "family_index": 8, "per_family_instance_index": 13, - "run_name": "Then(YACLib)/16/1/real_time", + "run_name": "Then/YACLib/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -345,10 +345,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/1/real_time", + "name": "Then/YACLib/32/1/real_time", "family_index": 8, "per_family_instance_index": 14, - "run_name": "Then(YACLib)/32/1/real_time", + "run_name": "Then/YACLib/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -359,10 +359,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/1/real_time", + "name": "Then/YACLib/64/1/real_time", "family_index": 8, "per_family_instance_index": 15, - "run_name": "Then(YACLib)/64/1/real_time", + "run_name": "Then/YACLib/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -373,10 +373,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/2/real_time", + "name": "Then/YACLib/0/2/real_time", "family_index": 8, "per_family_instance_index": 16, - "run_name": "Then(YACLib)/0/2/real_time", + "run_name": "Then/YACLib/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -387,10 +387,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/2/real_time", + "name": "Then/YACLib/1/2/real_time", "family_index": 8, "per_family_instance_index": 17, - "run_name": "Then(YACLib)/1/2/real_time", + "run_name": "Then/YACLib/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -401,10 +401,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/2/real_time", + "name": "Then/YACLib/2/2/real_time", "family_index": 8, "per_family_instance_index": 18, - "run_name": "Then(YACLib)/2/2/real_time", + "run_name": "Then/YACLib/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -415,10 +415,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/2/real_time", + "name": "Then/YACLib/4/2/real_time", "family_index": 8, "per_family_instance_index": 19, - "run_name": "Then(YACLib)/4/2/real_time", + "run_name": "Then/YACLib/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -429,10 +429,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/2/real_time", + "name": "Then/YACLib/8/2/real_time", "family_index": 8, "per_family_instance_index": 20, - "run_name": "Then(YACLib)/8/2/real_time", + "run_name": "Then/YACLib/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -443,10 +443,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/2/real_time", + "name": "Then/YACLib/16/2/real_time", "family_index": 8, "per_family_instance_index": 21, - "run_name": "Then(YACLib)/16/2/real_time", + "run_name": "Then/YACLib/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -457,10 +457,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/2/real_time", + "name": "Then/YACLib/32/2/real_time", "family_index": 8, "per_family_instance_index": 22, - "run_name": "Then(YACLib)/32/2/real_time", + "run_name": "Then/YACLib/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -471,10 +471,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/2/real_time", + "name": "Then/YACLib/64/2/real_time", "family_index": 8, "per_family_instance_index": 23, - "run_name": "Then(YACLib)/64/2/real_time", + "run_name": "Then/YACLib/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -485,10 +485,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/0/real_time", + "name": "Then/Folly/0/0/real_time", "family_index": 9, "per_family_instance_index": 0, - "run_name": "Then(Folly)/0/0/real_time", + "run_name": "Then/Folly/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -499,10 +499,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/0/real_time", + "name": "Then/Folly/1/0/real_time", "family_index": 9, "per_family_instance_index": 1, - "run_name": "Then(Folly)/1/0/real_time", + "run_name": "Then/Folly/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -513,10 +513,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/0/real_time", + "name": "Then/Folly/2/0/real_time", "family_index": 9, "per_family_instance_index": 2, - "run_name": "Then(Folly)/2/0/real_time", + "run_name": "Then/Folly/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -527,10 +527,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/0/real_time", + "name": "Then/Folly/4/0/real_time", "family_index": 9, "per_family_instance_index": 3, - "run_name": "Then(Folly)/4/0/real_time", + "run_name": "Then/Folly/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -541,10 +541,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/0/real_time", + "name": "Then/Folly/8/0/real_time", "family_index": 9, "per_family_instance_index": 4, - "run_name": "Then(Folly)/8/0/real_time", + "run_name": "Then/Folly/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -555,10 +555,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/0/real_time", + "name": "Then/Folly/16/0/real_time", "family_index": 9, "per_family_instance_index": 5, - "run_name": "Then(Folly)/16/0/real_time", + "run_name": "Then/Folly/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -569,10 +569,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/0/real_time", + "name": "Then/Folly/32/0/real_time", "family_index": 9, "per_family_instance_index": 6, - "run_name": "Then(Folly)/32/0/real_time", + "run_name": "Then/Folly/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -583,10 +583,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/0/real_time", + "name": "Then/Folly/64/0/real_time", "family_index": 9, "per_family_instance_index": 7, - "run_name": "Then(Folly)/64/0/real_time", + "run_name": "Then/Folly/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -597,10 +597,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/1/real_time", + "name": "Then/Folly/0/1/real_time", "family_index": 9, "per_family_instance_index": 8, - "run_name": "Then(Folly)/0/1/real_time", + "run_name": "Then/Folly/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -611,10 +611,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/1/real_time", + "name": "Then/Folly/1/1/real_time", "family_index": 9, "per_family_instance_index": 9, - "run_name": "Then(Folly)/1/1/real_time", + "run_name": "Then/Folly/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -625,10 +625,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/1/real_time", + "name": "Then/Folly/2/1/real_time", "family_index": 9, "per_family_instance_index": 10, - "run_name": "Then(Folly)/2/1/real_time", + "run_name": "Then/Folly/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -639,10 +639,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/1/real_time", + "name": "Then/Folly/4/1/real_time", "family_index": 9, "per_family_instance_index": 11, - "run_name": "Then(Folly)/4/1/real_time", + "run_name": "Then/Folly/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -653,10 +653,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/1/real_time", + "name": "Then/Folly/8/1/real_time", "family_index": 9, "per_family_instance_index": 12, - "run_name": "Then(Folly)/8/1/real_time", + "run_name": "Then/Folly/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -667,10 +667,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/1/real_time", + "name": "Then/Folly/16/1/real_time", "family_index": 9, "per_family_instance_index": 13, - "run_name": "Then(Folly)/16/1/real_time", + "run_name": "Then/Folly/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -681,10 +681,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/1/real_time", + "name": "Then/Folly/32/1/real_time", "family_index": 9, "per_family_instance_index": 14, - "run_name": "Then(Folly)/32/1/real_time", + "run_name": "Then/Folly/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -695,10 +695,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/1/real_time", + "name": "Then/Folly/64/1/real_time", "family_index": 9, "per_family_instance_index": 15, - "run_name": "Then(Folly)/64/1/real_time", + "run_name": "Then/Folly/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -709,10 +709,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/2/real_time", + "name": "Then/Folly/0/2/real_time", "family_index": 9, "per_family_instance_index": 16, - "run_name": "Then(Folly)/0/2/real_time", + "run_name": "Then/Folly/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -723,10 +723,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/2/real_time", + "name": "Then/Folly/1/2/real_time", "family_index": 9, "per_family_instance_index": 17, - "run_name": "Then(Folly)/1/2/real_time", + "run_name": "Then/Folly/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -737,10 +737,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/2/real_time", + "name": "Then/Folly/2/2/real_time", "family_index": 9, "per_family_instance_index": 18, - "run_name": "Then(Folly)/2/2/real_time", + "run_name": "Then/Folly/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -751,10 +751,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/2/real_time", + "name": "Then/Folly/4/2/real_time", "family_index": 9, "per_family_instance_index": 19, - "run_name": "Then(Folly)/4/2/real_time", + "run_name": "Then/Folly/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -765,10 +765,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/2/real_time", + "name": "Then/Folly/8/2/real_time", "family_index": 9, "per_family_instance_index": 20, - "run_name": "Then(Folly)/8/2/real_time", + "run_name": "Then/Folly/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -779,10 +779,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/2/real_time", + "name": "Then/Folly/16/2/real_time", "family_index": 9, "per_family_instance_index": 21, - "run_name": "Then(Folly)/16/2/real_time", + "run_name": "Then/Folly/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -793,10 +793,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/2/real_time", + "name": "Then/Folly/32/2/real_time", "family_index": 9, "per_family_instance_index": 22, - "run_name": "Then(Folly)/32/2/real_time", + "run_name": "Then/Folly/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -807,10 +807,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/2/real_time", + "name": "Then/Folly/64/2/real_time", "family_index": 9, "per_family_instance_index": 23, - "run_name": "Then(Folly)/64/2/real_time", + "run_name": "Then/Folly/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -821,10 +821,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/0/real_time", + "name": "Then/BoostThread/0/0/real_time", "family_index": 10, "per_family_instance_index": 0, - "run_name": "Then(BoostThread)/0/0/real_time", + "run_name": "Then/BoostThread/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -835,10 +835,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/0/real_time", + "name": "Then/BoostThread/1/0/real_time", "family_index": 10, "per_family_instance_index": 1, - "run_name": "Then(BoostThread)/1/0/real_time", + "run_name": "Then/BoostThread/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -849,10 +849,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/0/real_time", + "name": "Then/BoostThread/2/0/real_time", "family_index": 10, "per_family_instance_index": 2, - "run_name": "Then(BoostThread)/2/0/real_time", + "run_name": "Then/BoostThread/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -863,10 +863,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/0/real_time", + "name": "Then/BoostThread/4/0/real_time", "family_index": 10, "per_family_instance_index": 3, - "run_name": "Then(BoostThread)/4/0/real_time", + "run_name": "Then/BoostThread/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -877,10 +877,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/0/real_time", + "name": "Then/BoostThread/8/0/real_time", "family_index": 10, "per_family_instance_index": 4, - "run_name": "Then(BoostThread)/8/0/real_time", + "run_name": "Then/BoostThread/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -891,10 +891,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/0/real_time", + "name": "Then/BoostThread/16/0/real_time", "family_index": 10, "per_family_instance_index": 5, - "run_name": "Then(BoostThread)/16/0/real_time", + "run_name": "Then/BoostThread/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -905,10 +905,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/0/real_time", + "name": "Then/BoostThread/32/0/real_time", "family_index": 10, "per_family_instance_index": 6, - "run_name": "Then(BoostThread)/32/0/real_time", + "run_name": "Then/BoostThread/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -919,10 +919,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/0/real_time", + "name": "Then/BoostThread/64/0/real_time", "family_index": 10, "per_family_instance_index": 7, - "run_name": "Then(BoostThread)/64/0/real_time", + "run_name": "Then/BoostThread/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -933,10 +933,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/1/real_time", + "name": "Then/BoostThread/0/1/real_time", "family_index": 10, "per_family_instance_index": 8, - "run_name": "Then(BoostThread)/0/1/real_time", + "run_name": "Then/BoostThread/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -947,10 +947,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/1/real_time", + "name": "Then/BoostThread/1/1/real_time", "family_index": 10, "per_family_instance_index": 9, - "run_name": "Then(BoostThread)/1/1/real_time", + "run_name": "Then/BoostThread/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -961,10 +961,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/1/real_time", + "name": "Then/BoostThread/2/1/real_time", "family_index": 10, "per_family_instance_index": 10, - "run_name": "Then(BoostThread)/2/1/real_time", + "run_name": "Then/BoostThread/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -975,10 +975,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/1/real_time", + "name": "Then/BoostThread/4/1/real_time", "family_index": 10, "per_family_instance_index": 11, - "run_name": "Then(BoostThread)/4/1/real_time", + "run_name": "Then/BoostThread/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -989,10 +989,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/1/real_time", + "name": "Then/BoostThread/8/1/real_time", "family_index": 10, "per_family_instance_index": 12, - "run_name": "Then(BoostThread)/8/1/real_time", + "run_name": "Then/BoostThread/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1003,10 +1003,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/1/real_time", + "name": "Then/BoostThread/16/1/real_time", "family_index": 10, "per_family_instance_index": 13, - "run_name": "Then(BoostThread)/16/1/real_time", + "run_name": "Then/BoostThread/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1017,10 +1017,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/1/real_time", + "name": "Then/BoostThread/32/1/real_time", "family_index": 10, "per_family_instance_index": 14, - "run_name": "Then(BoostThread)/32/1/real_time", + "run_name": "Then/BoostThread/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1031,10 +1031,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/1/real_time", + "name": "Then/BoostThread/64/1/real_time", "family_index": 10, "per_family_instance_index": 15, - "run_name": "Then(BoostThread)/64/1/real_time", + "run_name": "Then/BoostThread/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1045,10 +1045,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/2/real_time", + "name": "Then/BoostThread/0/2/real_time", "family_index": 10, "per_family_instance_index": 16, - "run_name": "Then(BoostThread)/0/2/real_time", + "run_name": "Then/BoostThread/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1059,10 +1059,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/2/real_time", + "name": "Then/BoostThread/1/2/real_time", "family_index": 10, "per_family_instance_index": 17, - "run_name": "Then(BoostThread)/1/2/real_time", + "run_name": "Then/BoostThread/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1073,10 +1073,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/2/real_time", + "name": "Then/BoostThread/2/2/real_time", "family_index": 10, "per_family_instance_index": 18, - "run_name": "Then(BoostThread)/2/2/real_time", + "run_name": "Then/BoostThread/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1087,10 +1087,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/2/real_time", + "name": "Then/BoostThread/4/2/real_time", "family_index": 10, "per_family_instance_index": 19, - "run_name": "Then(BoostThread)/4/2/real_time", + "run_name": "Then/BoostThread/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1101,10 +1101,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/2/real_time", + "name": "Then/BoostThread/8/2/real_time", "family_index": 10, "per_family_instance_index": 20, - "run_name": "Then(BoostThread)/8/2/real_time", + "run_name": "Then/BoostThread/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1115,10 +1115,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/2/real_time", + "name": "Then/BoostThread/16/2/real_time", "family_index": 10, "per_family_instance_index": 21, - "run_name": "Then(BoostThread)/16/2/real_time", + "run_name": "Then/BoostThread/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1129,10 +1129,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/2/real_time", + "name": "Then/BoostThread/32/2/real_time", "family_index": 10, "per_family_instance_index": 22, - "run_name": "Then(BoostThread)/32/2/real_time", + "run_name": "Then/BoostThread/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1143,10 +1143,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/2/real_time", + "name": "Then/BoostThread/64/2/real_time", "family_index": 10, "per_family_instance_index": 23, - "run_name": "Then(BoostThread)/64/2/real_time", + "run_name": "Then/BoostThread/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1157,10 +1157,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/0/real_time", + "name": "ComplexBlob/YACLib/0/real_time", "family_index": 11, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/0/real_time", + "run_name": "ComplexBlob/YACLib/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1171,10 +1171,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/0/real_time", + "name": "ComplexBlob/Folly/0/real_time", "family_index": 12, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/0/real_time", + "run_name": "ComplexBlob/Folly/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1185,10 +1185,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/0/real_time", + "name": "ComplexBlob/BoostThread/0/real_time", "family_index": 13, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/0/real_time", + "run_name": "ComplexBlob/BoostThread/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1199,10 +1199,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2/real_time", + "name": "ComplexBlob/YACLib/2/real_time", "family_index": 14, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2/real_time", + "run_name": "ComplexBlob/YACLib/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1213,10 +1213,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/2/real_time", + "name": "ComplexBlob/Folly/2/real_time", "family_index": 15, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/2/real_time", + "run_name": "ComplexBlob/Folly/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1227,10 +1227,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/2/real_time", + "name": "ComplexBlob/BoostThread/2/real_time", "family_index": 16, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/2/real_time", + "run_name": "ComplexBlob/BoostThread/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1241,10 +1241,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4/real_time", + "name": "ComplexBlob/YACLib/4/real_time", "family_index": 17, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4/real_time", + "run_name": "ComplexBlob/YACLib/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1255,10 +1255,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/4/real_time", + "name": "ComplexBlob/Folly/4/real_time", "family_index": 18, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/4/real_time", + "run_name": "ComplexBlob/Folly/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1269,10 +1269,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/4/real_time", + "name": "ComplexBlob/BoostThread/4/real_time", "family_index": 19, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/4/real_time", + "run_name": "ComplexBlob/BoostThread/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1283,10 +1283,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8/real_time", + "name": "ComplexBlob/YACLib/8/real_time", "family_index": 20, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8/real_time", + "run_name": "ComplexBlob/YACLib/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1297,10 +1297,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/8/real_time", + "name": "ComplexBlob/Folly/8/real_time", "family_index": 21, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/8/real_time", + "run_name": "ComplexBlob/Folly/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1311,10 +1311,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/8/real_time", + "name": "ComplexBlob/BoostThread/8/real_time", "family_index": 22, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/8/real_time", + "run_name": "ComplexBlob/BoostThread/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1325,10 +1325,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/16/real_time", + "name": "ComplexBlob/YACLib/16/real_time", "family_index": 23, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/16/real_time", + "run_name": "ComplexBlob/YACLib/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1339,10 +1339,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/16/real_time", + "name": "ComplexBlob/Folly/16/real_time", "family_index": 24, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/16/real_time", + "run_name": "ComplexBlob/Folly/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1353,10 +1353,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/16/real_time", + "name": "ComplexBlob/BoostThread/16/real_time", "family_index": 25, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/16/real_time", + "run_name": "ComplexBlob/BoostThread/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1367,10 +1367,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/32/real_time", + "name": "ComplexBlob/YACLib/32/real_time", "family_index": 26, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/32/real_time", + "run_name": "ComplexBlob/YACLib/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1381,10 +1381,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/32/real_time", + "name": "ComplexBlob/Folly/32/real_time", "family_index": 27, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/32/real_time", + "run_name": "ComplexBlob/Folly/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1395,10 +1395,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/32/real_time", + "name": "ComplexBlob/BoostThread/32/real_time", "family_index": 28, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/32/real_time", + "run_name": "ComplexBlob/BoostThread/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1409,10 +1409,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/64/real_time", + "name": "ComplexBlob/YACLib/64/real_time", "family_index": 29, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/64/real_time", + "run_name": "ComplexBlob/YACLib/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1423,10 +1423,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/64/real_time", + "name": "ComplexBlob/Folly/64/real_time", "family_index": 30, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/64/real_time", + "run_name": "ComplexBlob/Folly/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1437,10 +1437,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/64/real_time", + "name": "ComplexBlob/BoostThread/64/real_time", "family_index": 31, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/64/real_time", + "run_name": "ComplexBlob/BoostThread/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1451,10 +1451,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/128/real_time", + "name": "ComplexBlob/YACLib/128/real_time", "family_index": 32, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/128/real_time", + "run_name": "ComplexBlob/YACLib/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1465,10 +1465,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/128/real_time", + "name": "ComplexBlob/Folly/128/real_time", "family_index": 33, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/128/real_time", + "run_name": "ComplexBlob/Folly/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1479,10 +1479,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/128/real_time", + "name": "ComplexBlob/BoostThread/128/real_time", "family_index": 34, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/128/real_time", + "run_name": "ComplexBlob/BoostThread/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1493,10 +1493,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/256/real_time", + "name": "ComplexBlob/YACLib/256/real_time", "family_index": 35, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/256/real_time", + "run_name": "ComplexBlob/YACLib/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1507,10 +1507,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/256/real_time", + "name": "ComplexBlob/Folly/256/real_time", "family_index": 36, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/256/real_time", + "run_name": "ComplexBlob/Folly/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1521,10 +1521,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/256/real_time", + "name": "ComplexBlob/BoostThread/256/real_time", "family_index": 37, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/256/real_time", + "run_name": "ComplexBlob/BoostThread/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1535,10 +1535,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/512/real_time", + "name": "ComplexBlob/YACLib/512/real_time", "family_index": 38, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/512/real_time", + "run_name": "ComplexBlob/YACLib/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1549,10 +1549,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/512/real_time", + "name": "ComplexBlob/Folly/512/real_time", "family_index": 39, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/512/real_time", + "run_name": "ComplexBlob/Folly/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1563,10 +1563,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/512/real_time", + "name": "ComplexBlob/BoostThread/512/real_time", "family_index": 40, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/512/real_time", + "run_name": "ComplexBlob/BoostThread/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1577,10 +1577,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/1024/real_time", + "name": "ComplexBlob/YACLib/1024/real_time", "family_index": 41, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/1024/real_time", + "run_name": "ComplexBlob/YACLib/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1591,10 +1591,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/1024/real_time", + "name": "ComplexBlob/Folly/1024/real_time", "family_index": 42, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/1024/real_time", + "run_name": "ComplexBlob/Folly/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1605,10 +1605,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/1024/real_time", + "name": "ComplexBlob/BoostThread/1024/real_time", "family_index": 43, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/1024/real_time", + "run_name": "ComplexBlob/BoostThread/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1619,10 +1619,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2048/real_time", + "name": "ComplexBlob/YACLib/2048/real_time", "family_index": 44, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2048/real_time", + "run_name": "ComplexBlob/YACLib/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1633,10 +1633,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/2048/real_time", + "name": "ComplexBlob/Folly/2048/real_time", "family_index": 45, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/2048/real_time", + "run_name": "ComplexBlob/Folly/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1647,10 +1647,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/2048/real_time", + "name": "ComplexBlob/BoostThread/2048/real_time", "family_index": 46, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/2048/real_time", + "run_name": "ComplexBlob/BoostThread/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1661,10 +1661,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4096/real_time", + "name": "ComplexBlob/YACLib/4096/real_time", "family_index": 47, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4096/real_time", + "run_name": "ComplexBlob/YACLib/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1675,10 +1675,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/4096/real_time", + "name": "ComplexBlob/Folly/4096/real_time", "family_index": 48, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/4096/real_time", + "run_name": "ComplexBlob/Folly/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1689,10 +1689,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/4096/real_time", + "name": "ComplexBlob/BoostThread/4096/real_time", "family_index": 49, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/4096/real_time", + "run_name": "ComplexBlob/BoostThread/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1703,10 +1703,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8192/real_time", + "name": "ComplexBlob/YACLib/8192/real_time", "family_index": 50, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8192/real_time", + "run_name": "ComplexBlob/YACLib/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1717,10 +1717,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/8192/real_time", + "name": "ComplexBlob/Folly/8192/real_time", "family_index": 51, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/8192/real_time", + "run_name": "ComplexBlob/Folly/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1731,10 +1731,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/8192/real_time", + "name": "ComplexBlob/BoostThread/8192/real_time", "family_index": 52, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/8192/real_time", + "run_name": "ComplexBlob/BoostThread/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1745,10 +1745,10 @@ "time_unit": "ns" }, { - "name": "NoContention(YACLib)/real_time", + "name": "NoContention/YACLib/real_time", "family_index": 53, "per_family_instance_index": 0, - "run_name": "NoContention(YACLib)/real_time", + "run_name": "NoContention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1759,10 +1759,10 @@ "time_unit": "ns" }, { - "name": "NoContention(Folly)/real_time", + "name": "NoContention/Folly/real_time", "family_index": 54, "per_family_instance_index": 0, - "run_name": "NoContention(Folly)/real_time", + "run_name": "NoContention/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1773,10 +1773,10 @@ "time_unit": "ns" }, { - "name": "NoContention(BoostThread)/real_time", + "name": "NoContention/BoostThread/real_time", "family_index": 55, "per_family_instance_index": 0, - "run_name": "NoContention(BoostThread)/real_time", + "run_name": "NoContention/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1787,10 +1787,10 @@ "time_unit": "ns" }, { - "name": "Contention(YACLib)/real_time", + "name": "Contention/YACLib/real_time", "family_index": 56, "per_family_instance_index": 0, - "run_name": "Contention(YACLib)/real_time", + "run_name": "Contention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1801,10 +1801,10 @@ "time_unit": "ns" }, { - "name": "Contention(Folly)/real_time", + "name": "Contention/Folly/real_time", "family_index": 57, "per_family_instance_index": 0, - "run_name": "Contention(Folly)/real_time", + "run_name": "Contention/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1815,10 +1815,10 @@ "time_unit": "ns" }, { - "name": "Contention(BoostThread)/real_time", + "name": "Contention/BoostThread/real_time", "family_index": 58, "per_family_instance_index": 0, - "run_name": "Contention(BoostThread)/real_time", + "run_name": "Contention/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, diff --git a/future/result/i7-11850H/clang_libstdcxx/picture/ComplexBlob.svg b/future/result/i7-11850H/clang_libstdcxx/picture/ComplexBlob.svg new file mode 100644 index 0000000..d8316e1 --- /dev/null +++ b/future/result/i7-11850H/clang_libstdcxx/picture/ComplexBlob.svg @@ -0,0 +1,1209 @@ + + + + + + + + 2022-04-10T19:11:36.110554 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-11850H/clang_libstdcxx/picture/ConstantFuture.svg b/future/result/i7-11850H/clang_libstdcxx/picture/ConstantFuture.svg new file mode 100644 index 0000000..ce6b764 --- /dev/null +++ b/future/result/i7-11850H/clang_libstdcxx/picture/ConstantFuture.svg @@ -0,0 +1,875 @@ + + + + + + + + 2022-04-10T19:11:35.276366 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-11850H/clang_libstdcxx/picture/Contention.svg b/future/result/i7-11850H/clang_libstdcxx/picture/Contention.svg new file mode 100644 index 0000000..0dc1ed3 --- /dev/null +++ b/future/result/i7-11850H/clang_libstdcxx/picture/Contention.svg @@ -0,0 +1,904 @@ + + + + + + + + 2022-04-10T19:11:36.511583 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-11850H/clang_libstdcxx/picture/NoContention.svg b/future/result/i7-11850H/clang_libstdcxx/picture/NoContention.svg new file mode 100644 index 0000000..035b78c --- /dev/null +++ b/future/result/i7-11850H/clang_libstdcxx/picture/NoContention.svg @@ -0,0 +1,946 @@ + + + + + + + + 2022-04-10T19:11:36.300732 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-11850H/clang_libstdcxx/picture/PromiseAndFuture.svg b/future/result/i7-11850H/clang_libstdcxx/picture/PromiseAndFuture.svg new file mode 100644 index 0000000..3d59b68 --- /dev/null +++ b/future/result/i7-11850H/clang_libstdcxx/picture/PromiseAndFuture.svg @@ -0,0 +1,898 @@ + + + + + + + + 2022-04-10T19:11:35.440664 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-11850H/clang_libstdcxx/picture/ThenAllInline.svg b/future/result/i7-11850H/clang_libstdcxx/picture/ThenAllInline.svg new file mode 100644 index 0000000..ef78805 --- /dev/null +++ b/future/result/i7-11850H/clang_libstdcxx/picture/ThenAllInline.svg @@ -0,0 +1,1187 @@ + + + + + + + + 2022-04-10T19:11:35.596999 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-11850H/clang_libstdcxx/picture/ThenOneInline.svg b/future/result/i7-11850H/clang_libstdcxx/picture/ThenOneInline.svg new file mode 100644 index 0000000..7efd424 --- /dev/null +++ b/future/result/i7-11850H/clang_libstdcxx/picture/ThenOneInline.svg @@ -0,0 +1,1085 @@ + + + + + + + + 2022-04-10T19:11:35.752326 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-11850H/clang_libstdcxx/picture/ThenScheduler.svg b/future/result/i7-11850H/clang_libstdcxx/picture/ThenScheduler.svg new file mode 100644 index 0000000..4e58376 --- /dev/null +++ b/future/result/i7-11850H/clang_libstdcxx/picture/ThenScheduler.svg @@ -0,0 +1,1049 @@ + + + + + + + + 2022-04-10T19:11:35.927062 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-11850H/gcc_libstdcxx/data.json b/future/result/i7-11850H/gcc_libstdcxx/data.json index 0268ea5..07f616b 100644 --- a/future/result/i7-11850H/gcc_libstdcxx/data.json +++ b/future/result/i7-11850H/gcc_libstdcxx/data.json @@ -37,10 +37,10 @@ }, "benchmarks": [ { - "name": "ConstantFuture(Std)/real_time", + "name": "ConstantFuture/Std/real_time", "family_index": 0, "per_family_instance_index": 0, - "run_name": "ConstantFuture(Std)/real_time", + "run_name": "ConstantFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -51,10 +51,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(YACLib)/real_time", + "name": "ConstantFuture/YACLib/real_time", "family_index": 1, "per_family_instance_index": 0, - "run_name": "ConstantFuture(YACLib)/real_time", + "run_name": "ConstantFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -65,10 +65,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(Folly)/real_time", + "name": "ConstantFuture/Folly/real_time", "family_index": 2, "per_family_instance_index": 0, - "run_name": "ConstantFuture(Folly)/real_time", + "run_name": "ConstantFuture/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -79,10 +79,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(BoostThread)/real_time", + "name": "ConstantFuture/BoostThread/real_time", "family_index": 3, "per_family_instance_index": 0, - "run_name": "ConstantFuture(BoostThread)/real_time", + "run_name": "ConstantFuture/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -93,10 +93,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(Std)/real_time", + "name": "PromiseAndFuture/Std/real_time", "family_index": 4, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(Std)/real_time", + "run_name": "PromiseAndFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -107,10 +107,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(YACLib)/real_time", + "name": "PromiseAndFuture/YACLib/real_time", "family_index": 5, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(YACLib)/real_time", + "run_name": "PromiseAndFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -121,10 +121,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(Folly)/real_time", + "name": "PromiseAndFuture/Folly/real_time", "family_index": 6, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(Folly)/real_time", + "run_name": "PromiseAndFuture/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -135,10 +135,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(BoostThread)/real_time", + "name": "PromiseAndFuture/BoostThread/real_time", "family_index": 7, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(BoostThread)/real_time", + "run_name": "PromiseAndFuture/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -149,10 +149,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/0/real_time", + "name": "Then/YACLib/0/0/real_time", "family_index": 8, "per_family_instance_index": 0, - "run_name": "Then(YACLib)/0/0/real_time", + "run_name": "Then/YACLib/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -163,10 +163,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/0/real_time", + "name": "Then/YACLib/1/0/real_time", "family_index": 8, "per_family_instance_index": 1, - "run_name": "Then(YACLib)/1/0/real_time", + "run_name": "Then/YACLib/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -177,10 +177,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/0/real_time", + "name": "Then/YACLib/2/0/real_time", "family_index": 8, "per_family_instance_index": 2, - "run_name": "Then(YACLib)/2/0/real_time", + "run_name": "Then/YACLib/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -191,10 +191,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/0/real_time", + "name": "Then/YACLib/4/0/real_time", "family_index": 8, "per_family_instance_index": 3, - "run_name": "Then(YACLib)/4/0/real_time", + "run_name": "Then/YACLib/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -205,10 +205,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/0/real_time", + "name": "Then/YACLib/8/0/real_time", "family_index": 8, "per_family_instance_index": 4, - "run_name": "Then(YACLib)/8/0/real_time", + "run_name": "Then/YACLib/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -219,10 +219,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/0/real_time", + "name": "Then/YACLib/16/0/real_time", "family_index": 8, "per_family_instance_index": 5, - "run_name": "Then(YACLib)/16/0/real_time", + "run_name": "Then/YACLib/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -233,10 +233,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/0/real_time", + "name": "Then/YACLib/32/0/real_time", "family_index": 8, "per_family_instance_index": 6, - "run_name": "Then(YACLib)/32/0/real_time", + "run_name": "Then/YACLib/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -247,10 +247,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/0/real_time", + "name": "Then/YACLib/64/0/real_time", "family_index": 8, "per_family_instance_index": 7, - "run_name": "Then(YACLib)/64/0/real_time", + "run_name": "Then/YACLib/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -261,10 +261,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/1/real_time", + "name": "Then/YACLib/0/1/real_time", "family_index": 8, "per_family_instance_index": 8, - "run_name": "Then(YACLib)/0/1/real_time", + "run_name": "Then/YACLib/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -275,10 +275,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/1/real_time", + "name": "Then/YACLib/1/1/real_time", "family_index": 8, "per_family_instance_index": 9, - "run_name": "Then(YACLib)/1/1/real_time", + "run_name": "Then/YACLib/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -289,10 +289,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/1/real_time", + "name": "Then/YACLib/2/1/real_time", "family_index": 8, "per_family_instance_index": 10, - "run_name": "Then(YACLib)/2/1/real_time", + "run_name": "Then/YACLib/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -303,10 +303,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/1/real_time", + "name": "Then/YACLib/4/1/real_time", "family_index": 8, "per_family_instance_index": 11, - "run_name": "Then(YACLib)/4/1/real_time", + "run_name": "Then/YACLib/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -317,10 +317,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/1/real_time", + "name": "Then/YACLib/8/1/real_time", "family_index": 8, "per_family_instance_index": 12, - "run_name": "Then(YACLib)/8/1/real_time", + "run_name": "Then/YACLib/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -331,10 +331,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/1/real_time", + "name": "Then/YACLib/16/1/real_time", "family_index": 8, "per_family_instance_index": 13, - "run_name": "Then(YACLib)/16/1/real_time", + "run_name": "Then/YACLib/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -345,10 +345,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/1/real_time", + "name": "Then/YACLib/32/1/real_time", "family_index": 8, "per_family_instance_index": 14, - "run_name": "Then(YACLib)/32/1/real_time", + "run_name": "Then/YACLib/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -359,10 +359,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/1/real_time", + "name": "Then/YACLib/64/1/real_time", "family_index": 8, "per_family_instance_index": 15, - "run_name": "Then(YACLib)/64/1/real_time", + "run_name": "Then/YACLib/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -373,10 +373,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/2/real_time", + "name": "Then/YACLib/0/2/real_time", "family_index": 8, "per_family_instance_index": 16, - "run_name": "Then(YACLib)/0/2/real_time", + "run_name": "Then/YACLib/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -387,10 +387,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/2/real_time", + "name": "Then/YACLib/1/2/real_time", "family_index": 8, "per_family_instance_index": 17, - "run_name": "Then(YACLib)/1/2/real_time", + "run_name": "Then/YACLib/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -401,10 +401,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/2/real_time", + "name": "Then/YACLib/2/2/real_time", "family_index": 8, "per_family_instance_index": 18, - "run_name": "Then(YACLib)/2/2/real_time", + "run_name": "Then/YACLib/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -415,10 +415,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/2/real_time", + "name": "Then/YACLib/4/2/real_time", "family_index": 8, "per_family_instance_index": 19, - "run_name": "Then(YACLib)/4/2/real_time", + "run_name": "Then/YACLib/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -429,10 +429,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/2/real_time", + "name": "Then/YACLib/8/2/real_time", "family_index": 8, "per_family_instance_index": 20, - "run_name": "Then(YACLib)/8/2/real_time", + "run_name": "Then/YACLib/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -443,10 +443,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/2/real_time", + "name": "Then/YACLib/16/2/real_time", "family_index": 8, "per_family_instance_index": 21, - "run_name": "Then(YACLib)/16/2/real_time", + "run_name": "Then/YACLib/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -457,10 +457,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/2/real_time", + "name": "Then/YACLib/32/2/real_time", "family_index": 8, "per_family_instance_index": 22, - "run_name": "Then(YACLib)/32/2/real_time", + "run_name": "Then/YACLib/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -471,10 +471,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/2/real_time", + "name": "Then/YACLib/64/2/real_time", "family_index": 8, "per_family_instance_index": 23, - "run_name": "Then(YACLib)/64/2/real_time", + "run_name": "Then/YACLib/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -485,10 +485,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/0/real_time", + "name": "Then/Folly/0/0/real_time", "family_index": 9, "per_family_instance_index": 0, - "run_name": "Then(Folly)/0/0/real_time", + "run_name": "Then/Folly/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -499,10 +499,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/0/real_time", + "name": "Then/Folly/1/0/real_time", "family_index": 9, "per_family_instance_index": 1, - "run_name": "Then(Folly)/1/0/real_time", + "run_name": "Then/Folly/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -513,10 +513,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/0/real_time", + "name": "Then/Folly/2/0/real_time", "family_index": 9, "per_family_instance_index": 2, - "run_name": "Then(Folly)/2/0/real_time", + "run_name": "Then/Folly/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -527,10 +527,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/0/real_time", + "name": "Then/Folly/4/0/real_time", "family_index": 9, "per_family_instance_index": 3, - "run_name": "Then(Folly)/4/0/real_time", + "run_name": "Then/Folly/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -541,10 +541,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/0/real_time", + "name": "Then/Folly/8/0/real_time", "family_index": 9, "per_family_instance_index": 4, - "run_name": "Then(Folly)/8/0/real_time", + "run_name": "Then/Folly/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -555,10 +555,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/0/real_time", + "name": "Then/Folly/16/0/real_time", "family_index": 9, "per_family_instance_index": 5, - "run_name": "Then(Folly)/16/0/real_time", + "run_name": "Then/Folly/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -569,10 +569,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/0/real_time", + "name": "Then/Folly/32/0/real_time", "family_index": 9, "per_family_instance_index": 6, - "run_name": "Then(Folly)/32/0/real_time", + "run_name": "Then/Folly/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -583,10 +583,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/0/real_time", + "name": "Then/Folly/64/0/real_time", "family_index": 9, "per_family_instance_index": 7, - "run_name": "Then(Folly)/64/0/real_time", + "run_name": "Then/Folly/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -597,10 +597,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/1/real_time", + "name": "Then/Folly/0/1/real_time", "family_index": 9, "per_family_instance_index": 8, - "run_name": "Then(Folly)/0/1/real_time", + "run_name": "Then/Folly/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -611,10 +611,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/1/real_time", + "name": "Then/Folly/1/1/real_time", "family_index": 9, "per_family_instance_index": 9, - "run_name": "Then(Folly)/1/1/real_time", + "run_name": "Then/Folly/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -625,10 +625,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/1/real_time", + "name": "Then/Folly/2/1/real_time", "family_index": 9, "per_family_instance_index": 10, - "run_name": "Then(Folly)/2/1/real_time", + "run_name": "Then/Folly/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -639,10 +639,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/1/real_time", + "name": "Then/Folly/4/1/real_time", "family_index": 9, "per_family_instance_index": 11, - "run_name": "Then(Folly)/4/1/real_time", + "run_name": "Then/Folly/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -653,10 +653,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/1/real_time", + "name": "Then/Folly/8/1/real_time", "family_index": 9, "per_family_instance_index": 12, - "run_name": "Then(Folly)/8/1/real_time", + "run_name": "Then/Folly/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -667,10 +667,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/1/real_time", + "name": "Then/Folly/16/1/real_time", "family_index": 9, "per_family_instance_index": 13, - "run_name": "Then(Folly)/16/1/real_time", + "run_name": "Then/Folly/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -681,10 +681,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/1/real_time", + "name": "Then/Folly/32/1/real_time", "family_index": 9, "per_family_instance_index": 14, - "run_name": "Then(Folly)/32/1/real_time", + "run_name": "Then/Folly/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -695,10 +695,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/1/real_time", + "name": "Then/Folly/64/1/real_time", "family_index": 9, "per_family_instance_index": 15, - "run_name": "Then(Folly)/64/1/real_time", + "run_name": "Then/Folly/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -709,10 +709,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/2/real_time", + "name": "Then/Folly/0/2/real_time", "family_index": 9, "per_family_instance_index": 16, - "run_name": "Then(Folly)/0/2/real_time", + "run_name": "Then/Folly/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -723,10 +723,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/2/real_time", + "name": "Then/Folly/1/2/real_time", "family_index": 9, "per_family_instance_index": 17, - "run_name": "Then(Folly)/1/2/real_time", + "run_name": "Then/Folly/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -737,10 +737,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/2/real_time", + "name": "Then/Folly/2/2/real_time", "family_index": 9, "per_family_instance_index": 18, - "run_name": "Then(Folly)/2/2/real_time", + "run_name": "Then/Folly/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -751,10 +751,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/2/real_time", + "name": "Then/Folly/4/2/real_time", "family_index": 9, "per_family_instance_index": 19, - "run_name": "Then(Folly)/4/2/real_time", + "run_name": "Then/Folly/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -765,10 +765,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/2/real_time", + "name": "Then/Folly/8/2/real_time", "family_index": 9, "per_family_instance_index": 20, - "run_name": "Then(Folly)/8/2/real_time", + "run_name": "Then/Folly/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -779,10 +779,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/2/real_time", + "name": "Then/Folly/16/2/real_time", "family_index": 9, "per_family_instance_index": 21, - "run_name": "Then(Folly)/16/2/real_time", + "run_name": "Then/Folly/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -793,10 +793,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/2/real_time", + "name": "Then/Folly/32/2/real_time", "family_index": 9, "per_family_instance_index": 22, - "run_name": "Then(Folly)/32/2/real_time", + "run_name": "Then/Folly/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -807,10 +807,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/2/real_time", + "name": "Then/Folly/64/2/real_time", "family_index": 9, "per_family_instance_index": 23, - "run_name": "Then(Folly)/64/2/real_time", + "run_name": "Then/Folly/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -821,10 +821,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/0/real_time", + "name": "Then/BoostThread/0/0/real_time", "family_index": 10, "per_family_instance_index": 0, - "run_name": "Then(BoostThread)/0/0/real_time", + "run_name": "Then/BoostThread/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -835,10 +835,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/0/real_time", + "name": "Then/BoostThread/1/0/real_time", "family_index": 10, "per_family_instance_index": 1, - "run_name": "Then(BoostThread)/1/0/real_time", + "run_name": "Then/BoostThread/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -849,10 +849,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/0/real_time", + "name": "Then/BoostThread/2/0/real_time", "family_index": 10, "per_family_instance_index": 2, - "run_name": "Then(BoostThread)/2/0/real_time", + "run_name": "Then/BoostThread/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -863,10 +863,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/0/real_time", + "name": "Then/BoostThread/4/0/real_time", "family_index": 10, "per_family_instance_index": 3, - "run_name": "Then(BoostThread)/4/0/real_time", + "run_name": "Then/BoostThread/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -877,10 +877,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/0/real_time", + "name": "Then/BoostThread/8/0/real_time", "family_index": 10, "per_family_instance_index": 4, - "run_name": "Then(BoostThread)/8/0/real_time", + "run_name": "Then/BoostThread/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -891,10 +891,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/0/real_time", + "name": "Then/BoostThread/16/0/real_time", "family_index": 10, "per_family_instance_index": 5, - "run_name": "Then(BoostThread)/16/0/real_time", + "run_name": "Then/BoostThread/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -905,10 +905,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/0/real_time", + "name": "Then/BoostThread/32/0/real_time", "family_index": 10, "per_family_instance_index": 6, - "run_name": "Then(BoostThread)/32/0/real_time", + "run_name": "Then/BoostThread/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -919,10 +919,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/0/real_time", + "name": "Then/BoostThread/64/0/real_time", "family_index": 10, "per_family_instance_index": 7, - "run_name": "Then(BoostThread)/64/0/real_time", + "run_name": "Then/BoostThread/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -933,10 +933,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/1/real_time", + "name": "Then/BoostThread/0/1/real_time", "family_index": 10, "per_family_instance_index": 8, - "run_name": "Then(BoostThread)/0/1/real_time", + "run_name": "Then/BoostThread/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -947,10 +947,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/1/real_time", + "name": "Then/BoostThread/1/1/real_time", "family_index": 10, "per_family_instance_index": 9, - "run_name": "Then(BoostThread)/1/1/real_time", + "run_name": "Then/BoostThread/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -961,10 +961,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/1/real_time", + "name": "Then/BoostThread/2/1/real_time", "family_index": 10, "per_family_instance_index": 10, - "run_name": "Then(BoostThread)/2/1/real_time", + "run_name": "Then/BoostThread/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -975,10 +975,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/1/real_time", + "name": "Then/BoostThread/4/1/real_time", "family_index": 10, "per_family_instance_index": 11, - "run_name": "Then(BoostThread)/4/1/real_time", + "run_name": "Then/BoostThread/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -989,10 +989,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/1/real_time", + "name": "Then/BoostThread/8/1/real_time", "family_index": 10, "per_family_instance_index": 12, - "run_name": "Then(BoostThread)/8/1/real_time", + "run_name": "Then/BoostThread/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1003,10 +1003,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/1/real_time", + "name": "Then/BoostThread/16/1/real_time", "family_index": 10, "per_family_instance_index": 13, - "run_name": "Then(BoostThread)/16/1/real_time", + "run_name": "Then/BoostThread/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1017,10 +1017,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/1/real_time", + "name": "Then/BoostThread/32/1/real_time", "family_index": 10, "per_family_instance_index": 14, - "run_name": "Then(BoostThread)/32/1/real_time", + "run_name": "Then/BoostThread/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1031,10 +1031,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/1/real_time", + "name": "Then/BoostThread/64/1/real_time", "family_index": 10, "per_family_instance_index": 15, - "run_name": "Then(BoostThread)/64/1/real_time", + "run_name": "Then/BoostThread/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1045,10 +1045,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/2/real_time", + "name": "Then/BoostThread/0/2/real_time", "family_index": 10, "per_family_instance_index": 16, - "run_name": "Then(BoostThread)/0/2/real_time", + "run_name": "Then/BoostThread/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1059,10 +1059,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/2/real_time", + "name": "Then/BoostThread/1/2/real_time", "family_index": 10, "per_family_instance_index": 17, - "run_name": "Then(BoostThread)/1/2/real_time", + "run_name": "Then/BoostThread/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1073,10 +1073,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/2/real_time", + "name": "Then/BoostThread/2/2/real_time", "family_index": 10, "per_family_instance_index": 18, - "run_name": "Then(BoostThread)/2/2/real_time", + "run_name": "Then/BoostThread/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1087,10 +1087,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/2/real_time", + "name": "Then/BoostThread/4/2/real_time", "family_index": 10, "per_family_instance_index": 19, - "run_name": "Then(BoostThread)/4/2/real_time", + "run_name": "Then/BoostThread/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1101,10 +1101,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/2/real_time", + "name": "Then/BoostThread/8/2/real_time", "family_index": 10, "per_family_instance_index": 20, - "run_name": "Then(BoostThread)/8/2/real_time", + "run_name": "Then/BoostThread/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1115,10 +1115,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/2/real_time", + "name": "Then/BoostThread/16/2/real_time", "family_index": 10, "per_family_instance_index": 21, - "run_name": "Then(BoostThread)/16/2/real_time", + "run_name": "Then/BoostThread/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1129,10 +1129,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/2/real_time", + "name": "Then/BoostThread/32/2/real_time", "family_index": 10, "per_family_instance_index": 22, - "run_name": "Then(BoostThread)/32/2/real_time", + "run_name": "Then/BoostThread/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1143,10 +1143,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/2/real_time", + "name": "Then/BoostThread/64/2/real_time", "family_index": 10, "per_family_instance_index": 23, - "run_name": "Then(BoostThread)/64/2/real_time", + "run_name": "Then/BoostThread/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1157,10 +1157,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/0/real_time", + "name": "ComplexBlob/YACLib/0/real_time", "family_index": 11, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/0/real_time", + "run_name": "ComplexBlob/YACLib/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1171,10 +1171,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/0/real_time", + "name": "ComplexBlob/Folly/0/real_time", "family_index": 12, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/0/real_time", + "run_name": "ComplexBlob/Folly/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1185,10 +1185,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/0/real_time", + "name": "ComplexBlob/BoostThread/0/real_time", "family_index": 13, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/0/real_time", + "run_name": "ComplexBlob/BoostThread/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1199,10 +1199,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2/real_time", + "name": "ComplexBlob/YACLib/2/real_time", "family_index": 14, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2/real_time", + "run_name": "ComplexBlob/YACLib/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1213,10 +1213,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/2/real_time", + "name": "ComplexBlob/Folly/2/real_time", "family_index": 15, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/2/real_time", + "run_name": "ComplexBlob/Folly/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1227,10 +1227,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/2/real_time", + "name": "ComplexBlob/BoostThread/2/real_time", "family_index": 16, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/2/real_time", + "run_name": "ComplexBlob/BoostThread/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1241,10 +1241,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4/real_time", + "name": "ComplexBlob/YACLib/4/real_time", "family_index": 17, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4/real_time", + "run_name": "ComplexBlob/YACLib/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1255,10 +1255,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/4/real_time", + "name": "ComplexBlob/Folly/4/real_time", "family_index": 18, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/4/real_time", + "run_name": "ComplexBlob/Folly/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1269,10 +1269,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/4/real_time", + "name": "ComplexBlob/BoostThread/4/real_time", "family_index": 19, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/4/real_time", + "run_name": "ComplexBlob/BoostThread/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1283,10 +1283,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8/real_time", + "name": "ComplexBlob/YACLib/8/real_time", "family_index": 20, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8/real_time", + "run_name": "ComplexBlob/YACLib/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1297,10 +1297,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/8/real_time", + "name": "ComplexBlob/Folly/8/real_time", "family_index": 21, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/8/real_time", + "run_name": "ComplexBlob/Folly/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1311,10 +1311,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/8/real_time", + "name": "ComplexBlob/BoostThread/8/real_time", "family_index": 22, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/8/real_time", + "run_name": "ComplexBlob/BoostThread/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1325,10 +1325,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/16/real_time", + "name": "ComplexBlob/YACLib/16/real_time", "family_index": 23, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/16/real_time", + "run_name": "ComplexBlob/YACLib/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1339,10 +1339,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/16/real_time", + "name": "ComplexBlob/Folly/16/real_time", "family_index": 24, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/16/real_time", + "run_name": "ComplexBlob/Folly/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1353,10 +1353,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/16/real_time", + "name": "ComplexBlob/BoostThread/16/real_time", "family_index": 25, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/16/real_time", + "run_name": "ComplexBlob/BoostThread/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1367,10 +1367,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/32/real_time", + "name": "ComplexBlob/YACLib/32/real_time", "family_index": 26, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/32/real_time", + "run_name": "ComplexBlob/YACLib/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1381,10 +1381,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/32/real_time", + "name": "ComplexBlob/Folly/32/real_time", "family_index": 27, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/32/real_time", + "run_name": "ComplexBlob/Folly/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1395,10 +1395,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/32/real_time", + "name": "ComplexBlob/BoostThread/32/real_time", "family_index": 28, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/32/real_time", + "run_name": "ComplexBlob/BoostThread/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1409,10 +1409,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/64/real_time", + "name": "ComplexBlob/YACLib/64/real_time", "family_index": 29, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/64/real_time", + "run_name": "ComplexBlob/YACLib/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1423,10 +1423,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/64/real_time", + "name": "ComplexBlob/Folly/64/real_time", "family_index": 30, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/64/real_time", + "run_name": "ComplexBlob/Folly/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1437,10 +1437,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/64/real_time", + "name": "ComplexBlob/BoostThread/64/real_time", "family_index": 31, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/64/real_time", + "run_name": "ComplexBlob/BoostThread/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1451,10 +1451,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/128/real_time", + "name": "ComplexBlob/YACLib/128/real_time", "family_index": 32, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/128/real_time", + "run_name": "ComplexBlob/YACLib/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1465,10 +1465,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/128/real_time", + "name": "ComplexBlob/Folly/128/real_time", "family_index": 33, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/128/real_time", + "run_name": "ComplexBlob/Folly/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1479,10 +1479,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/128/real_time", + "name": "ComplexBlob/BoostThread/128/real_time", "family_index": 34, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/128/real_time", + "run_name": "ComplexBlob/BoostThread/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1493,10 +1493,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/256/real_time", + "name": "ComplexBlob/YACLib/256/real_time", "family_index": 35, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/256/real_time", + "run_name": "ComplexBlob/YACLib/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1507,10 +1507,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/256/real_time", + "name": "ComplexBlob/Folly/256/real_time", "family_index": 36, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/256/real_time", + "run_name": "ComplexBlob/Folly/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1521,10 +1521,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/256/real_time", + "name": "ComplexBlob/BoostThread/256/real_time", "family_index": 37, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/256/real_time", + "run_name": "ComplexBlob/BoostThread/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1535,10 +1535,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/512/real_time", + "name": "ComplexBlob/YACLib/512/real_time", "family_index": 38, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/512/real_time", + "run_name": "ComplexBlob/YACLib/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1549,10 +1549,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/512/real_time", + "name": "ComplexBlob/Folly/512/real_time", "family_index": 39, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/512/real_time", + "run_name": "ComplexBlob/Folly/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1563,10 +1563,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/512/real_time", + "name": "ComplexBlob/BoostThread/512/real_time", "family_index": 40, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/512/real_time", + "run_name": "ComplexBlob/BoostThread/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1577,10 +1577,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/1024/real_time", + "name": "ComplexBlob/YACLib/1024/real_time", "family_index": 41, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/1024/real_time", + "run_name": "ComplexBlob/YACLib/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1591,10 +1591,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/1024/real_time", + "name": "ComplexBlob/Folly/1024/real_time", "family_index": 42, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/1024/real_time", + "run_name": "ComplexBlob/Folly/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1605,10 +1605,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/1024/real_time", + "name": "ComplexBlob/BoostThread/1024/real_time", "family_index": 43, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/1024/real_time", + "run_name": "ComplexBlob/BoostThread/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1619,10 +1619,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2048/real_time", + "name": "ComplexBlob/YACLib/2048/real_time", "family_index": 44, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2048/real_time", + "run_name": "ComplexBlob/YACLib/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1633,10 +1633,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/2048/real_time", + "name": "ComplexBlob/Folly/2048/real_time", "family_index": 45, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/2048/real_time", + "run_name": "ComplexBlob/Folly/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1647,10 +1647,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/2048/real_time", + "name": "ComplexBlob/BoostThread/2048/real_time", "family_index": 46, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/2048/real_time", + "run_name": "ComplexBlob/BoostThread/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1661,10 +1661,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4096/real_time", + "name": "ComplexBlob/YACLib/4096/real_time", "family_index": 47, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4096/real_time", + "run_name": "ComplexBlob/YACLib/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1675,10 +1675,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/4096/real_time", + "name": "ComplexBlob/Folly/4096/real_time", "family_index": 48, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/4096/real_time", + "run_name": "ComplexBlob/Folly/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1689,10 +1689,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/4096/real_time", + "name": "ComplexBlob/BoostThread/4096/real_time", "family_index": 49, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/4096/real_time", + "run_name": "ComplexBlob/BoostThread/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1703,10 +1703,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8192/real_time", + "name": "ComplexBlob/YACLib/8192/real_time", "family_index": 50, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8192/real_time", + "run_name": "ComplexBlob/YACLib/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1717,10 +1717,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/8192/real_time", + "name": "ComplexBlob/Folly/8192/real_time", "family_index": 51, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/8192/real_time", + "run_name": "ComplexBlob/Folly/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1731,10 +1731,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/8192/real_time", + "name": "ComplexBlob/BoostThread/8192/real_time", "family_index": 52, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/8192/real_time", + "run_name": "ComplexBlob/BoostThread/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1745,10 +1745,10 @@ "time_unit": "ns" }, { - "name": "NoContention(YACLib)/real_time", + "name": "NoContention/YACLib/real_time", "family_index": 53, "per_family_instance_index": 0, - "run_name": "NoContention(YACLib)/real_time", + "run_name": "NoContention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1759,10 +1759,10 @@ "time_unit": "ns" }, { - "name": "NoContention(Folly)/real_time", + "name": "NoContention/Folly/real_time", "family_index": 54, "per_family_instance_index": 0, - "run_name": "NoContention(Folly)/real_time", + "run_name": "NoContention/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1773,10 +1773,10 @@ "time_unit": "ns" }, { - "name": "NoContention(BoostThread)/real_time", + "name": "NoContention/BoostThread/real_time", "family_index": 55, "per_family_instance_index": 0, - "run_name": "NoContention(BoostThread)/real_time", + "run_name": "NoContention/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1787,10 +1787,10 @@ "time_unit": "ns" }, { - "name": "Contention(YACLib)/real_time", + "name": "Contention/YACLib/real_time", "family_index": 56, "per_family_instance_index": 0, - "run_name": "Contention(YACLib)/real_time", + "run_name": "Contention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1801,10 +1801,10 @@ "time_unit": "ns" }, { - "name": "Contention(Folly)/real_time", + "name": "Contention/Folly/real_time", "family_index": 57, "per_family_instance_index": 0, - "run_name": "Contention(Folly)/real_time", + "run_name": "Contention/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1815,10 +1815,10 @@ "time_unit": "ns" }, { - "name": "Contention(BoostThread)/real_time", + "name": "Contention/BoostThread/real_time", "family_index": 58, "per_family_instance_index": 0, - "run_name": "Contention(BoostThread)/real_time", + "run_name": "Contention/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, diff --git a/future/result/i7-11850H/gcc_libstdcxx/picture/ComplexBlob.svg b/future/result/i7-11850H/gcc_libstdcxx/picture/ComplexBlob.svg new file mode 100644 index 0000000..0e22ba6 --- /dev/null +++ b/future/result/i7-11850H/gcc_libstdcxx/picture/ComplexBlob.svg @@ -0,0 +1,1266 @@ + + + + + + + + 2022-04-10T19:11:37.896899 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-11850H/gcc_libstdcxx/picture/ConstantFuture.svg b/future/result/i7-11850H/gcc_libstdcxx/picture/ConstantFuture.svg new file mode 100644 index 0000000..4e718ff --- /dev/null +++ b/future/result/i7-11850H/gcc_libstdcxx/picture/ConstantFuture.svg @@ -0,0 +1,875 @@ + + + + + + + + 2022-04-10T19:11:36.710463 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-11850H/gcc_libstdcxx/picture/Contention.svg b/future/result/i7-11850H/gcc_libstdcxx/picture/Contention.svg new file mode 100644 index 0000000..e1aaaa6 --- /dev/null +++ b/future/result/i7-11850H/gcc_libstdcxx/picture/Contention.svg @@ -0,0 +1,904 @@ + + + + + + + + 2022-04-10T19:11:38.271748 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-11850H/gcc_libstdcxx/picture/NoContention.svg b/future/result/i7-11850H/gcc_libstdcxx/picture/NoContention.svg new file mode 100644 index 0000000..ce5894b --- /dev/null +++ b/future/result/i7-11850H/gcc_libstdcxx/picture/NoContention.svg @@ -0,0 +1,946 @@ + + + + + + + + 2022-04-10T19:11:38.130706 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-11850H/gcc_libstdcxx/picture/PromiseAndFuture.svg b/future/result/i7-11850H/gcc_libstdcxx/picture/PromiseAndFuture.svg new file mode 100644 index 0000000..78c9187 --- /dev/null +++ b/future/result/i7-11850H/gcc_libstdcxx/picture/PromiseAndFuture.svg @@ -0,0 +1,898 @@ + + + + + + + + 2022-04-10T19:11:36.951568 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-11850H/gcc_libstdcxx/picture/ThenAllInline.svg b/future/result/i7-11850H/gcc_libstdcxx/picture/ThenAllInline.svg new file mode 100644 index 0000000..5a5e313 --- /dev/null +++ b/future/result/i7-11850H/gcc_libstdcxx/picture/ThenAllInline.svg @@ -0,0 +1,1187 @@ + + + + + + + + 2022-04-10T19:11:37.154765 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-11850H/gcc_libstdcxx/picture/ThenOneInline.svg b/future/result/i7-11850H/gcc_libstdcxx/picture/ThenOneInline.svg new file mode 100644 index 0000000..1c65dec --- /dev/null +++ b/future/result/i7-11850H/gcc_libstdcxx/picture/ThenOneInline.svg @@ -0,0 +1,1103 @@ + + + + + + + + 2022-04-10T19:11:37.410520 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-11850H/gcc_libstdcxx/picture/ThenScheduler.svg b/future/result/i7-11850H/gcc_libstdcxx/picture/ThenScheduler.svg new file mode 100644 index 0000000..234a06d --- /dev/null +++ b/future/result/i7-11850H/gcc_libstdcxx/picture/ThenScheduler.svg @@ -0,0 +1,1049 @@ + + + + + + + + 2022-04-10T19:11:37.648858 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-12700KF/clang_libcxx/data.json b/future/result/i7-12700KF/clang_libcxx/data.json index 58d426b..e623232 100644 --- a/future/result/i7-12700KF/clang_libcxx/data.json +++ b/future/result/i7-12700KF/clang_libcxx/data.json @@ -37,10 +37,10 @@ }, "benchmarks": [ { - "name": "ConstantFuture(Std)/real_time", + "name": "ConstantFuture/Std/real_time", "family_index": 0, "per_family_instance_index": 0, - "run_name": "ConstantFuture(Std)/real_time", + "run_name": "ConstantFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -51,10 +51,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(YACLib)/real_time", + "name": "ConstantFuture/YACLib/real_time", "family_index": 1, "per_family_instance_index": 0, - "run_name": "ConstantFuture(YACLib)/real_time", + "run_name": "ConstantFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -65,10 +65,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(Std)/real_time", + "name": "PromiseAndFuture/Std/real_time", "family_index": 2, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(Std)/real_time", + "run_name": "PromiseAndFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -79,10 +79,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(YACLib)/real_time", + "name": "PromiseAndFuture/YACLib/real_time", "family_index": 3, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(YACLib)/real_time", + "run_name": "PromiseAndFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -93,10 +93,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/0/real_time", + "name": "Then/YACLib/0/0/real_time", "family_index": 4, "per_family_instance_index": 0, - "run_name": "Then(YACLib)/0/0/real_time", + "run_name": "Then/YACLib/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -107,10 +107,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/0/real_time", + "name": "Then/YACLib/1/0/real_time", "family_index": 4, "per_family_instance_index": 1, - "run_name": "Then(YACLib)/1/0/real_time", + "run_name": "Then/YACLib/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -121,10 +121,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/0/real_time", + "name": "Then/YACLib/2/0/real_time", "family_index": 4, "per_family_instance_index": 2, - "run_name": "Then(YACLib)/2/0/real_time", + "run_name": "Then/YACLib/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -135,10 +135,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/0/real_time", + "name": "Then/YACLib/4/0/real_time", "family_index": 4, "per_family_instance_index": 3, - "run_name": "Then(YACLib)/4/0/real_time", + "run_name": "Then/YACLib/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -149,10 +149,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/0/real_time", + "name": "Then/YACLib/8/0/real_time", "family_index": 4, "per_family_instance_index": 4, - "run_name": "Then(YACLib)/8/0/real_time", + "run_name": "Then/YACLib/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -163,10 +163,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/0/real_time", + "name": "Then/YACLib/16/0/real_time", "family_index": 4, "per_family_instance_index": 5, - "run_name": "Then(YACLib)/16/0/real_time", + "run_name": "Then/YACLib/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -177,10 +177,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/0/real_time", + "name": "Then/YACLib/32/0/real_time", "family_index": 4, "per_family_instance_index": 6, - "run_name": "Then(YACLib)/32/0/real_time", + "run_name": "Then/YACLib/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -191,10 +191,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/0/real_time", + "name": "Then/YACLib/64/0/real_time", "family_index": 4, "per_family_instance_index": 7, - "run_name": "Then(YACLib)/64/0/real_time", + "run_name": "Then/YACLib/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -205,10 +205,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/1/real_time", + "name": "Then/YACLib/0/1/real_time", "family_index": 4, "per_family_instance_index": 8, - "run_name": "Then(YACLib)/0/1/real_time", + "run_name": "Then/YACLib/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -219,10 +219,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/1/real_time", + "name": "Then/YACLib/1/1/real_time", "family_index": 4, "per_family_instance_index": 9, - "run_name": "Then(YACLib)/1/1/real_time", + "run_name": "Then/YACLib/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -233,10 +233,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/1/real_time", + "name": "Then/YACLib/2/1/real_time", "family_index": 4, "per_family_instance_index": 10, - "run_name": "Then(YACLib)/2/1/real_time", + "run_name": "Then/YACLib/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -247,10 +247,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/1/real_time", + "name": "Then/YACLib/4/1/real_time", "family_index": 4, "per_family_instance_index": 11, - "run_name": "Then(YACLib)/4/1/real_time", + "run_name": "Then/YACLib/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -261,10 +261,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/1/real_time", + "name": "Then/YACLib/8/1/real_time", "family_index": 4, "per_family_instance_index": 12, - "run_name": "Then(YACLib)/8/1/real_time", + "run_name": "Then/YACLib/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -275,10 +275,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/1/real_time", + "name": "Then/YACLib/16/1/real_time", "family_index": 4, "per_family_instance_index": 13, - "run_name": "Then(YACLib)/16/1/real_time", + "run_name": "Then/YACLib/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -289,10 +289,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/1/real_time", + "name": "Then/YACLib/32/1/real_time", "family_index": 4, "per_family_instance_index": 14, - "run_name": "Then(YACLib)/32/1/real_time", + "run_name": "Then/YACLib/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -303,10 +303,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/1/real_time", + "name": "Then/YACLib/64/1/real_time", "family_index": 4, "per_family_instance_index": 15, - "run_name": "Then(YACLib)/64/1/real_time", + "run_name": "Then/YACLib/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -317,10 +317,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/2/real_time", + "name": "Then/YACLib/0/2/real_time", "family_index": 4, "per_family_instance_index": 16, - "run_name": "Then(YACLib)/0/2/real_time", + "run_name": "Then/YACLib/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -331,10 +331,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/2/real_time", + "name": "Then/YACLib/1/2/real_time", "family_index": 4, "per_family_instance_index": 17, - "run_name": "Then(YACLib)/1/2/real_time", + "run_name": "Then/YACLib/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -345,10 +345,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/2/real_time", + "name": "Then/YACLib/2/2/real_time", "family_index": 4, "per_family_instance_index": 18, - "run_name": "Then(YACLib)/2/2/real_time", + "run_name": "Then/YACLib/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -359,10 +359,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/2/real_time", + "name": "Then/YACLib/4/2/real_time", "family_index": 4, "per_family_instance_index": 19, - "run_name": "Then(YACLib)/4/2/real_time", + "run_name": "Then/YACLib/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -373,10 +373,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/2/real_time", + "name": "Then/YACLib/8/2/real_time", "family_index": 4, "per_family_instance_index": 20, - "run_name": "Then(YACLib)/8/2/real_time", + "run_name": "Then/YACLib/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -387,10 +387,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/2/real_time", + "name": "Then/YACLib/16/2/real_time", "family_index": 4, "per_family_instance_index": 21, - "run_name": "Then(YACLib)/16/2/real_time", + "run_name": "Then/YACLib/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -401,10 +401,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/2/real_time", + "name": "Then/YACLib/32/2/real_time", "family_index": 4, "per_family_instance_index": 22, - "run_name": "Then(YACLib)/32/2/real_time", + "run_name": "Then/YACLib/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -415,10 +415,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/2/real_time", + "name": "Then/YACLib/64/2/real_time", "family_index": 4, "per_family_instance_index": 23, - "run_name": "Then(YACLib)/64/2/real_time", + "run_name": "Then/YACLib/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -429,10 +429,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/0/real_time", + "name": "ComplexBlob/YACLib/0/real_time", "family_index": 5, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/0/real_time", + "run_name": "ComplexBlob/YACLib/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -443,10 +443,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2/real_time", + "name": "ComplexBlob/YACLib/2/real_time", "family_index": 6, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2/real_time", + "run_name": "ComplexBlob/YACLib/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -457,10 +457,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4/real_time", + "name": "ComplexBlob/YACLib/4/real_time", "family_index": 7, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4/real_time", + "run_name": "ComplexBlob/YACLib/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -471,10 +471,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8/real_time", + "name": "ComplexBlob/YACLib/8/real_time", "family_index": 8, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8/real_time", + "run_name": "ComplexBlob/YACLib/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -485,10 +485,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/16/real_time", + "name": "ComplexBlob/YACLib/16/real_time", "family_index": 9, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/16/real_time", + "run_name": "ComplexBlob/YACLib/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -499,10 +499,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/32/real_time", + "name": "ComplexBlob/YACLib/32/real_time", "family_index": 10, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/32/real_time", + "run_name": "ComplexBlob/YACLib/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -513,10 +513,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/64/real_time", + "name": "ComplexBlob/YACLib/64/real_time", "family_index": 11, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/64/real_time", + "run_name": "ComplexBlob/YACLib/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -527,10 +527,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/128/real_time", + "name": "ComplexBlob/YACLib/128/real_time", "family_index": 12, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/128/real_time", + "run_name": "ComplexBlob/YACLib/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -541,10 +541,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/256/real_time", + "name": "ComplexBlob/YACLib/256/real_time", "family_index": 13, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/256/real_time", + "run_name": "ComplexBlob/YACLib/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -555,10 +555,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/512/real_time", + "name": "ComplexBlob/YACLib/512/real_time", "family_index": 14, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/512/real_time", + "run_name": "ComplexBlob/YACLib/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -569,10 +569,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/1024/real_time", + "name": "ComplexBlob/YACLib/1024/real_time", "family_index": 15, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/1024/real_time", + "run_name": "ComplexBlob/YACLib/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -583,10 +583,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2048/real_time", + "name": "ComplexBlob/YACLib/2048/real_time", "family_index": 16, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2048/real_time", + "run_name": "ComplexBlob/YACLib/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -597,10 +597,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4096/real_time", + "name": "ComplexBlob/YACLib/4096/real_time", "family_index": 17, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4096/real_time", + "run_name": "ComplexBlob/YACLib/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -611,10 +611,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8192/real_time", + "name": "ComplexBlob/YACLib/8192/real_time", "family_index": 18, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8192/real_time", + "run_name": "ComplexBlob/YACLib/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -625,10 +625,10 @@ "time_unit": "ns" }, { - "name": "NoContention(YACLib)/real_time", + "name": "NoContention/YACLib/real_time", "family_index": 19, "per_family_instance_index": 0, - "run_name": "NoContention(YACLib)/real_time", + "run_name": "NoContention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -639,10 +639,10 @@ "time_unit": "ns" }, { - "name": "Contention(YACLib)/real_time", + "name": "Contention/YACLib/real_time", "family_index": 20, "per_family_instance_index": 0, - "run_name": "Contention(YACLib)/real_time", + "run_name": "Contention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, diff --git a/future/result/i7-12700KF/clang_libcxx/picture/ComplexBlob.svg b/future/result/i7-12700KF/clang_libcxx/picture/ComplexBlob.svg new file mode 100644 index 0000000..1420c69 --- /dev/null +++ b/future/result/i7-12700KF/clang_libcxx/picture/ComplexBlob.svg @@ -0,0 +1,802 @@ + + + + + + + + 2022-04-10T19:11:54.683438 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-12700KF/clang_libcxx/picture/ConstantFuture.svg b/future/result/i7-12700KF/clang_libcxx/picture/ConstantFuture.svg new file mode 100644 index 0000000..bac04f0 --- /dev/null +++ b/future/result/i7-12700KF/clang_libcxx/picture/ConstantFuture.svg @@ -0,0 +1,785 @@ + + + + + + + + 2022-04-10T19:11:54.020001 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-12700KF/clang_libcxx/picture/Contention.svg b/future/result/i7-12700KF/clang_libcxx/picture/Contention.svg new file mode 100644 index 0000000..954e845 --- /dev/null +++ b/future/result/i7-12700KF/clang_libcxx/picture/Contention.svg @@ -0,0 +1,690 @@ + + + + + + + + 2022-04-10T19:11:55.014412 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-12700KF/clang_libcxx/picture/NoContention.svg b/future/result/i7-12700KF/clang_libcxx/picture/NoContention.svg new file mode 100644 index 0000000..b7ce22f --- /dev/null +++ b/future/result/i7-12700KF/clang_libcxx/picture/NoContention.svg @@ -0,0 +1,675 @@ + + + + + + + + 2022-04-10T19:11:54.833919 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-12700KF/clang_libcxx/picture/PromiseAndFuture.svg b/future/result/i7-12700KF/clang_libcxx/picture/PromiseAndFuture.svg new file mode 100644 index 0000000..840d105 --- /dev/null +++ b/future/result/i7-12700KF/clang_libcxx/picture/PromiseAndFuture.svg @@ -0,0 +1,824 @@ + + + + + + + + 2022-04-10T19:11:54.137626 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-12700KF/clang_libcxx/picture/ThenAllInline.svg b/future/result/i7-12700KF/clang_libcxx/picture/ThenAllInline.svg new file mode 100644 index 0000000..d38422b --- /dev/null +++ b/future/result/i7-12700KF/clang_libcxx/picture/ThenAllInline.svg @@ -0,0 +1,692 @@ + + + + + + + + 2022-04-10T19:11:54.261289 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-12700KF/clang_libcxx/picture/ThenOneInline.svg b/future/result/i7-12700KF/clang_libcxx/picture/ThenOneInline.svg new file mode 100644 index 0000000..70db2b6 --- /dev/null +++ b/future/result/i7-12700KF/clang_libcxx/picture/ThenOneInline.svg @@ -0,0 +1,652 @@ + + + + + + + + 2022-04-10T19:11:54.388056 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-12700KF/clang_libcxx/picture/ThenScheduler.svg b/future/result/i7-12700KF/clang_libcxx/picture/ThenScheduler.svg new file mode 100644 index 0000000..f363797 --- /dev/null +++ b/future/result/i7-12700KF/clang_libcxx/picture/ThenScheduler.svg @@ -0,0 +1,792 @@ + + + + + + + + 2022-04-10T19:11:54.504372 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-12700KF/clang_libstdcxx/data.json b/future/result/i7-12700KF/clang_libstdcxx/data.json index e761517..76a7fac 100644 --- a/future/result/i7-12700KF/clang_libstdcxx/data.json +++ b/future/result/i7-12700KF/clang_libstdcxx/data.json @@ -37,10 +37,10 @@ }, "benchmarks": [ { - "name": "ConstantFuture(Std)/real_time", + "name": "ConstantFuture/Std/real_time", "family_index": 0, "per_family_instance_index": 0, - "run_name": "ConstantFuture(Std)/real_time", + "run_name": "ConstantFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -51,10 +51,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(YACLib)/real_time", + "name": "ConstantFuture/YACLib/real_time", "family_index": 1, "per_family_instance_index": 0, - "run_name": "ConstantFuture(YACLib)/real_time", + "run_name": "ConstantFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -65,10 +65,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(Folly)/real_time", + "name": "ConstantFuture/Folly/real_time", "family_index": 2, "per_family_instance_index": 0, - "run_name": "ConstantFuture(Folly)/real_time", + "run_name": "ConstantFuture/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -79,10 +79,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(BoostThread)/real_time", + "name": "ConstantFuture/BoostThread/real_time", "family_index": 3, "per_family_instance_index": 0, - "run_name": "ConstantFuture(BoostThread)/real_time", + "run_name": "ConstantFuture/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -93,10 +93,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(Std)/real_time", + "name": "PromiseAndFuture/Std/real_time", "family_index": 4, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(Std)/real_time", + "run_name": "PromiseAndFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -107,10 +107,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(YACLib)/real_time", + "name": "PromiseAndFuture/YACLib/real_time", "family_index": 5, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(YACLib)/real_time", + "run_name": "PromiseAndFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -121,10 +121,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(Folly)/real_time", + "name": "PromiseAndFuture/Folly/real_time", "family_index": 6, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(Folly)/real_time", + "run_name": "PromiseAndFuture/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -135,10 +135,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(BoostThread)/real_time", + "name": "PromiseAndFuture/BoostThread/real_time", "family_index": 7, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(BoostThread)/real_time", + "run_name": "PromiseAndFuture/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -149,10 +149,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/0/real_time", + "name": "Then/YACLib/0/0/real_time", "family_index": 8, "per_family_instance_index": 0, - "run_name": "Then(YACLib)/0/0/real_time", + "run_name": "Then/YACLib/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -163,10 +163,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/0/real_time", + "name": "Then/YACLib/1/0/real_time", "family_index": 8, "per_family_instance_index": 1, - "run_name": "Then(YACLib)/1/0/real_time", + "run_name": "Then/YACLib/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -177,10 +177,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/0/real_time", + "name": "Then/YACLib/2/0/real_time", "family_index": 8, "per_family_instance_index": 2, - "run_name": "Then(YACLib)/2/0/real_time", + "run_name": "Then/YACLib/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -191,10 +191,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/0/real_time", + "name": "Then/YACLib/4/0/real_time", "family_index": 8, "per_family_instance_index": 3, - "run_name": "Then(YACLib)/4/0/real_time", + "run_name": "Then/YACLib/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -205,10 +205,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/0/real_time", + "name": "Then/YACLib/8/0/real_time", "family_index": 8, "per_family_instance_index": 4, - "run_name": "Then(YACLib)/8/0/real_time", + "run_name": "Then/YACLib/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -219,10 +219,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/0/real_time", + "name": "Then/YACLib/16/0/real_time", "family_index": 8, "per_family_instance_index": 5, - "run_name": "Then(YACLib)/16/0/real_time", + "run_name": "Then/YACLib/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -233,10 +233,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/0/real_time", + "name": "Then/YACLib/32/0/real_time", "family_index": 8, "per_family_instance_index": 6, - "run_name": "Then(YACLib)/32/0/real_time", + "run_name": "Then/YACLib/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -247,10 +247,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/0/real_time", + "name": "Then/YACLib/64/0/real_time", "family_index": 8, "per_family_instance_index": 7, - "run_name": "Then(YACLib)/64/0/real_time", + "run_name": "Then/YACLib/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -261,10 +261,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/1/real_time", + "name": "Then/YACLib/0/1/real_time", "family_index": 8, "per_family_instance_index": 8, - "run_name": "Then(YACLib)/0/1/real_time", + "run_name": "Then/YACLib/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -275,10 +275,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/1/real_time", + "name": "Then/YACLib/1/1/real_time", "family_index": 8, "per_family_instance_index": 9, - "run_name": "Then(YACLib)/1/1/real_time", + "run_name": "Then/YACLib/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -289,10 +289,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/1/real_time", + "name": "Then/YACLib/2/1/real_time", "family_index": 8, "per_family_instance_index": 10, - "run_name": "Then(YACLib)/2/1/real_time", + "run_name": "Then/YACLib/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -303,10 +303,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/1/real_time", + "name": "Then/YACLib/4/1/real_time", "family_index": 8, "per_family_instance_index": 11, - "run_name": "Then(YACLib)/4/1/real_time", + "run_name": "Then/YACLib/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -317,10 +317,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/1/real_time", + "name": "Then/YACLib/8/1/real_time", "family_index": 8, "per_family_instance_index": 12, - "run_name": "Then(YACLib)/8/1/real_time", + "run_name": "Then/YACLib/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -331,10 +331,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/1/real_time", + "name": "Then/YACLib/16/1/real_time", "family_index": 8, "per_family_instance_index": 13, - "run_name": "Then(YACLib)/16/1/real_time", + "run_name": "Then/YACLib/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -345,10 +345,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/1/real_time", + "name": "Then/YACLib/32/1/real_time", "family_index": 8, "per_family_instance_index": 14, - "run_name": "Then(YACLib)/32/1/real_time", + "run_name": "Then/YACLib/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -359,10 +359,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/1/real_time", + "name": "Then/YACLib/64/1/real_time", "family_index": 8, "per_family_instance_index": 15, - "run_name": "Then(YACLib)/64/1/real_time", + "run_name": "Then/YACLib/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -373,10 +373,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/2/real_time", + "name": "Then/YACLib/0/2/real_time", "family_index": 8, "per_family_instance_index": 16, - "run_name": "Then(YACLib)/0/2/real_time", + "run_name": "Then/YACLib/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -387,10 +387,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/2/real_time", + "name": "Then/YACLib/1/2/real_time", "family_index": 8, "per_family_instance_index": 17, - "run_name": "Then(YACLib)/1/2/real_time", + "run_name": "Then/YACLib/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -401,10 +401,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/2/real_time", + "name": "Then/YACLib/2/2/real_time", "family_index": 8, "per_family_instance_index": 18, - "run_name": "Then(YACLib)/2/2/real_time", + "run_name": "Then/YACLib/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -415,10 +415,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/2/real_time", + "name": "Then/YACLib/4/2/real_time", "family_index": 8, "per_family_instance_index": 19, - "run_name": "Then(YACLib)/4/2/real_time", + "run_name": "Then/YACLib/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -429,10 +429,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/2/real_time", + "name": "Then/YACLib/8/2/real_time", "family_index": 8, "per_family_instance_index": 20, - "run_name": "Then(YACLib)/8/2/real_time", + "run_name": "Then/YACLib/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -443,10 +443,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/2/real_time", + "name": "Then/YACLib/16/2/real_time", "family_index": 8, "per_family_instance_index": 21, - "run_name": "Then(YACLib)/16/2/real_time", + "run_name": "Then/YACLib/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -457,10 +457,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/2/real_time", + "name": "Then/YACLib/32/2/real_time", "family_index": 8, "per_family_instance_index": 22, - "run_name": "Then(YACLib)/32/2/real_time", + "run_name": "Then/YACLib/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -471,10 +471,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/2/real_time", + "name": "Then/YACLib/64/2/real_time", "family_index": 8, "per_family_instance_index": 23, - "run_name": "Then(YACLib)/64/2/real_time", + "run_name": "Then/YACLib/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -485,10 +485,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/0/real_time", + "name": "Then/Folly/0/0/real_time", "family_index": 9, "per_family_instance_index": 0, - "run_name": "Then(Folly)/0/0/real_time", + "run_name": "Then/Folly/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -499,10 +499,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/0/real_time", + "name": "Then/Folly/1/0/real_time", "family_index": 9, "per_family_instance_index": 1, - "run_name": "Then(Folly)/1/0/real_time", + "run_name": "Then/Folly/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -513,10 +513,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/0/real_time", + "name": "Then/Folly/2/0/real_time", "family_index": 9, "per_family_instance_index": 2, - "run_name": "Then(Folly)/2/0/real_time", + "run_name": "Then/Folly/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -527,10 +527,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/0/real_time", + "name": "Then/Folly/4/0/real_time", "family_index": 9, "per_family_instance_index": 3, - "run_name": "Then(Folly)/4/0/real_time", + "run_name": "Then/Folly/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -541,10 +541,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/0/real_time", + "name": "Then/Folly/8/0/real_time", "family_index": 9, "per_family_instance_index": 4, - "run_name": "Then(Folly)/8/0/real_time", + "run_name": "Then/Folly/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -555,10 +555,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/0/real_time", + "name": "Then/Folly/16/0/real_time", "family_index": 9, "per_family_instance_index": 5, - "run_name": "Then(Folly)/16/0/real_time", + "run_name": "Then/Folly/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -569,10 +569,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/0/real_time", + "name": "Then/Folly/32/0/real_time", "family_index": 9, "per_family_instance_index": 6, - "run_name": "Then(Folly)/32/0/real_time", + "run_name": "Then/Folly/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -583,10 +583,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/0/real_time", + "name": "Then/Folly/64/0/real_time", "family_index": 9, "per_family_instance_index": 7, - "run_name": "Then(Folly)/64/0/real_time", + "run_name": "Then/Folly/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -597,10 +597,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/1/real_time", + "name": "Then/Folly/0/1/real_time", "family_index": 9, "per_family_instance_index": 8, - "run_name": "Then(Folly)/0/1/real_time", + "run_name": "Then/Folly/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -611,10 +611,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/1/real_time", + "name": "Then/Folly/1/1/real_time", "family_index": 9, "per_family_instance_index": 9, - "run_name": "Then(Folly)/1/1/real_time", + "run_name": "Then/Folly/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -625,10 +625,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/1/real_time", + "name": "Then/Folly/2/1/real_time", "family_index": 9, "per_family_instance_index": 10, - "run_name": "Then(Folly)/2/1/real_time", + "run_name": "Then/Folly/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -639,10 +639,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/1/real_time", + "name": "Then/Folly/4/1/real_time", "family_index": 9, "per_family_instance_index": 11, - "run_name": "Then(Folly)/4/1/real_time", + "run_name": "Then/Folly/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -653,10 +653,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/1/real_time", + "name": "Then/Folly/8/1/real_time", "family_index": 9, "per_family_instance_index": 12, - "run_name": "Then(Folly)/8/1/real_time", + "run_name": "Then/Folly/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -667,10 +667,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/1/real_time", + "name": "Then/Folly/16/1/real_time", "family_index": 9, "per_family_instance_index": 13, - "run_name": "Then(Folly)/16/1/real_time", + "run_name": "Then/Folly/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -681,10 +681,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/1/real_time", + "name": "Then/Folly/32/1/real_time", "family_index": 9, "per_family_instance_index": 14, - "run_name": "Then(Folly)/32/1/real_time", + "run_name": "Then/Folly/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -695,10 +695,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/1/real_time", + "name": "Then/Folly/64/1/real_time", "family_index": 9, "per_family_instance_index": 15, - "run_name": "Then(Folly)/64/1/real_time", + "run_name": "Then/Folly/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -709,10 +709,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/2/real_time", + "name": "Then/Folly/0/2/real_time", "family_index": 9, "per_family_instance_index": 16, - "run_name": "Then(Folly)/0/2/real_time", + "run_name": "Then/Folly/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -723,10 +723,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/2/real_time", + "name": "Then/Folly/1/2/real_time", "family_index": 9, "per_family_instance_index": 17, - "run_name": "Then(Folly)/1/2/real_time", + "run_name": "Then/Folly/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -737,10 +737,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/2/real_time", + "name": "Then/Folly/2/2/real_time", "family_index": 9, "per_family_instance_index": 18, - "run_name": "Then(Folly)/2/2/real_time", + "run_name": "Then/Folly/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -751,10 +751,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/2/real_time", + "name": "Then/Folly/4/2/real_time", "family_index": 9, "per_family_instance_index": 19, - "run_name": "Then(Folly)/4/2/real_time", + "run_name": "Then/Folly/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -765,10 +765,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/2/real_time", + "name": "Then/Folly/8/2/real_time", "family_index": 9, "per_family_instance_index": 20, - "run_name": "Then(Folly)/8/2/real_time", + "run_name": "Then/Folly/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -779,10 +779,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/2/real_time", + "name": "Then/Folly/16/2/real_time", "family_index": 9, "per_family_instance_index": 21, - "run_name": "Then(Folly)/16/2/real_time", + "run_name": "Then/Folly/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -793,10 +793,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/2/real_time", + "name": "Then/Folly/32/2/real_time", "family_index": 9, "per_family_instance_index": 22, - "run_name": "Then(Folly)/32/2/real_time", + "run_name": "Then/Folly/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -807,10 +807,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/2/real_time", + "name": "Then/Folly/64/2/real_time", "family_index": 9, "per_family_instance_index": 23, - "run_name": "Then(Folly)/64/2/real_time", + "run_name": "Then/Folly/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -821,10 +821,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/0/real_time", + "name": "Then/BoostThread/0/0/real_time", "family_index": 10, "per_family_instance_index": 0, - "run_name": "Then(BoostThread)/0/0/real_time", + "run_name": "Then/BoostThread/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -835,10 +835,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/0/real_time", + "name": "Then/BoostThread/1/0/real_time", "family_index": 10, "per_family_instance_index": 1, - "run_name": "Then(BoostThread)/1/0/real_time", + "run_name": "Then/BoostThread/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -849,10 +849,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/0/real_time", + "name": "Then/BoostThread/2/0/real_time", "family_index": 10, "per_family_instance_index": 2, - "run_name": "Then(BoostThread)/2/0/real_time", + "run_name": "Then/BoostThread/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -863,10 +863,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/0/real_time", + "name": "Then/BoostThread/4/0/real_time", "family_index": 10, "per_family_instance_index": 3, - "run_name": "Then(BoostThread)/4/0/real_time", + "run_name": "Then/BoostThread/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -877,10 +877,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/0/real_time", + "name": "Then/BoostThread/8/0/real_time", "family_index": 10, "per_family_instance_index": 4, - "run_name": "Then(BoostThread)/8/0/real_time", + "run_name": "Then/BoostThread/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -891,10 +891,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/0/real_time", + "name": "Then/BoostThread/16/0/real_time", "family_index": 10, "per_family_instance_index": 5, - "run_name": "Then(BoostThread)/16/0/real_time", + "run_name": "Then/BoostThread/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -905,10 +905,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/0/real_time", + "name": "Then/BoostThread/32/0/real_time", "family_index": 10, "per_family_instance_index": 6, - "run_name": "Then(BoostThread)/32/0/real_time", + "run_name": "Then/BoostThread/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -919,10 +919,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/0/real_time", + "name": "Then/BoostThread/64/0/real_time", "family_index": 10, "per_family_instance_index": 7, - "run_name": "Then(BoostThread)/64/0/real_time", + "run_name": "Then/BoostThread/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -933,10 +933,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/1/real_time", + "name": "Then/BoostThread/0/1/real_time", "family_index": 10, "per_family_instance_index": 8, - "run_name": "Then(BoostThread)/0/1/real_time", + "run_name": "Then/BoostThread/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -947,10 +947,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/1/real_time", + "name": "Then/BoostThread/1/1/real_time", "family_index": 10, "per_family_instance_index": 9, - "run_name": "Then(BoostThread)/1/1/real_time", + "run_name": "Then/BoostThread/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -961,10 +961,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/1/real_time", + "name": "Then/BoostThread/2/1/real_time", "family_index": 10, "per_family_instance_index": 10, - "run_name": "Then(BoostThread)/2/1/real_time", + "run_name": "Then/BoostThread/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -975,10 +975,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/1/real_time", + "name": "Then/BoostThread/4/1/real_time", "family_index": 10, "per_family_instance_index": 11, - "run_name": "Then(BoostThread)/4/1/real_time", + "run_name": "Then/BoostThread/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -989,10 +989,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/1/real_time", + "name": "Then/BoostThread/8/1/real_time", "family_index": 10, "per_family_instance_index": 12, - "run_name": "Then(BoostThread)/8/1/real_time", + "run_name": "Then/BoostThread/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1003,10 +1003,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/1/real_time", + "name": "Then/BoostThread/16/1/real_time", "family_index": 10, "per_family_instance_index": 13, - "run_name": "Then(BoostThread)/16/1/real_time", + "run_name": "Then/BoostThread/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1017,10 +1017,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/1/real_time", + "name": "Then/BoostThread/32/1/real_time", "family_index": 10, "per_family_instance_index": 14, - "run_name": "Then(BoostThread)/32/1/real_time", + "run_name": "Then/BoostThread/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1031,10 +1031,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/1/real_time", + "name": "Then/BoostThread/64/1/real_time", "family_index": 10, "per_family_instance_index": 15, - "run_name": "Then(BoostThread)/64/1/real_time", + "run_name": "Then/BoostThread/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1045,10 +1045,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/2/real_time", + "name": "Then/BoostThread/0/2/real_time", "family_index": 10, "per_family_instance_index": 16, - "run_name": "Then(BoostThread)/0/2/real_time", + "run_name": "Then/BoostThread/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1059,10 +1059,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/2/real_time", + "name": "Then/BoostThread/1/2/real_time", "family_index": 10, "per_family_instance_index": 17, - "run_name": "Then(BoostThread)/1/2/real_time", + "run_name": "Then/BoostThread/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1073,10 +1073,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/2/real_time", + "name": "Then/BoostThread/2/2/real_time", "family_index": 10, "per_family_instance_index": 18, - "run_name": "Then(BoostThread)/2/2/real_time", + "run_name": "Then/BoostThread/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1087,10 +1087,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/2/real_time", + "name": "Then/BoostThread/4/2/real_time", "family_index": 10, "per_family_instance_index": 19, - "run_name": "Then(BoostThread)/4/2/real_time", + "run_name": "Then/BoostThread/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1101,10 +1101,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/2/real_time", + "name": "Then/BoostThread/8/2/real_time", "family_index": 10, "per_family_instance_index": 20, - "run_name": "Then(BoostThread)/8/2/real_time", + "run_name": "Then/BoostThread/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1115,10 +1115,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/2/real_time", + "name": "Then/BoostThread/16/2/real_time", "family_index": 10, "per_family_instance_index": 21, - "run_name": "Then(BoostThread)/16/2/real_time", + "run_name": "Then/BoostThread/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1129,10 +1129,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/2/real_time", + "name": "Then/BoostThread/32/2/real_time", "family_index": 10, "per_family_instance_index": 22, - "run_name": "Then(BoostThread)/32/2/real_time", + "run_name": "Then/BoostThread/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1143,10 +1143,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/2/real_time", + "name": "Then/BoostThread/64/2/real_time", "family_index": 10, "per_family_instance_index": 23, - "run_name": "Then(BoostThread)/64/2/real_time", + "run_name": "Then/BoostThread/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1157,10 +1157,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/0/real_time", + "name": "ComplexBlob/YACLib/0/real_time", "family_index": 11, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/0/real_time", + "run_name": "ComplexBlob/YACLib/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1171,10 +1171,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/0/real_time", + "name": "ComplexBlob/Folly/0/real_time", "family_index": 12, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/0/real_time", + "run_name": "ComplexBlob/Folly/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1185,10 +1185,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/0/real_time", + "name": "ComplexBlob/BoostThread/0/real_time", "family_index": 13, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/0/real_time", + "run_name": "ComplexBlob/BoostThread/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1199,10 +1199,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2/real_time", + "name": "ComplexBlob/YACLib/2/real_time", "family_index": 14, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2/real_time", + "run_name": "ComplexBlob/YACLib/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1213,10 +1213,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/2/real_time", + "name": "ComplexBlob/Folly/2/real_time", "family_index": 15, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/2/real_time", + "run_name": "ComplexBlob/Folly/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1227,10 +1227,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/2/real_time", + "name": "ComplexBlob/BoostThread/2/real_time", "family_index": 16, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/2/real_time", + "run_name": "ComplexBlob/BoostThread/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1241,10 +1241,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4/real_time", + "name": "ComplexBlob/YACLib/4/real_time", "family_index": 17, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4/real_time", + "run_name": "ComplexBlob/YACLib/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1255,10 +1255,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/4/real_time", + "name": "ComplexBlob/Folly/4/real_time", "family_index": 18, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/4/real_time", + "run_name": "ComplexBlob/Folly/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1269,10 +1269,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/4/real_time", + "name": "ComplexBlob/BoostThread/4/real_time", "family_index": 19, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/4/real_time", + "run_name": "ComplexBlob/BoostThread/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1283,10 +1283,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8/real_time", + "name": "ComplexBlob/YACLib/8/real_time", "family_index": 20, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8/real_time", + "run_name": "ComplexBlob/YACLib/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1297,10 +1297,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/8/real_time", + "name": "ComplexBlob/Folly/8/real_time", "family_index": 21, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/8/real_time", + "run_name": "ComplexBlob/Folly/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1311,10 +1311,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/8/real_time", + "name": "ComplexBlob/BoostThread/8/real_time", "family_index": 22, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/8/real_time", + "run_name": "ComplexBlob/BoostThread/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1325,10 +1325,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/16/real_time", + "name": "ComplexBlob/YACLib/16/real_time", "family_index": 23, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/16/real_time", + "run_name": "ComplexBlob/YACLib/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1339,10 +1339,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/16/real_time", + "name": "ComplexBlob/Folly/16/real_time", "family_index": 24, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/16/real_time", + "run_name": "ComplexBlob/Folly/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1353,10 +1353,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/16/real_time", + "name": "ComplexBlob/BoostThread/16/real_time", "family_index": 25, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/16/real_time", + "run_name": "ComplexBlob/BoostThread/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1367,10 +1367,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/32/real_time", + "name": "ComplexBlob/YACLib/32/real_time", "family_index": 26, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/32/real_time", + "run_name": "ComplexBlob/YACLib/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1381,10 +1381,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/32/real_time", + "name": "ComplexBlob/Folly/32/real_time", "family_index": 27, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/32/real_time", + "run_name": "ComplexBlob/Folly/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1395,10 +1395,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/32/real_time", + "name": "ComplexBlob/BoostThread/32/real_time", "family_index": 28, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/32/real_time", + "run_name": "ComplexBlob/BoostThread/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1409,10 +1409,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/64/real_time", + "name": "ComplexBlob/YACLib/64/real_time", "family_index": 29, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/64/real_time", + "run_name": "ComplexBlob/YACLib/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1423,10 +1423,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/64/real_time", + "name": "ComplexBlob/Folly/64/real_time", "family_index": 30, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/64/real_time", + "run_name": "ComplexBlob/Folly/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1437,10 +1437,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/64/real_time", + "name": "ComplexBlob/BoostThread/64/real_time", "family_index": 31, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/64/real_time", + "run_name": "ComplexBlob/BoostThread/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1451,10 +1451,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/128/real_time", + "name": "ComplexBlob/YACLib/128/real_time", "family_index": 32, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/128/real_time", + "run_name": "ComplexBlob/YACLib/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1465,10 +1465,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/128/real_time", + "name": "ComplexBlob/Folly/128/real_time", "family_index": 33, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/128/real_time", + "run_name": "ComplexBlob/Folly/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1479,10 +1479,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/128/real_time", + "name": "ComplexBlob/BoostThread/128/real_time", "family_index": 34, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/128/real_time", + "run_name": "ComplexBlob/BoostThread/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1493,10 +1493,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/256/real_time", + "name": "ComplexBlob/YACLib/256/real_time", "family_index": 35, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/256/real_time", + "run_name": "ComplexBlob/YACLib/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1507,10 +1507,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/256/real_time", + "name": "ComplexBlob/Folly/256/real_time", "family_index": 36, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/256/real_time", + "run_name": "ComplexBlob/Folly/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1521,10 +1521,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/256/real_time", + "name": "ComplexBlob/BoostThread/256/real_time", "family_index": 37, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/256/real_time", + "run_name": "ComplexBlob/BoostThread/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1535,10 +1535,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/512/real_time", + "name": "ComplexBlob/YACLib/512/real_time", "family_index": 38, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/512/real_time", + "run_name": "ComplexBlob/YACLib/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1549,10 +1549,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/512/real_time", + "name": "ComplexBlob/Folly/512/real_time", "family_index": 39, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/512/real_time", + "run_name": "ComplexBlob/Folly/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1563,10 +1563,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/512/real_time", + "name": "ComplexBlob/BoostThread/512/real_time", "family_index": 40, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/512/real_time", + "run_name": "ComplexBlob/BoostThread/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1577,10 +1577,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/1024/real_time", + "name": "ComplexBlob/YACLib/1024/real_time", "family_index": 41, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/1024/real_time", + "run_name": "ComplexBlob/YACLib/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1591,10 +1591,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/1024/real_time", + "name": "ComplexBlob/Folly/1024/real_time", "family_index": 42, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/1024/real_time", + "run_name": "ComplexBlob/Folly/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1605,10 +1605,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/1024/real_time", + "name": "ComplexBlob/BoostThread/1024/real_time", "family_index": 43, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/1024/real_time", + "run_name": "ComplexBlob/BoostThread/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1619,10 +1619,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2048/real_time", + "name": "ComplexBlob/YACLib/2048/real_time", "family_index": 44, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2048/real_time", + "run_name": "ComplexBlob/YACLib/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1633,10 +1633,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/2048/real_time", + "name": "ComplexBlob/Folly/2048/real_time", "family_index": 45, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/2048/real_time", + "run_name": "ComplexBlob/Folly/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1647,10 +1647,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/2048/real_time", + "name": "ComplexBlob/BoostThread/2048/real_time", "family_index": 46, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/2048/real_time", + "run_name": "ComplexBlob/BoostThread/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1661,10 +1661,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4096/real_time", + "name": "ComplexBlob/YACLib/4096/real_time", "family_index": 47, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4096/real_time", + "run_name": "ComplexBlob/YACLib/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1675,10 +1675,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/4096/real_time", + "name": "ComplexBlob/Folly/4096/real_time", "family_index": 48, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/4096/real_time", + "run_name": "ComplexBlob/Folly/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1689,10 +1689,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/4096/real_time", + "name": "ComplexBlob/BoostThread/4096/real_time", "family_index": 49, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/4096/real_time", + "run_name": "ComplexBlob/BoostThread/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1703,10 +1703,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8192/real_time", + "name": "ComplexBlob/YACLib/8192/real_time", "family_index": 50, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8192/real_time", + "run_name": "ComplexBlob/YACLib/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1717,10 +1717,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/8192/real_time", + "name": "ComplexBlob/Folly/8192/real_time", "family_index": 51, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/8192/real_time", + "run_name": "ComplexBlob/Folly/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1731,10 +1731,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/8192/real_time", + "name": "ComplexBlob/BoostThread/8192/real_time", "family_index": 52, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/8192/real_time", + "run_name": "ComplexBlob/BoostThread/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1745,10 +1745,10 @@ "time_unit": "ns" }, { - "name": "NoContention(YACLib)/real_time", + "name": "NoContention/YACLib/real_time", "family_index": 53, "per_family_instance_index": 0, - "run_name": "NoContention(YACLib)/real_time", + "run_name": "NoContention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1759,10 +1759,10 @@ "time_unit": "ns" }, { - "name": "NoContention(Folly)/real_time", + "name": "NoContention/Folly/real_time", "family_index": 54, "per_family_instance_index": 0, - "run_name": "NoContention(Folly)/real_time", + "run_name": "NoContention/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1773,10 +1773,10 @@ "time_unit": "ns" }, { - "name": "NoContention(BoostThread)/real_time", + "name": "NoContention/BoostThread/real_time", "family_index": 55, "per_family_instance_index": 0, - "run_name": "NoContention(BoostThread)/real_time", + "run_name": "NoContention/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1787,10 +1787,10 @@ "time_unit": "ns" }, { - "name": "Contention(YACLib)/real_time", + "name": "Contention/YACLib/real_time", "family_index": 56, "per_family_instance_index": 0, - "run_name": "Contention(YACLib)/real_time", + "run_name": "Contention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1801,10 +1801,10 @@ "time_unit": "ns" }, { - "name": "Contention(Folly)/real_time", + "name": "Contention/Folly/real_time", "family_index": 57, "per_family_instance_index": 0, - "run_name": "Contention(Folly)/real_time", + "run_name": "Contention/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1815,10 +1815,10 @@ "time_unit": "ns" }, { - "name": "Contention(BoostThread)/real_time", + "name": "Contention/BoostThread/real_time", "family_index": 58, "per_family_instance_index": 0, - "run_name": "Contention(BoostThread)/real_time", + "run_name": "Contention/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, diff --git a/future/result/i7-12700KF/clang_libstdcxx/picture/ComplexBlob.svg b/future/result/i7-12700KF/clang_libstdcxx/picture/ComplexBlob.svg new file mode 100644 index 0000000..36e3fd7 --- /dev/null +++ b/future/result/i7-12700KF/clang_libstdcxx/picture/ComplexBlob.svg @@ -0,0 +1,1219 @@ + + + + + + + + 2022-04-10T19:11:52.463217 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-12700KF/clang_libstdcxx/picture/ConstantFuture.svg b/future/result/i7-12700KF/clang_libstdcxx/picture/ConstantFuture.svg new file mode 100644 index 0000000..7ff10fe --- /dev/null +++ b/future/result/i7-12700KF/clang_libstdcxx/picture/ConstantFuture.svg @@ -0,0 +1,923 @@ + + + + + + + + 2022-04-10T19:11:51.741889 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-12700KF/clang_libstdcxx/picture/Contention.svg b/future/result/i7-12700KF/clang_libstdcxx/picture/Contention.svg new file mode 100644 index 0000000..3653240 --- /dev/null +++ b/future/result/i7-12700KF/clang_libstdcxx/picture/Contention.svg @@ -0,0 +1,893 @@ + + + + + + + + 2022-04-10T19:11:52.741048 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-12700KF/clang_libstdcxx/picture/NoContention.svg b/future/result/i7-12700KF/clang_libstdcxx/picture/NoContention.svg new file mode 100644 index 0000000..705e408 --- /dev/null +++ b/future/result/i7-12700KF/clang_libstdcxx/picture/NoContention.svg @@ -0,0 +1,936 @@ + + + + + + + + 2022-04-10T19:11:52.612066 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-12700KF/clang_libstdcxx/picture/PromiseAndFuture.svg b/future/result/i7-12700KF/clang_libstdcxx/picture/PromiseAndFuture.svg new file mode 100644 index 0000000..faeb4b2 --- /dev/null +++ b/future/result/i7-12700KF/clang_libstdcxx/picture/PromiseAndFuture.svg @@ -0,0 +1,977 @@ + + + + + + + + 2022-04-10T19:11:51.868987 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-12700KF/clang_libstdcxx/picture/ThenAllInline.svg b/future/result/i7-12700KF/clang_libstdcxx/picture/ThenAllInline.svg new file mode 100644 index 0000000..21c66ad --- /dev/null +++ b/future/result/i7-12700KF/clang_libstdcxx/picture/ThenAllInline.svg @@ -0,0 +1,1101 @@ + + + + + + + + 2022-04-10T19:11:52.013234 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-12700KF/clang_libstdcxx/picture/ThenOneInline.svg b/future/result/i7-12700KF/clang_libstdcxx/picture/ThenOneInline.svg new file mode 100644 index 0000000..7e5adcd --- /dev/null +++ b/future/result/i7-12700KF/clang_libstdcxx/picture/ThenOneInline.svg @@ -0,0 +1,1121 @@ + + + + + + + + 2022-04-10T19:11:52.162663 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-12700KF/clang_libstdcxx/picture/ThenScheduler.svg b/future/result/i7-12700KF/clang_libstdcxx/picture/ThenScheduler.svg new file mode 100644 index 0000000..5b8ab12 --- /dev/null +++ b/future/result/i7-12700KF/clang_libstdcxx/picture/ThenScheduler.svg @@ -0,0 +1,1131 @@ + + + + + + + + 2022-04-10T19:11:52.311816 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-12700KF/gcc_libstdcxx/data.json b/future/result/i7-12700KF/gcc_libstdcxx/data.json index 07c261e..2f03e14 100644 --- a/future/result/i7-12700KF/gcc_libstdcxx/data.json +++ b/future/result/i7-12700KF/gcc_libstdcxx/data.json @@ -37,10 +37,10 @@ }, "benchmarks": [ { - "name": "ConstantFuture(Std)/real_time", + "name": "ConstantFuture/Std/real_time", "family_index": 0, "per_family_instance_index": 0, - "run_name": "ConstantFuture(Std)/real_time", + "run_name": "ConstantFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -51,10 +51,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(YACLib)/real_time", + "name": "ConstantFuture/YACLib/real_time", "family_index": 1, "per_family_instance_index": 0, - "run_name": "ConstantFuture(YACLib)/real_time", + "run_name": "ConstantFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -65,10 +65,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(Folly)/real_time", + "name": "ConstantFuture/Folly/real_time", "family_index": 2, "per_family_instance_index": 0, - "run_name": "ConstantFuture(Folly)/real_time", + "run_name": "ConstantFuture/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -79,10 +79,10 @@ "time_unit": "ns" }, { - "name": "ConstantFuture(BoostThread)/real_time", + "name": "ConstantFuture/BoostThread/real_time", "family_index": 3, "per_family_instance_index": 0, - "run_name": "ConstantFuture(BoostThread)/real_time", + "run_name": "ConstantFuture/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -93,10 +93,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(Std)/real_time", + "name": "PromiseAndFuture/Std/real_time", "family_index": 4, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(Std)/real_time", + "run_name": "PromiseAndFuture/Std/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -107,10 +107,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(YACLib)/real_time", + "name": "PromiseAndFuture/YACLib/real_time", "family_index": 5, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(YACLib)/real_time", + "run_name": "PromiseAndFuture/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -121,10 +121,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(Folly)/real_time", + "name": "PromiseAndFuture/Folly/real_time", "family_index": 6, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(Folly)/real_time", + "run_name": "PromiseAndFuture/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -135,10 +135,10 @@ "time_unit": "ns" }, { - "name": "PromiseAndFuture(BoostThread)/real_time", + "name": "PromiseAndFuture/BoostThread/real_time", "family_index": 7, "per_family_instance_index": 0, - "run_name": "PromiseAndFuture(BoostThread)/real_time", + "run_name": "PromiseAndFuture/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -149,10 +149,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/0/real_time", + "name": "Then/YACLib/0/0/real_time", "family_index": 8, "per_family_instance_index": 0, - "run_name": "Then(YACLib)/0/0/real_time", + "run_name": "Then/YACLib/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -163,10 +163,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/0/real_time", + "name": "Then/YACLib/1/0/real_time", "family_index": 8, "per_family_instance_index": 1, - "run_name": "Then(YACLib)/1/0/real_time", + "run_name": "Then/YACLib/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -177,10 +177,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/0/real_time", + "name": "Then/YACLib/2/0/real_time", "family_index": 8, "per_family_instance_index": 2, - "run_name": "Then(YACLib)/2/0/real_time", + "run_name": "Then/YACLib/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -191,10 +191,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/0/real_time", + "name": "Then/YACLib/4/0/real_time", "family_index": 8, "per_family_instance_index": 3, - "run_name": "Then(YACLib)/4/0/real_time", + "run_name": "Then/YACLib/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -205,10 +205,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/0/real_time", + "name": "Then/YACLib/8/0/real_time", "family_index": 8, "per_family_instance_index": 4, - "run_name": "Then(YACLib)/8/0/real_time", + "run_name": "Then/YACLib/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -219,10 +219,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/0/real_time", + "name": "Then/YACLib/16/0/real_time", "family_index": 8, "per_family_instance_index": 5, - "run_name": "Then(YACLib)/16/0/real_time", + "run_name": "Then/YACLib/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -233,10 +233,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/0/real_time", + "name": "Then/YACLib/32/0/real_time", "family_index": 8, "per_family_instance_index": 6, - "run_name": "Then(YACLib)/32/0/real_time", + "run_name": "Then/YACLib/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -247,10 +247,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/0/real_time", + "name": "Then/YACLib/64/0/real_time", "family_index": 8, "per_family_instance_index": 7, - "run_name": "Then(YACLib)/64/0/real_time", + "run_name": "Then/YACLib/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -261,10 +261,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/1/real_time", + "name": "Then/YACLib/0/1/real_time", "family_index": 8, "per_family_instance_index": 8, - "run_name": "Then(YACLib)/0/1/real_time", + "run_name": "Then/YACLib/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -275,10 +275,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/1/real_time", + "name": "Then/YACLib/1/1/real_time", "family_index": 8, "per_family_instance_index": 9, - "run_name": "Then(YACLib)/1/1/real_time", + "run_name": "Then/YACLib/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -289,10 +289,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/1/real_time", + "name": "Then/YACLib/2/1/real_time", "family_index": 8, "per_family_instance_index": 10, - "run_name": "Then(YACLib)/2/1/real_time", + "run_name": "Then/YACLib/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -303,10 +303,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/1/real_time", + "name": "Then/YACLib/4/1/real_time", "family_index": 8, "per_family_instance_index": 11, - "run_name": "Then(YACLib)/4/1/real_time", + "run_name": "Then/YACLib/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -317,10 +317,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/1/real_time", + "name": "Then/YACLib/8/1/real_time", "family_index": 8, "per_family_instance_index": 12, - "run_name": "Then(YACLib)/8/1/real_time", + "run_name": "Then/YACLib/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -331,10 +331,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/1/real_time", + "name": "Then/YACLib/16/1/real_time", "family_index": 8, "per_family_instance_index": 13, - "run_name": "Then(YACLib)/16/1/real_time", + "run_name": "Then/YACLib/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -345,10 +345,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/1/real_time", + "name": "Then/YACLib/32/1/real_time", "family_index": 8, "per_family_instance_index": 14, - "run_name": "Then(YACLib)/32/1/real_time", + "run_name": "Then/YACLib/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -359,10 +359,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/1/real_time", + "name": "Then/YACLib/64/1/real_time", "family_index": 8, "per_family_instance_index": 15, - "run_name": "Then(YACLib)/64/1/real_time", + "run_name": "Then/YACLib/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -373,10 +373,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/0/2/real_time", + "name": "Then/YACLib/0/2/real_time", "family_index": 8, "per_family_instance_index": 16, - "run_name": "Then(YACLib)/0/2/real_time", + "run_name": "Then/YACLib/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -387,10 +387,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/1/2/real_time", + "name": "Then/YACLib/1/2/real_time", "family_index": 8, "per_family_instance_index": 17, - "run_name": "Then(YACLib)/1/2/real_time", + "run_name": "Then/YACLib/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -401,10 +401,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/2/2/real_time", + "name": "Then/YACLib/2/2/real_time", "family_index": 8, "per_family_instance_index": 18, - "run_name": "Then(YACLib)/2/2/real_time", + "run_name": "Then/YACLib/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -415,10 +415,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/4/2/real_time", + "name": "Then/YACLib/4/2/real_time", "family_index": 8, "per_family_instance_index": 19, - "run_name": "Then(YACLib)/4/2/real_time", + "run_name": "Then/YACLib/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -429,10 +429,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/8/2/real_time", + "name": "Then/YACLib/8/2/real_time", "family_index": 8, "per_family_instance_index": 20, - "run_name": "Then(YACLib)/8/2/real_time", + "run_name": "Then/YACLib/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -443,10 +443,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/16/2/real_time", + "name": "Then/YACLib/16/2/real_time", "family_index": 8, "per_family_instance_index": 21, - "run_name": "Then(YACLib)/16/2/real_time", + "run_name": "Then/YACLib/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -457,10 +457,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/32/2/real_time", + "name": "Then/YACLib/32/2/real_time", "family_index": 8, "per_family_instance_index": 22, - "run_name": "Then(YACLib)/32/2/real_time", + "run_name": "Then/YACLib/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -471,10 +471,10 @@ "time_unit": "ns" }, { - "name": "Then(YACLib)/64/2/real_time", + "name": "Then/YACLib/64/2/real_time", "family_index": 8, "per_family_instance_index": 23, - "run_name": "Then(YACLib)/64/2/real_time", + "run_name": "Then/YACLib/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -485,10 +485,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/0/real_time", + "name": "Then/Folly/0/0/real_time", "family_index": 9, "per_family_instance_index": 0, - "run_name": "Then(Folly)/0/0/real_time", + "run_name": "Then/Folly/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -499,10 +499,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/0/real_time", + "name": "Then/Folly/1/0/real_time", "family_index": 9, "per_family_instance_index": 1, - "run_name": "Then(Folly)/1/0/real_time", + "run_name": "Then/Folly/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -513,10 +513,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/0/real_time", + "name": "Then/Folly/2/0/real_time", "family_index": 9, "per_family_instance_index": 2, - "run_name": "Then(Folly)/2/0/real_time", + "run_name": "Then/Folly/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -527,10 +527,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/0/real_time", + "name": "Then/Folly/4/0/real_time", "family_index": 9, "per_family_instance_index": 3, - "run_name": "Then(Folly)/4/0/real_time", + "run_name": "Then/Folly/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -541,10 +541,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/0/real_time", + "name": "Then/Folly/8/0/real_time", "family_index": 9, "per_family_instance_index": 4, - "run_name": "Then(Folly)/8/0/real_time", + "run_name": "Then/Folly/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -555,10 +555,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/0/real_time", + "name": "Then/Folly/16/0/real_time", "family_index": 9, "per_family_instance_index": 5, - "run_name": "Then(Folly)/16/0/real_time", + "run_name": "Then/Folly/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -569,10 +569,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/0/real_time", + "name": "Then/Folly/32/0/real_time", "family_index": 9, "per_family_instance_index": 6, - "run_name": "Then(Folly)/32/0/real_time", + "run_name": "Then/Folly/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -583,10 +583,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/0/real_time", + "name": "Then/Folly/64/0/real_time", "family_index": 9, "per_family_instance_index": 7, - "run_name": "Then(Folly)/64/0/real_time", + "run_name": "Then/Folly/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -597,10 +597,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/1/real_time", + "name": "Then/Folly/0/1/real_time", "family_index": 9, "per_family_instance_index": 8, - "run_name": "Then(Folly)/0/1/real_time", + "run_name": "Then/Folly/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -611,10 +611,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/1/real_time", + "name": "Then/Folly/1/1/real_time", "family_index": 9, "per_family_instance_index": 9, - "run_name": "Then(Folly)/1/1/real_time", + "run_name": "Then/Folly/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -625,10 +625,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/1/real_time", + "name": "Then/Folly/2/1/real_time", "family_index": 9, "per_family_instance_index": 10, - "run_name": "Then(Folly)/2/1/real_time", + "run_name": "Then/Folly/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -639,10 +639,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/1/real_time", + "name": "Then/Folly/4/1/real_time", "family_index": 9, "per_family_instance_index": 11, - "run_name": "Then(Folly)/4/1/real_time", + "run_name": "Then/Folly/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -653,10 +653,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/1/real_time", + "name": "Then/Folly/8/1/real_time", "family_index": 9, "per_family_instance_index": 12, - "run_name": "Then(Folly)/8/1/real_time", + "run_name": "Then/Folly/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -667,10 +667,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/1/real_time", + "name": "Then/Folly/16/1/real_time", "family_index": 9, "per_family_instance_index": 13, - "run_name": "Then(Folly)/16/1/real_time", + "run_name": "Then/Folly/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -681,10 +681,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/1/real_time", + "name": "Then/Folly/32/1/real_time", "family_index": 9, "per_family_instance_index": 14, - "run_name": "Then(Folly)/32/1/real_time", + "run_name": "Then/Folly/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -695,10 +695,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/1/real_time", + "name": "Then/Folly/64/1/real_time", "family_index": 9, "per_family_instance_index": 15, - "run_name": "Then(Folly)/64/1/real_time", + "run_name": "Then/Folly/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -709,10 +709,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/0/2/real_time", + "name": "Then/Folly/0/2/real_time", "family_index": 9, "per_family_instance_index": 16, - "run_name": "Then(Folly)/0/2/real_time", + "run_name": "Then/Folly/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -723,10 +723,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/1/2/real_time", + "name": "Then/Folly/1/2/real_time", "family_index": 9, "per_family_instance_index": 17, - "run_name": "Then(Folly)/1/2/real_time", + "run_name": "Then/Folly/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -737,10 +737,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/2/2/real_time", + "name": "Then/Folly/2/2/real_time", "family_index": 9, "per_family_instance_index": 18, - "run_name": "Then(Folly)/2/2/real_time", + "run_name": "Then/Folly/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -751,10 +751,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/4/2/real_time", + "name": "Then/Folly/4/2/real_time", "family_index": 9, "per_family_instance_index": 19, - "run_name": "Then(Folly)/4/2/real_time", + "run_name": "Then/Folly/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -765,10 +765,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/8/2/real_time", + "name": "Then/Folly/8/2/real_time", "family_index": 9, "per_family_instance_index": 20, - "run_name": "Then(Folly)/8/2/real_time", + "run_name": "Then/Folly/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -779,10 +779,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/16/2/real_time", + "name": "Then/Folly/16/2/real_time", "family_index": 9, "per_family_instance_index": 21, - "run_name": "Then(Folly)/16/2/real_time", + "run_name": "Then/Folly/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -793,10 +793,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/32/2/real_time", + "name": "Then/Folly/32/2/real_time", "family_index": 9, "per_family_instance_index": 22, - "run_name": "Then(Folly)/32/2/real_time", + "run_name": "Then/Folly/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -807,10 +807,10 @@ "time_unit": "ns" }, { - "name": "Then(Folly)/64/2/real_time", + "name": "Then/Folly/64/2/real_time", "family_index": 9, "per_family_instance_index": 23, - "run_name": "Then(Folly)/64/2/real_time", + "run_name": "Then/Folly/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -821,10 +821,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/0/real_time", + "name": "Then/BoostThread/0/0/real_time", "family_index": 10, "per_family_instance_index": 0, - "run_name": "Then(BoostThread)/0/0/real_time", + "run_name": "Then/BoostThread/0/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -835,10 +835,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/0/real_time", + "name": "Then/BoostThread/1/0/real_time", "family_index": 10, "per_family_instance_index": 1, - "run_name": "Then(BoostThread)/1/0/real_time", + "run_name": "Then/BoostThread/1/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -849,10 +849,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/0/real_time", + "name": "Then/BoostThread/2/0/real_time", "family_index": 10, "per_family_instance_index": 2, - "run_name": "Then(BoostThread)/2/0/real_time", + "run_name": "Then/BoostThread/2/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -863,10 +863,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/0/real_time", + "name": "Then/BoostThread/4/0/real_time", "family_index": 10, "per_family_instance_index": 3, - "run_name": "Then(BoostThread)/4/0/real_time", + "run_name": "Then/BoostThread/4/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -877,10 +877,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/0/real_time", + "name": "Then/BoostThread/8/0/real_time", "family_index": 10, "per_family_instance_index": 4, - "run_name": "Then(BoostThread)/8/0/real_time", + "run_name": "Then/BoostThread/8/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -891,10 +891,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/0/real_time", + "name": "Then/BoostThread/16/0/real_time", "family_index": 10, "per_family_instance_index": 5, - "run_name": "Then(BoostThread)/16/0/real_time", + "run_name": "Then/BoostThread/16/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -905,10 +905,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/0/real_time", + "name": "Then/BoostThread/32/0/real_time", "family_index": 10, "per_family_instance_index": 6, - "run_name": "Then(BoostThread)/32/0/real_time", + "run_name": "Then/BoostThread/32/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -919,10 +919,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/0/real_time", + "name": "Then/BoostThread/64/0/real_time", "family_index": 10, "per_family_instance_index": 7, - "run_name": "Then(BoostThread)/64/0/real_time", + "run_name": "Then/BoostThread/64/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -933,10 +933,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/1/real_time", + "name": "Then/BoostThread/0/1/real_time", "family_index": 10, "per_family_instance_index": 8, - "run_name": "Then(BoostThread)/0/1/real_time", + "run_name": "Then/BoostThread/0/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -947,10 +947,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/1/real_time", + "name": "Then/BoostThread/1/1/real_time", "family_index": 10, "per_family_instance_index": 9, - "run_name": "Then(BoostThread)/1/1/real_time", + "run_name": "Then/BoostThread/1/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -961,10 +961,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/1/real_time", + "name": "Then/BoostThread/2/1/real_time", "family_index": 10, "per_family_instance_index": 10, - "run_name": "Then(BoostThread)/2/1/real_time", + "run_name": "Then/BoostThread/2/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -975,10 +975,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/1/real_time", + "name": "Then/BoostThread/4/1/real_time", "family_index": 10, "per_family_instance_index": 11, - "run_name": "Then(BoostThread)/4/1/real_time", + "run_name": "Then/BoostThread/4/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -989,10 +989,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/1/real_time", + "name": "Then/BoostThread/8/1/real_time", "family_index": 10, "per_family_instance_index": 12, - "run_name": "Then(BoostThread)/8/1/real_time", + "run_name": "Then/BoostThread/8/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1003,10 +1003,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/1/real_time", + "name": "Then/BoostThread/16/1/real_time", "family_index": 10, "per_family_instance_index": 13, - "run_name": "Then(BoostThread)/16/1/real_time", + "run_name": "Then/BoostThread/16/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1017,10 +1017,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/1/real_time", + "name": "Then/BoostThread/32/1/real_time", "family_index": 10, "per_family_instance_index": 14, - "run_name": "Then(BoostThread)/32/1/real_time", + "run_name": "Then/BoostThread/32/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1031,10 +1031,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/1/real_time", + "name": "Then/BoostThread/64/1/real_time", "family_index": 10, "per_family_instance_index": 15, - "run_name": "Then(BoostThread)/64/1/real_time", + "run_name": "Then/BoostThread/64/1/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1045,10 +1045,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/0/2/real_time", + "name": "Then/BoostThread/0/2/real_time", "family_index": 10, "per_family_instance_index": 16, - "run_name": "Then(BoostThread)/0/2/real_time", + "run_name": "Then/BoostThread/0/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1059,10 +1059,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/1/2/real_time", + "name": "Then/BoostThread/1/2/real_time", "family_index": 10, "per_family_instance_index": 17, - "run_name": "Then(BoostThread)/1/2/real_time", + "run_name": "Then/BoostThread/1/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1073,10 +1073,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/2/2/real_time", + "name": "Then/BoostThread/2/2/real_time", "family_index": 10, "per_family_instance_index": 18, - "run_name": "Then(BoostThread)/2/2/real_time", + "run_name": "Then/BoostThread/2/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1087,10 +1087,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/4/2/real_time", + "name": "Then/BoostThread/4/2/real_time", "family_index": 10, "per_family_instance_index": 19, - "run_name": "Then(BoostThread)/4/2/real_time", + "run_name": "Then/BoostThread/4/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1101,10 +1101,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/8/2/real_time", + "name": "Then/BoostThread/8/2/real_time", "family_index": 10, "per_family_instance_index": 20, - "run_name": "Then(BoostThread)/8/2/real_time", + "run_name": "Then/BoostThread/8/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1115,10 +1115,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/16/2/real_time", + "name": "Then/BoostThread/16/2/real_time", "family_index": 10, "per_family_instance_index": 21, - "run_name": "Then(BoostThread)/16/2/real_time", + "run_name": "Then/BoostThread/16/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1129,10 +1129,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/32/2/real_time", + "name": "Then/BoostThread/32/2/real_time", "family_index": 10, "per_family_instance_index": 22, - "run_name": "Then(BoostThread)/32/2/real_time", + "run_name": "Then/BoostThread/32/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1143,10 +1143,10 @@ "time_unit": "ns" }, { - "name": "Then(BoostThread)/64/2/real_time", + "name": "Then/BoostThread/64/2/real_time", "family_index": 10, "per_family_instance_index": 23, - "run_name": "Then(BoostThread)/64/2/real_time", + "run_name": "Then/BoostThread/64/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1157,10 +1157,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/0/real_time", + "name": "ComplexBlob/YACLib/0/real_time", "family_index": 11, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/0/real_time", + "run_name": "ComplexBlob/YACLib/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1171,10 +1171,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/0/real_time", + "name": "ComplexBlob/Folly/0/real_time", "family_index": 12, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/0/real_time", + "run_name": "ComplexBlob/Folly/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1185,10 +1185,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/0/real_time", + "name": "ComplexBlob/BoostThread/0/real_time", "family_index": 13, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/0/real_time", + "run_name": "ComplexBlob/BoostThread/0/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1199,10 +1199,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2/real_time", + "name": "ComplexBlob/YACLib/2/real_time", "family_index": 14, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2/real_time", + "run_name": "ComplexBlob/YACLib/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1213,10 +1213,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/2/real_time", + "name": "ComplexBlob/Folly/2/real_time", "family_index": 15, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/2/real_time", + "run_name": "ComplexBlob/Folly/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1227,10 +1227,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/2/real_time", + "name": "ComplexBlob/BoostThread/2/real_time", "family_index": 16, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/2/real_time", + "run_name": "ComplexBlob/BoostThread/2/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1241,10 +1241,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4/real_time", + "name": "ComplexBlob/YACLib/4/real_time", "family_index": 17, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4/real_time", + "run_name": "ComplexBlob/YACLib/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1255,10 +1255,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/4/real_time", + "name": "ComplexBlob/Folly/4/real_time", "family_index": 18, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/4/real_time", + "run_name": "ComplexBlob/Folly/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1269,10 +1269,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/4/real_time", + "name": "ComplexBlob/BoostThread/4/real_time", "family_index": 19, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/4/real_time", + "run_name": "ComplexBlob/BoostThread/4/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1283,10 +1283,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8/real_time", + "name": "ComplexBlob/YACLib/8/real_time", "family_index": 20, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8/real_time", + "run_name": "ComplexBlob/YACLib/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1297,10 +1297,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/8/real_time", + "name": "ComplexBlob/Folly/8/real_time", "family_index": 21, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/8/real_time", + "run_name": "ComplexBlob/Folly/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1311,10 +1311,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/8/real_time", + "name": "ComplexBlob/BoostThread/8/real_time", "family_index": 22, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/8/real_time", + "run_name": "ComplexBlob/BoostThread/8/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1325,10 +1325,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/16/real_time", + "name": "ComplexBlob/YACLib/16/real_time", "family_index": 23, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/16/real_time", + "run_name": "ComplexBlob/YACLib/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1339,10 +1339,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/16/real_time", + "name": "ComplexBlob/Folly/16/real_time", "family_index": 24, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/16/real_time", + "run_name": "ComplexBlob/Folly/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1353,10 +1353,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/16/real_time", + "name": "ComplexBlob/BoostThread/16/real_time", "family_index": 25, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/16/real_time", + "run_name": "ComplexBlob/BoostThread/16/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1367,10 +1367,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/32/real_time", + "name": "ComplexBlob/YACLib/32/real_time", "family_index": 26, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/32/real_time", + "run_name": "ComplexBlob/YACLib/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1381,10 +1381,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/32/real_time", + "name": "ComplexBlob/Folly/32/real_time", "family_index": 27, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/32/real_time", + "run_name": "ComplexBlob/Folly/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1395,10 +1395,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/32/real_time", + "name": "ComplexBlob/BoostThread/32/real_time", "family_index": 28, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/32/real_time", + "run_name": "ComplexBlob/BoostThread/32/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1409,10 +1409,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/64/real_time", + "name": "ComplexBlob/YACLib/64/real_time", "family_index": 29, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/64/real_time", + "run_name": "ComplexBlob/YACLib/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1423,10 +1423,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/64/real_time", + "name": "ComplexBlob/Folly/64/real_time", "family_index": 30, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/64/real_time", + "run_name": "ComplexBlob/Folly/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1437,10 +1437,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/64/real_time", + "name": "ComplexBlob/BoostThread/64/real_time", "family_index": 31, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/64/real_time", + "run_name": "ComplexBlob/BoostThread/64/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1451,10 +1451,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/128/real_time", + "name": "ComplexBlob/YACLib/128/real_time", "family_index": 32, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/128/real_time", + "run_name": "ComplexBlob/YACLib/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1465,10 +1465,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/128/real_time", + "name": "ComplexBlob/Folly/128/real_time", "family_index": 33, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/128/real_time", + "run_name": "ComplexBlob/Folly/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1479,10 +1479,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/128/real_time", + "name": "ComplexBlob/BoostThread/128/real_time", "family_index": 34, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/128/real_time", + "run_name": "ComplexBlob/BoostThread/128/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1493,10 +1493,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/256/real_time", + "name": "ComplexBlob/YACLib/256/real_time", "family_index": 35, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/256/real_time", + "run_name": "ComplexBlob/YACLib/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1507,10 +1507,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/256/real_time", + "name": "ComplexBlob/Folly/256/real_time", "family_index": 36, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/256/real_time", + "run_name": "ComplexBlob/Folly/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1521,10 +1521,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/256/real_time", + "name": "ComplexBlob/BoostThread/256/real_time", "family_index": 37, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/256/real_time", + "run_name": "ComplexBlob/BoostThread/256/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1535,10 +1535,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/512/real_time", + "name": "ComplexBlob/YACLib/512/real_time", "family_index": 38, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/512/real_time", + "run_name": "ComplexBlob/YACLib/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1549,10 +1549,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/512/real_time", + "name": "ComplexBlob/Folly/512/real_time", "family_index": 39, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/512/real_time", + "run_name": "ComplexBlob/Folly/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1563,10 +1563,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/512/real_time", + "name": "ComplexBlob/BoostThread/512/real_time", "family_index": 40, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/512/real_time", + "run_name": "ComplexBlob/BoostThread/512/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1577,10 +1577,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/1024/real_time", + "name": "ComplexBlob/YACLib/1024/real_time", "family_index": 41, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/1024/real_time", + "run_name": "ComplexBlob/YACLib/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1591,10 +1591,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/1024/real_time", + "name": "ComplexBlob/Folly/1024/real_time", "family_index": 42, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/1024/real_time", + "run_name": "ComplexBlob/Folly/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1605,10 +1605,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/1024/real_time", + "name": "ComplexBlob/BoostThread/1024/real_time", "family_index": 43, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/1024/real_time", + "run_name": "ComplexBlob/BoostThread/1024/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1619,10 +1619,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/2048/real_time", + "name": "ComplexBlob/YACLib/2048/real_time", "family_index": 44, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/2048/real_time", + "run_name": "ComplexBlob/YACLib/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1633,10 +1633,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/2048/real_time", + "name": "ComplexBlob/Folly/2048/real_time", "family_index": 45, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/2048/real_time", + "run_name": "ComplexBlob/Folly/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1647,10 +1647,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/2048/real_time", + "name": "ComplexBlob/BoostThread/2048/real_time", "family_index": 46, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/2048/real_time", + "run_name": "ComplexBlob/BoostThread/2048/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1661,10 +1661,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/4096/real_time", + "name": "ComplexBlob/YACLib/4096/real_time", "family_index": 47, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/4096/real_time", + "run_name": "ComplexBlob/YACLib/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1675,10 +1675,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/4096/real_time", + "name": "ComplexBlob/Folly/4096/real_time", "family_index": 48, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/4096/real_time", + "run_name": "ComplexBlob/Folly/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1689,10 +1689,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/4096/real_time", + "name": "ComplexBlob/BoostThread/4096/real_time", "family_index": 49, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/4096/real_time", + "run_name": "ComplexBlob/BoostThread/4096/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1703,10 +1703,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(YACLib)/8192/real_time", + "name": "ComplexBlob/YACLib/8192/real_time", "family_index": 50, "per_family_instance_index": 0, - "run_name": "ComplexBlob(YACLib)/8192/real_time", + "run_name": "ComplexBlob/YACLib/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1717,10 +1717,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(Folly)/8192/real_time", + "name": "ComplexBlob/Folly/8192/real_time", "family_index": 51, "per_family_instance_index": 0, - "run_name": "ComplexBlob(Folly)/8192/real_time", + "run_name": "ComplexBlob/Folly/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1731,10 +1731,10 @@ "time_unit": "ns" }, { - "name": "ComplexBlob(BoostThread)/8192/real_time", + "name": "ComplexBlob/BoostThread/8192/real_time", "family_index": 52, "per_family_instance_index": 0, - "run_name": "ComplexBlob(BoostThread)/8192/real_time", + "run_name": "ComplexBlob/BoostThread/8192/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1745,10 +1745,10 @@ "time_unit": "ns" }, { - "name": "NoContention(YACLib)/real_time", + "name": "NoContention/YACLib/real_time", "family_index": 53, "per_family_instance_index": 0, - "run_name": "NoContention(YACLib)/real_time", + "run_name": "NoContention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1759,10 +1759,10 @@ "time_unit": "ns" }, { - "name": "NoContention(Folly)/real_time", + "name": "NoContention/Folly/real_time", "family_index": 54, "per_family_instance_index": 0, - "run_name": "NoContention(Folly)/real_time", + "run_name": "NoContention/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1773,10 +1773,10 @@ "time_unit": "ns" }, { - "name": "NoContention(BoostThread)/real_time", + "name": "NoContention/BoostThread/real_time", "family_index": 55, "per_family_instance_index": 0, - "run_name": "NoContention(BoostThread)/real_time", + "run_name": "NoContention/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1787,10 +1787,10 @@ "time_unit": "ns" }, { - "name": "Contention(YACLib)/real_time", + "name": "Contention/YACLib/real_time", "family_index": 56, "per_family_instance_index": 0, - "run_name": "Contention(YACLib)/real_time", + "run_name": "Contention/YACLib/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1801,10 +1801,10 @@ "time_unit": "ns" }, { - "name": "Contention(Folly)/real_time", + "name": "Contention/Folly/real_time", "family_index": 57, "per_family_instance_index": 0, - "run_name": "Contention(Folly)/real_time", + "run_name": "Contention/Folly/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, @@ -1815,10 +1815,10 @@ "time_unit": "ns" }, { - "name": "Contention(BoostThread)/real_time", + "name": "Contention/BoostThread/real_time", "family_index": 58, "per_family_instance_index": 0, - "run_name": "Contention(BoostThread)/real_time", + "run_name": "Contention/BoostThread/real_time", "run_type": "iteration", "repetitions": 1, "repetition_index": 0, diff --git a/future/result/i7-12700KF/gcc_libstdcxx/picture/ComplexBlob.svg b/future/result/i7-12700KF/gcc_libstdcxx/picture/ComplexBlob.svg new file mode 100644 index 0000000..5965188 --- /dev/null +++ b/future/result/i7-12700KF/gcc_libstdcxx/picture/ComplexBlob.svg @@ -0,0 +1,1157 @@ + + + + + + + + 2022-04-10T19:11:53.635239 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-12700KF/gcc_libstdcxx/picture/ConstantFuture.svg b/future/result/i7-12700KF/gcc_libstdcxx/picture/ConstantFuture.svg new file mode 100644 index 0000000..e26aa76 --- /dev/null +++ b/future/result/i7-12700KF/gcc_libstdcxx/picture/ConstantFuture.svg @@ -0,0 +1,923 @@ + + + + + + + + 2022-04-10T19:11:52.866070 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-12700KF/gcc_libstdcxx/picture/Contention.svg b/future/result/i7-12700KF/gcc_libstdcxx/picture/Contention.svg new file mode 100644 index 0000000..0b6fed6 --- /dev/null +++ b/future/result/i7-12700KF/gcc_libstdcxx/picture/Contention.svg @@ -0,0 +1,893 @@ + + + + + + + + 2022-04-10T19:11:53.899156 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-12700KF/gcc_libstdcxx/picture/NoContention.svg b/future/result/i7-12700KF/gcc_libstdcxx/picture/NoContention.svg new file mode 100644 index 0000000..15aa4c5 --- /dev/null +++ b/future/result/i7-12700KF/gcc_libstdcxx/picture/NoContention.svg @@ -0,0 +1,936 @@ + + + + + + + + 2022-04-10T19:11:53.773776 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-12700KF/gcc_libstdcxx/picture/PromiseAndFuture.svg b/future/result/i7-12700KF/gcc_libstdcxx/picture/PromiseAndFuture.svg new file mode 100644 index 0000000..b7b2ff0 --- /dev/null +++ b/future/result/i7-12700KF/gcc_libstdcxx/picture/PromiseAndFuture.svg @@ -0,0 +1,977 @@ + + + + + + + + 2022-04-10T19:11:53.050168 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-12700KF/gcc_libstdcxx/picture/ThenAllInline.svg b/future/result/i7-12700KF/gcc_libstdcxx/picture/ThenAllInline.svg new file mode 100644 index 0000000..996db6f --- /dev/null +++ b/future/result/i7-12700KF/gcc_libstdcxx/picture/ThenAllInline.svg @@ -0,0 +1,1101 @@ + + + + + + + + 2022-04-10T19:11:53.189316 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-12700KF/gcc_libstdcxx/picture/ThenOneInline.svg b/future/result/i7-12700KF/gcc_libstdcxx/picture/ThenOneInline.svg new file mode 100644 index 0000000..68e28d2 --- /dev/null +++ b/future/result/i7-12700KF/gcc_libstdcxx/picture/ThenOneInline.svg @@ -0,0 +1,1121 @@ + + + + + + + + 2022-04-10T19:11:53.341400 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/future/result/i7-12700KF/gcc_libstdcxx/picture/ThenScheduler.svg b/future/result/i7-12700KF/gcc_libstdcxx/picture/ThenScheduler.svg new file mode 100644 index 0000000..917ac08 --- /dev/null +++ b/future/result/i7-12700KF/gcc_libstdcxx/picture/ThenScheduler.svg @@ -0,0 +1,1131 @@ + + + + + + + + 2022-04-10T19:11:53.486556 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/script/gen_pictures b/script/gen_pictures new file mode 100755 index 0000000..78c75d0 --- /dev/null +++ b/script/gen_pictures @@ -0,0 +1,111 @@ +#!/usr/bin/env python + +import argparse +import json +import os.path as path +import os +import matplotlib.pyplot as plt +import numpy as np + +library_to_color = {'YACLib': 'r', 'Folly': 'royalblue', 'Qt': 'limegreen', 'BoostThread': 'gray', 'Std': 'orange'} + + +def parse_args(): + """ + --src /path/to/data.json file + --dst /path/to/pictures_folder + """ + # TODO: improve it + parser = argparse.ArgumentParser() + parser.add_argument("-s", "--src", type=str, help="result directory location", required=True) + args = parser.parse_args() + return args + + +def parse_bench_results(json_): + benchmark_results = {} + for bench in json_["benchmarks"]: + bname = bench["name"].split('/') + bname.pop() # remove 'real_time' suffix + bench_group = bname[0] # benchmark group name + if bench_group == 'Then': + assert len(bname) == 4 + case = bname[3] + match case: + case '0': + bench_group = bench_group + 'AllInline' + case '1': + bench_group = bench_group + 'OneInline' + case '2': + bench_group = bench_group + 'Scheduler' + case _: + raise RuntimeError + bname.pop() + libname = bname[1] # library name + bcase = '/'.join(bname[2:]) # benchmark case name (arguments) + benchmark_results.setdefault(bench_group, {}) + benchmark_results[bench_group].setdefault(libname, {}) + benchmark_results[bench_group][libname][bcase] = bench['real_time'] + return benchmark_results + + +def create_dir_if_not_exists(dirname): + try: + os.mkdir(dirname) + except FileExistsError: + pass + + +# bench_data['lib'] -> {'': time} / {'0': time, '1': time} +def generate_picture(name, bench_data, save_path): + picture_file = path.join(save_path, name) + '.svg' + print(f'Generate picture: {picture_file} ...') + + libraries_count = len(bench_data) + assert libraries_count != 0, 'empty benchmark result dictionary' + benchmark_len = len(list(bench_data.values())[0]) + # TODO: assert that for all values bench_len is the same + assert all(len(v) == benchmark_len for v in bench_data.values()), 'benchmark lens do not the same' + + libnumber = len(bench_data) + width = 1 + x = np.arange(0, width * (libnumber + 1) * benchmark_len, (libnumber + 1) * width) + + fig, ax = plt.subplots(figsize=(40, 30)) + for i, libname in enumerate(bench_data.keys()): + y = bench_data[libname].values() + ax.bar(x + i * width, y, width, linewidth=1, label=libname, color=library_to_color[libname]) + + ax.set(xticks=np.arange(0, 0)) + ax.set_title(name, fontsize='64') + ax.set_ylabel('time', fontsize='48') + ax.tick_params(direction='out', labelsize='30') + ax.legend(prop={'size': 40}, loc='lower right') + plt.savefig(picture_file) + plt.clf() + plt.close(fig) + + +# bench_results: dict [BenchGroupName][LibraryName]["X arg"] -> Time ("Y arg") +def draw_bench_results(bench_results, save_path): + save_path = path.join(save_path, 'picture') + create_dir_if_not_exists(save_path) + for bench_group, results in bench_results.items(): + generate_picture(bench_group, results, save_path) + + +def main(): + args = parse_args() + for cur_dir, subdirs, files in os.walk(args.src): + if 'data.json' in files: + bench_filename = path.join(cur_dir, 'data.json') + print(f'Parse pictures: {bench_filename}') + with open(bench_filename) as f: + json_ = json.load(f) + benchmark_results = parse_bench_results(json_) + save_path = cur_dir + draw_bench_results(benchmark_results, save_path) + + +if __name__ == '__main__': + main() diff --git a/script/shit/.ipynb_checkpoints/draw_graphic-checkpoint.ipynb b/script/shit/.ipynb_checkpoints/draw_graphic-checkpoint.ipynb new file mode 100644 index 0000000..670554d --- /dev/null +++ b/script/shit/.ipynb_checkpoints/draw_graphic-checkpoint.ipynb @@ -0,0 +1,166 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 187, + "id": "5d239953", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "['name', ' time', ' cpu', ' iterations']\n", + "{'stl': [511.0, 528.0], 'folly': [28.3, 64.9, 172.0, 296.0, 558.0, 12542.0, 30961.0, 34727.0, 75488.0, 54391.0, 49353.0, 48809.0, 48119.0, 42885.0, 42016.0, 2917857.0, 5953766.0], 'yaclib': [32.0, 62.2, 147.0, 236.0, 415.0, 8725.0, 27789.0, 27312.0, 53120.0, 43156.0, 39182.0, 38641.0, 38387.0, 40176.0, 41073.0, 1623865.0, 3337525.0], 'qt': [30.3, 69.0, 170.0, 300.0, 600.0, 9000.0, 30321.0, 36656.0, 80023.0, 43203.0, 44012.0, 58034.0, 47123.0, 49231.0, 44512.0, 3214920.0, 4023142.0]}\n" + ] + } + ], + "source": [ + "import csv\n", + "file = open(\"results.csv\")\n", + "\n", + "csvreader = csv.reader(file)\n", + "header = next(csvreader)\n", + "print(header)\n", + "rows = {'stl': [], 'folly': [], 'yaclib': [], 'qt': []}\n", + "for row in csvreader:\n", + " time = float(row[1].strip()[0:-2])\n", + " if row[0].lower().startswith('stl'):\n", + " rows['stl'].append(time)\n", + " elif row[0].lower().startswith('folly'):\n", + " rows['folly'].append(time)\n", + " elif row[0].lower().startswith('yaclib'):\n", + " rows['yaclib'].append(time)\n", + " elif row[0].lower().startswith('qt'):\n", + " rows['qt'].append(time)\n", + "file.close()\n", + "\n", + "print(rows)" + ] + }, + { + "cell_type": "code", + "execution_count": 188, + "id": "b96decaa", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "stl\n", + "folly\n", + "yaclib\n", + "qt\n" + ] + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "\n", + "fig, ax = plt.subplots()\n", + "fig.set_size_inches(18.5, 10.5)\n", + "\n", + "for name, results in rows.items():\n", + " x = np.linspace(0, len(results), len(results))\n", + " y = results\n", + " print(name)\n", + " line = ax.plot(x, y, label=name)\n", + "\n", + "\n", + "ax.legend()\n", + "plt.show()\n", + "fig.savefig('results.png', dpi=100)" + ] + }, + { + "cell_type": "code", + "execution_count": 224, + "id": "4edb5b43", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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kAEAAOu0Iw88MkceeOQqy+bOnZtSSubOnbvK8pkzZ2bmzJnjV9watDrLIgAArG923XyPbDYKJwzutv9OW/beeIcDhl29aPHiTLv7+rUriFEjkAEAwCjabOrUzDz9krbLGNL8M49pu4Rx8ZznPCeHHHLIWk9LP9YEMgAAYL0zffr0TJ8+ve0y1sgxZAAAQF9+8YtfpJSSww8/fMg2zz3iifmL3bbJnXfcnqVLluQzc8/Lq17yvBx1yH456NHbZuutt84Rz39lvva/3x2yj1tvuyN/98/vzp577pm/2Pkv8sQ9n5gTjzwxH3nfR9ZY41DHkC23cOHCnHbaadlxxx0zbdq07L333jnrrLNSa11j36NJIAMAAPrymMc8JocffnjmzZuXX/7yl6ut/+lVP8hNN96QWUc+I9tsu10WLrg3737Lm/LHBx7IIU8+PC8++dQce+yxufq6G/OMF786//FfX1ytj6t+dn0e97QT88GPX5AddtghLzz5hXnmc5+ZTTfbNOe8+5y1qn/JkiU54ogjctlll+XEE0/MySefnAULFuQ1r3lNTjvttLXqu192WQQAAPp26qmn5vLLL895552X9773vaus+/ynz0+SHP/C2UmSLaZvmf++8ppsu/2OK9rsv9OWWfiLb+XQZ/913vCOD+SFzzk6m2wyLUmyZMnSPO8Vb8g9Cxbm0x96R0561Zvz87t+vuK+t992+1rV/vvf/z677757rrvuukztTMDy1re+NX/5l3+Zc845J89//vNz2GGHrdVj9MoIGQAA0LdnP/vZ2X777TN37twsXrx4xfL7Fi7M17/6pey862455MmzkiQbT526ShhbbvoWm+evn39c7l1wX370s5WB6yv/863M/+1tOfbIp+Sk5xy92v2222G7ta7/ne9854owliRbb711/vmf/zlJ8olPfGKt+++VQAYAAPRt8uTJOfnkk3P33Xfn85///IrlX/3CZ7No0YN57gtfmlLKiuU33XhD/vnvT80zDv3zHLzH9imlpOx4YF7/tn9Lkvzu9jtXtL3yJ9ckSY4+/NAxq/2JT3ziastnzZqVJLn66qvH5HEHrWXcHgkAAFivnHLKKXnHO96Rc889NyeddFKS5POfnpspG2+c40544Yp21/zkRzn5+cfloWUP5fGHHpZZTzs6u++wTTb64x356c9/mS9fNi+LFy9Z0X7B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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "import numpy as np\n", + "\n", + "# make data:\n", + "x_max = max(map(len, rows.values()))\n", + "\n", + "x = np.arange(0, x_max * 4, 4)\n", + "y = rows['yaclib']\n", + "y2 = rows['folly']\n", + "y3 = rows['qt']\n", + "\n", + "for i in range(len(y)):\n", + " max_el = max(y[i], y2[i], y3[i])\n", + " y[i] /= max_el\n", + " y2[i] /= max_el\n", + " y3[i] /= max_el\n", + "\n", + "width = 1\n", + "\n", + "fig, ax = plt.subplots()\n", + "fig.set_size_inches(14.5, 10)\n", + "\n", + "ax.bar(x, y, width, edgecolor=\"white\", linewidth=1, label='yaclib')\n", + "ax.bar(x + width, y2, width, edgecolor=\"white\", linewidth=1, label = 'folly')\n", + "ax.bar(x + 2* width, y3, width, edgecolor=\"white\", linewidth=1, label='qt')\n", + "\n", + "ax.set(xticks=np.arange(0, 0))\n", + "ax.set_title('Сравнение результатов', fontsize='36')\n", + "ax.set_ylabel(\"Ratio\", fontsize='18')\n", + "\n", + "ax.legend(prop={'size': 20}, loc='lower right')\n", + "plt.show()\n", + "fig.savefig('results.png', dpi=100)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.7" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/script/shit/draw_graphic.ipynb b/script/shit/draw_graphic.ipynb new file mode 100644 index 0000000..6334de2 --- /dev/null +++ b/script/shit/draw_graphic.ipynb @@ -0,0 +1,248 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 2, + "id": "5d239953", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "['name', ' time', ' cpu', ' iterations']\n", + "{'stl': [511.0, 528.0], 'folly': [28.3, 64.9, 172.0, 296.0, 558.0, 12542.0, 30961.0, 34727.0, 75488.0, 54391.0, 49353.0, 48809.0, 48119.0, 42885.0, 42016.0, 2917857.0, 5953766.0], 'yaclib': [32.0, 62.2, 147.0, 236.0, 415.0, 8725.0, 27789.0, 27312.0, 53120.0, 43156.0, 39182.0, 38641.0, 38387.0, 40176.0, 41073.0, 1623865.0, 3337525.0], 'qt': [30.3, 69.0, 170.0, 300.0, 600.0, 9000.0, 30321.0, 36656.0, 80023.0, 43203.0, 44012.0, 58034.0, 47123.0, 49231.0, 44512.0, 3214920.0, 4023142.0]}\n" + ] + } + ], + "source": [ + "import json\n", + "\n", + "file = open(\"results.csv\")\n", + "\n", + "csvreader = csv.reader(file)\n", + "header = next(csvreader)\n", + "print(header)\n", + "rows = {'stl': [], 'folly': [], 'yaclib': [], 'qt': []}\n", + "for row in csvreader:\n", + " time = float(row[1].strip()[0:-2])\n", + " if row[0].lower().startswith('stl'):\n", + " rows['stl'].append(time)\n", + " elif row[0].lower().startswith('folly'):\n", + " rows['folly'].append(time)\n", + " elif row[0].lower().startswith('yaclib'):\n", + " rows['yaclib'].append(time)\n", + " elif row[0].lower().startswith('qt'):\n", + " rows['qt'].append(time)\n", + "file.close()\n", + "\n", + "print(rows)" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "4edb5b43", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "import numpy as np\n", + "\n", + "# make data:\n", + "x_max = max(map(len, rows.values()))\n", + "\n", + "x = np.arange(0, x_max * 4, 4)\n", + "y0 = rows['stl']\n", + "y = rows['yaclib']\n", + "y2 = rows['folly']\n", + "y3 = rows['qt']\n", + "\n", + "for i in range(len(y)):\n", + " max_el = max(y[i], y2[i], y3[i])\n", + " y[i] /= max_el\n", + " y2[i] /= max_el\n", + " y3[i] /= max_el\n", + "\n", + "rows['yaclib'] = y\n", + "rows['folly'] = y2\n", + "rows['qt'] = y3\n", + "\n", + "min_el = min(min(y), min(y2), min(y3))\n", + "\n", + " \n", + "width = 1\n", + "\n", + "fig, ax = plt.subplots(figsize=(40, 20))\n", + "\n", + "ax.bar(x, y, width, edgecolor=\"white\", linewidth=1, label='yaclib', color='r')\n", + "ax.bar(x + width, y2, width, edgecolor=\"white\", linewidth=1, label = 'folly', color='royalblue')\n", + "ax.bar(x + 2* width, y3, width, edgecolor=\"white\", linewidth=1, label='qt', color='limegreen')\n", + "\n", + "ax.set(xticks=np.arange(0, 0))\n", + "ax.set_title('Сравнение результатов', fontsize='48')\n", + "ax.set_ylabel(\"Нормированное время\", fontsize='40')\n", + "ax.tick_params(direction='out', labelsize='30')\n", + "ax.legend(prop={'size': 40}, loc='lower right')\n", + "\n", + "plt.show()\n", + "fig.savefig('results.png', dpi=100)" + ] + }, + { + "cell_type": "code", + "execution_count": 70, + "id": "d41a6aaa", + "metadata": {}, + "outputs": [], + "source": [ + "def bar_plot(ax, data, colors=None, total_width=0.8, single_width=1, legend=True, legend_prop=None):\n", + " \"\"\"Draws a bar plot with multiple bars per data point.\n", + "\n", + " Parameters\n", + " ----------\n", + " ax : matplotlib.pyplot.axis\n", + " The axis we want to draw our plot on.\n", + "\n", + " data: dictionary\n", + " A dictionary containing the data we want to plot. Keys are the names of the\n", + " data, the items is a list of the values.\n", + "\n", + " Example:\n", + " data = {\n", + " \"x\":[1,2,3],\n", + " \"y\":[1,2,3],\n", + " \"z\":[1,2,3],\n", + " }\n", + "\n", + " colors : array-like, optional\n", + " A list of colors which are used for the bars. If None, the colors\n", + " will be the standard matplotlib color cyle. (default: None)\n", + "\n", + " total_width : float, optional, default: 0.8\n", + " The width of a bar group. 0.8 means that 80% of the x-axis is covered\n", + " by bars and 20% will be spaces between the bars.\n", + "\n", + " single_width: float, optional, default: 1\n", + " The relative width of a single bar within a group. 1 means the bars\n", + " will touch eachother within a group, values less than 1 will make\n", + " these bars thinner.\n", + "\n", + " legend: bool, optional, default: True\n", + " If this is set to true, a legend will be added to the axis.\n", + " \"\"\"\n", + "\n", + " # Check if colors where provided, otherwhise use the default color cycle\n", + " if colors is None:\n", + " colors = plt.rcParams['axes.prop_cycle'].by_key()['color']\n", + "\n", + " # Number of bars per group\n", + " n_bars = len(data)\n", + "\n", + " # The width of a single bar\n", + " bar_width = total_width / n_bars\n", + "\n", + " # List containing handles for the drawn bars, used for the legend\n", + " bars = []\n", + "\n", + " # Iterate over all data\n", + " for i, (name, values) in enumerate(data.items()):\n", + " # The offset in x direction of that bar\n", + " x_offset = (i - n_bars / 2) * bar_width + bar_width / 2\n", + "\n", + " # Draw a bar for every value of that type\n", + " for x, y in enumerate(values):\n", + " bar = ax.bar(x + x_offset, y, width=bar_width * single_width, color=colors[i % len(colors)])\n", + "\n", + " # Add a handle to the last drawn bar, which we'll need for the legend\n", + " bars.append(bar[0])\n", + "\n", + " # Draw legend if we need\n", + " if legend:\n", + " ax.legend(bars, data.keys(), prop=legend_prop)" + ] + }, + { + "cell_type": "code", + "execution_count": 48, + "id": "d63ad06c", + "metadata": {}, + "outputs": [], + "source": [ + "def norm(data):\n", + " data = {\n", + " \"a\": [1, 2, 3, 2, 1],\n", + " \"b\": [2, 3, 4, 3, 1],\n", + " \"c\": [3, 2, 1, 4, 2],\n", + " \"d\": [5, 9, 2, 1, 8],\n", + " \"e\": [1, 3, 2, 2, 3],\n", + " \"f\": [4, 3, 1, 1, 4],\n", + " }\n", + " \n", + " return data" + ] + }, + { + "cell_type": "code", + "execution_count": 71, + "id": "7c7a195f", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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6cdOAAAAAAAAAAD6hpAS9IEr//fX2WWrjbPLVhvnqt/+z+L7i+4t+nz1C5950nu11nzve9/L6173uowbNy7rrrtuNtpoo+y888555zvfmVtuuaWxnhcsWJCxY8emlJIxY8bkiSeeWOk711xzTUopKaXk0EMPbaw3AAAAAAAAAGBwEVKCAeq+++7LC1/4whx66KH5wQ9+kLvuuiuPP/54HnnkkVx33XX54he/mOc85zn5zGc+s/Jia2D48OE55phjkiQPPPBApk2bttJ3TjvttMXj448/vpG+AAAAAAAAAIDBp6e/G4C1wbbbT8wXT/tukuTL//6J/OXmPyfJ4nuLTNh2uyTJ7Nmz8+IXvzg333xzkuQZz3hGjj766DznOc/J3Llz8/Of/zznnXde/v73v+f9739/Fi5cmA984ANd7/u4447LJz/5ySxYsCCnnXZaDjnkkOXOnTt3bs4666wkyTbbbJO99tqr6/0AAMBAM2nqpEbqXnfkdY3UBQAAAADoL0JK0Ac23mTT7HXAgUmSM0//6uL7i+4t7T3vec/igNKee+6ZH//4xxk9evTi58ccc0yOPvroHHTQQXnsscfy0Y9+NAceeGB22WWXrvY9duzYvOIVr8h///d/55JLLsntt9+eCRMmLHPuueeem1mzZiVJjj322JRSutoLAAAAAAAAADB4Oe4NBpgZM2bkjDPOSJJsuOGGOe+8854UUFpkv/32y8c//vEkyfz58/Pv//7vjfRz4oknJklqrTn99NOXO++b3/xmkqSnpydHHXVUI70AAAAAAAAAAIOTnZRggLnwwgvz+OOPJ0mOPPLIbLHFFsud+5a3vCUf+9jHMnv27PzoRz/KggULMnz48K72c8ABB2TrrbfO9OnTc8YZZ+SUU055yho33nhjfvOb3yRJXvnKV66wZwAAAAAYTG7aYWIjdSf++aZG6gIAAAxUdlKCAeb3v//94vF+++23wrnrr79+9txzzyTJ7Nmzc+ONN3a9n2HDhuW4445Lkvz1r3/NhRde+JQ5p5122uLxorkAAAAAAAAAAIsIKcEAc++99y4eP/vZz17p/PY57e920zHHHJOent6N1xYd67bI448/nu985ztJknHjxmX//fdvpAcAAAAAAAAAYPASUoIBZvbs2YvHI0eOXOn8DTbYYJnvdtMWW2yRgw46KEnyk5/8JPfcc8/iZ+eff34efPDBJMnRRx+dYcP8sQIAAAAAAAAAPJk0AQwwo0aNWjyeM2fOSuc/+uijy3y320488cQkyYIFC3LGGWcsvr/oqLfhw4fn6KOPbmx9AAAAAAAAAGDwElKCAeYZz3jG4vEtt9yy0vntc575zGc20lOS7L333tl2222TJN/61rdSa81tt92Wyy67LElywAEHZKuttmpsfQAAAAAAAABg8BJSggHmH//xHxePf/7zn69w7rx58/LrX/86Se8uShMnTmysr1JKjj/++CTJ7bffnl/84hf55je/mVprkuS4445rbG0AAAAAAAAAYHATUoIB5sADD8w666yTJJk6dWruv//+5c796le/mlmzZiVJDjrooAwfPrzR3o466qjFvX31q1/NlClTkvTu/nTggQc2ujYAAAAAAAAAMHgJKcEAM2bMmBx99NFJkocffjiHHHLI4iBSu0suuSQf+tCHkiQ9PT1597vf3Xhvm222WV772tcmSc4///zce++9SXrDSz09PY2vDwAAAAAAAAAMTlIFMAB99rOfzSWXXJKbb745V1xxRXbcccccffTR2XHHHTN37tz84he/yLnnnpuFCxcmSU455ZTssssufdLbCSeckLPOOmvxdSklxx57bJ+sDQAAAAAAAAAMTkJKMACNGjUqV1xxRV796lfnt7/9be655558/OMff8q8np6efOxjH8v73//+PuvtxS9+cSZOnJibbropSbLPPvtkwoQJfbY+AAAAAAAAADD4CCnBALXFFlvkN7/5Tc4777ycc845ufLKKzNjxoyss8462WqrrbLvvvvmLW95S7bbbrs+722fffZZHFI67rjj+nx9AAAAAACgi04e3UDNR7pfEwAY1ISUeCp/aWzU6ef9eJXnllJyyCGH5JBDDlmjtcaPH59a6wrnTJkyJVOmTFnlmgsXLsy0adOSJGPGjMlBBx20Rr0BAAAAAAAAAGuPYf3dADC4XHjhhbnrrruSJEcddVRGjBjRzx0BAAAAAAAAAAOdkBKwyhYsWJCPfexjSZKenp685S1v6eeOAAAAAAAAAIDBwHFvwApdd911ueeee/LQQw9lypQpueqqq5IkkydPztZbb93P3QEAAAAAAAAAg4GQErBCn//85zN16tQn3Rs/fnw++9nP9lNHAAAAAAAAAMBg47g3YJUMHz48EyZMyEknnZTf/va32WSTTfq7JQAAAAAAAABgkLCTErBCU6ZMyZQpU/q7DQAAAAAAAABgEBNSAoBBbNLUSY3Uve7I6xqpCwAAAAAAAKydHPcGAAAAAAAAAAA0SkgJAAAAAAAAAABolJASAAAAAAAAAADQKCElAAAAAAAAAACgUUJKAAAAAAAAAABAo4SUAAAAAAAAAACARvX0dwMAAAAAAMAgdvLohuo+0kxdAACgX9hJCQAAAAAAAAAAaJSQEgAAAAAAAAAA0CghJQAAAAAAAAAAoFFCSgAAAAAAAAAAQKOElAAAAAAAAAAAgEYJKQEAAAAAAAAAAI0SUgLW2Mknn5xSSkopufzyy5c5Z9Hzl770pct8Pnny5MVz7rjjjsZ6BQAAAAAAAAD6j5ASAAAAAAAAAADQqJ7+boCBZ9LUSf3dQp+67sjr+rsFAAAAAAAAAIAhTUgJaFSttb9bAAAAAAAAAAD62ZA/7q30OrSU8uNSyt2llMdLKfeWUi4ppRxbSulqUKu13oGllLNKKbeUUh4tpfy9lPJAKeU3pZRPlVKe1c01AQAAAAAAAABgIBvSOymVUjZO8v0key31aIvWZ68kJ5VSXl1rvbML622W5LwkL13G402TvKD1eVcp5cO11s91uiYAAAAAAAAAAAx0QzakVEoZkeSCJC9q3boryTeS3JpkbJKjk0xMsluSn5ZSXlBrndXBej1Jfppkj9atx5J8O8mfksxMslWSVybZM8mIJJ8tpTxaa/3Kmq7J4LFgwYIc8Pydc//f/pqNN9k0P7/yxjxtxIgVvnPNNddk9913T5IccsghOffccxc/u/POO/OjH/0oV1xxRa699trcc889eeKJJ7LRRhtlxx13zMtf/vKceOKJGT169Cr1N3/+/Jx11ln57//+71x55ZWZMWNG5s+fn8033zw777xz9t1337zhDW/I5ptvvto/eyklSfKSl7wkl19++Sq9c+aZZ+aMM87IDTfckJkzZ2aLLbbIPvvsk3e+853ZcccdV7sHAAAAAACg/0yaOqmRutcdeV0jdQGAZgzZkFKSk7IkoHRNkn1qrTMXPSylfDnJtCT7J9kxyYeT/FsH6x2eJQGlu5K8qNY6fak5nyulHJfesFSSnFJK+UatdX4H6zIIDB8+PK8+7E35+pc+l5kPPZhLL74w+7/y1St857TTTls8Pv744xePL7/88uy1116ptT7lnRkzZuSKK67IFVdckc9//vP54Q9/mD333HOF61x11VU57LDD8pe//OUpz+6+++7cfffd+clPfpILLrggl1122cp+1I488cQTefWrX51p06Y96f706dNz+umn5zvf+U6+8pWv5Jhjjmm0DwAAAAAAAACgu4ZkSKm1q9EHW5c1yRHtAaUkqbU+Vko5IsltSUYmeWsp5TO11gfXcNn928afWUZAadG6p5VSTkiye5LN0rubk5j3WuC1bzgi3/yvz2fBggX54dnfXmFIae7cuTnrrLOSJNtss0322mvJiYWPPfZYaq15znOek5e97GWZOHFiNt100zz22GO56667Mm3atFx99dWZMWNG/vmf/zl//OMfM378+GWu8+tf/zr77bdf5s2blyR51rOelUMOOSQTJ07MOuusk7/+9a/53e9+lwsvvHCZoahue+9735tp06Zl6623ztFHH53tt98+Dz30UKZNm5af/exneeKJJ3LcccdlzJgxedWrXtV4PwAAAAAAAABAdwzJkFKSvZKMaY0vqbXesKxJtdb7SynnJDkmyTpJDkryrTVcs/0crFtWMvfm9IaUkt6AFGuBpz9jy+z5sn1zxS8uyu9+fUXuvnN6xo7beplzzz333Mya1Xv64LHHHrv4yLQkmThxYq699tpMmrTsrVE/9KEP5eyzz86b3vSmPPLIIznllFNyxhlnPGXeI488kkMOOWRxQOk973lPPvnJT6an56l/LMydOze/+tWvVvtnXl3Tpk3Ly172svzoRz/KBhtssPj+SSedlC9/+ct561vfmlprTjjhhOy1115PmgMAAAAAAAAADFzD+ruBhuzXNr5oJXPbnx/QwZr3tY23W8ncRc8XpDewxFri9W8+KklSa820c76z3Hnf/OY3kyQ9PT056qijnvRs6623Xm5AaZHDDz88b3rTm5L0Bp7+/ve/P2XOqaeemnvvvXfx/M9+9rPLDCglyfrrr5/9999/mc+6afTo0TnnnHOWGT7613/91xx66KFJkr/97W8588wzG+8HAAAAAAAAAOiOoRpS2qltfPVK5l61nPdW1wVt4/eVUpa5RU4p5bgke7Quv1NrfaiDNRlkXvjSffLMsVslSaZ976wsWLDgKXNuvPHG/OY3v0mSvPKVr8wWW2yxRmv90z/9U5Jk3rx5ufbaa5/yfFHIZ9iwYfnEJz6xRmt025ve9KZsvvnmy33+rne9a/H4/PPP74uWAAAAAAAAAIAuGKohpWe3je9Yydy707ujUZJsV9rP1Vo9P0iyKDWxVZI/l1K+Xko5qZRyWCnl30opv0ryjdac85O8dQ3XYpAaNmxYXnP4EUmSGffdm19dcvFT5px22mmLx8cdd9xya/3ud7/LW9/61jz3uc/NpptumhEjRqSUsvhz4oknLp579913P+ndhx56KDfeeGOSZKeddso222zT0c/VLXvvvfcKn++xxx7ZcMMNkyRXXnllX7QEAAAAAAAAAHTBUA0pbdQ2fmBFE2ut85PMal32JBm5JgvWWmuS1yf5VJLZSdZNcnySryQ5O8nnkuyZ5Jok/5zktbXWR9dkLQa3Vx/25sXHqv3w7Ccf+fbE44/nO9/pvTdu3LhlHrH2xBNP5Igjjsjzn//8fPnLX85VV12Vhx56aJlHui0ya9asJ13fc889i8cTJ05c45+l27bddtsVPi+lLA5UPfTQQ3n88cf7oi0AAAAAAAAAoEM9/d1AQzZoGz+2CvPnJdm4NR6VZI3CQ7XWBaWUf08yM8knkqyzjGm7JXlfa85v1mQdBrfNNn96XrrfK/KLn/wov77s57nv3r/m6c94ZpLkkot+nAcffDBJcvTRR2fYsKfmCP/lX/5lcZBpnXXWySte8Yo897nPzZZbbpmRI0dm+PDhSZJLL700//Vf/5UkTzlWrj20tMEGG2SgWH/99Vc6Z+TIJTnCRx99NOuss6zfZgAAAAAAAADAQDJUQ0r9opRyQJJzkoxOcnmSTyf5XXpDUOPSu9PSB9O7o9IlpZTDaq0XrKDe8endjSnjxo1rtHf61uvfdFR+8ZMfZcGCBbnge2fl+Le/O0nyw7O/nSQZPnx4jj766Ke8d8cdd+T0009PkowdOzZXXHHFco9qa98taWmLjkxLeoM+A8XcuXNXOmfOnDmLxwMpYAUAAAAAAAAALN9QDSk9miU7I62ble+MtF7bePaaLNgKKF2Y3iP0vp/k0FrrwrYptyb5dCnlkiS/bPX1nVLKs2utf1tWzVrrN5J8I0n22GOPuiZ9MTA9b8+XZNz4bXLnHbdl2ve+m+Pe9q7cc+f0XPmbXyVJDjjggGy11VZPee/SSy9N78mCyfve977lBpSSZPr06ct9tuWWW6aUklprbrrppg5/mu659dZbM2nSpOU+r7XmtttuS5JssskmdlECAAAAABgCJk1d/v8v3InrjryukboAAKyZp54lNTQ83DbebEUTSyk9SRZtK/P3JHNWMH1FPp/ef54Lk7x9qYDSYrXW3yeZ0roclWTyGq7HIFZKyWvfeGSS5J47p+e3v7o8Pzz724sDSMcdd9wy37vvvvsWj5/1rGetcI2LL754uc822WST7LjjjkmS66+/PrfffvvqtN+YSy+9dIXPr7766sVH1T33uc/ti5YAAAAAAAAAgC4Yqjsp3ZxkQms8PskdK5g7Nsnw1vjWuiglshpKKROS7Ni6vLHW+teVvPKLJCe0xv+4uusxNBx0yBtz6n98Kk88/ni+951v5bprrkqSPOMZz8iBBx64zHfWX3/9xeO//OUvy619wQUX5Nprr13h+m9605vy/ve/PwsXLswHP/jBnHXWWWvwU3TXd7/73XzkIx/JmDFjlvn8C1/4wuLxa17zmr5qCwAAABjEmt6d46YdJjZSf+KfB87u1wOdHVgAAAAGh6G6k9L1bePdVzJ3j+W8tzqe2TaetQrzH2kbj1zDNRnkNt5k0+zz8lcmSS696MeZcX/vqX9HHXVUenqWnR9s3z3oP/7jPzJz5synzPnd736Xo48+eqXrn3TSSXnmM3v/p3v22Wfnve99b+bPn7/MufPmzcvPfvazldbs1MMPP5zDDz88c+Y8dUOzr33tazn77LOTJFtssUXe8IY3NN4PAAAAAAAAANAdQ3UnpYuTvKs13j+9R7EtzwFt44vWcL32YNJWqzB/67bxg2u4JkPA6944OT+Z9v3F16WUHHvsscud/4IXvCC77757rr766txxxx3ZYYcdcuKJJ2b77bfPvHnzcumll+bcc89NkrzxjW/MmWeeudxao0ePzrnnnpt99903jz32WD73uc/lBz/4QQ499NBMnDgxI0aMyN/+9rdceeWV+fGPf5xddtkl++23X/d++GU4+OCDM23atOy000455phjst122+Xhhx/O+eefv/j4ulJKvv71r2eDDTZotBcAAAAAAAAAoHuGakjpsiQzkoxJsk8p5Tm11huWnlRK2TzJYa3Lx5JcsIbr3dp6f90kW5VS/qnW+psVzD+sbXzVGq7JELD781+YbbbbPrfd8n9Jkuft+dJMmDBhufNLKTnnnHOy11575a677sr999+fj33sY0+as+666+bUU0/NsGHDVhhS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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "if __name__ == \"__main__\": \n", + " fig, ax = plt.subplots(figsize=(40, 10))\n", + " bar_plot(ax, rows, total_width=.8, single_width=.9, legend_prop={'size': 30})\n", + " ax.set_ylabel(\"Time ratio\", fontsize='40')\n", + " ax.tick_params(direction='out', labelsize='30')\n", + " plt.show()" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.2" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/script/shit/results.csv b/script/shit/results.csv new file mode 100644 index 0000000..5a46e90 --- /dev/null +++ b/script/shit/results.csv @@ -0,0 +1,54 @@ +name, time, cpu, iterations +STLConstantFuture, 511 ns, 510 ns, 1312484 +YACLibConstantFuture, 32.0 ns, 31.9 ns, 22096915 +FollyConstantFuture, 28.3 ns, 28.3 ns, 25076414 +QtConstantFuture, 30.3 ns, 30.2 ns, 24063211 +STLPromiseAndFuture, 528 ns, 528 ns, 1309909 +YACLibPromiseAndFuture, 62.2 ns, 62.1 ns, 10973978 +FollyPromiseAndFuture, 64.9 ns, 64.9 ns, 10741754 +QtPromiseAndFuture, 69 ns, 69 ns, 10832945 +YACLibOneThen, 147 ns, 147 ns, 4785874 +FollyOneThen, 172 ns, 172 ns, 4108779 +QtOneThen, 170 ns, 170 ns, 4490234 +YACLibTwoThen, 236 ns, 236 ns, 2990642 +FollyTwoThen, 296 ns, 296 ns, 2349923 +QtTwoThen, 300 ns, 300 ns, 2349923 +YACLibFourThen, 415 ns, 415 ns, 1693791 +FollyFourThen, 558 ns, 558 ns, 1244561 +QtFourThen, 600 ns, 600 ns, 1693791 +YACLibHundredThen, 8725 ns, 8709 ns, 79019 +FollyHundredThen, 12542 ns, 12503 ns, 56253 +QtHundredThen, 9000 ns, 9000 ns, 56253 +YACLibFourThenOnThread, 27789 ns, 18837 ns, 37001 +FollyFourThenOnThread, 30961 ns, 20014 ns, 34970 +QtFourThenOnThread, 30321 ns, 24912 ns, 36924 +YACLibFourThenOnThreadInline, 27312 ns, 18980 ns, 37703 +FollyFourThenOnThreadInline, 34727 ns, 22842 ns, 34598 +QtFourThenOnThreadInline, 36656 ns, 22842 ns, 34598 +YACLibHundredThenOnThread, 53120 ns, 36885 ns, 18914 +FollyHundredThenOnThread, 75488 ns, 52666 ns, 13471 +QtHundredThenOnThread, 80023 ns, 52666 ns, 13471 +YACLibHundredThenOnThreadInline, 43156 ns, 33789 ns, 20653 +FollyHundredThenOnThreadInline, 54391 ns, 34591 ns, 20284 +QtHundredThenOnThreadInline, 43203 ns, 30342 ns, 20284 +YACLibComplexUnit, 39182 ns, 39157 ns, 17977 +FollyComplexUnit, 49353 ns, 49318 ns, 14191 +QtComplexUnit, 44012 ns, 42012 ns, 14191 +YACLibComplexBlob4, 38641 ns, 38621 ns, 18098 +FollyComplexBlob4, 48809 ns, 48778 ns, 14379 +QtComplexBlob4, 58034 ns, 48778 ns, 14379 +YACLibComplexBlob8, 38387 ns, 38269 ns, 17942 +FollyComplexBlob8, 48119 ns, 48092 ns, 14557 +QtComplexBlob8, 47123 ns, 48092 ns, 14557 +YACLibComplexBlob64, 40176 ns, 40153 ns, 17654 +FollyComplexBlob64, 42885 ns, 42851 ns, 17041 +QtComplexBlob64, 49231 ns, 42851 ns, 17041 +YACLibComplexBlob128, 41073 ns, 41014 ns, 17024 +FollyComplexBlob128, 42016 ns, 41978 ns, 16553 +QtComplexBlob128, 44512 ns, 41978 ns, 16553 +YACLibNoContention, 1623865 ns, 684637 ns, 1027 +FollyNoContention, 2917857 ns, 899710 ns, 775 +QtNoContention, 3214920 ns, 142923 ns, 775 +YACLibContention, 3337525 ns, 661014 ns, 1107 +FollyContention, 5953766 ns, 956817 ns, 732 +QtContention, 4023142 ns, 3123021 ns, 732 diff --git a/script/shit/utils/.ipynb_checkpoints/draw_graphic-checkpoint.ipynb b/script/shit/utils/.ipynb_checkpoints/draw_graphic-checkpoint.ipynb new file mode 100644 index 0000000..670554d --- /dev/null +++ b/script/shit/utils/.ipynb_checkpoints/draw_graphic-checkpoint.ipynb @@ -0,0 +1,166 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 187, + "id": "5d239953", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "['name', ' time', ' cpu', ' iterations']\n", + "{'stl': [511.0, 528.0], 'folly': [28.3, 64.9, 172.0, 296.0, 558.0, 12542.0, 30961.0, 34727.0, 75488.0, 54391.0, 49353.0, 48809.0, 48119.0, 42885.0, 42016.0, 2917857.0, 5953766.0], 'yaclib': [32.0, 62.2, 147.0, 236.0, 415.0, 8725.0, 27789.0, 27312.0, 53120.0, 43156.0, 39182.0, 38641.0, 38387.0, 40176.0, 41073.0, 1623865.0, 3337525.0], 'qt': [30.3, 69.0, 170.0, 300.0, 600.0, 9000.0, 30321.0, 36656.0, 80023.0, 43203.0, 44012.0, 58034.0, 47123.0, 49231.0, 44512.0, 3214920.0, 4023142.0]}\n" + ] + } + ], + "source": [ + "import csv\n", + "file = open(\"results.csv\")\n", + "\n", + "csvreader = csv.reader(file)\n", + "header = next(csvreader)\n", + "print(header)\n", + "rows = {'stl': [], 'folly': [], 'yaclib': [], 'qt': []}\n", + "for row in csvreader:\n", + " time = float(row[1].strip()[0:-2])\n", + " if row[0].lower().startswith('stl'):\n", + " rows['stl'].append(time)\n", + " elif row[0].lower().startswith('folly'):\n", + " rows['folly'].append(time)\n", + " elif row[0].lower().startswith('yaclib'):\n", + " rows['yaclib'].append(time)\n", + " elif row[0].lower().startswith('qt'):\n", + " rows['qt'].append(time)\n", + "file.close()\n", + "\n", + "print(rows)" + ] + }, + { + "cell_type": "code", + "execution_count": 188, + "id": "b96decaa", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "stl\n", + "folly\n", + "yaclib\n", + "qt\n" + ] + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "\n", + "fig, ax = plt.subplots()\n", + "fig.set_size_inches(18.5, 10.5)\n", + "\n", + "for name, results in rows.items():\n", + " x = np.linspace(0, len(results), len(results))\n", + " y = results\n", + " print(name)\n", + " line = ax.plot(x, y, label=name)\n", + "\n", + "\n", + "ax.legend()\n", + "plt.show()\n", + "fig.savefig('results.png', dpi=100)" + ] + }, + { + "cell_type": "code", + "execution_count": 224, + "id": "4edb5b43", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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kAEAAOu0Iw88MkceeOQqy+bOnZtSSubOnbvK8pkzZ2bmzJnjV9watDrLIgAArG923XyPbDYKJwzutv9OW/beeIcDhl29aPHiTLv7+rUriFEjkAEAwCjabOrUzDz9krbLGNL8M49pu4Rx8ZznPCeHHHLIWk9LP9YEMgAAYL0zffr0TJ8+ve0y1sgxZAAAQF9+8YtfpJSSww8/fMg2zz3iifmL3bbJnXfcnqVLluQzc8/Lq17yvBx1yH456NHbZuutt84Rz39lvva/3x2yj1tvuyN/98/vzp577pm/2Pkv8sQ9n5gTjzwxH3nfR9ZY41DHkC23cOHCnHbaadlxxx0zbdq07L333jnrrLNSa11j36NJIAMAAPrymMc8JocffnjmzZuXX/7yl6ut/+lVP8hNN96QWUc+I9tsu10WLrg3737Lm/LHBx7IIU8+PC8++dQce+yxufq6G/OMF786//FfX1ytj6t+dn0e97QT88GPX5AddtghLzz5hXnmc5+ZTTfbNOe8+5y1qn/JkiU54ogjctlll+XEE0/MySefnAULFuQ1r3lNTjvttLXqu192WQQAAPp26qmn5vLLL895552X9773vaus+/ynz0+SHP/C2UmSLaZvmf++8ppsu/2OK9rsv9OWWfiLb+XQZ/913vCOD+SFzzk6m2wyLUmyZMnSPO8Vb8g9Cxbm0x96R0561Zvz87t+vuK+t992+1rV/vvf/z677757rrvuukztTMDy1re+NX/5l3+Zc845J89//vNz2GGHrdVj9MoIGQAA0LdnP/vZ2X777TN37twsXrx4xfL7Fi7M17/6pey862455MmzkiQbT526ShhbbvoWm+evn39c7l1wX370s5WB6yv/863M/+1tOfbIp+Sk5xy92v2222G7ta7/ne9854owliRbb711/vmf/zlJ8olPfGKt+++VQAYAAPRt8uTJOfnkk3P33Xfn85///IrlX/3CZ7No0YN57gtfmlLKiuU33XhD/vnvT80zDv3zHLzH9imlpOx4YF7/tn9Lkvzu9jtXtL3yJ9ckSY4+/NAxq/2JT3ziastnzZqVJLn66qvH5HEHrWXcHgkAAFivnHLKKXnHO96Rc889NyeddFKS5POfnpspG2+c40544Yp21/zkRzn5+cfloWUP5fGHHpZZTzs6u++wTTb64x356c9/mS9fNi+LFy9Z0X7B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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "import numpy as np\n", + "\n", + "# make data:\n", + "x_max = max(map(len, rows.values()))\n", + "\n", + "x = np.arange(0, x_max * 4, 4)\n", + "y = rows['yaclib']\n", + "y2 = rows['folly']\n", + "y3 = rows['qt']\n", + "\n", + "for i in range(len(y)):\n", + " max_el = max(y[i], y2[i], y3[i])\n", + " y[i] /= max_el\n", + " y2[i] /= max_el\n", + " y3[i] /= max_el\n", + "\n", + "width = 1\n", + "\n", + "fig, ax = plt.subplots()\n", + "fig.set_size_inches(14.5, 10)\n", + "\n", + "ax.bar(x, y, width, edgecolor=\"white\", linewidth=1, label='yaclib')\n", + "ax.bar(x + width, y2, width, edgecolor=\"white\", linewidth=1, label = 'folly')\n", + "ax.bar(x + 2* width, y3, width, edgecolor=\"white\", linewidth=1, label='qt')\n", + "\n", + "ax.set(xticks=np.arange(0, 0))\n", + "ax.set_title('Сравнение результатов', fontsize='36')\n", + "ax.set_ylabel(\"Ratio\", fontsize='18')\n", + "\n", + "ax.legend(prop={'size': 20}, loc='lower right')\n", + "plt.show()\n", + "fig.savefig('results.png', dpi=100)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.7" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/script/shit/utils/draw_graphic.ipynb b/script/shit/utils/draw_graphic.ipynb new file mode 100644 index 0000000..8556c96 --- /dev/null +++ b/script/shit/utils/draw_graphic.ipynb @@ -0,0 +1,247 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 2, + "id": "5d239953", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "['name', ' time', ' cpu', ' iterations']\n", + "{'stl': [511.0, 528.0], 'folly': [28.3, 64.9, 172.0, 296.0, 558.0, 12542.0, 30961.0, 34727.0, 75488.0, 54391.0, 49353.0, 48809.0, 48119.0, 42885.0, 42016.0, 2917857.0, 5953766.0], 'yaclib': [32.0, 62.2, 147.0, 236.0, 415.0, 8725.0, 27789.0, 27312.0, 53120.0, 43156.0, 39182.0, 38641.0, 38387.0, 40176.0, 41073.0, 1623865.0, 3337525.0], 'qt': [30.3, 69.0, 170.0, 300.0, 600.0, 9000.0, 30321.0, 36656.0, 80023.0, 43203.0, 44012.0, 58034.0, 47123.0, 49231.0, 44512.0, 3214920.0, 4023142.0]}\n" + ] + } + ], + "source": [ + "import csv\n", + "file = open(\"results.csv\")\n", + "\n", + "csvreader = csv.reader(file)\n", + "header = next(csvreader)\n", + "print(header)\n", + "rows = {'stl': [], 'folly': [], 'yaclib': [], 'qt': []}\n", + "for row in csvreader:\n", + " time = float(row[1].strip()[0:-2])\n", + " if row[0].lower().startswith('stl'):\n", + " rows['stl'].append(time)\n", + " elif row[0].lower().startswith('folly'):\n", + " rows['folly'].append(time)\n", + " elif row[0].lower().startswith('yaclib'):\n", + " rows['yaclib'].append(time)\n", + " elif row[0].lower().startswith('qt'):\n", + " rows['qt'].append(time)\n", + "file.close()\n", + "\n", + "print(rows)" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "4edb5b43", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "import numpy as np\n", + "\n", + "# make data:\n", + "x_max = max(map(len, rows.values()))\n", + "\n", + "x = np.arange(0, x_max * 4, 4)\n", + "y0 = rows['stl']\n", + "y = rows['yaclib']\n", + "y2 = rows['folly']\n", + "y3 = rows['qt']\n", + "\n", + "for i in range(len(y)):\n", + " max_el = max(y[i], y2[i], y3[i])\n", + " y[i] /= max_el\n", + " y2[i] /= max_el\n", + " y3[i] /= max_el\n", + "\n", + "rows['yaclib'] = y\n", + "rows['folly'] = y2\n", + "rows['qt'] = y3\n", + "\n", + "min_el = min(min(y), min(y2), min(y3))\n", + "\n", + " \n", + "width = 1\n", + "\n", + "fig, ax = plt.subplots(figsize=(40, 20))\n", + "\n", + "ax.bar(x, y, width, edgecolor=\"white\", linewidth=1, label='yaclib', color='r')\n", + "ax.bar(x + width, y2, width, edgecolor=\"white\", linewidth=1, label = 'folly', color='royalblue')\n", + "ax.bar(x + 2* width, y3, width, edgecolor=\"white\", linewidth=1, label='qt', color='limegreen')\n", + "\n", + "ax.set(xticks=np.arange(0, 0))\n", + "ax.set_title('Сравнение результатов', fontsize='48')\n", + "ax.set_ylabel(\"Нормированное время\", fontsize='40')\n", + "ax.tick_params(direction='out', labelsize='30')\n", + "ax.legend(prop={'size': 40}, loc='lower right')\n", + "\n", + "plt.show()\n", + "fig.savefig('results.png', dpi=100)" + ] + }, + { + "cell_type": "code", + "execution_count": 70, + "id": "d41a6aaa", + "metadata": {}, + "outputs": [], + "source": [ + "def bar_plot(ax, data, colors=None, total_width=0.8, single_width=1, legend=True, legend_prop=None):\n", + " \"\"\"Draws a bar plot with multiple bars per data point.\n", + "\n", + " Parameters\n", + " ----------\n", + " ax : matplotlib.pyplot.axis\n", + " The axis we want to draw our plot on.\n", + "\n", + " data: dictionary\n", + " A dictionary containing the data we want to plot. Keys are the names of the\n", + " data, the items is a list of the values.\n", + "\n", + " Example:\n", + " data = {\n", + " \"x\":[1,2,3],\n", + " \"y\":[1,2,3],\n", + " \"z\":[1,2,3],\n", + " }\n", + "\n", + " colors : array-like, optional\n", + " A list of colors which are used for the bars. If None, the colors\n", + " will be the standard matplotlib color cyle. (default: None)\n", + "\n", + " total_width : float, optional, default: 0.8\n", + " The width of a bar group. 0.8 means that 80% of the x-axis is covered\n", + " by bars and 20% will be spaces between the bars.\n", + "\n", + " single_width: float, optional, default: 1\n", + " The relative width of a single bar within a group. 1 means the bars\n", + " will touch eachother within a group, values less than 1 will make\n", + " these bars thinner.\n", + "\n", + " legend: bool, optional, default: True\n", + " If this is set to true, a legend will be added to the axis.\n", + " \"\"\"\n", + "\n", + " # Check if colors where provided, otherwhise use the default color cycle\n", + " if colors is None:\n", + " colors = plt.rcParams['axes.prop_cycle'].by_key()['color']\n", + "\n", + " # Number of bars per group\n", + " n_bars = len(data)\n", + "\n", + " # The width of a single bar\n", + " bar_width = total_width / n_bars\n", + "\n", + " # List containing handles for the drawn bars, used for the legend\n", + " bars = []\n", + "\n", + " # Iterate over all data\n", + " for i, (name, values) in enumerate(data.items()):\n", + " # The offset in x direction of that bar\n", + " x_offset = (i - n_bars / 2) * bar_width + bar_width / 2\n", + "\n", + " # Draw a bar for every value of that type\n", + " for x, y in enumerate(values):\n", + " bar = ax.bar(x + x_offset, y, width=bar_width * single_width, color=colors[i % len(colors)])\n", + "\n", + " # Add a handle to the last drawn bar, which we'll need for the legend\n", + " bars.append(bar[0])\n", + "\n", + " # Draw legend if we need\n", + " if legend:\n", + " ax.legend(bars, data.keys(), prop=legend_prop)" + ] + }, + { + "cell_type": "code", + "execution_count": 48, + "id": "d63ad06c", + "metadata": {}, + "outputs": [], + "source": [ + "def norm(data):\n", + " data = {\n", + " \"a\": [1, 2, 3, 2, 1],\n", + " \"b\": [2, 3, 4, 3, 1],\n", + " \"c\": [3, 2, 1, 4, 2],\n", + " \"d\": [5, 9, 2, 1, 8],\n", + " \"e\": [1, 3, 2, 2, 3],\n", + " \"f\": [4, 3, 1, 1, 4],\n", + " }\n", + " \n", + " return data" + ] + }, + { + "cell_type": "code", + "execution_count": 71, + "id": "7c7a195f", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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6cdOAAAAAAAAAAD6hpAS9IEr//fX2WWrjbPLVhvnqt/+z+L7i+4t+nz1C5950nu11nzve9/L6173uowbNy7rrrtuNtpoo+y888555zvfmVtuuaWxnhcsWJCxY8emlJIxY8bkiSeeWOk711xzTUopKaXk0EMPbaw3AAAAAAAAAGBwEVKCAeq+++7LC1/4whx66KH5wQ9+kLvuuiuPP/54HnnkkVx33XX54he/mOc85zn5zGc+s/Jia2D48OE55phjkiQPPPBApk2bttJ3TjvttMXj448/vpG+AAAAAAAAAIDBp6e/G4C1wbbbT8wXT/tukuTL//6J/OXmPyfJ4nuLTNh2uyTJ7Nmz8+IXvzg333xzkuQZz3hGjj766DznOc/J3Llz8/Of/zznnXde/v73v+f9739/Fi5cmA984ANd7/u4447LJz/5ySxYsCCnnXZaDjnkkOXOnTt3bs4666wkyTbbbJO99tqr6/0AAMBAM2nqpEbqXnfkdY3UBQAAAADoL0JK0Ac23mTT7HXAgUmSM0//6uL7i+4t7T3vec/igNKee+6ZH//4xxk9evTi58ccc0yOPvroHHTQQXnsscfy0Y9+NAceeGB22WWXrvY9duzYvOIVr8h///d/55JLLsntt9+eCRMmLHPuueeem1mzZiVJjj322JRSutoLAAAAAAAAADB4Oe4NBpgZM2bkjDPOSJJsuOGGOe+8854UUFpkv/32y8c//vEkyfz58/Pv//7vjfRz4oknJklqrTn99NOXO++b3/xmkqSnpydHHXVUI70AAAAAAAAAAIOTnZRggLnwwgvz+OOPJ0mOPPLIbLHFFsud+5a3vCUf+9jHMnv27PzoRz/KggULMnz48K72c8ABB2TrrbfO9OnTc8YZZ+SUU055yho33nhjfvOb3yRJXvnKV66wZwAAAAAYTG7aYWIjdSf++aZG6gIAAAxUdlKCAeb3v//94vF+++23wrnrr79+9txzzyTJ7Nmzc+ONN3a9n2HDhuW4445Lkvz1r3/NhRde+JQ5p5122uLxorkAAAAAAAAAAIsIKcEAc++99y4eP/vZz17p/PY57e920zHHHJOent6N1xYd67bI448/nu985ztJknHjxmX//fdvpAcAAAAAAAAAYPASUoIBZvbs2YvHI0eOXOn8DTbYYJnvdtMWW2yRgw46KEnyk5/8JPfcc8/iZ+eff34efPDBJMnRRx+dYcP8sQIAAAAAAAAAPJk0AQwwo0aNWjyeM2fOSuc/+uijy3y320488cQkyYIFC3LGGWcsvr/oqLfhw4fn6KOPbmx9AAAAAAAAAGDwElKCAeYZz3jG4vEtt9yy0vntc575zGc20lOS7L333tl2222TJN/61rdSa81tt92Wyy67LElywAEHZKuttmpsfQAAAAAAAABg8BJSggHmH//xHxePf/7zn69w7rx58/LrX/86Se8uShMnTmysr1JKjj/++CTJ7bffnl/84hf55je/mVprkuS4445rbG0AAAAAAAAAYHATUoIB5sADD8w666yTJJk6dWruv//+5c796le/mlmzZiVJDjrooAwfPrzR3o466qjFvX31q1/NlClTkvTu/nTggQc2ujYAAAAAAAAAMHgJKcEAM2bMmBx99NFJkocffjiHHHLI4iBSu0suuSQf+tCHkiQ9PT1597vf3Xhvm222WV772tcmSc4///zce++9SXrDSz09PY2vDwAAAAAAAAAMTlIFMAB99rOfzSWXXJKbb745V1xxRXbcccccffTR2XHHHTN37tz84he/yLnnnpuFCxcmSU455ZTssssufdLbCSeckLPOOmvxdSklxx57bJ+sDQAAAAAAAAAMTkJKMACNGjUqV1xxRV796lfnt7/9be655558/OMff8q8np6efOxjH8v73//+PuvtxS9+cSZOnJibbropSbLPPvtkwoQJfbY+AAAAAAAAADD4CCnBALXFFlvkN7/5Tc4777ycc845ufLKKzNjxoyss8462WqrrbLvvvvmLW95S7bbbrs+722fffZZHFI67rjj+nx9AAAAAACgi04e3UDNR7pfEwAY1ISUeCp/aWzU6ef9eJXnllJyyCGH5JBDDlmjtcaPH59a6wrnTJkyJVOmTFnlmgsXLsy0adOSJGPGjMlBBx20Rr0BAAAAAAAAAGuPYf3dADC4XHjhhbnrrruSJEcddVRGjBjRzx0BAAAAAAAAAAOdkBKwyhYsWJCPfexjSZKenp685S1v6eeOAAAAAAAAAIDBwHFvwApdd911ueeee/LQQw9lypQpueqqq5IkkydPztZbb93P3QEAAAAAAAAAg4GQErBCn//85zN16tQn3Rs/fnw++9nP9lNHAAAAAAAAAMBg47g3YJUMHz48EyZMyEknnZTf/va32WSTTfq7JQAAAAAAAABgkLCTErBCU6ZMyZQpU/q7DQAAAAAAAABgEBNSAoBBbNLUSY3Uve7I6xqpCwAAAAAAAKydHPcGAAAAAAAAAAA0SkgJAAAAAAAAAABolJASAAAAAAAAAADQKCElAAAAAAAAAACgUUJKAAAAAAAAAABAo4SUAAAAAAAAAACARvX0dwMAAAAAAMAgdvLohuo+0kxdAACgX9hJCQAAAAAAAAAAaJSQEgAAAAAAAAAA0CghJQAAAAAAAAAAoFFCSgAAAAAAAAAAQKOElAAAAAAAAAAAgEYJKQEAAAAAAAAAAI0SUgLW2Mknn5xSSkopufzyy5c5Z9Hzl770pct8Pnny5MVz7rjjjsZ6BQAAAAAAAAD6j5ASAAAAAAAAAADQqJ7+boCBZ9LUSf3dQp+67sjr+rsFAAAAAAAAAIAhTUgJaFSttb9bAAAAAAAAAAD62ZA/7q30OrSU8uNSyt2llMdLKfeWUi4ppRxbSulqUKu13oGllLNKKbeUUh4tpfy9lPJAKeU3pZRPlVKe1c01AQAAAAAAAABgIBvSOymVUjZO8v0key31aIvWZ68kJ5VSXl1rvbML622W5LwkL13G402TvKD1eVcp5cO11s91uiYAAAAAAAAAAAx0QzakVEoZkeSCJC9q3boryTeS3JpkbJKjk0xMsluSn5ZSXlBrndXBej1Jfppkj9atx5J8O8mfksxMslWSVybZM8mIJJ8tpTxaa/3Kmq7J4LFgwYIc8Pydc//f/pqNN9k0P7/yxjxtxIgVvnPNNddk9913T5IccsghOffccxc/u/POO/OjH/0oV1xxRa699trcc889eeKJJ7LRRhtlxx13zMtf/vKceOKJGT169Cr1N3/+/Jx11ln57//+71x55ZWZMWNG5s+fn8033zw777xz9t1337zhDW/I5ptvvto/eyklSfKSl7wkl19++Sq9c+aZZ+aMM87IDTfckJkzZ2aLLbbIPvvsk3e+853ZcccdV7sHAAAAAACg/0yaOqmRutcdeV0jdQGAZgzZkFKSk7IkoHRNkn1qrTMXPSylfDnJtCT7J9kxyYeT/FsH6x2eJQGlu5K8qNY6fak5nyulHJfesFSSnFJK+UatdX4H6zIIDB8+PK8+7E35+pc+l5kPPZhLL74w+7/y1St857TTTls8Pv744xePL7/88uy1116ptT7lnRkzZuSKK67IFVdckc9//vP54Q9/mD333HOF61x11VU57LDD8pe//OUpz+6+++7cfffd+clPfpILLrggl1122cp+1I488cQTefWrX51p06Y96f706dNz+umn5zvf+U6+8pWv5Jhjjmm0DwAAAAAAAACgu4ZkSKm1q9EHW5c1yRHtAaUkqbU+Vko5IsltSUYmeWsp5TO11gfXcNn928afWUZAadG6p5VSTkiye5LN0rubk5j3WuC1bzgi3/yvz2fBggX54dnfXmFIae7cuTnrrLOSJNtss0322mvJiYWPPfZYaq15znOek5e97GWZOHFiNt100zz22GO56667Mm3atFx99dWZMWNG/vmf/zl//OMfM378+GWu8+tf/zr77bdf5s2blyR51rOelUMOOSQTJ07MOuusk7/+9a/53e9+lwsvvHCZoahue+9735tp06Zl6623ztFHH53tt98+Dz30UKZNm5af/exneeKJJ3LcccdlzJgxedWrXtV4PwAAAAAAAABAdwzJkFKSvZKMaY0vqbXesKxJtdb7SynnJDkmyTpJDkryrTVcs/0crFtWMvfm9IaUkt6AFGuBpz9jy+z5sn1zxS8uyu9+fUXuvnN6xo7beplzzz333Mya1Xv64LHHHrv4yLQkmThxYq699tpMmrTsrVE/9KEP5eyzz86b3vSmPPLIIznllFNyxhlnPGXeI488kkMOOWRxQOk973lPPvnJT6an56l/LMydOze/+tWvVvtnXl3Tpk3Ly172svzoRz/KBhtssPj+SSedlC9/+ct561vfmlprTjjhhOy1115PmgMAAAAAAAAADFzD+ruBhuzXNr5oJXPbnx/QwZr3tY23W8ncRc8XpDewxFri9W8+KklSa820c76z3Hnf/OY3kyQ9PT056qijnvRs6623Xm5AaZHDDz88b3rTm5L0Bp7+/ve/P2XOqaeemnvvvXfx/M9+9rPLDCglyfrrr5/9999/mc+6afTo0TnnnHOWGT7613/91xx66KFJkr/97W8588wzG+8HAAAAAAAAAOiOoRpS2qltfPVK5l61nPdW1wVt4/eVUpa5RU4p5bgke7Quv1NrfaiDNRlkXvjSffLMsVslSaZ976wsWLDgKXNuvPHG/OY3v0mSvPKVr8wWW2yxRmv90z/9U5Jk3rx5ufbaa5/yfFHIZ9iwYfnEJz6xRmt025ve9KZsvvnmy33+rne9a/H4/PPP74uWAAAAAAAAAIAuGKohpWe3je9Yydy707ujUZJsV9rP1Vo9P0iyKDWxVZI/l1K+Xko5qZRyWCnl30opv0ryjdac85O8dQ3XYpAaNmxYXnP4EUmSGffdm19dcvFT5px22mmLx8cdd9xya/3ud7/LW9/61jz3uc/NpptumhEjRqSUsvhz4oknLp579913P+ndhx56KDfeeGOSZKeddso222zT0c/VLXvvvfcKn++xxx7ZcMMNkyRXXnllX7QEAAAAAAAAAHTBUA0pbdQ2fmBFE2ut85PMal32JBm5JgvWWmuS1yf5VJLZSdZNcnySryQ5O8nnkuyZ5Jok/5zktbXWR9dkLQa3Vx/25sXHqv3w7Ccf+fbE44/nO9/pvTdu3LhlHrH2xBNP5Igjjsjzn//8fPnLX85VV12Vhx56aJlHui0ya9asJ13fc889i8cTJ05c45+l27bddtsVPi+lLA5UPfTQQ3n88cf7oi0AAAAAAAAAoEM9/d1AQzZoGz+2CvPnJdm4NR6VZI3CQ7XWBaWUf08yM8knkqyzjGm7JXlfa85v1mQdBrfNNn96XrrfK/KLn/wov77s57nv3r/m6c94ZpLkkot+nAcffDBJcvTRR2fYsKfmCP/lX/5lcZBpnXXWySte8Yo897nPzZZbbpmRI0dm+PDhSZJLL700//Vf/5UkTzlWrj20tMEGG2SgWH/99Vc6Z+TIJTnCRx99NOuss6zfZgAAAAAAAADAQDJUQ0r9opRyQJJzkoxOcnmSTyf5XXpDUOPSu9PSB9O7o9IlpZTDaq0XrKDe8endjSnjxo1rtHf61uvfdFR+8ZMfZcGCBbnge2fl+Le/O0nyw7O/nSQZPnx4jj766Ke8d8cdd+T0009PkowdOzZXXHHFco9qa98taWmLjkxLeoM+A8XcuXNXOmfOnDmLxwMpYAUAAAAAAAAALN9QDSk9miU7I62ble+MtF7bePaaLNgKKF2Y3iP0vp/k0FrrwrYptyb5dCnlkiS/bPX1nVLKs2utf1tWzVrrN5J8I0n22GOPuiZ9MTA9b8+XZNz4bXLnHbdl2ve+m+Pe9q7cc+f0XPmbXyVJDjjggGy11VZPee/SSy9N78mCyfve977lBpSSZPr06ct9tuWWW6aUklprbrrppg5/mu659dZbM2nSpOU+r7XmtttuS5JssskmdlECAAAAABgCJk1d/v8v3InrjryukboAAKyZp54lNTQ83DbebEUTSyk9SRZtK/P3JHNWMH1FPp/ef54Lk7x9qYDSYrXW3yeZ0roclWTyGq7HIFZKyWvfeGSS5J47p+e3v7o8Pzz724sDSMcdd9wy37vvvvsWj5/1rGetcI2LL754uc822WST7LjjjkmS66+/PrfffvvqtN+YSy+9dIXPr7766sVH1T33uc/ti5YAAAAAAAAAgC4Yqjsp3ZxkQms8PskdK5g7Nsnw1vjWuiglshpKKROS7Ni6vLHW+teVvPKLJCe0xv+4uusxNBx0yBtz6n98Kk88/ni+951v5bprrkqSPOMZz8iBBx64zHfWX3/9xeO//OUvy619wQUX5Nprr13h+m9605vy/ve/PwsXLswHP/jBnHXWWWvwU3TXd7/73XzkIx/JmDFjlvn8C1/4wuLxa17zmr5qCwAAABjEmt6d46YdJjZSf+KfB87u1wOdHVgAAAAGh6G6k9L1bePdVzJ3j+W8tzqe2TaetQrzH2kbj1zDNRnkNt5k0+zz8lcmSS696MeZcX/vqX9HHXVUenqWnR9s3z3oP/7jPzJz5synzPnd736Xo48+eqXrn3TSSXnmM3v/p3v22Wfnve99b+bPn7/MufPmzcvPfvazldbs1MMPP5zDDz88c+Y8dUOzr33tazn77LOTJFtssUXe8IY3NN4PAAAAAAAAANAdQ3UnpYuTvKs13j+9R7EtzwFt44vWcL32YNJWqzB/67bxg2u4JkPA6944OT+Z9v3F16WUHHvsscud/4IXvCC77757rr766txxxx3ZYYcdcuKJJ2b77bfPvHnzcumll+bcc89NkrzxjW/MmWeeudxao0ePzrnnnpt99903jz32WD73uc/lBz/4QQ499NBMnDgxI0aMyN/+9rdceeWV+fGPf5xddtkl++23X/d++GU4+OCDM23atOy000455phjst122+Xhhx/O+eefv/j4ulJKvv71r2eDDTZotBcAAAAAAAAAoHuGakjpsiQzkoxJsk8p5Tm11huWnlRK2TzJYa3Lx5JcsIbr3dp6f90kW5VS/qnW+psVzD+sbXzVGq7JELD781+YbbbbPrfd8n9Jkuft+dJMmDBhufNLKTnnnHOy11575a677sr999+fj33sY0+as+666+bUU0/NsGHDVhhS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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "if __name__ == \"__main__\": \n", + " fig, ax = plt.subplots(figsize=(40, 10))\n", + " bar_plot(ax, rows, total_width=.8, single_width=.9, legend_prop={'size': 30})\n", + " ax.set_ylabel(\"Time ratio\", fontsize='40')\n", + " ax.tick_params(direction='out', labelsize='30')\n", + " plt.show()" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.7" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/script/shit/utils/results.csv b/script/shit/utils/results.csv new file mode 100644 index 0000000..5a46e90 --- /dev/null +++ b/script/shit/utils/results.csv @@ -0,0 +1,54 @@ +name, time, cpu, iterations +STLConstantFuture, 511 ns, 510 ns, 1312484 +YACLibConstantFuture, 32.0 ns, 31.9 ns, 22096915 +FollyConstantFuture, 28.3 ns, 28.3 ns, 25076414 +QtConstantFuture, 30.3 ns, 30.2 ns, 24063211 +STLPromiseAndFuture, 528 ns, 528 ns, 1309909 +YACLibPromiseAndFuture, 62.2 ns, 62.1 ns, 10973978 +FollyPromiseAndFuture, 64.9 ns, 64.9 ns, 10741754 +QtPromiseAndFuture, 69 ns, 69 ns, 10832945 +YACLibOneThen, 147 ns, 147 ns, 4785874 +FollyOneThen, 172 ns, 172 ns, 4108779 +QtOneThen, 170 ns, 170 ns, 4490234 +YACLibTwoThen, 236 ns, 236 ns, 2990642 +FollyTwoThen, 296 ns, 296 ns, 2349923 +QtTwoThen, 300 ns, 300 ns, 2349923 +YACLibFourThen, 415 ns, 415 ns, 1693791 +FollyFourThen, 558 ns, 558 ns, 1244561 +QtFourThen, 600 ns, 600 ns, 1693791 +YACLibHundredThen, 8725 ns, 8709 ns, 79019 +FollyHundredThen, 12542 ns, 12503 ns, 56253 +QtHundredThen, 9000 ns, 9000 ns, 56253 +YACLibFourThenOnThread, 27789 ns, 18837 ns, 37001 +FollyFourThenOnThread, 30961 ns, 20014 ns, 34970 +QtFourThenOnThread, 30321 ns, 24912 ns, 36924 +YACLibFourThenOnThreadInline, 27312 ns, 18980 ns, 37703 +FollyFourThenOnThreadInline, 34727 ns, 22842 ns, 34598 +QtFourThenOnThreadInline, 36656 ns, 22842 ns, 34598 +YACLibHundredThenOnThread, 53120 ns, 36885 ns, 18914 +FollyHundredThenOnThread, 75488 ns, 52666 ns, 13471 +QtHundredThenOnThread, 80023 ns, 52666 ns, 13471 +YACLibHundredThenOnThreadInline, 43156 ns, 33789 ns, 20653 +FollyHundredThenOnThreadInline, 54391 ns, 34591 ns, 20284 +QtHundredThenOnThreadInline, 43203 ns, 30342 ns, 20284 +YACLibComplexUnit, 39182 ns, 39157 ns, 17977 +FollyComplexUnit, 49353 ns, 49318 ns, 14191 +QtComplexUnit, 44012 ns, 42012 ns, 14191 +YACLibComplexBlob4, 38641 ns, 38621 ns, 18098 +FollyComplexBlob4, 48809 ns, 48778 ns, 14379 +QtComplexBlob4, 58034 ns, 48778 ns, 14379 +YACLibComplexBlob8, 38387 ns, 38269 ns, 17942 +FollyComplexBlob8, 48119 ns, 48092 ns, 14557 +QtComplexBlob8, 47123 ns, 48092 ns, 14557 +YACLibComplexBlob64, 40176 ns, 40153 ns, 17654 +FollyComplexBlob64, 42885 ns, 42851 ns, 17041 +QtComplexBlob64, 49231 ns, 42851 ns, 17041 +YACLibComplexBlob128, 41073 ns, 41014 ns, 17024 +FollyComplexBlob128, 42016 ns, 41978 ns, 16553 +QtComplexBlob128, 44512 ns, 41978 ns, 16553 +YACLibNoContention, 1623865 ns, 684637 ns, 1027 +FollyNoContention, 2917857 ns, 899710 ns, 775 +QtNoContention, 3214920 ns, 142923 ns, 775 +YACLibContention, 3337525 ns, 661014 ns, 1107 +FollyContention, 5953766 ns, 956817 ns, 732 +QtContention, 4023142 ns, 3123021 ns, 732 diff --git a/script/shit/utils/results.png b/script/shit/utils/results.png new file mode 100644 index 0000000..025c69e Binary files /dev/null and b/script/shit/utils/results.png differ diff --git a/util/bench.hpp b/util/bench.hpp index 25aa09f..5480873 100644 --- a/util/bench.hpp +++ b/util/bench.hpp @@ -6,11 +6,11 @@ #define BENCH2(name, library, arg) \ BENCHMARK_PRIVATE_DECLARE(name) = (::benchmark::internal::RegisterBenchmarkInternal( \ - new ::benchmark::internal::FunctionBenchmark(#name "(" #library ")/" #arg, name))) + new ::benchmark::internal::FunctionBenchmark(#name "/" #library "/" #arg, name))) #define BENCH1(name, library) \ BENCHMARK_PRIVATE_DECLARE(name) = (::benchmark::internal::RegisterBenchmarkInternal( \ - new ::benchmark::internal::FunctionBenchmark(#name "(" #library ")", name))) + new ::benchmark::internal::FunctionBenchmark(#name "/" #library, name))) #define GET_MACRO(_1, _2, _3, NAME, ...) NAME