Files
master-thesis/other/transpiler_sequence_diagram.drawio
Daniel 381a4819c9
Some checks are pending
CI / Julia ${{ matrix.version }} - ${{ matrix.os }} - ${{ matrix.arch }} - ${{ github.event_name }} (x64, ubuntu-latest, 1.10) (push) Waiting to run
CI / Julia ${{ matrix.version }} - ${{ matrix.os }} - ${{ matrix.arch }} - ${{ github.event_name }} (x64, ubuntu-latest, 1.6) (push) Waiting to run
CI / Julia ${{ matrix.version }} - ${{ matrix.os }} - ${{ matrix.arch }} - ${{ github.event_name }} (x64, ubuntu-latest, pre) (push) Waiting to run
evaluation: continued with interpreter benchmarking and performance tuning
2025-05-29 15:13:17 +02:00

185 lines
14 KiB
Plaintext

<mxfile host="app.diagrams.net" agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:138.0) Gecko/20100101 Firefox/138.0" version="27.1.1">
<diagram name="Page-1" id="dN1vCd9jYV9B4u8MPVmJ">
<mxGraphModel dx="2015" dy="1147" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1169" pageHeight="827" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<mxCell id="NwwB8n2c3V3IefT4sgtS-1" value="Expression Evaluator" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="400" y="60" width="100" height="40" as="geometry" />
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-2" value="Transpiler" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="840" y="60" width="100" height="40" as="geometry" />
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-3" value="Frontend" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="580" y="60" width="90" height="40" as="geometry" />
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-4" value="GPU" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="710" y="60" width="80" height="40" as="geometry" />
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-5" value="" style="html=1;points=[[0,0,0,0,5],[0,1,0,0,-5],[1,0,0,0,5],[1,1,0,0,-5]];perimeter=orthogonalPerimeter;outlineConnect=0;targetShapes=umlLifeline;portConstraint=eastwest;newEdgeStyle={&quot;curved&quot;:0,&quot;rounded&quot;:0};" vertex="1" parent="1">
<mxGeometry x="445" y="100" width="10" height="490" as="geometry" />
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-6" value="" style="html=1;verticalAlign=bottom;startArrow=circle;startFill=1;endArrow=open;startSize=6;endSize=8;curved=0;rounded=0;" edge="1" parent="1" target="NwwB8n2c3V3IefT4sgtS-5">
<mxGeometry x="0.1057" width="80" relative="1" as="geometry">
<mxPoint x="340" y="140" as="sourcePoint" />
<mxPoint x="425" y="130.0000000000001" as="targetPoint" />
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-7" value="&lt;div&gt;evaluate(exprs,&amp;nbsp;&lt;/div&gt;&lt;div&gt;vars, params)&lt;/div&gt;" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="NwwB8n2c3V3IefT4sgtS-6">
<mxGeometry x="-0.0676" y="1" relative="1" as="geometry">
<mxPoint x="2" y="-19" as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-8" value="loop" style="shape=umlFrame;whiteSpace=wrap;html=1;pointerEvents=0;" vertex="1" parent="1">
<mxGeometry x="340" y="160" width="601" height="120" as="geometry" />
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-9" value="&lt;font style=&quot;font-size: 9px;&quot;&gt;[for each expression]&lt;/font&gt;" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="340" y="190" width="90" height="20" as="geometry" />
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-10" value="" style="endArrow=none;dashed=1;html=1;rounded=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;" edge="1" parent="1" source="NwwB8n2c3V3IefT4sgtS-11" target="NwwB8n2c3V3IefT4sgtS-3">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="605" y="150" as="sourcePoint" />
<mxPoint x="590" y="260" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-11" value="" style="html=1;points=[[0,0,0,0,5],[0,1,0,0,-5],[1,0,0,0,5],[1,1,0,0,-5]];perimeter=orthogonalPerimeter;outlineConnect=0;targetShapes=umlLifeline;portConstraint=eastwest;newEdgeStyle={&quot;curved&quot;:0,&quot;rounded&quot;:0};" vertex="1" parent="1">
<mxGeometry x="620" y="180" width="10" height="30" as="geometry" />
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-12" value="expr_to_postfix()" style="html=1;verticalAlign=bottom;endArrow=block;curved=0;rounded=0;entryX=0;entryY=0;entryDx=0;entryDy=5;" edge="1" parent="1" source="NwwB8n2c3V3IefT4sgtS-5" target="NwwB8n2c3V3IefT4sgtS-11">
<mxGeometry relative="1" as="geometry">
<mxPoint x="530" y="185" as="sourcePoint" />
</mxGeometry>
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-13" value="intermediate_representation" style="html=1;verticalAlign=bottom;endArrow=open;dashed=1;endSize=8;curved=0;rounded=0;exitX=0;exitY=1;exitDx=0;exitDy=-5;" edge="1" parent="1" source="NwwB8n2c3V3IefT4sgtS-11" target="NwwB8n2c3V3IefT4sgtS-5">
<mxGeometry relative="1" as="geometry">
<mxPoint x="530" y="255" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-14" value="" style="endArrow=none;dashed=1;html=1;rounded=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;" edge="1" parent="1" source="NwwB8n2c3V3IefT4sgtS-37" target="NwwB8n2c3V3IefT4sgtS-2">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="891" y="140" as="sourcePoint" />
<mxPoint x="889.6599999999999" y="160" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-15" value="" style="endArrow=none;dashed=1;html=1;rounded=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;" edge="1" parent="1" source="NwwB8n2c3V3IefT4sgtS-28" target="NwwB8n2c3V3IefT4sgtS-4">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="750" y="520" as="sourcePoint" />
<mxPoint x="780.3399999999999" y="120" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-17" value="send_data(variables)" style="html=1;verticalAlign=bottom;endArrow=open;curved=0;rounded=0;endFill=0;" edge="1" parent="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="455" y="309.30999999999995" as="sourcePoint" />
<mxPoint x="750" y="309" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-18" value="" style="endArrow=none;dashed=1;html=1;rounded=0;" edge="1" parent="1" source="NwwB8n2c3V3IefT4sgtS-11">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="635" y="190" as="sourcePoint" />
<mxPoint x="625" y="590" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-19" value="" style="html=1;points=[[0,0,0,0,5],[0,1,0,0,-5],[1,0,0,0,5],[1,1,0,0,-5]];perimeter=orthogonalPerimeter;outlineConnect=0;targetShapes=umlLifeline;portConstraint=eastwest;newEdgeStyle={&quot;curved&quot;:0,&quot;rounded&quot;:0};" vertex="1" parent="1">
<mxGeometry x="885" y="360" width="10" height="180" as="geometry" />
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-20" value="evaluate(kernels, parameters)" style="html=1;verticalAlign=bottom;endArrow=block;curved=0;rounded=0;" edge="1" parent="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="455" y="360.1600000000001" as="sourcePoint" />
<mxPoint x="885" y="360.1600000000001" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-21" value="loop" style="shape=umlFrame;whiteSpace=wrap;html=1;pointerEvents=0;" vertex="1" parent="1">
<mxGeometry x="340" y="330" width="600" height="230" as="geometry" />
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-22" value="&lt;div&gt;&lt;font style=&quot;font-size: 9px;&quot;&gt;[for each&amp;nbsp;&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size: 9px;&quot;&gt;optimisation step]&lt;/font&gt;&lt;/div&gt;" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="340" y="360" width="90" height="30" as="geometry" />
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-23" value="send_data(parameters)" style="html=1;verticalAlign=bottom;endArrow=open;curved=0;rounded=0;endFill=0;" edge="1" parent="1" source="NwwB8n2c3V3IefT4sgtS-19">
<mxGeometry relative="1" as="geometry">
<mxPoint x="520" y="650" as="sourcePoint" />
<mxPoint x="750" y="400" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-25" value="loop" style="shape=umlFrame;whiteSpace=wrap;html=1;pointerEvents=0;" vertex="1" parent="1">
<mxGeometry x="650" y="410" width="270" height="60" as="geometry" />
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-26" value="&lt;font style=&quot;font-size: 9px;&quot;&gt;[for each kernel]&lt;/font&gt;" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="650" y="440" width="90" height="20" as="geometry" />
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-27" value="dispatch kernel" style="html=1;verticalAlign=bottom;endArrow=open;curved=0;rounded=0;endFill=0;" edge="1" parent="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="885" y="439.30999999999995" as="sourcePoint" />
<mxPoint x="750" y="439.30999999999995" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-28" value="" style="html=1;points=[[0,0,0,0,5],[0,1,0,0,-5],[1,0,0,0,5],[1,1,0,0,-5]];perimeter=orthogonalPerimeter;outlineConnect=0;targetShapes=umlLifeline;portConstraint=eastwest;newEdgeStyle={&quot;curved&quot;:0,&quot;rounded&quot;:0};" vertex="1" parent="1">
<mxGeometry x="745" y="490" width="10" height="30" as="geometry" />
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-29" value="read_results()" style="html=1;verticalAlign=bottom;endArrow=block;curved=0;rounded=0;entryX=1;entryY=0;entryDx=0;entryDy=5;" edge="1" parent="1" source="NwwB8n2c3V3IefT4sgtS-19" target="NwwB8n2c3V3IefT4sgtS-28">
<mxGeometry x="-0.0027" relative="1" as="geometry">
<mxPoint x="910" y="685" as="sourcePoint" />
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-30" value="result_matrix" style="html=1;verticalAlign=bottom;endArrow=open;dashed=1;endSize=8;curved=0;rounded=0;exitX=1;exitY=1;exitDx=0;exitDy=-5;" edge="1" parent="1" source="NwwB8n2c3V3IefT4sgtS-28" target="NwwB8n2c3V3IefT4sgtS-19">
<mxGeometry relative="1" as="geometry">
<mxPoint x="910" y="715" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-31" value="result_matrix" style="html=1;verticalAlign=bottom;endArrow=open;dashed=1;endSize=8;curved=0;rounded=0;" edge="1" parent="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="455" y="540" as="targetPoint" />
<mxPoint x="885" y="540" as="sourcePoint" />
</mxGeometry>
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-32" value="" style="endArrow=none;dashed=1;html=1;rounded=0;" edge="1" parent="1" source="NwwB8n2c3V3IefT4sgtS-28">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="760" y="540" as="sourcePoint" />
<mxPoint x="750" y="590" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-33" value="" style="endArrow=none;dashed=1;html=1;rounded=0;" edge="1" parent="1" source="NwwB8n2c3V3IefT4sgtS-19">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="860" y="650" as="sourcePoint" />
<mxPoint x="890" y="590" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-34" value="" style="ellipse;html=1;shape=endState;fillColor=#000000;strokeColor=default;" vertex="1" parent="1">
<mxGeometry x="340" y="570" width="20" height="20" as="geometry" />
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-35" value="" style="endArrow=open;html=1;rounded=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;dashed=1;endFill=0;" edge="1" parent="1" target="NwwB8n2c3V3IefT4sgtS-34" source="NwwB8n2c3V3IefT4sgtS-5">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="445" y="650" as="sourcePoint" />
<mxPoint x="420" y="730" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-36" value="result_matrix" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="NwwB8n2c3V3IefT4sgtS-35">
<mxGeometry x="0.1271" relative="1" as="geometry">
<mxPoint x="8" y="-10" as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-37" value="" style="html=1;points=[[0,0,0,0,5],[0,1,0,0,-5],[1,0,0,0,5],[1,1,0,0,-5]];perimeter=orthogonalPerimeter;outlineConnect=0;targetShapes=umlLifeline;portConstraint=eastwest;newEdgeStyle={&quot;curved&quot;:0,&quot;rounded&quot;:0};" vertex="1" parent="1">
<mxGeometry x="885" y="230" width="10" height="40" as="geometry" />
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-38" value="transpile(intermediate_representation)" style="html=1;verticalAlign=bottom;endArrow=block;curved=0;rounded=0;entryX=0;entryY=0;entryDx=0;entryDy=5;" edge="1" target="NwwB8n2c3V3IefT4sgtS-37" parent="1" source="NwwB8n2c3V3IefT4sgtS-5">
<mxGeometry relative="1" as="geometry">
<mxPoint x="961" y="205" as="sourcePoint" />
</mxGeometry>
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-39" value="kernel" style="html=1;verticalAlign=bottom;endArrow=open;dashed=1;endSize=8;curved=0;rounded=0;exitX=0;exitY=1;exitDx=0;exitDy=-5;" edge="1" source="NwwB8n2c3V3IefT4sgtS-37" parent="1" target="NwwB8n2c3V3IefT4sgtS-5">
<mxGeometry relative="1" as="geometry">
<mxPoint x="961" y="275" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="NwwB8n2c3V3IefT4sgtS-40" value="" style="endArrow=none;dashed=1;html=1;rounded=0;" edge="1" parent="1" source="NwwB8n2c3V3IefT4sgtS-37" target="NwwB8n2c3V3IefT4sgtS-19">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="900" y="240" as="sourcePoint" />
<mxPoint x="900" y="110" as="targetPoint" />
</mxGeometry>
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>