ZFP is a leading software for lossless and error-controlled lossy compression of floating-point data that is vital in high-performance computing. It is one of the software technologies explicitly selected by the DOE Exascale Computing Project (ECP) since its inception in 2016 because of its numerous science and engineering applications and users. This project aims to develop a portable, scalable, and performant ZFP backend to Intel’s oneAPI implementation of SYCL that runs on Intel XPUs.
In this presentation, we document how we employed the Intel® DPC++ Compatibility Tool (DPCT) to transform the existing CUDA implementation of the zfp library into SYCL. While the conversion process proceeded smoothly with minimal issues, some manual intervention was required to ensure successful compilation, such as adjustments to the CMakeLists file and the resolution of namespace and other minor bugs. To address logical errors, we used oneAPI-gdb, yet we still think the tool can be improved.