Further changes
109
drawings/.$gemv.drawio.bkp
Normal file
@@ -0,0 +1,109 @@
|
|||||||
|
<mxfile host="Electron" modified="2024-04-08T19:03:07.854Z" agent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/24.1.0 Chrome/120.0.6099.109 Electron/28.1.0 Safari/537.36" etag="1lKYrRpL3eeOdWhQxy20" version="24.1.0" type="device">
|
||||||
|
<diagram name="Seite-1" id="y70wuE-GsvUdFvvlSWny">
|
||||||
|
<mxGraphModel dx="2009" dy="1159" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="1" shadow="0">
|
||||||
|
<root>
|
||||||
|
<mxCell id="0" />
|
||||||
|
<mxCell id="1" parent="0" />
|
||||||
|
<mxCell id="y6B-Wl55EwHwSYtlcI2c-38" value="<font color="#000000">$$\begin{pmatrix}<br style="font-size: 24px;"> w_{1,1} &amp; w_{1,2} &amp; \cdots &amp; w_{1,n} \\<br style="font-size: 24px;"> w_{2,1} &amp; w_{2,2} &amp; \cdots &amp; w_{2,n} \\<br style="font-size: 24px;"> \vdots &amp; \vdots &amp; \ddots &amp; \vdots \\<br style="font-size: 24px;"> w_{4,1} &amp; w_{m,2} &amp; \cdots &amp; w_{m,n}<br style="font-size: 24px;"> \end{pmatrix}$$</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;fontColor=#AE4132;fontStyle=0;fontSize=24;" parent="1" vertex="1">
|
||||||
|
<mxGeometry x="194" y="215" width="440" height="190" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-2" value="<font style="font-size: 24px;">$$\begin{pmatrix}i_0\\ i_1 \\ \vdots \\ i_n \end{pmatrix}$$</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="380" y="290" width="620" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-3" value="" style="shape=waypoint;sketch=0;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="610" y="300" width="20" height="20" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-4" value="<font style="font-size: 24px;">$$=$$</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="730" y="290" width="90" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-5" value="<font style="font-size: 24px;">$$\begin{pmatrix}o_0\\ o_1 \\ \vdots \\ o_m \end{pmatrix}$$</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="535" y="290" width="650" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-6" value="" style="group" vertex="1" connectable="0" parent="1">
|
||||||
|
<mxGeometry x="570" y="141" width="315" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="Y3yYdLvzpnhM01C_kKpc-16" value="<span style="font-size: 24px;"><font color="#5c79a3">$$o_m$$</font></span>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="NkSMZKa1grjJmDTNbKW0-6" vertex="1">
|
||||||
|
<mxGeometry x="195" width="120" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="Y3yYdLvzpnhM01C_kKpc-17" value="$$=$$" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;fontSize=24;" parent="NkSMZKa1grjJmDTNbKW0-6" vertex="1">
|
||||||
|
<mxGeometry x="160" width="90" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="Y3yYdLvzpnhM01C_kKpc-18" value="$$\cdot$$" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;fontSize=24;" parent="NkSMZKa1grjJmDTNbKW0-6" vertex="1">
|
||||||
|
<mxGeometry x="65" width="130" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="Y3yYdLvzpnhM01C_kKpc-19" value="<span style="font-size: 24px;"><font color="#ae4132">$$W_{m,n}$$</font></span>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="NkSMZKa1grjJmDTNbKW0-6" vertex="1">
|
||||||
|
<mxGeometry width="170" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="Y3yYdLvzpnhM01C_kKpc-20" value="<font color="#60854c" style="font-size: 24px;">$$i_n$$</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="NkSMZKa1grjJmDTNbKW0-6" vertex="1">
|
||||||
|
<mxGeometry x="110" width="110" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-7" value="<font style="font-size: 24px;">$$\begin{pmatrix}o_{0,a}+o_{0,b}\\ o_{1,a}+o_{1,b}&nbsp;\\ \vdots \\ o_{m,a}+o_{m,b}&nbsp;\end{pmatrix}$$</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="390" y="595" width="1030" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-13" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=none;strokeColor=#b85450;strokeWidth=3;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="262" y="260" width="300" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-14" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=none;strokeColor=#b85450;strokeWidth=3;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="670" y="220" width="40" height="180" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-15" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=none;strokeColor=#b85450;strokeWidth=3;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="840" y="260" width="40" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-16" value="<font color="#000000">$$\begin{pmatrix}<br style="font-size: 24px;"> w_{1,1} &amp; w_{1,2} &amp; \cdots &amp; w_{1,n} \\<br style="font-size: 24px;"> w_{2,1} &amp; w_{2,2} &amp; \cdots &amp; w_{2,n} \\<br style="font-size: 24px;"> \vdots &amp; \vdots &amp; \ddots &amp; \vdots \\<br style="font-size: 24px;"> w_{4,1} &amp; w_{m,2} &amp; \cdots &amp; w_{m,n}<br style="font-size: 24px;"> \end{pmatrix}$$</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;fontColor=#AE4132;fontStyle=0;fontSize=24;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="194" y="520" width="440" height="190" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-17" value="<font style="font-size: 24px;">$$\begin{pmatrix}i_0\\ i_1 \\ \vdots \\ i_n \end{pmatrix}$$</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="380" y="595" width="620" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-18" value="" style="shape=waypoint;sketch=0;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="610" y="605" width="20" height="20" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-19" value="<font style="font-size: 24px;">$$=$$</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="730" y="595" width="90" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-20" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=none;strokeColor=#b85450;strokeWidth=3;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="266" y="565" width="148" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-21" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=none;strokeColor=#b85450;strokeWidth=3;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="670" y="530" width="40" height="80" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-22" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=none;strokeColor=#b85450;strokeWidth=3;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="842" y="570" width="50" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-25" value="<font style="font-size: 24px;">$$\begin{pmatrix}o_0\\ o_1 \\ \vdots \\ o_m \end{pmatrix}$$</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="790" y="595" width="650" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-27" value="<font style="font-size: 24px;">$$=$$</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="980" y="595" width="90" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-29" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=none;strokeColor=#5C79A3;strokeWidth=3;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="670" y="620" width="40" height="80" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-30" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=none;strokeColor=#5C79A3;strokeWidth=3;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="432" y="565" width="130" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-31" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=none;strokeColor=#5C79A3;strokeWidth=3;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="920" y="570" width="50" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-32" value="" style="group" vertex="1" connectable="0" parent="1">
|
||||||
|
<mxGeometry x="570" y="470" width="315" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-33" value="<span style="font-size: 24px;"><font color="#5c79a3">$$o_m$$</font></span>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" vertex="1" parent="NkSMZKa1grjJmDTNbKW0-32">
|
||||||
|
<mxGeometry x="195" width="120" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-34" value="$$=$$" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;fontSize=24;" vertex="1" parent="NkSMZKa1grjJmDTNbKW0-32">
|
||||||
|
<mxGeometry x="160" width="90" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-35" value="$$\cdot$$" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;fontSize=24;" vertex="1" parent="NkSMZKa1grjJmDTNbKW0-32">
|
||||||
|
<mxGeometry x="65" width="130" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-36" value="<span style="font-size: 24px;"><font color="#ae4132">$$W_{m,n}$$</font></span>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" vertex="1" parent="NkSMZKa1grjJmDTNbKW0-32">
|
||||||
|
<mxGeometry width="170" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-37" value="<font color="#60854c" style="font-size: 24px;">$$i_n$$</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" vertex="1" parent="NkSMZKa1grjJmDTNbKW0-32">
|
||||||
|
<mxGeometry x="110" width="110" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</root>
|
||||||
|
</mxGraphModel>
|
||||||
|
</diagram>
|
||||||
|
</mxfile>
|
||||||
109
drawings/gemv.drawio
Normal file
@@ -0,0 +1,109 @@
|
|||||||
|
<mxfile host="Electron" modified="2024-04-08T19:19:01.673Z" agent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/24.1.0 Chrome/120.0.6099.109 Electron/28.1.0 Safari/537.36" etag="f9_gaScfTfSRG2DifFzQ" version="24.1.0" type="device">
|
||||||
|
<diagram name="Seite-1" id="y70wuE-GsvUdFvvlSWny">
|
||||||
|
<mxGraphModel dx="2009" dy="1159" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="1" shadow="0">
|
||||||
|
<root>
|
||||||
|
<mxCell id="0" />
|
||||||
|
<mxCell id="1" parent="0" />
|
||||||
|
<mxCell id="y6B-Wl55EwHwSYtlcI2c-38" value="<font color="#000000">$$\begin{pmatrix}<br style="font-size: 24px;"> w_{1,1} &amp; w_{1,2} &amp; \cdots &amp; w_{1,n} \\<br style="font-size: 24px;"> w_{2,1} &amp; w_{2,2} &amp; \cdots &amp; w_{2,n} \\<br style="font-size: 24px;"> \vdots &amp; \vdots &amp; \ddots &amp; \vdots \\<br style="font-size: 24px;"> w_{4,1} &amp; w_{m,2} &amp; \cdots &amp; w_{m,n}<br style="font-size: 24px;"> \end{pmatrix}$$</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;fontColor=#AE4132;fontStyle=0;fontSize=24;" parent="1" vertex="1">
|
||||||
|
<mxGeometry x="194" y="215" width="440" height="190" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-2" value="<font style="font-size: 24px;">$$\begin{pmatrix}i_0\\ i_1 \\ \vdots \\ i_n \end{pmatrix}$$</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="380" y="290" width="620" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-3" value="" style="shape=waypoint;sketch=0;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="610" y="300" width="20" height="20" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-4" value="<font style="font-size: 24px;">$$=$$</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="730" y="290" width="90" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-5" value="<font style="font-size: 24px;">$$\begin{pmatrix}o_0\\ o_1 \\ \vdots \\ o_m \end{pmatrix}$$</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="535" y="290" width="650" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-6" value="" style="group" vertex="1" connectable="0" parent="1">
|
||||||
|
<mxGeometry x="450" y="150" width="315" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="Y3yYdLvzpnhM01C_kKpc-16" value="<span style="font-size: 24px;"><font color="#5c79a3">$$o_m$$</font></span>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="NkSMZKa1grjJmDTNbKW0-6" vertex="1">
|
||||||
|
<mxGeometry x="195" width="120" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="Y3yYdLvzpnhM01C_kKpc-17" value="$$=$$" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;fontSize=24;" parent="NkSMZKa1grjJmDTNbKW0-6" vertex="1">
|
||||||
|
<mxGeometry x="160" width="90" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="Y3yYdLvzpnhM01C_kKpc-18" value="$$\cdot$$" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;fontSize=24;" parent="NkSMZKa1grjJmDTNbKW0-6" vertex="1">
|
||||||
|
<mxGeometry x="65" width="130" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="Y3yYdLvzpnhM01C_kKpc-19" value="<span style="font-size: 24px;"><font color="#ae4132">$$W_{m,n}$$</font></span>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="NkSMZKa1grjJmDTNbKW0-6" vertex="1">
|
||||||
|
<mxGeometry width="170" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="Y3yYdLvzpnhM01C_kKpc-20" value="<font color="#60854c" style="font-size: 24px;">$$i_n$$</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="NkSMZKa1grjJmDTNbKW0-6" vertex="1">
|
||||||
|
<mxGeometry x="110" width="110" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-7" value="<font style="font-size: 24px;">$$\begin{pmatrix}o_{0,a}+o_{0,b}\\ o_{1,a}+o_{1,b}&nbsp;\\ \vdots \\ o_{m,a}+o_{m,b}&nbsp;\end{pmatrix}$$</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="390" y="595" width="1030" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-13" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=none;strokeColor=#b85450;strokeWidth=3;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="262" y="260" width="300" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-14" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=none;strokeColor=#b85450;strokeWidth=3;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="670" y="220" width="40" height="180" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-15" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=none;strokeColor=#b85450;strokeWidth=3;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="840" y="260" width="40" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-16" value="<font color="#000000">$$\begin{pmatrix}<br style="font-size: 24px;"> w_{1,1} &amp; w_{1,2} &amp; \cdots &amp; w_{1,n} \\<br style="font-size: 24px;"> w_{2,1} &amp; w_{2,2} &amp; \cdots &amp; w_{2,n} \\<br style="font-size: 24px;"> \vdots &amp; \vdots &amp; \ddots &amp; \vdots \\<br style="font-size: 24px;"> w_{4,1} &amp; w_{m,2} &amp; \cdots &amp; w_{m,n}<br style="font-size: 24px;"> \end{pmatrix}$$</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;fontColor=#AE4132;fontStyle=0;fontSize=24;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="194" y="520" width="440" height="190" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-17" value="<font style="font-size: 24px;">$$\begin{pmatrix}i_0\\ i_1 \\ \vdots \\ i_n \end{pmatrix}$$</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="380" y="595" width="620" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-18" value="" style="shape=waypoint;sketch=0;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="610" y="605" width="20" height="20" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-19" value="<font style="font-size: 24px;">$$=$$</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="730" y="595" width="90" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-20" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=none;strokeColor=#b85450;strokeWidth=3;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="266" y="565" width="148" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-21" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=none;strokeColor=#b85450;strokeWidth=3;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="670" y="530" width="40" height="80" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-22" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=none;strokeColor=#b85450;strokeWidth=3;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="842" y="570" width="50" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-25" value="<font style="font-size: 24px;">$$\begin{pmatrix}o_0\\ o_1 \\ \vdots \\ o_m \end{pmatrix}$$</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="790" y="595" width="650" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-27" value="<font style="font-size: 24px;">$$=$$</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="980" y="595" width="90" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-29" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=none;strokeColor=#5C79A3;strokeWidth=3;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="670" y="620" width="40" height="80" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-30" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=none;strokeColor=#5C79A3;strokeWidth=3;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="432" y="565" width="130" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-31" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=none;strokeColor=#5C79A3;strokeWidth=3;" vertex="1" parent="1">
|
||||||
|
<mxGeometry x="920" y="570" width="50" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-32" value="" style="group" vertex="1" connectable="0" parent="1">
|
||||||
|
<mxGeometry x="460" y="460" width="315" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-33" value="<span style="font-size: 24px;"><font color="#5c79a3">$$o_m$$</font></span>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" vertex="1" parent="NkSMZKa1grjJmDTNbKW0-32">
|
||||||
|
<mxGeometry x="195" width="120" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-34" value="$$=$$" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;fontSize=24;" vertex="1" parent="NkSMZKa1grjJmDTNbKW0-32">
|
||||||
|
<mxGeometry x="160" width="90" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-35" value="$$\cdot$$" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;fontSize=24;" vertex="1" parent="NkSMZKa1grjJmDTNbKW0-32">
|
||||||
|
<mxGeometry x="65" width="130" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-36" value="<span style="font-size: 24px;"><font color="#ae4132">$$W_{m,n}$$</font></span>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" vertex="1" parent="NkSMZKa1grjJmDTNbKW0-32">
|
||||||
|
<mxGeometry width="170" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
<mxCell id="NkSMZKa1grjJmDTNbKW0-37" value="<font color="#60854c" style="font-size: 24px;">$$i_n$$</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" vertex="1" parent="NkSMZKa1grjJmDTNbKW0-32">
|
||||||
|
<mxGeometry x="110" width="110" height="40" as="geometry" />
|
||||||
|
</mxCell>
|
||||||
|
</root>
|
||||||
|
</mxGraphModel>
|
||||||
|
</diagram>
|
||||||
|
</mxfile>
|
||||||
|
Before Width: | Height: | Size: 402 KiB After Width: | Height: | Size: 402 KiB |
4126
public/gemv.svg
|
Before Width: | Height: | Size: 289 KiB After Width: | Height: | Size: 352 KiB |
4876
public/gemv_0.svg
Normal file
|
After Width: | Height: | Size: 352 KiB |
4876
public/gemv_1.svg
Normal file
|
After Width: | Height: | Size: 352 KiB |
4876
public/gemv_2.svg
Normal file
|
After Width: | Height: | Size: 352 KiB |
4876
public/gemv_3.svg
Normal file
|
After Width: | Height: | Size: 352 KiB |
4878
public/gemv_4.svg
Normal file
|
After Width: | Height: | Size: 353 KiB |
2416
public/gemv_interleaved.svg
Normal file
|
After Width: | Height: | Size: 462 KiB |
1908
public/gemv_normal.svg
Normal file
|
After Width: | Height: | Size: 350 KiB |
353
public/speedup_inf_old.svg
Normal file
|
After Width: | Height: | Size: 95 KiB |
@@ -21,6 +21,10 @@ record: true
|
|||||||
|
|
||||||
# System-Level Integration and Exploration of PIM-DRAM
|
# System-Level Integration and Exploration of PIM-DRAM
|
||||||
|
|
||||||
|
<!--
|
||||||
|
- results of master thesis
|
||||||
|
-->
|
||||||
|
|
||||||
---
|
---
|
||||||
src: ./slides/introduction.md
|
src: ./slides/introduction.md
|
||||||
---
|
---
|
||||||
@@ -47,3 +51,7 @@ layout: end
|
|||||||
|
|
||||||
# Thank you for your attention
|
# Thank you for your attention
|
||||||
<hr/>
|
<hr/>
|
||||||
|
|
||||||
|
---
|
||||||
|
src: ./slides/appendix.md
|
||||||
|
---
|
||||||
|
|||||||
@@ -1,42 +1,13 @@
|
|||||||
|
---
|
||||||
|
layout: figure
|
||||||
|
figureUrl: /layout.svg
|
||||||
|
figureCaption: Mapping of the weight matrix onto the memory banks
|
||||||
|
---
|
||||||
|
|
||||||
## Appendix
|
## Appendix
|
||||||
### GEMV Kernel
|
### Memory Layout
|
||||||
<hr/>
|
<hr/>
|
||||||
|
|
||||||
<Transform :scale="0.7">
|
<!--
|
||||||
|
- Data layout in program and address mapping must match
|
||||||
```rust {all}{lines:true}
|
-->
|
||||||
pub fn execute<const X16R: usize, const X16C: usize, const R: usize>(
|
|
||||||
matrix: &Matrix<X16R, X16C>,
|
|
||||||
input_vector: &Vector<X16C>,
|
|
||||||
output_partial_sum_vector: &mut SVector<F16x16, R>,
|
|
||||||
dummy: &impl PimOperand,
|
|
||||||
) {
|
|
||||||
// Load input vector into GRF-A registers
|
|
||||||
for chunk in input_vector.0.iter() {
|
|
||||||
chunk.execute_read();
|
|
||||||
}
|
|
||||||
|
|
||||||
// Execute the MAC instructions without memory barriers
|
|
||||||
for sub_matrix in matrix.0.iter() {
|
|
||||||
for column_block in sub_matrix.fixed_rows::<1>(0).iter() {
|
|
||||||
column_block.execute_read_async();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Verify all memory accesses have finished
|
|
||||||
barrier::dsb(barrier::SY);
|
|
||||||
|
|
||||||
// Copy the partial sums into the bank
|
|
||||||
for chunk in output_partial_sum_vector
|
|
||||||
.fixed_rows_with_step_mut::<X16R>(0, 16)
|
|
||||||
.iter_mut()
|
|
||||||
{
|
|
||||||
chunk.execute_write();
|
|
||||||
}
|
|
||||||
|
|
||||||
// Execute the EXIT instruction
|
|
||||||
dummy.execute_read();
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
</Transform>
|
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
## Conclusion and Future Work
|
## Conclusion and Future Work
|
||||||
<hr/>
|
<hr/>
|
||||||
|
|
||||||
|
<br>
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
- PIM can accelerate memory-bound workloads
|
- PIM can accelerate memory-bound workloads
|
||||||
@@ -9,6 +10,7 @@
|
|||||||
<br>
|
<br>
|
||||||
|
|
||||||
#### Future work:
|
#### Future work:
|
||||||
|
- Simulate multiple channels
|
||||||
- Implementation of Linux driver
|
- Implementation of Linux driver
|
||||||
- Comparison with complete neural networks
|
- Comparison with complete neural networks
|
||||||
- Consider replacing library approach with compiler approach
|
- Consider replacing library approach with compiler approach
|
||||||
|
|||||||
@@ -78,7 +78,7 @@ code {
|
|||||||
|
|
||||||
Host-side
|
Host-side
|
||||||
|
|
||||||
```rust {all|7-10|12-17|19-28|30-31}{lines:true,maxHeight:'15em',at:1}
|
```rust {all|7-10|12-17|22-28|30-31}{lines:true,maxHeight:'15em',at:1}
|
||||||
pub fn execute<const X16R: usize, const X16C: usize, const R: usize>(
|
pub fn execute<const X16R: usize, const X16C: usize, const R: usize>(
|
||||||
matrix: &Matrix<X16R, X16C>,
|
matrix: &Matrix<X16R, X16C>,
|
||||||
input_vector: &Vector<X16C>,
|
input_vector: &Vector<X16C>,
|
||||||
|
|||||||
@@ -2,11 +2,10 @@
|
|||||||
### Energy Demand of Applications
|
### Energy Demand of Applications
|
||||||
<hr/>
|
<hr/>
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
- Total compute energy approaches world's energy production
|
- Total compute energy approaches world's energy production
|
||||||
|
|
||||||
--> drastic improvements in energy efficiency needed
|
--> Drastic improvements in energy efficiency needed
|
||||||
|
|
||||||
<div class="flex justify-center">
|
<div class="flex justify-center">
|
||||||
<img src="/world_energy.svg">
|
<img src="/world_energy.svg">
|
||||||
@@ -19,11 +18,10 @@
|
|||||||
</Footnotes>
|
</Footnotes>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
- compute doubles every two years
|
- compute 2x every two years
|
||||||
- energy production grows linearly at 2% per year
|
- energy production 2% per year
|
||||||
|
|
||||||
- to meet future compute demands
|
- to meet future compute demands, drastic improvements in energy efficiency
|
||||||
- -> drastic improvements in energy efficiency
|
|
||||||
-->
|
-->
|
||||||
|
|
||||||
---
|
---
|
||||||
@@ -32,9 +30,9 @@
|
|||||||
### Memory Bound Workloads
|
### Memory Bound Workloads
|
||||||
<hr/>
|
<hr/>
|
||||||
|
|
||||||
<br>
|
- AI applications become increasingly memory-bound
|
||||||
|
|
||||||
- AI workloads become increasingly memory-bound
|
--> Instead of bringing the data to the processing, bring the processing to the data
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
@@ -52,5 +50,7 @@
|
|||||||
- Emerging AI applications become increasingly memory-bound
|
- Emerging AI applications become increasingly memory-bound
|
||||||
- Roofline model
|
- Roofline model
|
||||||
- Not limited by compute power but by memory
|
- Not limited by compute power but by memory
|
||||||
-> researchers begin to consider processing in memory to circumvent memory bottleneck
|
- researchers begin to consider PIM to circumvent memory bottleneck
|
||||||
|
|
||||||
|
- (drastically more parameters in GPT-3, operational intensity goes down)
|
||||||
-->
|
-->
|
||||||
|
|||||||
@@ -10,11 +10,6 @@
|
|||||||
<img src="/dnn.svg">
|
<img src="/dnn.svg">
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!--
|
|
||||||
- fully connected layers of a neural network
|
|
||||||
- Such that PIM is effective, workload must be memory-bound
|
|
||||||
-->
|
|
||||||
|
|
||||||
---
|
---
|
||||||
preload: false
|
preload: false
|
||||||
clicks: 1
|
clicks: 1
|
||||||
@@ -45,10 +40,6 @@ clicks: 1
|
|||||||
</div>
|
</div>
|
||||||
</Transform>
|
</Transform>
|
||||||
|
|
||||||
<!--
|
|
||||||
- filter matrix is reused
|
|
||||||
-->
|
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Processing-in-Memory
|
## Processing-in-Memory
|
||||||
@@ -58,19 +49,24 @@ clicks: 1
|
|||||||
<br>
|
<br>
|
||||||
<br>
|
<br>
|
||||||
<br>
|
<br>
|
||||||
<br>
|
|
||||||
|
|
||||||
<div class="grid grid-cols-2 gap-4">
|
<div class="grid grid-cols-2 gap-4">
|
||||||
<div>
|
<div>
|
||||||
|
|
||||||
### Suitable candidates for PIM:
|
### Suitable candidates for PIM:
|
||||||
|
|
||||||
|
<br>
|
||||||
|
|
||||||
- Fully connected layers in multilayer perceptrons (MLPs)
|
- Fully connected layers in multilayer perceptrons (MLPs)
|
||||||
- Layers in recurrent neural networks (RNNs)
|
- Layers in recurrent neural networks (RNNs)
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
|
|
||||||
### Unsuitable candidates for PIM:
|
### Less suitable candidates for PIM:
|
||||||
|
|
||||||
|
<br>
|
||||||
|
|
||||||
- Convolutional neural networks (CNNs)
|
- Convolutional neural networks (CNNs)
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@@ -175,7 +171,7 @@ To summarize...
|
|||||||
---
|
---
|
||||||
|
|
||||||
## Processing-in-Memory
|
## Processing-in-Memory
|
||||||
### Samsung's PIM-HBM
|
### Samsung's PIM-HBM | Processing Unit
|
||||||
<hr/>
|
<hr/>
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
@@ -183,9 +179,14 @@ To summarize...
|
|||||||
- Two 16-wide 16-bit FPUs
|
- Two 16-wide 16-bit FPUs
|
||||||
- Register files and control unit
|
- Register files and control unit
|
||||||
|
|
||||||
<div class="flex justify-center items-center">
|
<br>
|
||||||
<img src="/pu.svg">
|
|
||||||
</div>
|
#### Instructions:
|
||||||
|
- Control: NOP, JUMP, EXIT
|
||||||
|
- Data: MOV (ReLU), FILL
|
||||||
|
- Arithmetic: ADD, MUL, MAC, MAD
|
||||||
|
|
||||||
|
<img class="absolute right-80px top-180px" src="/pu.svg">
|
||||||
|
|
||||||
<Footnotes separator>
|
<Footnotes separator>
|
||||||
<Footnote>
|
<Footnote>
|
||||||
@@ -206,15 +207,27 @@ To summarize...
|
|||||||
-->
|
-->
|
||||||
|
|
||||||
---
|
---
|
||||||
layout: figure
|
|
||||||
figureUrl: /gemv.svg
|
## Processing-in-Memory
|
||||||
figureCaption: Procedure to perform a (128×8)×(128) GEMV operation
|
### Samsung's PIM-HBM | GEMV Operation
|
||||||
|
<hr/>
|
||||||
|
|
||||||
|
<img v-click="[0,1]" class="absolute right-125px top-150px" src="/gemv_normal.svg">
|
||||||
|
<img v-click="1" class="absolute right-10px top-150px" src="/gemv_interleaved.svg">
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Processing-in-Memory
|
## Processing-in-Memory
|
||||||
### Samsung's PIM-HBM
|
### Samsung's PIM-HBM | GEMV Operation
|
||||||
<hr/>
|
<hr/>
|
||||||
|
|
||||||
|
<img v-click="[0,1]" class="absolute right-250px top-150px" src="/gemv.svg">
|
||||||
|
<img v-click="[1,2]" class="absolute right-250px top-150px" src="/gemv_0.svg">
|
||||||
|
<img v-click="[2,3]" class="absolute right-250px top-150px" src="/gemv_1.svg">
|
||||||
|
<img v-click="[3,4]" class="absolute right-250px top-150px" src="/gemv_2.svg">
|
||||||
|
<img v-click="[4,5]" class="absolute right-250px top-150px" src="/gemv_3.svg">
|
||||||
|
<img v-click="5" class="absolute right-250px top-150px" src="/gemv_4.svg">
|
||||||
|
|
||||||
<Footnotes separator>
|
<Footnotes separator>
|
||||||
<Footnote>
|
<Footnote>
|
||||||
Lee et al. „Hardware Architecture and Software Stack for PIM Based on Commercial DRAM Technology : Industrial Product“, 2021.
|
Lee et al. „Hardware Architecture and Software Stack for PIM Based on Commercial DRAM Technology : Industrial Product“, 2021.
|
||||||
@@ -228,20 +241,6 @@ figureCaption: Procedure to perform a (128×8)×(128) GEMV operation
|
|||||||
- partial sum, reduced by host
|
- partial sum, reduced by host
|
||||||
-->
|
-->
|
||||||
|
|
||||||
---
|
|
||||||
layout: figure
|
|
||||||
figureUrl: /layout.svg
|
|
||||||
figureCaption: Mapping of the weight matrix onto the memory banks
|
|
||||||
---
|
|
||||||
|
|
||||||
## Processing-in-Memory
|
|
||||||
### Samsung's PIM-HBM
|
|
||||||
<hr/>
|
|
||||||
|
|
||||||
<!--
|
|
||||||
- Data layout in program and address mapping must match
|
|
||||||
-->
|
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Processing-in-Memory
|
## Processing-in-Memory
|
||||||
@@ -253,8 +252,8 @@ figureCaption: Mapping of the weight matrix onto the memory banks
|
|||||||
<br>
|
<br>
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
- Simulations are needed to analyze the performance gains of PIM
|
- To analyze the performance gains of PIM, simulations are needed
|
||||||
- Research should not only focus on hardware but also explore the software side
|
- Research should not only focus on hardware but also explore the programmability
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
|
|||||||
@@ -59,18 +59,22 @@ Operand Dimensions
|
|||||||
|
|
||||||
- Generic ARM system
|
- Generic ARM system
|
||||||
- Infinite compute system
|
- Infinite compute system
|
||||||
|
- unrealistic frequency of 100 GHz
|
||||||
- completely memory bound
|
- completely memory bound
|
||||||
|
- lower bound of possible speedup
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
|
|
||||||
|
<br>
|
||||||
|
|
||||||
#### Two real GPUs using HBM2:
|
#### Two real GPUs using HBM2:
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
- AMD RX Vega 56
|
- AMD RX Vega 56
|
||||||
- NVIDIA V100
|
- NVIDIA Tesla V100
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||