One of the most time-consuming kernels of an epileptic seizure detection app is the computation of the Dynamic Time Warping (DTW) Distance Matrix. In this paper, we explore the design space of heterogeneous CPU, GPU, and FPGA implementations of this kernel. First, we optimize the CPU implementation of the DTW Distance Matrix computation leveraging the latest C++26 SIMD library and compare it with the SYCL implementation that also exploits the SIMD units. Next, run the SYCL code on an on-chip GPU, iGPU, as well as on a discrete NVIDIA GPU, dGPU. Finally we present the SYCL implementation on an Intel FPGA. Our evaluations demonstrate that SYCL seems well suited to exploit the SIMD capabilities of modern CPU cores, and shows promising results for the accelerating devices.

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

Computing DTWs on CPU, GPU and FPGA with SYCL

  • Cristian Campos,
  • Rafael Asenjo,
  • Javier Hormigo,
  • Angeles Navarro

摘要

One of the most time-consuming kernels of an epileptic seizure detection app is the computation of the Dynamic Time Warping (DTW) Distance Matrix. In this paper, we explore the design space of heterogeneous CPU, GPU, and FPGA implementations of this kernel. First, we optimize the CPU implementation of the DTW Distance Matrix computation leveraging the latest C++26 SIMD library and compare it with the SYCL implementation that also exploits the SIMD units. Next, run the SYCL code on an on-chip GPU, iGPU, as well as on a discrete NVIDIA GPU, dGPU. Finally we present the SYCL implementation on an Intel FPGA. Our evaluations demonstrate that SYCL seems well suited to exploit the SIMD capabilities of modern CPU cores, and shows promising results for the accelerating devices.