<feed xmlns='http://www.w3.org/2005/Atom'>
<title>symlbm_playground/symbolic, branch ink</title>
<subtitle>Tinkering with LBM, OpenCL and SymPy-based code generation</subtitle>
<link rel='alternate' type='text/html' href='https://code.kummerlaender.eu/symlbm_playground/'/>
<entry>
<title>Determine discrete velocities of D2Q9 and D3Q27</title>
<updated>2019-07-02T19:14:14+00:00</updated>
<author>
<name>Adrian Kummerlaender</name>
</author>
<published>2019-07-02T19:14:14+00:00</published>
<link rel='alternate' type='text/html' href='https://code.kummerlaender.eu/symlbm_playground/commit/?id=2f4794a0ddc0ff472ad3f0be20d7a15de72cfae4'/>
<id>2f4794a0ddc0ff472ad3f0be20d7a15de72cfae4</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Determine lattice speed of sound</title>
<updated>2019-07-02T18:35:44+00:00</updated>
<author>
<name>Adrian Kummerlaender</name>
</author>
<published>2019-07-02T18:35:44+00:00</published>
<link rel='alternate' type='text/html' href='https://code.kummerlaender.eu/symlbm_playground/commit/?id=55fb5b62ab3381327d4b04cf1c5ab095874d29cc'/>
<id>55fb5b62ab3381327d4b04cf1c5ab095874d29cc</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Determine weights using Gauss-Hermite quadrature</title>
<updated>2019-07-02T12:59:46+00:00</updated>
<author>
<name>Adrian Kummerlaender</name>
</author>
<published>2019-07-02T12:58:36+00:00</published>
<link rel='alternate' type='text/html' href='https://code.kummerlaender.eu/symlbm_playground/commit/?id=7ee1ca337f25ab6ead86ead28c10df520cff1b63'/>
<id>7ee1ca337f25ab6ead86ead28c10df520cff1b63</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Gather interop moments in a more generic manner</title>
<updated>2019-06-21T18:41:11+00:00</updated>
<author>
<name>Adrian Kummerlaender</name>
</author>
<published>2019-06-21T18:41:11+00:00</published>
<link rel='alternate' type='text/html' href='https://code.kummerlaender.eu/symlbm_playground/commit/?id=1f5b9393f7317f7e505fd4f60991797fa273e3d2'/>
<id>1f5b9393f7317f7e505fd4f60991797fa273e3d2</id>
<content type='text'>
i.e. return unshifted moments in a implicitly ordered float4 array.
Cell positions are reconstructed by a vertex shaded analogously to
how it is done in compustream.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
i.e. return unshifted moments in a implicitly ordered float4 array.
Cell positions are reconstructed by a vertex shaded analogously to
how it is done in compustream.
</pre>
</div>
</content>
</entry>
<entry>
<title>Move back assignment</title>
<updated>2019-06-20T13:42:58+00:00</updated>
<author>
<name>Adrian Kummerlaender</name>
</author>
<published>2019-06-20T13:42:58+00:00</published>
<link rel='alternate' type='text/html' href='https://code.kummerlaender.eu/symlbm_playground/commit/?id=ce971fa70059079ca2328f5fbf49a751c4833399'/>
<id>ce971fa70059079ca2328f5fbf49a751c4833399</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Expand square expressions</title>
<updated>2019-06-18T16:04:26+00:00</updated>
<author>
<name>Adrian Kummerlaender</name>
</author>
<published>2019-06-18T12:47:13+00:00</published>
<link rel='alternate' type='text/html' href='https://code.kummerlaender.eu/symlbm_playground/commit/?id=804e15d65e32479a476ef212238c25ada4865e3f'/>
<id>804e15d65e32479a476ef212238c25ada4865e3f</id>
<content type='text'>
Yields another ~5-10 MLUPS in the simple D2Q9 example.
Now averaging at ~840 MLUPS for D2Q9 and ~ 400 MLUPS for D3Q19 on a K2200.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Yields another ~5-10 MLUPS in the simple D2Q9 example.
Now averaging at ~840 MLUPS for D2Q9 and ~ 400 MLUPS for D3Q19 on a K2200.
</pre>
</div>
</content>
</entry>
<entry>
<title>Declutter gid and offset calculation</title>
<updated>2019-06-16T11:51:35+00:00</updated>
<author>
<name>Adrian Kummerlaender</name>
</author>
<published>2019-06-16T11:51:35+00:00</published>
<link rel='alternate' type='text/html' href='https://code.kummerlaender.eu/symlbm_playground/commit/?id=b64054acaa9c9710c5b4140cfdb8e32e392a5df9'/>
<id>b64054acaa9c9710c5b4140cfdb8e32e392a5df9</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add D3Q27 descriptor</title>
<updated>2019-06-16T11:08:02+00:00</updated>
<author>
<name>Adrian Kummerlaender</name>
</author>
<published>2019-06-16T11:08:02+00:00</published>
<link rel='alternate' type='text/html' href='https://code.kummerlaender.eu/symlbm_playground/commit/?id=54a45dbec3e046b3e3c333aa1fde68244d0d2a51'/>
<id>54a45dbec3e046b3e3c333aa1fde68244d0d2a51</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Split descriptors and symbolic formulation</title>
<updated>2019-06-15T19:39:42+00:00</updated>
<author>
<name>Adrian Kummerlaender</name>
</author>
<published>2019-06-15T19:39:42+00:00</published>
<link rel='alternate' type='text/html' href='https://code.kummerlaender.eu/symlbm_playground/commit/?id=63163ebbbced363fde788c560b479569470705bd'/>
<id>63163ebbbced363fde788c560b479569470705bd</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add support for generating a D3Q19 kernel</title>
<updated>2019-06-15T18:54:56+00:00</updated>
<author>
<name>Adrian Kummerlaender</name>
</author>
<published>2019-06-15T18:45:27+00:00</published>
<link rel='alternate' type='text/html' href='https://code.kummerlaender.eu/symlbm_playground/commit/?id=d71faec93ec0a55c46810e0d178b2803ee89130c'/>
<id>d71faec93ec0a55c46810e0d178b2803ee89130c</id>
<content type='text'>
Note how this basically required no changes besides generalizing cell indexing
and adding the symbolic formulation of a D3Q19 BGK collision step.

Increasing the neighborhood communication from 9 to 19 cells leads to a
significant performance "regression": The 3D kernel yields ~ 360 MLUPS
compared to the 2D version's ~ 820 MLUPS.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Note how this basically required no changes besides generalizing cell indexing
and adding the symbolic formulation of a D3Q19 BGK collision step.

Increasing the neighborhood communication from 9 to 19 cells leads to a
significant performance "regression": The 3D kernel yields ~ 360 MLUPS
compared to the 2D version's ~ 820 MLUPS.
</pre>
</div>
</content>
</entry>
<entry>
<title>Tidy up symbolic kernel generation</title>
<updated>2019-06-13T19:19:49+00:00</updated>
<author>
<name>Adrian Kummerlaender</name>
</author>
<published>2019-06-13T19:19:49+00:00</published>
<link rel='alternate' type='text/html' href='https://code.kummerlaender.eu/symlbm_playground/commit/?id=61cd3b6bc53c151863bd99fb2a03b29157a876ca'/>
<id>61cd3b6bc53c151863bd99fb2a03b29157a876ca</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Restructuring</title>
<updated>2019-06-12T19:01:42+00:00</updated>
<author>
<name>Adrian Kummerlaender</name>
</author>
<published>2019-06-12T19:01:42+00:00</published>
<link rel='alternate' type='text/html' href='https://code.kummerlaender.eu/symlbm_playground/commit/?id=9cf82f641b8982df526107b99d883545ee02fe20'/>
<id>9cf82f641b8982df526107b99d883545ee02fe20</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
