Migration of CUDA seismic application to SYCL

SeisAcoMod2D is a parallel seismic application developed by C-DAC based on a sequential program, FWM2DA. The CUDA C implementation of SeisAcoMod2D cannot run on GPUs other than that of Nvidia. To leverage GPUs of other OEMs, we migrated the CUDA code to Intel’s SYCL based DPC++. Intel® oneAPI tools greatly helped the migration process with a little manual intervention. The migrated code has been tested to run on Intel® and Nvidia GPUs. ​C-DAC used Intel® DPCT tool to migrate CUDA source to SYCL. For this case, the Compatibility Tool was able to achieve 100% migration in a very short time. ​Intel® Vtune was used to identify bottlenecks in the migrated SYCL code and accordingly the changes were made to overcome the issues. Overall, oneAPI along with Intel® GPU (Intel® Data Center GPU Max series) helped to speed up C-DAC’s seismic modeling application run time on CPU by ~7x compared to baseline, and on GPU by ~1.7x compared to NVIDIA A100* platforms.


Learn about joining the UXL Foundation:

Join now