GPU tools for seismic wave modelling

Michael P. Lamoureux, Da Li, RJ Vestrum

Current computer desktops and laptops host dedicated graphics processing units (GPUs) which are typically used to speed up computations related to video display on the device. We can take advantage of the integrated GPU to speed up numerical calculations, making effective of parallel processing form of this architecture for raw code acceleration. This article summaries our experience in creating a teaching tool that demonstrates the use of the GPU to model seismic wave propagation in two dimensions, which runs sufficiently fast in real time to make it an enjoyable instructional device. The code is written in a Jupyter notebook, which is a computation tool that has been described in the journal Nature as the data scientists' computational notebook of choice. Links are provide to run the demo on your own machine, via a virtual machine hosted online.