Dr. Kevin Tubbs and Professor Tsai at <a href="http://www.cee.lsu.edu/people/Bios/Frank_Tsai.aspx" target="_blank">Louisiana State University</a> recently published an interesting paper using GPUs and Jacket to accelerate <a href="http://en.wikipedia.org/wiki/Lattice_Boltzmann_methods" target="_blank">lattice Boltzmann</a> models for shallow water flow and mass transport.  More details about this work are provided in the <a href="http://www.accelereyes.com/resources/latticeboltzmann" target="_blank">full success story page</a> on the website.

Jacket makes GPU programming easy.  "Very little recoding was needed to promote the LBM     code to run on the GPU," say the authors at one point in their paper.

In this blog post, we share the highlights of this work.  Using these methods, the authors are able to simulate shallow water flow and mass transport.  For instance, checkout these videos of a dam break:

<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="480" height="385" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/_OadwjkOBn4?fs=1&amp;hl=en_US" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="480" height="385" src="http://www.youtube.com/v/_OadwjkOBn4?fs=1&amp;hl=en_US" allowscriptaccess="always" allowfullscreen="true"></embed></object>

<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="480" height="385" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/4OEAhqrKizg?fs=1&amp;hl=en_US" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="480" height="385" src="http://www.youtube.com/v/4OEAhqrKizg?fs=1&amp;hl=en_US" allowscriptaccess="always" allowfullscreen="true"></embed></object>

The authors completed this work with a relatively older version of Jacket and older hardware, but still achieved impressive results.  The results are as follows:
<p style="text-align: left;"><a href="http://blog.accelereyes.com/blog/wp-content/uploads/2010/12/LatticeBoltzmannModel-MRTTRT1.png"><img class="aligncenter size-large wp-image-894" title="LatticeBoltzmannModel-MRTTRT" src="http://blog.accelereyes.com/blog/wp-content/uploads/2010/12/LatticeBoltzmannModel-MRTTRT1-1024x840.png" alt="" width="614" height="504" /></a>System specs:  A single workstation with a 3.0 GHz Inte Core Extreme     quad core and an NVIDIA Tesla C1060 GPU, with Jacket v1.2 and MATLAB R2008b.</p>
<p style="text-align: left;">Moral of this story:  If you are working with partial-differential equations, you might want to give Jacket and GPUs a try.  For a reasonable price, you can get wonderful performance with little programming hassle!</p>