Skip to content

Commit 1fcfc0b

Browse files
authored
Create lessons-learned-migrating-cuda-to-sycl-a-hep-case-study-with-root-rdataframe.md
Adds, "Lessons Learned Migrating CUDA to SYCL: A HEP Case Study with ROOT RDataFrame"
1 parent bef505c commit 1fcfc0b

File tree

1 file changed

+26
-0
lines changed

1 file changed

+26
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
---
2+
contributor: max
3+
date: '2024-01-24T08:08:10.490000+00:00'
4+
title: 'Lessons Learned Migrating CUDA to SYCL: A HEP Case Study with ROOT RDataFrame'
5+
external_url: https://arxiv.org/pdf/2310.16122
6+
authors:
7+
- name: Jolly Chen
8+
- name: Monica Dessole
9+
- name: Ana Lucia Varbanescu
10+
tags:
11+
- sycl
12+
- gpu
13+
- cuda
14+
- heterogeneous-programming
15+
---
16+
17+
The world’s largest particle accelerator, located at CERN, produces petabytes of data that need to be analysed efficiently,
18+
to study the fundamental structures of our universe. ROOT is an open-source C++ data analysis framework, developed for this
19+
purpose. Its high- level data analysis interface, RDataFrame, currently only supports CPU parallelism. Given the increasing
20+
heterogeneity in computing facilities, it becomes crucial to efficiently support GPGPUs to take advantage of the available
21+
resources. SYCL allows for a single-source implementation, which enables support for different architectures. In this paper,
22+
we describe a CUDA implementation and the migration process to SYCL, focusing on a core high energy physics operation in
23+
RDataFrame – histogramming. We detail the challenges that we faced when integrating SYCL into a large and complex code base.
24+
Furthermore, we perform an extensive comparative performance analysis of two SYCL compilers, AdaptiveCpp and DPC++, and the
25+
reference CUDA implementation. We highlight the performance bottlenecks that we encountered, and the methodology used to detect
26+
these. Based on our findings, we provide actionable insights for developers of SYCL applications.

0 commit comments

Comments
 (0)