Merge branch 'elliot/final' into 'main'

Coup de grâce

See merge request course-asl-fastcode26/team70!83
This commit is contained in:
Ahmed Kallala
2026-06-19 12:10:27 +02:00
5 changed files with 165 additions and 200 deletions
BIN
View File
Binary file not shown.
+4
View File
@@ -10,6 +10,10 @@ This repository contains the C++ simulation code and Python visualization code u
---
## Results
The logs of our benchmarks are stored inside the [`measurements`](./measurements/) folder. However, the log files contain incorrect flop counts since our benchmarking code assumed the same baseline flop count for all versions. Thus, we manually recalculated the flop count for each version and created helper functions for the correct flop counts inside the [`flopcounts`](./flopcounts/) folder. **The final, correct results are stored inside [`analysis/results_x86.csv`](./analysis/results_x86.csv).** [`variant_inlining_8.cpp`](./variants/variant_inlining_8.cpp) is our best non-vectorized version, while [`variant_float_inlining_SoA_AVX512_polyexp_moreavx_ilp_2_rsqrt_morersqrt_improved_moreilp.cpp`](./variants/variant_float_inlining_SoA_AVX512_polyexp_moreavx_ilp_2_rsqrt_morersqrt_improved_moreilp.cpp) is our best vectorized version. The measurements for the best non-vectorized version compiled with flags specifically disabling vectorization are stored at [`4.log`](./measurements/variant_inlining_8/x86/4.log), [`5.log`](./measurements/variant_inlining_8/x86/5.log), and [`6.log`](measurements/variant_inlining_8/x86/6.log). Additionally, the markdown files we have inside [`docs`](./docs/) are outdated and incomplete. Thus, **the final report [`70_report.pdf`](./70_report.pdf) should be used as the sole reference for all of our optimizations**.
## Requirements
The project uses a `Makefile` to simplify building, running, benchmarking, testing, and visualization.
+153 -192
View File
@@ -6,7 +6,7 @@
<rdf:RDF xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<cc:Work>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
<dc:date>2026-06-18T21:57:12.920540</dc:date>
<dc:date>2026-06-19T11:15:04.027171</dc:date>
<dc:format>image/svg+xml</dc:format>
<dc:creator>
<cc:Agent>
@@ -42,16 +42,16 @@ z
<g id="line2d_1">
<path d="M 43.606303 451.639937
L 43.606303 108.063937
" clip-path="url(#pebc89ec65d)" style="fill: none; stroke: #e9e9e9; stroke-width: 0.8; stroke-linecap: square"/>
" clip-path="url(#pd0f93302fb)" style="fill: none; stroke: #e9e9e9; stroke-width: 0.8; stroke-linecap: square"/>
</g>
<g id="line2d_2">
<defs>
<path id="m09a17a3df8" d="M 0 0
<path id="m45566cf189" d="M 0 0
L 0 3.5
" style="stroke: #000000; stroke-width: 0.8"/>
</defs>
<g>
<use xlink:href="#m09a17a3df8" x="43.606303" y="451.639937" style="stroke: #000000; stroke-width: 0.8"/>
<use xlink:href="#m45566cf189" x="43.606303" y="451.639937" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_1">
@@ -114,11 +114,11 @@ z
<g id="line2d_3">
<path d="M 126.107578 451.639937
L 126.107578 108.063937
" clip-path="url(#pebc89ec65d)" style="fill: none; stroke: #e9e9e9; stroke-width: 0.8; stroke-linecap: square"/>
" clip-path="url(#pd0f93302fb)" style="fill: none; stroke: #e9e9e9; stroke-width: 0.8; stroke-linecap: square"/>
</g>
<g id="line2d_4">
<g>
<use xlink:href="#m09a17a3df8" x="126.107578" y="451.639937" style="stroke: #000000; stroke-width: 0.8"/>
<use xlink:href="#m45566cf189" x="126.107578" y="451.639937" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_2">
@@ -150,11 +150,11 @@ z
<g id="line2d_5">
<path d="M 208.608852 451.639937
L 208.608852 108.063937
" clip-path="url(#pebc89ec65d)" style="fill: none; stroke: #e9e9e9; stroke-width: 0.8; stroke-linecap: square"/>
" clip-path="url(#pd0f93302fb)" style="fill: none; stroke: #e9e9e9; stroke-width: 0.8; stroke-linecap: square"/>
</g>
<g id="line2d_6">
<g>
<use xlink:href="#m09a17a3df8" x="208.608852" y="451.639937" style="stroke: #000000; stroke-width: 0.8"/>
<use xlink:href="#m45566cf189" x="208.608852" y="451.639937" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_3">
@@ -194,11 +194,11 @@ z
<g id="line2d_7">
<path d="M 317.669606 451.639937
L 317.669606 108.063937
" clip-path="url(#pebc89ec65d)" style="fill: none; stroke: #e9e9e9; stroke-width: 0.8; stroke-linecap: square"/>
" clip-path="url(#pd0f93302fb)" style="fill: none; stroke: #e9e9e9; stroke-width: 0.8; stroke-linecap: square"/>
</g>
<g id="line2d_8">
<g>
<use xlink:href="#m09a17a3df8" x="317.669606" y="451.639937" style="stroke: #000000; stroke-width: 0.8"/>
<use xlink:href="#m45566cf189" x="317.669606" y="451.639937" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_4">
@@ -214,11 +214,11 @@ L 317.669606 108.063937
<g id="line2d_9">
<path d="M 400.170881 451.639937
L 400.170881 108.063937
" clip-path="url(#pebc89ec65d)" style="fill: none; stroke: #e9e9e9; stroke-width: 0.8; stroke-linecap: square"/>
" clip-path="url(#pd0f93302fb)" style="fill: none; stroke: #e9e9e9; stroke-width: 0.8; stroke-linecap: square"/>
</g>
<g id="line2d_10">
<g>
<use xlink:href="#m09a17a3df8" x="400.170881" y="451.639937" style="stroke: #000000; stroke-width: 0.8"/>
<use xlink:href="#m45566cf189" x="400.170881" y="451.639937" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_5">
@@ -249,11 +249,11 @@ z
<g id="line2d_11">
<path d="M 482.672155 451.639937
L 482.672155 108.063937
" clip-path="url(#pebc89ec65d)" style="fill: none; stroke: #e9e9e9; stroke-width: 0.8; stroke-linecap: square"/>
" clip-path="url(#pd0f93302fb)" style="fill: none; stroke: #e9e9e9; stroke-width: 0.8; stroke-linecap: square"/>
</g>
<g id="line2d_12">
<g>
<use xlink:href="#m09a17a3df8" x="482.672155" y="451.639937" style="stroke: #000000; stroke-width: 0.8"/>
<use xlink:href="#m45566cf189" x="482.672155" y="451.639937" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_6">
@@ -268,11 +268,11 @@ L 482.672155 108.063937
<g id="line2d_13">
<path d="M 591.732909 451.639937
L 591.732909 108.063937
" clip-path="url(#pebc89ec65d)" style="fill: none; stroke: #e9e9e9; stroke-width: 0.8; stroke-linecap: square"/>
" clip-path="url(#pd0f93302fb)" style="fill: none; stroke: #e9e9e9; stroke-width: 0.8; stroke-linecap: square"/>
</g>
<g id="line2d_14">
<g>
<use xlink:href="#m09a17a3df8" x="591.732909" y="451.639937" style="stroke: #000000; stroke-width: 0.8"/>
<use xlink:href="#m45566cf189" x="591.732909" y="451.639937" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_7">
@@ -287,11 +287,11 @@ L 591.732909 108.063937
<g id="line2d_15">
<path d="M 674.234184 451.639937
L 674.234184 108.063937
" clip-path="url(#pebc89ec65d)" style="fill: none; stroke: #e9e9e9; stroke-width: 0.8; stroke-linecap: square"/>
" clip-path="url(#pd0f93302fb)" style="fill: none; stroke: #e9e9e9; stroke-width: 0.8; stroke-linecap: square"/>
</g>
<g id="line2d_16">
<g>
<use xlink:href="#m09a17a3df8" x="674.234184" y="451.639937" style="stroke: #000000; stroke-width: 0.8"/>
<use xlink:href="#m45566cf189" x="674.234184" y="451.639937" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_8">
@@ -306,117 +306,117 @@ L 674.234184 108.063937
<g id="xtick_9">
<g id="line2d_17">
<defs>
<path id="m3b84211f57" d="M 0 0
<path id="m1440eac082" d="M 0 0
L 0 2
" style="stroke: #000000; stroke-width: 0.6"/>
</defs>
<g>
<use xlink:href="#m3b84211f57" x="65.306976" y="451.639937" style="stroke: #000000; stroke-width: 0.6"/>
<use xlink:href="#m1440eac082" x="65.306976" y="451.639937" style="stroke: #000000; stroke-width: 0.6"/>
</g>
</g>
</g>
<g id="xtick_10">
<g id="line2d_18">
<g>
<use xlink:href="#m3b84211f57" x="83.654635" y="451.639937" style="stroke: #000000; stroke-width: 0.6"/>
<use xlink:href="#m1440eac082" x="83.654635" y="451.639937" style="stroke: #000000; stroke-width: 0.6"/>
</g>
</g>
</g>
<g id="xtick_11">
<g id="line2d_19">
<g>
<use xlink:href="#m3b84211f57" x="99.548099" y="451.639937" style="stroke: #000000; stroke-width: 0.6"/>
<use xlink:href="#m1440eac082" x="99.548099" y="451.639937" style="stroke: #000000; stroke-width: 0.6"/>
</g>
</g>
</g>
<g id="xtick_12">
<g id="line2d_20">
<g>
<use xlink:href="#m3b84211f57" x="113.567129" y="451.639937" style="stroke: #000000; stroke-width: 0.6"/>
<use xlink:href="#m1440eac082" x="113.567129" y="451.639937" style="stroke: #000000; stroke-width: 0.6"/>
</g>
</g>
</g>
<g id="xtick_13">
<g id="line2d_21">
<g>
<use xlink:href="#m3b84211f57" x="256.869005" y="451.639937" style="stroke: #000000; stroke-width: 0.6"/>
<use xlink:href="#m1440eac082" x="256.869005" y="451.639937" style="stroke: #000000; stroke-width: 0.6"/>
</g>
</g>
</g>
<g id="xtick_14">
<g id="line2d_22">
<g>
<use xlink:href="#m3b84211f57" x="291.110127" y="451.639937" style="stroke: #000000; stroke-width: 0.6"/>
<use xlink:href="#m1440eac082" x="291.110127" y="451.639937" style="stroke: #000000; stroke-width: 0.6"/>
</g>
</g>
</g>
<g id="xtick_15">
<g id="line2d_23">
<g>
<use xlink:href="#m3b84211f57" x="339.370279" y="451.639937" style="stroke: #000000; stroke-width: 0.6"/>
<use xlink:href="#m1440eac082" x="339.370279" y="451.639937" style="stroke: #000000; stroke-width: 0.6"/>
</g>
</g>
</g>
<g id="xtick_16">
<g id="line2d_24">
<g>
<use xlink:href="#m3b84211f57" x="357.717938" y="451.639937" style="stroke: #000000; stroke-width: 0.6"/>
<use xlink:href="#m1440eac082" x="357.717938" y="451.639937" style="stroke: #000000; stroke-width: 0.6"/>
</g>
</g>
</g>
<g id="xtick_17">
<g id="line2d_25">
<g>
<use xlink:href="#m3b84211f57" x="373.611402" y="451.639937" style="stroke: #000000; stroke-width: 0.6"/>
<use xlink:href="#m1440eac082" x="373.611402" y="451.639937" style="stroke: #000000; stroke-width: 0.6"/>
</g>
</g>
</g>
<g id="xtick_18">
<g id="line2d_26">
<g>
<use xlink:href="#m3b84211f57" x="387.630432" y="451.639937" style="stroke: #000000; stroke-width: 0.6"/>
<use xlink:href="#m1440eac082" x="387.630432" y="451.639937" style="stroke: #000000; stroke-width: 0.6"/>
</g>
</g>
</g>
<g id="xtick_19">
<g id="line2d_27">
<g>
<use xlink:href="#m3b84211f57" x="530.932308" y="451.639937" style="stroke: #000000; stroke-width: 0.6"/>
<use xlink:href="#m1440eac082" x="530.932308" y="451.639937" style="stroke: #000000; stroke-width: 0.6"/>
</g>
</g>
</g>
<g id="xtick_20">
<g id="line2d_28">
<g>
<use xlink:href="#m3b84211f57" x="565.17343" y="451.639937" style="stroke: #000000; stroke-width: 0.6"/>
<use xlink:href="#m1440eac082" x="565.17343" y="451.639937" style="stroke: #000000; stroke-width: 0.6"/>
</g>
</g>
</g>
<g id="xtick_21">
<g id="line2d_29">
<g>
<use xlink:href="#m3b84211f57" x="613.433582" y="451.639937" style="stroke: #000000; stroke-width: 0.6"/>
<use xlink:href="#m1440eac082" x="613.433582" y="451.639937" style="stroke: #000000; stroke-width: 0.6"/>
</g>
</g>
</g>
<g id="xtick_22">
<g id="line2d_30">
<g>
<use xlink:href="#m3b84211f57" x="631.781241" y="451.639937" style="stroke: #000000; stroke-width: 0.6"/>
<use xlink:href="#m1440eac082" x="631.781241" y="451.639937" style="stroke: #000000; stroke-width: 0.6"/>
</g>
</g>
</g>
<g id="xtick_23">
<g id="line2d_31">
<g>
<use xlink:href="#m3b84211f57" x="647.674705" y="451.639937" style="stroke: #000000; stroke-width: 0.6"/>
<use xlink:href="#m1440eac082" x="647.674705" y="451.639937" style="stroke: #000000; stroke-width: 0.6"/>
</g>
</g>
</g>
<g id="xtick_24">
<g id="line2d_32">
<g>
<use xlink:href="#m3b84211f57" x="661.693735" y="451.639937" style="stroke: #000000; stroke-width: 0.6"/>
<use xlink:href="#m1440eac082" x="661.693735" y="451.639937" style="stroke: #000000; stroke-width: 0.6"/>
</g>
</g>
</g>
@@ -800,16 +800,16 @@ z
<g id="line2d_33">
<path d="M 33.681875 451.639937
L 705.461875 451.639937
" clip-path="url(#pebc89ec65d)" style="fill: none; stroke: #e9e9e9; stroke-width: 0.8; stroke-linecap: square"/>
" clip-path="url(#pd0f93302fb)" style="fill: none; stroke: #e9e9e9; stroke-width: 0.8; stroke-linecap: square"/>
</g>
<g id="line2d_34">
<defs>
<path id="m999e462eec" d="M 0 0
<path id="m25f6310ce8" d="M 0 0
L -3.5 0
" style="stroke: #000000; stroke-width: 0.8"/>
</defs>
<g>
<use xlink:href="#m999e462eec" x="33.681875" y="451.639937" style="stroke: #000000; stroke-width: 0.8"/>
<use xlink:href="#m25f6310ce8" x="33.681875" y="451.639937" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_10">
@@ -823,11 +823,11 @@ L -3.5 0
<g id="line2d_35">
<path d="M 33.681875 394.377271
L 705.461875 394.377271
" clip-path="url(#pebc89ec65d)" style="fill: none; stroke: #e9e9e9; stroke-width: 0.8; stroke-linecap: square"/>
" clip-path="url(#pd0f93302fb)" style="fill: none; stroke: #e9e9e9; stroke-width: 0.8; stroke-linecap: square"/>
</g>
<g id="line2d_36">
<g>
<use xlink:href="#m999e462eec" x="33.681875" y="394.377271" style="stroke: #000000; stroke-width: 0.8"/>
<use xlink:href="#m25f6310ce8" x="33.681875" y="394.377271" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_11">
@@ -841,11 +841,11 @@ L 705.461875 394.377271
<g id="line2d_37">
<path d="M 33.681875 337.114604
L 705.461875 337.114604
" clip-path="url(#pebc89ec65d)" style="fill: none; stroke: #e9e9e9; stroke-width: 0.8; stroke-linecap: square"/>
" clip-path="url(#pd0f93302fb)" style="fill: none; stroke: #e9e9e9; stroke-width: 0.8; stroke-linecap: square"/>
</g>
<g id="line2d_38">
<g>
<use xlink:href="#m999e462eec" x="33.681875" y="337.114604" style="stroke: #000000; stroke-width: 0.8"/>
<use xlink:href="#m25f6310ce8" x="33.681875" y="337.114604" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_12">
@@ -860,11 +860,11 @@ L 705.461875 337.114604
<g id="line2d_39">
<path d="M 33.681875 279.851937
L 705.461875 279.851937
" clip-path="url(#pebc89ec65d)" style="fill: none; stroke: #e9e9e9; stroke-width: 0.8; stroke-linecap: square"/>
" clip-path="url(#pd0f93302fb)" style="fill: none; stroke: #e9e9e9; stroke-width: 0.8; stroke-linecap: square"/>
</g>
<g id="line2d_40">
<g>
<use xlink:href="#m999e462eec" x="33.681875" y="279.851937" style="stroke: #000000; stroke-width: 0.8"/>
<use xlink:href="#m25f6310ce8" x="33.681875" y="279.851937" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_13">
@@ -879,11 +879,11 @@ L 705.461875 279.851937
<g id="line2d_41">
<path d="M 33.681875 222.589271
L 705.461875 222.589271
" clip-path="url(#pebc89ec65d)" style="fill: none; stroke: #e9e9e9; stroke-width: 0.8; stroke-linecap: square"/>
" clip-path="url(#pd0f93302fb)" style="fill: none; stroke: #e9e9e9; stroke-width: 0.8; stroke-linecap: square"/>
</g>
<g id="line2d_42">
<g>
<use xlink:href="#m999e462eec" x="33.681875" y="222.589271" style="stroke: #000000; stroke-width: 0.8"/>
<use xlink:href="#m25f6310ce8" x="33.681875" y="222.589271" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_14">
@@ -898,11 +898,11 @@ L 705.461875 222.589271
<g id="line2d_43">
<path d="M 33.681875 165.326604
L 705.461875 165.326604
" clip-path="url(#pebc89ec65d)" style="fill: none; stroke: #e9e9e9; stroke-width: 0.8; stroke-linecap: square"/>
" clip-path="url(#pd0f93302fb)" style="fill: none; stroke: #e9e9e9; stroke-width: 0.8; stroke-linecap: square"/>
</g>
<g id="line2d_44">
<g>
<use xlink:href="#m999e462eec" x="33.681875" y="165.326604" style="stroke: #000000; stroke-width: 0.8"/>
<use xlink:href="#m25f6310ce8" x="33.681875" y="165.326604" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_15">
@@ -917,11 +917,11 @@ L 705.461875 165.326604
<g id="line2d_45">
<path d="M 33.681875 108.063937
L 705.461875 108.063937
" clip-path="url(#pebc89ec65d)" style="fill: none; stroke: #e9e9e9; stroke-width: 0.8; stroke-linecap: square"/>
" clip-path="url(#pd0f93302fb)" style="fill: none; stroke: #e9e9e9; stroke-width: 0.8; stroke-linecap: square"/>
</g>
<g id="line2d_46">
<g>
<use xlink:href="#m999e462eec" x="33.681875" y="108.063937" style="stroke: #000000; stroke-width: 0.8"/>
<use xlink:href="#m25f6310ce8" x="33.681875" y="108.063937" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_16">
@@ -975,9 +975,9 @@ L 317.669606 436.923432
L 400.170881 437.129578
L 482.672155 437.427344
L 591.732909 438.458072
" clip-path="url(#pebc89ec65d)" style="fill: none; stroke: #7a7a7a; stroke-width: 1.8; stroke-linecap: square"/>
" clip-path="url(#pd0f93302fb)" style="fill: none; stroke: #7a7a7a; stroke-width: 1.8; stroke-linecap: square"/>
<defs>
<path id="mda9628b737" d="M 0 2
<path id="m674058da24" d="M 0 2
C 0.530406 2 1.03916 1.789267 1.414214 1.414214
C 1.789267 1.03916 2 0.530406 2 0
C 2 -0.530406 1.789267 -1.03916 1.414214 -1.414214
@@ -989,14 +989,14 @@ C -1.03916 1.789267 -0.530406 2 0 2
z
" style="stroke: #7a7a7a"/>
</defs>
<g clip-path="url(#pebc89ec65d)">
<use xlink:href="#mda9628b737" x="43.606303" y="436.316448" style="fill: #7a7a7a; stroke: #7a7a7a"/>
<use xlink:href="#mda9628b737" x="126.107578" y="436.293543" style="fill: #7a7a7a; stroke: #7a7a7a"/>
<use xlink:href="#mda9628b737" x="208.608852" y="436.408068" style="fill: #7a7a7a; stroke: #7a7a7a"/>
<use xlink:href="#mda9628b737" x="317.669606" y="436.923432" style="fill: #7a7a7a; stroke: #7a7a7a"/>
<use xlink:href="#mda9628b737" x="400.170881" y="437.129578" style="fill: #7a7a7a; stroke: #7a7a7a"/>
<use xlink:href="#mda9628b737" x="482.672155" y="437.427344" style="fill: #7a7a7a; stroke: #7a7a7a"/>
<use xlink:href="#mda9628b737" x="591.732909" y="438.458072" style="fill: #7a7a7a; stroke: #7a7a7a"/>
<g clip-path="url(#pd0f93302fb)">
<use xlink:href="#m674058da24" x="43.606303" y="436.316448" style="fill: #7a7a7a; stroke: #7a7a7a"/>
<use xlink:href="#m674058da24" x="126.107578" y="436.293543" style="fill: #7a7a7a; stroke: #7a7a7a"/>
<use xlink:href="#m674058da24" x="208.608852" y="436.408068" style="fill: #7a7a7a; stroke: #7a7a7a"/>
<use xlink:href="#m674058da24" x="317.669606" y="436.923432" style="fill: #7a7a7a; stroke: #7a7a7a"/>
<use xlink:href="#m674058da24" x="400.170881" y="437.129578" style="fill: #7a7a7a; stroke: #7a7a7a"/>
<use xlink:href="#m674058da24" x="482.672155" y="437.427344" style="fill: #7a7a7a; stroke: #7a7a7a"/>
<use xlink:href="#m674058da24" x="591.732909" y="438.458072" style="fill: #7a7a7a; stroke: #7a7a7a"/>
</g>
</g>
<g id="line2d_48">
@@ -1008,9 +1008,9 @@ L 400.170881 400.664712
L 482.672155 400.057727
L 591.732909 399.656889
L 674.234184 401.443484
" clip-path="url(#pebc89ec65d)" style="fill: none; stroke: #4f86d6; stroke-width: 1.8; stroke-linecap: square"/>
" clip-path="url(#pd0f93302fb)" style="fill: none; stroke: #4f86d6; stroke-width: 1.8; stroke-linecap: square"/>
<defs>
<path id="m96fa0dcfd1" d="M 0 2
<path id="m732f30a7f2" d="M 0 2
C 0.530406 2 1.03916 1.789267 1.414214 1.414214
C 1.789267 1.03916 2 0.530406 2 0
C 2 -0.530406 1.789267 -1.03916 1.414214 -1.414214
@@ -1022,15 +1022,15 @@ C -1.03916 1.789267 -0.530406 2 0 2
z
" style="stroke: #4f86d6"/>
</defs>
<g clip-path="url(#pebc89ec65d)">
<use xlink:href="#m96fa0dcfd1" x="43.606303" y="413.926745" style="fill: #4f86d6; stroke: #4f86d6"/>
<use xlink:href="#m96fa0dcfd1" x="126.107578" y="409.460257" style="fill: #4f86d6; stroke: #4f86d6"/>
<use xlink:href="#m96fa0dcfd1" x="208.608852" y="404.146282" style="fill: #4f86d6; stroke: #4f86d6"/>
<use xlink:href="#m96fa0dcfd1" x="317.669606" y="402.726168" style="fill: #4f86d6; stroke: #4f86d6"/>
<use xlink:href="#m96fa0dcfd1" x="400.170881" y="400.664712" style="fill: #4f86d6; stroke: #4f86d6"/>
<use xlink:href="#m96fa0dcfd1" x="482.672155" y="400.057727" style="fill: #4f86d6; stroke: #4f86d6"/>
<use xlink:href="#m96fa0dcfd1" x="591.732909" y="399.656889" style="fill: #4f86d6; stroke: #4f86d6"/>
<use xlink:href="#m96fa0dcfd1" x="674.234184" y="401.443484" style="fill: #4f86d6; stroke: #4f86d6"/>
<g clip-path="url(#pd0f93302fb)">
<use xlink:href="#m732f30a7f2" x="43.606303" y="413.926745" style="fill: #4f86d6; stroke: #4f86d6"/>
<use xlink:href="#m732f30a7f2" x="126.107578" y="409.460257" style="fill: #4f86d6; stroke: #4f86d6"/>
<use xlink:href="#m732f30a7f2" x="208.608852" y="404.146282" style="fill: #4f86d6; stroke: #4f86d6"/>
<use xlink:href="#m732f30a7f2" x="317.669606" y="402.726168" style="fill: #4f86d6; stroke: #4f86d6"/>
<use xlink:href="#m732f30a7f2" x="400.170881" y="400.664712" style="fill: #4f86d6; stroke: #4f86d6"/>
<use xlink:href="#m732f30a7f2" x="482.672155" y="400.057727" style="fill: #4f86d6; stroke: #4f86d6"/>
<use xlink:href="#m732f30a7f2" x="591.732909" y="399.656889" style="fill: #4f86d6; stroke: #4f86d6"/>
<use xlink:href="#m732f30a7f2" x="674.234184" y="401.443484" style="fill: #4f86d6; stroke: #4f86d6"/>
</g>
</g>
<g id="line2d_49">
@@ -1042,9 +1042,9 @@ L 400.170881 420.397427
L 482.672155 420.259996
L 591.732909 416.29742
L 674.234184 417.041834
" clip-path="url(#pebc89ec65d)" style="fill: none; stroke-dasharray: 6.66,2.88; stroke-dashoffset: 0; stroke: #9bbbe0; stroke-width: 1.8"/>
" clip-path="url(#pd0f93302fb)" style="fill: none; stroke-dasharray: 6.66,2.88; stroke-dashoffset: 0; stroke: #9bbbe0; stroke-width: 1.8"/>
<defs>
<path id="m00696d3cb1" d="M 0 2
<path id="ma6bd3ef7b1" d="M 0 2
C 0.530406 2 1.03916 1.789267 1.414214 1.414214
C 1.789267 1.03916 2 0.530406 2 0
C 2 -0.530406 1.789267 -1.03916 1.414214 -1.414214
@@ -1056,15 +1056,15 @@ C -1.03916 1.789267 -0.530406 2 0 2
z
" style="stroke: #9bbbe0"/>
</defs>
<g clip-path="url(#pebc89ec65d)">
<use xlink:href="#m00696d3cb1" x="43.606303" y="424.806652" style="fill: #9bbbe0; stroke: #9bbbe0"/>
<use xlink:href="#m00696d3cb1" x="126.107578" y="421.932066" style="fill: #9bbbe0; stroke: #9bbbe0"/>
<use xlink:href="#m00696d3cb1" x="208.608852" y="421.107484" style="fill: #9bbbe0; stroke: #9bbbe0"/>
<use xlink:href="#m00696d3cb1" x="317.669606" y="420.660835" style="fill: #9bbbe0; stroke: #9bbbe0"/>
<use xlink:href="#m00696d3cb1" x="400.170881" y="420.397427" style="fill: #9bbbe0; stroke: #9bbbe0"/>
<use xlink:href="#m00696d3cb1" x="482.672155" y="420.259996" style="fill: #9bbbe0; stroke: #9bbbe0"/>
<use xlink:href="#m00696d3cb1" x="591.732909" y="416.29742" style="fill: #9bbbe0; stroke: #9bbbe0"/>
<use xlink:href="#m00696d3cb1" x="674.234184" y="417.041834" style="fill: #9bbbe0; stroke: #9bbbe0"/>
<g clip-path="url(#pd0f93302fb)">
<use xlink:href="#ma6bd3ef7b1" x="43.606303" y="424.806652" style="fill: #9bbbe0; stroke: #9bbbe0"/>
<use xlink:href="#ma6bd3ef7b1" x="126.107578" y="421.932066" style="fill: #9bbbe0; stroke: #9bbbe0"/>
<use xlink:href="#ma6bd3ef7b1" x="208.608852" y="421.107484" style="fill: #9bbbe0; stroke: #9bbbe0"/>
<use xlink:href="#ma6bd3ef7b1" x="317.669606" y="420.660835" style="fill: #9bbbe0; stroke: #9bbbe0"/>
<use xlink:href="#ma6bd3ef7b1" x="400.170881" y="420.397427" style="fill: #9bbbe0; stroke: #9bbbe0"/>
<use xlink:href="#ma6bd3ef7b1" x="482.672155" y="420.259996" style="fill: #9bbbe0; stroke: #9bbbe0"/>
<use xlink:href="#ma6bd3ef7b1" x="591.732909" y="416.29742" style="fill: #9bbbe0; stroke: #9bbbe0"/>
<use xlink:href="#ma6bd3ef7b1" x="674.234184" y="417.041834" style="fill: #9bbbe0; stroke: #9bbbe0"/>
</g>
</g>
<g id="line2d_50">
@@ -1076,9 +1076,9 @@ L 400.170881 383.806583
L 482.672155 383.588984
L 591.732909 383.566079
L 674.234184 383.531722
" clip-path="url(#pebc89ec65d)" style="fill: none; stroke: #2f5d9e; stroke-width: 1.8; stroke-linecap: square"/>
" clip-path="url(#pd0f93302fb)" style="fill: none; stroke: #2f5d9e; stroke-width: 1.8; stroke-linecap: square"/>
<defs>
<path id="m67678cbf0c" d="M 0 2
<path id="mbb696979fa" d="M 0 2
C 0.530406 2 1.03916 1.789267 1.414214 1.414214
C 1.789267 1.03916 2 0.530406 2 0
C 2 -0.530406 1.789267 -1.03916 1.414214 -1.414214
@@ -1090,15 +1090,15 @@ C -1.03916 1.789267 -0.530406 2 0 2
z
" style="stroke: #2f5d9e"/>
</defs>
<g clip-path="url(#pebc89ec65d)">
<use xlink:href="#m67678cbf0c" x="43.606303" y="390.781175" style="fill: #2f5d9e; stroke: #2f5d9e"/>
<use xlink:href="#m67678cbf0c" x="126.107578" y="387.620276" style="fill: #2f5d9e; stroke: #2f5d9e"/>
<use xlink:href="#m67678cbf0c" x="208.608852" y="385.661893" style="fill: #2f5d9e; stroke: #2f5d9e"/>
<use xlink:href="#m67678cbf0c" x="317.669606" y="384.74569" style="fill: #2f5d9e; stroke: #2f5d9e"/>
<use xlink:href="#m67678cbf0c" x="400.170881" y="383.806583" style="fill: #2f5d9e; stroke: #2f5d9e"/>
<use xlink:href="#m67678cbf0c" x="482.672155" y="383.588984" style="fill: #2f5d9e; stroke: #2f5d9e"/>
<use xlink:href="#m67678cbf0c" x="591.732909" y="383.566079" style="fill: #2f5d9e; stroke: #2f5d9e"/>
<use xlink:href="#m67678cbf0c" x="674.234184" y="383.531722" style="fill: #2f5d9e; stroke: #2f5d9e"/>
<g clip-path="url(#pd0f93302fb)">
<use xlink:href="#mbb696979fa" x="43.606303" y="390.781175" style="fill: #2f5d9e; stroke: #2f5d9e"/>
<use xlink:href="#mbb696979fa" x="126.107578" y="387.620276" style="fill: #2f5d9e; stroke: #2f5d9e"/>
<use xlink:href="#mbb696979fa" x="208.608852" y="385.661893" style="fill: #2f5d9e; stroke: #2f5d9e"/>
<use xlink:href="#mbb696979fa" x="317.669606" y="384.74569" style="fill: #2f5d9e; stroke: #2f5d9e"/>
<use xlink:href="#mbb696979fa" x="400.170881" y="383.806583" style="fill: #2f5d9e; stroke: #2f5d9e"/>
<use xlink:href="#mbb696979fa" x="482.672155" y="383.588984" style="fill: #2f5d9e; stroke: #2f5d9e"/>
<use xlink:href="#mbb696979fa" x="591.732909" y="383.566079" style="fill: #2f5d9e; stroke: #2f5d9e"/>
<use xlink:href="#mbb696979fa" x="674.234184" y="383.531722" style="fill: #2f5d9e; stroke: #2f5d9e"/>
</g>
</g>
<g id="line2d_51">
@@ -1110,9 +1110,9 @@ L 400.170881 353.056531
L 482.672155 352.289211
L 591.732909 352.644239
L 674.234184 351.728037
" clip-path="url(#pebc89ec65d)" style="fill: none; stroke-dasharray: 6.66,2.88; stroke-dashoffset: 0; stroke: #e58aa6; stroke-width: 1.8"/>
" clip-path="url(#pd0f93302fb)" style="fill: none; stroke-dasharray: 6.66,2.88; stroke-dashoffset: 0; stroke: #e58aa6; stroke-width: 1.8"/>
<defs>
<path id="md0bdad021c" d="M 0 2
<path id="meb42fd1978" d="M 0 2
C 0.530406 2 1.03916 1.789267 1.414214 1.414214
C 1.789267 1.03916 2 0.530406 2 0
C 2 -0.530406 1.789267 -1.03916 1.414214 -1.414214
@@ -1124,15 +1124,15 @@ C -1.03916 1.789267 -0.530406 2 0 2
z
" style="stroke: #e58aa6"/>
</defs>
<g clip-path="url(#pebc89ec65d)">
<use xlink:href="#md0bdad021c" x="43.606303" y="368.563261" style="fill: #e58aa6; stroke: #e58aa6"/>
<use xlink:href="#md0bdad021c" x="126.107578" y="361.645931" style="fill: #e58aa6; stroke: #e58aa6"/>
<use xlink:href="#md0bdad021c" x="208.608852" y="357.248158" style="fill: #e58aa6; stroke: #e58aa6"/>
<use xlink:href="#md0bdad021c" x="317.669606" y="354.522455" style="fill: #e58aa6; stroke: #e58aa6"/>
<use xlink:href="#md0bdad021c" x="400.170881" y="353.056531" style="fill: #e58aa6; stroke: #e58aa6"/>
<use xlink:href="#md0bdad021c" x="482.672155" y="352.289211" style="fill: #e58aa6; stroke: #e58aa6"/>
<use xlink:href="#md0bdad021c" x="591.732909" y="352.644239" style="fill: #e58aa6; stroke: #e58aa6"/>
<use xlink:href="#md0bdad021c" x="674.234184" y="351.728037" style="fill: #e58aa6; stroke: #e58aa6"/>
<g clip-path="url(#pd0f93302fb)">
<use xlink:href="#meb42fd1978" x="43.606303" y="368.563261" style="fill: #e58aa6; stroke: #e58aa6"/>
<use xlink:href="#meb42fd1978" x="126.107578" y="361.645931" style="fill: #e58aa6; stroke: #e58aa6"/>
<use xlink:href="#meb42fd1978" x="208.608852" y="357.248158" style="fill: #e58aa6; stroke: #e58aa6"/>
<use xlink:href="#meb42fd1978" x="317.669606" y="354.522455" style="fill: #e58aa6; stroke: #e58aa6"/>
<use xlink:href="#meb42fd1978" x="400.170881" y="353.056531" style="fill: #e58aa6; stroke: #e58aa6"/>
<use xlink:href="#meb42fd1978" x="482.672155" y="352.289211" style="fill: #e58aa6; stroke: #e58aa6"/>
<use xlink:href="#meb42fd1978" x="591.732909" y="352.644239" style="fill: #e58aa6; stroke: #e58aa6"/>
<use xlink:href="#meb42fd1978" x="674.234184" y="351.728037" style="fill: #e58aa6; stroke: #e58aa6"/>
</g>
</g>
<g id="line2d_52">
@@ -1144,9 +1144,9 @@ L 400.170881 316.694737
L 482.672155 315.881607
L 591.732909 315.904512
L 674.234184 315.961775
" clip-path="url(#pebc89ec65d)" style="fill: none; stroke-dasharray: 6.66,2.88; stroke-dashoffset: 0; stroke: #d05a82; stroke-width: 1.8"/>
" clip-path="url(#pd0f93302fb)" style="fill: none; stroke-dasharray: 6.66,2.88; stroke-dashoffset: 0; stroke: #d05a82; stroke-width: 1.8"/>
<defs>
<path id="me758f7fd28" d="M 0 2
<path id="m1b7ed8bc70" d="M 0 2
C 0.530406 2 1.03916 1.789267 1.414214 1.414214
C 1.789267 1.03916 2 0.530406 2 0
C 2 -0.530406 1.789267 -1.03916 1.414214 -1.414214
@@ -1158,15 +1158,15 @@ C -1.03916 1.789267 -0.530406 2 0 2
z
" style="stroke: #d05a82"/>
</defs>
<g clip-path="url(#pebc89ec65d)">
<use xlink:href="#me758f7fd28" x="43.606303" y="347.948701" style="fill: #d05a82; stroke: #d05a82"/>
<use xlink:href="#me758f7fd28" x="126.107578" y="333.621581" style="fill: #d05a82; stroke: #d05a82"/>
<use xlink:href="#me758f7fd28" x="208.608852" y="324.894751" style="fill: #d05a82; stroke: #d05a82"/>
<use xlink:href="#me758f7fd28" x="317.669606" y="319.179937" style="fill: #d05a82; stroke: #d05a82"/>
<use xlink:href="#me758f7fd28" x="400.170881" y="316.694737" style="fill: #d05a82; stroke: #d05a82"/>
<use xlink:href="#me758f7fd28" x="482.672155" y="315.881607" style="fill: #d05a82; stroke: #d05a82"/>
<use xlink:href="#me758f7fd28" x="591.732909" y="315.904512" style="fill: #d05a82; stroke: #d05a82"/>
<use xlink:href="#me758f7fd28" x="674.234184" y="315.961775" style="fill: #d05a82; stroke: #d05a82"/>
<g clip-path="url(#pd0f93302fb)">
<use xlink:href="#m1b7ed8bc70" x="43.606303" y="347.948701" style="fill: #d05a82; stroke: #d05a82"/>
<use xlink:href="#m1b7ed8bc70" x="126.107578" y="333.621581" style="fill: #d05a82; stroke: #d05a82"/>
<use xlink:href="#m1b7ed8bc70" x="208.608852" y="324.894751" style="fill: #d05a82; stroke: #d05a82"/>
<use xlink:href="#m1b7ed8bc70" x="317.669606" y="319.179937" style="fill: #d05a82; stroke: #d05a82"/>
<use xlink:href="#m1b7ed8bc70" x="400.170881" y="316.694737" style="fill: #d05a82; stroke: #d05a82"/>
<use xlink:href="#m1b7ed8bc70" x="482.672155" y="315.881607" style="fill: #d05a82; stroke: #d05a82"/>
<use xlink:href="#m1b7ed8bc70" x="591.732909" y="315.904512" style="fill: #d05a82; stroke: #d05a82"/>
<use xlink:href="#m1b7ed8bc70" x="674.234184" y="315.961775" style="fill: #d05a82; stroke: #d05a82"/>
</g>
</g>
<g id="line2d_53">
@@ -1178,9 +1178,9 @@ L 400.170881 228.785091
L 482.672155 221.936476
L 591.732909 220.940106
L 674.234184 219.428372
" clip-path="url(#pebc89ec65d)" style="fill: none; stroke: #a71d5b; stroke-width: 2.4; stroke-linecap: square"/>
" clip-path="url(#pd0f93302fb)" style="fill: none; stroke: #a71d5b; stroke-width: 2.4; stroke-linecap: square"/>
<defs>
<path id="m23c951e27b" d="M 0 2
<path id="m4483545db1" d="M 0 2
C 0.530406 2 1.03916 1.789267 1.414214 1.414214
C 1.789267 1.03916 2 0.530406 2 0
C 2 -0.530406 1.789267 -1.03916 1.414214 -1.414214
@@ -1192,15 +1192,15 @@ C -1.03916 1.789267 -0.530406 2 0 2
z
" style="stroke: #a71d5b"/>
</defs>
<g clip-path="url(#pebc89ec65d)">
<use xlink:href="#m23c951e27b" x="43.606303" y="282.474568" style="fill: #a71d5b; stroke: #a71d5b"/>
<use xlink:href="#m23c951e27b" x="126.107578" y="256.294076" style="fill: #a71d5b; stroke: #a71d5b"/>
<use xlink:href="#m23c951e27b" x="208.608852" y="241.382878" style="fill: #a71d5b; stroke: #a71d5b"/>
<use xlink:href="#m23c951e27b" x="317.669606" y="228.739281" style="fill: #a71d5b; stroke: #a71d5b"/>
<use xlink:href="#m23c951e27b" x="400.170881" y="228.785091" style="fill: #a71d5b; stroke: #a71d5b"/>
<use xlink:href="#m23c951e27b" x="482.672155" y="221.936476" style="fill: #a71d5b; stroke: #a71d5b"/>
<use xlink:href="#m23c951e27b" x="591.732909" y="220.940106" style="fill: #a71d5b; stroke: #a71d5b"/>
<use xlink:href="#m23c951e27b" x="674.234184" y="219.428372" style="fill: #a71d5b; stroke: #a71d5b"/>
<g clip-path="url(#pd0f93302fb)">
<use xlink:href="#m4483545db1" x="43.606303" y="282.474568" style="fill: #a71d5b; stroke: #a71d5b"/>
<use xlink:href="#m4483545db1" x="126.107578" y="256.294076" style="fill: #a71d5b; stroke: #a71d5b"/>
<use xlink:href="#m4483545db1" x="208.608852" y="241.382878" style="fill: #a71d5b; stroke: #a71d5b"/>
<use xlink:href="#m4483545db1" x="317.669606" y="228.739281" style="fill: #a71d5b; stroke: #a71d5b"/>
<use xlink:href="#m4483545db1" x="400.170881" y="228.785091" style="fill: #a71d5b; stroke: #a71d5b"/>
<use xlink:href="#m4483545db1" x="482.672155" y="221.936476" style="fill: #a71d5b; stroke: #a71d5b"/>
<use xlink:href="#m4483545db1" x="591.732909" y="220.940106" style="fill: #a71d5b; stroke: #a71d5b"/>
<use xlink:href="#m4483545db1" x="674.234184" y="219.428372" style="fill: #a71d5b; stroke: #a71d5b"/>
</g>
</g>
<g id="line2d_54">
@@ -1212,9 +1212,9 @@ L 400.170881 208.61718
L 482.672155 210.140367
L 591.732909 210.873329
L 674.234184 210.758804
" clip-path="url(#pebc89ec65d)" style="fill: none; stroke: #dc143c; stroke-width: 1.8; stroke-linecap: square"/>
" clip-path="url(#pd0f93302fb)" style="fill: none; stroke: #dc143c; stroke-width: 1.8; stroke-linecap: square"/>
<defs>
<path id="m919100d25a" d="M 0 2
<path id="m60a4378f40" d="M 0 2
C 0.530406 2 1.03916 1.789267 1.414214 1.414214
C 1.789267 1.03916 2 0.530406 2 0
C 2 -0.530406 1.789267 -1.03916 1.414214 -1.414214
@@ -1226,21 +1226,21 @@ C -1.03916 1.789267 -0.530406 2 0 2
z
" style="stroke: #dc143c"/>
</defs>
<g clip-path="url(#pebc89ec65d)">
<use xlink:href="#m919100d25a" x="43.606303" y="211.125285" style="fill: #dc143c; stroke: #dc143c"/>
<use xlink:href="#m919100d25a" x="126.107578" y="209.945674" style="fill: #dc143c; stroke: #dc143c"/>
<use xlink:href="#m919100d25a" x="208.608852" y="210.186177" style="fill: #dc143c; stroke: #dc143c"/>
<use xlink:href="#m919100d25a" x="317.669606" y="208.078911" style="fill: #dc143c; stroke: #dc143c"/>
<use xlink:href="#m919100d25a" x="400.170881" y="208.61718" style="fill: #dc143c; stroke: #dc143c"/>
<use xlink:href="#m919100d25a" x="482.672155" y="210.140367" style="fill: #dc143c; stroke: #dc143c"/>
<use xlink:href="#m919100d25a" x="591.732909" y="210.873329" style="fill: #dc143c; stroke: #dc143c"/>
<use xlink:href="#m919100d25a" x="674.234184" y="210.758804" style="fill: #dc143c; stroke: #dc143c"/>
<g clip-path="url(#pd0f93302fb)">
<use xlink:href="#m60a4378f40" x="43.606303" y="211.125285" style="fill: #dc143c; stroke: #dc143c"/>
<use xlink:href="#m60a4378f40" x="126.107578" y="209.945674" style="fill: #dc143c; stroke: #dc143c"/>
<use xlink:href="#m60a4378f40" x="208.608852" y="210.186177" style="fill: #dc143c; stroke: #dc143c"/>
<use xlink:href="#m60a4378f40" x="317.669606" y="208.078911" style="fill: #dc143c; stroke: #dc143c"/>
<use xlink:href="#m60a4378f40" x="400.170881" y="208.61718" style="fill: #dc143c; stroke: #dc143c"/>
<use xlink:href="#m60a4378f40" x="482.672155" y="210.140367" style="fill: #dc143c; stroke: #dc143c"/>
<use xlink:href="#m60a4378f40" x="591.732909" y="210.873329" style="fill: #dc143c; stroke: #dc143c"/>
<use xlink:href="#m60a4378f40" x="674.234184" y="210.758804" style="fill: #dc143c; stroke: #dc143c"/>
</g>
</g>
<g id="line2d_55">
<path d="M 33.681875 128.793023
L 705.461875 128.793023
" clip-path="url(#pebc89ec65d)" style="fill: none; stroke-dasharray: 4,6.6; stroke-dashoffset: 0; stroke: #999999; stroke-width: 4"/>
<path d="M 33.681875 115.737135
L 705.461875 115.737135
" clip-path="url(#pd0f93302fb)" style="fill: none; stroke-dasharray: 4,6.6; stroke-dashoffset: 0; stroke: #999999; stroke-width: 4"/>
</g>
<g id="patch_3">
<path d="M 33.681875 451.639937
@@ -1253,8 +1253,8 @@ L 705.461875 451.639937
" style="fill: none; stroke: #000000; stroke-width: 0.8; stroke-linejoin: miter; stroke-linecap: square"/>
</g>
<g id="text_17">
<!-- Peak π based on instruction mix [28.19 flops/cycle] -->
<g style="fill: #888888" transform="translate(48.274516 119.107615) scale(0.15 -0.15)">
<!-- Peak π based on instruction mix [29.33 flops/cycle] -->
<g style="fill: #888888" transform="translate(48.274516 105.660051) scale(0.15 -0.15)">
<defs>
<path id="DejaVuSans-Bold-6b" d="M 538 4863
L 1656 4863
@@ -1338,52 +1338,6 @@ L 2491 -844
L 550 -844
L 550 4863
z
" transform="scale(0.015625)"/>
<path id="DejaVuSans-Bold-38" d="M 2228 2088
Q 1891 2088 1709 1903
Q 1528 1719 1528 1375
Q 1528 1031 1709 848
Q 1891 666 2228 666
Q 2563 666 2741 848
Q 2919 1031 2919 1375
Q 2919 1722 2741 1905
Q 2563 2088 2228 2088
z
M 1350 2484
Q 925 2613 709 2878
Q 494 3144 494 3541
Q 494 4131 934 4440
Q 1375 4750 2228 4750
Q 3075 4750 3515 4442
Q 3956 4134 3956 3541
Q 3956 3144 3739 2878
Q 3522 2613 3097 2484
Q 3572 2353 3814 2058
Q 4056 1763 4056 1313
Q 4056 619 3595 264
Q 3134 -91 2228 -91
Q 1319 -91 855 264
Q 391 619 391 1313
Q 391 1763 633 2058
Q 875 2353 1350 2484
z
M 1631 3419
Q 1631 3141 1786 2991
Q 1941 2841 2228 2841
Q 2509 2841 2662 2991
Q 2816 3141 2816 3419
Q 2816 3697 2662 3845
Q 2509 3994 2228 3994
Q 1941 3994 1786 3844
Q 1631 3694 1631 3419
z
" transform="scale(0.015625)"/>
<path id="DejaVuSans-Bold-2e" d="M 653 1209
L 1778 1209
L 1778 0
L 653 0
L 653 1209
z
" transform="scale(0.015625)"/>
<path id="DejaVuSans-Bold-39" d="M 641 103
L 641 966
@@ -1414,6 +1368,13 @@ Q 1491 3575 1491 3169
Q 1491 2759 1650 2554
Q 1809 2350 2125 2350
z
" transform="scale(0.015625)"/>
<path id="DejaVuSans-Bold-2e" d="M 653 1209
L 1778 1209
L 1778 0
L 653 0
L 653 1209
z
" transform="scale(0.015625)"/>
<path id="DejaVuSans-Bold-6c" d="M 538 4863
L 1656 4863
@@ -1518,10 +1479,10 @@ z
<use xlink:href="#DejaVuSans-Bold-20" transform="translate(1823.681641 0)"/>
<use xlink:href="#DejaVuSans-Bold-5b" transform="translate(1858.496094 0)"/>
<use xlink:href="#DejaVuSans-Bold-32" transform="translate(1904.199219 0)"/>
<use xlink:href="#DejaVuSans-Bold-38" transform="translate(1973.779297 0)"/>
<use xlink:href="#DejaVuSans-Bold-39" transform="translate(1973.779297 0)"/>
<use xlink:href="#DejaVuSans-Bold-2e" transform="translate(2043.359375 0)"/>
<use xlink:href="#DejaVuSans-Bold-31" transform="translate(2081.347656 0)"/>
<use xlink:href="#DejaVuSans-Bold-39" transform="translate(2150.927734 0)"/>
<use xlink:href="#DejaVuSans-Bold-33" transform="translate(2081.347656 0)"/>
<use xlink:href="#DejaVuSans-Bold-33" transform="translate(2150.927734 0)"/>
<use xlink:href="#DejaVuSans-Bold-20" transform="translate(2220.507812 0)"/>
<use xlink:href="#DejaVuSans-Bold-66" transform="translate(2255.322266 0)"/>
<use xlink:href="#DejaVuSans-Bold-6c" transform="translate(2298.828125 0)"/>
@@ -2622,7 +2583,7 @@ z
</g>
</g>
<defs>
<clipPath id="pebc89ec65d">
<clipPath id="pd0f93302fb">
<rect x="33.681875" y="108.063937" width="671.78" height="343.576"/>
</clipPath>
</defs>

Before

Width:  |  Height:  |  Size: 92 KiB

After

Width:  |  Height:  |  Size: 91 KiB

+1 -1
View File
@@ -162,7 +162,7 @@ for v, lab, c, ls in tracks:
xpos = None
ends.append((x, y, lab, c, xpos, side))
perf_bound_instruction_mix = 28.19
perf_bound_instruction_mix = 29.33
for yv, t in [
(perf_bound_instruction_mix,
f"Peak π based on instruction mix [{perf_bound_instruction_mix} flops/cycle]"
+7 -7
View File
@@ -268,13 +268,13 @@ variant_inlining_7_symmetry_2_ilp_2,500,200,3461000000,64112.0,269.92,2800723726
variant_inlining_7_symmetry_2_ilp_2,1000,200,13822000000,128112.0,539.45,11627472146.7,1.189
variant_inlining_7_symmetry_2_ilp_2,2000,200,55244000000,256112.0,1078.51,47722643580.0,1.158
variant_inlining_7_symmetry_2_ilp_2,5000,200,345110000000,640112.0,2695.7,316224530286.7,1.091
variant_inlining_8,50,200,36750000,6512.0,28.22,25967831.7,1.415
variant_inlining_8,100,200,145500000,12912.0,56.34,102344446.7,1.422
variant_inlining_8,200,200,579000000,25712.0,112.59,412337820.0,1.404
variant_inlining_8,500,200,3607500000,64112.0,281.34,2712489206.7,1.33
variant_inlining_8,1000,200,14415000000,128112.0,562.59,10911941346.7,1.321
variant_inlining_8,2000,200,57630000000,256112.0,1125.09,44617296533.3,1.292
variant_inlining_8,5000,200,360075000000,640112.0,2812.59,302676303926.7,1.19
variant_inlining_8,50,200,36750000,6512.0,28.22,25930980.8,1.417
variant_inlining_8,100,200,145500000,12912.0,56.34,102418540.0,1.421
variant_inlining_8,200,200,579000000,25712.0,112.59,412514933.3,1.404
variant_inlining_8,500,200,3607500000,64112.0,281.34,2688542773.3,1.342
variant_inlining_8,1000,200,14415000000,128112.0,562.59,10866744550.0,1.327
variant_inlining_8,2000,200,57630000000,256112.0,1125.09,44404254580.0,1.298
variant_inlining_8,5000,200,360075000000,640112.0,2812.59,301663825136.7,1.194
variant_inlining_8_SoA_AVX512_polyexp_fastinvsqrt,50,200,42720000,6512.0,32.8,8373508.8,5.102
variant_inlining_8_SoA_AVX512_polyexp_fastinvsqrt,100,200,155520000,12912.0,60.22,28637320.0,5.431
variant_inlining_8_SoA_AVX512_polyexp_fastinvsqrt,200,200,591360000,25712.0,115.0,104580140.0,5.655
1 variant n n_iter W Q_per_iter I cycles flops_per_cycle
268 variant_inlining_7_symmetry_2_ilp_2 1000 200 13822000000 128112.0 539.45 11627472146.7 1.189
269 variant_inlining_7_symmetry_2_ilp_2 2000 200 55244000000 256112.0 1078.51 47722643580.0 1.158
270 variant_inlining_7_symmetry_2_ilp_2 5000 200 345110000000 640112.0 2695.7 316224530286.7 1.091
271 variant_inlining_8 50 200 36750000 6512.0 28.22 25967831.7 25930980.8 1.415 1.417
272 variant_inlining_8 100 200 145500000 12912.0 56.34 102344446.7 102418540.0 1.422 1.421
273 variant_inlining_8 200 200 579000000 25712.0 112.59 412337820.0 412514933.3 1.404
274 variant_inlining_8 500 200 3607500000 64112.0 281.34 2712489206.7 2688542773.3 1.33 1.342
275 variant_inlining_8 1000 200 14415000000 128112.0 562.59 10911941346.7 10866744550.0 1.321 1.327
276 variant_inlining_8 2000 200 57630000000 256112.0 1125.09 44617296533.3 44404254580.0 1.292 1.298
277 variant_inlining_8 5000 200 360075000000 640112.0 2812.59 302676303926.7 301663825136.7 1.19 1.194
278 variant_inlining_8_SoA_AVX512_polyexp_fastinvsqrt 50 200 42720000 6512.0 32.8 8373508.8 5.102
279 variant_inlining_8_SoA_AVX512_polyexp_fastinvsqrt 100 200 155520000 12912.0 60.22 28637320.0 5.431
280 variant_inlining_8_SoA_AVX512_polyexp_fastinvsqrt 200 200 591360000 25712.0 115.0 104580140.0 5.655