Cargando…

Towards a cross-platform performance portability math kernel library in SYCL

<!--HTML-->The increasing number of high-performance computing centers around the globe is providing physicists and other researchers access to heterogeneous systems -- comprising multiple central processing units and graphics processing units per node -- with various platforms. However, it is...

Descripción completa

Detalles Bibliográficos
Autor principal: Pascuzzi, Vincent
Lenguaje:eng
Publicado: 2021
Materias:
Acceso en línea:http://cds.cern.ch/record/2767253
_version_ 1780971283411894272
author Pascuzzi, Vincent
author_facet Pascuzzi, Vincent
author_sort Pascuzzi, Vincent
collection CERN
description <!--HTML-->The increasing number of high-performance computing centers around the globe is providing physicists and other researchers access to heterogeneous systems -- comprising multiple central processing units and graphics processing units per node -- with various platforms. However, it is more often than not the case that domain scientists have limited resources such that writing multiple implementations of their codes to target the different platforms is unfeasible. To help address this, a number of portability layers are being developed that aim to allow programmers to achieve performant, portable codes; for example, Intel(R) oneAPI, which is based on the SYCL programming model. Nevertheless, portable application programming interfaces often lack some features and tools that are manifest in a platform-specific API. High-energy physicists in particular rely heavily on large sets of random numbers in nearly their entire workflow, from event generation to analysis. In this paper, we detail the implementation of a cuRAND backend into Intel's oneMKL, permitting random number generation within oneAPI applications on NVIDIA hardware using libraries optimised for these devices. By utilizing existing optimisations, we demonstrate the ability to achieve nearly native performance in cross-platform applications.
id cern-2767253
institution Organización Europea para la Investigación Nuclear
language eng
publishDate 2021
record_format invenio
spelling cern-27672532022-11-02T22:25:37Zhttp://cds.cern.ch/record/2767253engPascuzzi, VincentTowards a cross-platform performance portability math kernel library in SYCL25th International Conference on Computing in High Energy & Nuclear PhysicsConferences<!--HTML-->The increasing number of high-performance computing centers around the globe is providing physicists and other researchers access to heterogeneous systems -- comprising multiple central processing units and graphics processing units per node -- with various platforms. However, it is more often than not the case that domain scientists have limited resources such that writing multiple implementations of their codes to target the different platforms is unfeasible. To help address this, a number of portability layers are being developed that aim to allow programmers to achieve performant, portable codes; for example, Intel(R) oneAPI, which is based on the SYCL programming model. Nevertheless, portable application programming interfaces often lack some features and tools that are manifest in a platform-specific API. High-energy physicists in particular rely heavily on large sets of random numbers in nearly their entire workflow, from event generation to analysis. In this paper, we detail the implementation of a cuRAND backend into Intel's oneMKL, permitting random number generation within oneAPI applications on NVIDIA hardware using libraries optimised for these devices. By utilizing existing optimisations, we demonstrate the ability to achieve nearly native performance in cross-platform applications.oai:cds.cern.ch:27672532021
spellingShingle Conferences
Pascuzzi, Vincent
Towards a cross-platform performance portability math kernel library in SYCL
title Towards a cross-platform performance portability math kernel library in SYCL
title_full Towards a cross-platform performance portability math kernel library in SYCL
title_fullStr Towards a cross-platform performance portability math kernel library in SYCL
title_full_unstemmed Towards a cross-platform performance portability math kernel library in SYCL
title_short Towards a cross-platform performance portability math kernel library in SYCL
title_sort towards a cross-platform performance portability math kernel library in sycl
topic Conferences
url http://cds.cern.ch/record/2767253
work_keys_str_mv AT pascuzzivincent towardsacrossplatformperformanceportabilitymathkernellibraryinsycl
AT pascuzzivincent 25thinternationalconferenceoncomputinginhighenergynuclearphysics