Youssef
Madrid, Community of Madrid
Madrid, Comunidad de Madrid
The computing time required to process large data matrices may become impractical, even for a parallel application running on a multiprocessors cluster. NMF-DPC++ is an efficient and easy-to-use implementation of the NMF algorithm that takes advantage of the high computing performance through SYCL. ...learn more
Project status: Under Development
Recently, Intel has released the oneAPI programming paradigm based on the standard SYCL. The oneAPI's compiler Data Parallel C++ enables code to use a single source to target multiple hardware architectures, such as multi-core CPUs, GPUs, and even FPGAs or other hardware.
We test the oneAPI performance using the well-known, Non-negative Matrix Factorization (NMF) algorithm. This algorithm assists the Big-Data analysis, reducing the data dimension number. By comparing, we perform two NMF implementations; oneAPI's, and a C version optimized with the BLAS library. Our experimental results show that oneAPI's implementation has reduced the developing time, and offers better performance than the optimized C version on some platforms. But, it still has some issues which reduce the resulting performance achieved, having room to improve them in future releases.
https://github.com/artecs-group/nmf-dpcpp