This contains my bachelors thesis and associated tex files, code snippets and maybe more. Topic: Data Movement in Heterogeneous Memories with Intel Data Streaming Accelerator
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

57 lines
5.4 KiB

<?xml version="1.0" encoding="UTF-8"?>
<root xmlns:nsd="https://structorizer.fisch.lu" version="3.32-15" preRepeat="until " postFor="to" preReturn="return" postForIn="in" preWhile="while " output="OUTPUT" input="INPUT" preFor="for" preExit="exit" preLeave="leave" ignoreCase="true" preThrow="throw" preForIn="foreach" stepFor="by" namespace="" author="user" created="2024-01-18" changedby="user" changed="2024-01-18" origin="Structorizer 3.32-15" text="&#34;Benchmark(node, node_dst, node_src, size, mode)&#34;" comment="&#34;&#34;" color="ffffff" type="program" style="nice">
<children>
<instruction text="&#34;numa_run_on_node(node)&#34;" comment="&#34;&#34;" color="ffffff" rotated="0" disabled="0"></instruction>
<instruction text="&#34;src &#60;- numa_alloc_onnode(size, node_src)&#34;,&#34;dst &#60;- numa_alloc_onnode(size, node_dst)&#34;" comment="&#34;&#34;" color="ffffff" rotated="0" disabled="0"></instruction>
<instruction text="&#34;memset(src, 0x0, size)&#34;,&#34;memset(dst, 0x0, size)&#34;" comment="&#34;&#34;" color="ffffff" rotated="0" disabled="0"></instruction>
<instruction text="&#34;begin time total&#34;" comment="&#34;&#34;" color="ffff80" rotated="0" disabled="0"></instruction>
<for text="&#34;for amount of repetitions&#34;" comment="&#34;&#34;" counterVar="dummy_counter" startValue="amount of repetitions" stepConst="1" style="FREETEXT" color="ffffff" disabled="0">
<qFor>
<instruction text="&#34;synchronize with other threads&#34;" comment="&#34;&#34;" color="ffffff" rotated="0" disabled="0"></instruction>
<case text="&#34;mode&#34;,&#34;single submit&#34;,&#34;multi submit&#34;,&#34;batch submit&#34;,&#34;%&#34;" comment="&#34;&#34;" color="ffffff" disabled="0">
<qCase>
<instruction text="&#34;begin time submit&#34;" comment="&#34;&#34;" color="ffff80" rotated="0" disabled="0"></instruction>
<instruction text="&#34;handler &#60;- dml::submit(dml::memcopy, src, dst, size)&#34;" comment="&#34;&#34;" color="ffffff" rotated="0" disabled="0"></instruction>
<instruction text="&#34;end time submit, begin time complete&#34;" comment="&#34;&#34;" color="ffff80" rotated="0" disabled="0"></instruction>
<instruction text="&#34;result &#60;- handler.get()&#34;" comment="&#34;&#34;" color="ffffff" rotated="0" disabled="0"></instruction>
<instruction text="&#34;end time complete&#34;" comment="&#34;&#34;" color="ffff80" rotated="0" disabled="0"></instruction>
<instruction text="&#34;assert result.status == dml::ok&#34;" comment="&#34;&#34;" color="ffffff" rotated="0" disabled="0"></instruction>
</qCase>
<qCase>
<instruction text="&#34;begin time submit&#34;" comment="&#34;&#34;" color="ffff80" rotated="0" disabled="0"></instruction>
<for text="&#34;for batchsize&#34;" comment="&#34;&#34;" counterVar="dummy_counter" startValue="batchsize" stepConst="1" style="FREETEXT" color="ffffff" disabled="0">
<qFor>
<instruction text="&#34;handlers &#60;- append dml::submit(dml::memcopy, src, dst, size)&#34;" comment="&#34;&#34;" color="ffffff" rotated="0" disabled="0"></instruction>
</qFor>
</for>
<instruction text="&#34;end time submit, begin time complete&#34;" comment="&#34;&#34;" color="ffff80" rotated="0" disabled="0"></instruction>
<for text="&#34;for handler in handlers&#34;" comment="&#34;&#34;" counterVar="§FOR§ handler" startValue="" stepConst="" style="FREETEXT" color="ffffff" disabled="0">
<qFor>
<instruction text="&#34;result &#60;- handler.get()&#34;" comment="&#34;&#34;" color="ffffff" rotated="0" disabled="0"></instruction>
<instruction text="&#34;assert result.status == dml::ok&#34;" comment="&#34;&#34;" color="ffffff" rotated="0" disabled="0"></instruction>
</qFor>
</for>
<instruction text="&#34;end time complete&#34;" comment="&#34;&#34;" color="ffff80" rotated="0" disabled="0"></instruction>
</qCase>
<qCase>
<instruction text="&#34;begin time submit&#34;" comment="&#34;&#34;" color="ffff80" rotated="0" disabled="0"></instruction>
<instruction text="&#34;sequence &#60;- dml::sequence(batchsize)&#34;" comment="&#34;&#34;" color="ffffff" rotated="0" disabled="0"></instruction>
<for text="&#34;for batchsize&#34;" comment="&#34;&#34;" counterVar="dummy_counter" startValue="batchsize" stepConst="1" style="FREETEXT" color="ffffff" disabled="0">
<qFor>
<instruction text="&#34;sequence.add(dml::memcopy, src, dst, size)&#34;" comment="&#34;&#34;" color="ffffff" rotated="0" disabled="0"></instruction>
</qFor>
</for>
<instruction text="&#34;handler &#60;- dml::submit(dml::batch, sequence)&#34;" comment="&#34;&#34;" color="ffffff" rotated="0" disabled="0"></instruction>
<instruction text="&#34;end time submit, begin time complete&#34;" comment="&#34;&#34;" color="ffff80" rotated="0" disabled="0"></instruction>
<instruction text="&#34;result &#60;- handler.get()&#34;" comment="&#34;&#34;" color="ffffff" rotated="0" disabled="0"></instruction>
<instruction text="&#34;end time complete&#34;" comment="&#34;&#34;" color="ffff80" rotated="0" disabled="0"></instruction>
<instruction text="&#34;assert result.status == dml::ok&#34;" comment="&#34;&#34;" color="ffffff" rotated="0" disabled="0"></instruction>
</qCase>
<qCase color="ffffff">
</qCase>
</case>
</qFor>
</for>
<instruction text="&#34;end time total&#34;" comment="&#34;&#34;" color="ffff80" rotated="0" disabled="0"></instruction>
</children>
</root>