From c376c8b9e6183b29e136cf63050f758385e21f69 Mon Sep 17 00:00:00 2001 From: Simone Balducci Date: Tue, 11 Feb 2025 01:17:48 +0100 Subject: [PATCH 1/6] Add Patatrack project for year 2025 --- _gsocprojects/2025/project_Patatrack.md | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 _gsocprojects/2025/project_Patatrack.md diff --git a/_gsocprojects/2025/project_Patatrack.md b/_gsocprojects/2025/project_Patatrack.md new file mode 100644 index 000000000..573ae8005 --- /dev/null +++ b/_gsocprojects/2025/project_Patatrack.md @@ -0,0 +1,8 @@ +--- +project: Patatrack +layout: default +logo: patatrack.png +description: | + [Patatrack](https://patatrack.web.cern.ch/patatrack/index.html) project started in 2016 by a group of people with various area of expertise, such as software optimization, heterogeneous computing, track reconstruction and High Level Trigger (HLT) at the CMS experiment at CERN. The goal was to demonstrate that part of the HLT reconstruction could be efficienty offloaded on machines equipped with GPUs for parallel execution. Nowadays, Patatrack developments have been integrated into the CMS software for event reconstruction and the project focuses on the exploration of innovative software and hardware technologies to bring smart software closer to the detectors read-out at CERN experiments. +--- +{% include gsoc_project.ext %} From 40f514cd2d382def986ddeba308ee5bdd7bdd399 Mon Sep 17 00:00:00 2001 From: Simone Balducci Date: Tue, 11 Feb 2025 01:18:04 +0100 Subject: [PATCH 2/6] Add project proposal for Patatrack and update list of mentors --- .../2025/proposal_CLUEsteringAutotuning.md | 63 +++++++++++++++++++ gsoc/2025/mentors.md | 2 + 2 files changed, 65 insertions(+) create mode 100644 _gsocproposals/2025/proposal_CLUEsteringAutotuning.md diff --git a/_gsocproposals/2025/proposal_CLUEsteringAutotuning.md b/_gsocproposals/2025/proposal_CLUEsteringAutotuning.md new file mode 100644 index 000000000..5359e0d5c --- /dev/null +++ b/_gsocproposals/2025/proposal_CLUEsteringAutotuning.md @@ -0,0 +1,63 @@ +--- +title: Development of an auto-tuning tool for the CLUEstering library +layout: gsoc_proposal +project: Patatrack +year: 2025 +organization: CERN +--- + +## Description +[CLUE][clue] is a fast and fully parallelizable density-based clustering algorithm, optimized for high- +occupancy scenarios, where the number of clusters is much larger than the average number of hits +in a cluster ([Rovere et al. 2020][cluepaper]). The algorithm uses a grid spatial index for fast querying of +neighbors and its timing scales linearly with the number of points within the range considered. It is +currently used in the CMS and CLIC event reconstruction software for clustering calorimetric hits in +two dimensions based on their energy. The CLUE algorithm has been generalized to an arbitrary +number of dimensions and to a wider range of applications in [CLUEstering][cluestering], a general purpose +clustering library, with the backend implemented in C++ and providing a Python interface for +easier use. The backend can be executed on multiple backends (serial, TBB, GPUs, ecc) thanks +to the [Alpaka][alpakapaper] performance portability library. One feature currently lacking from CLUEstering +and that would be extremely useful for every user, is an autotuning of the parameters, that given +the expected number of clusters computes the combination of input parameters that results in the best +clustering. +For this task, one of the options to be explored is “The Optimizer”, a Python library developed by +the Patatrack group of the CMS experiment which provides a collection of optimization algorithm, +in particular MOPSO (Multi-Objective Particle Swarm Optimization). + +## Expected results +* Consider the best techniques and tools for the task +* Develop an auto-tuning tool for the parameters of CLUEstering +* Test it on a wide range of commonly used datasets +* Benchmark and profile to identify the bottlenecks of the tool and optimize it + +## Evaluation Task +Interested students please contact simone.balducci@cern.ch + +## Technologies +* C++, Python + +## Desirable skills +* Experience with development in C++17/20 +* Experience with GPU computing +* Experience with machine learning and optimization techniques +* Experience with development of Python libraries + +## Additional information +Difficulty level (low, medium, hard): medium +Duration: 350 hours +Mentor availability: June-October + +## Mentors + * **[Simone Balducci](mailto:simone.balducci@cern.ch) (CERN UNIBO)** + * [Felice Pantaleo](mailto:felice.pantaleo@cern.ch) (CERN) + +## Links + * [CLUE](clue) + * [CLUEstering](cluestering) + * [Alpaka](alpaka) + +[clue]: https://gitlab.cern.ch/kalos/clue +[cluestering]: https://github.com/cms-patatrack/CLUEstering +[cluepaper]: https://www.frontiersin.org/articles/10.3389/fdata.2020.591315/full +[alpakapaper]: https://arxiv.org/abs/1602.08477 +[alpaka]: https://github.com/alpaka-group/alpaka diff --git a/gsoc/2025/mentors.md b/gsoc/2025/mentors.md index 8daa4b787..ef2d3d673 100644 --- a/gsoc/2025/mentors.md +++ b/gsoc/2025/mentors.md @@ -6,6 +6,7 @@ layout: plain **Note for contributors:** entries must be sorted in **last name** alphabetic order ## Full Mentor List (Name, Email, Org) +* Simone Balducci [simone.balducci@cern.ch](mailto:simone.balducci@cern.ch) CERN * Martin Barisits [martin.barisits@cern.ch](mailto:martin.barisits@cern.ch) CERN * Lukas Breitwieser [lukas.johannes.breitwieser@cern.ch](mailto:lukas.johannes.breitwieser@cern.ch) CERN * Andy Buckley [andy.buckley@gla.ac.uk](mailto:andy.buckley@gla.ac.uk) UofGlasgow @@ -18,6 +19,7 @@ layout: plain * David Lange [david.lange@cern.ch](mailto:david.lange@cern.ch) CompRes * Serguei Linev [S.Linev@gsi.de](mailto:S.Linev@gsi.de) GSI * Peter McKeown [peter.mckeown@cern.ch](mailto:peter.mckeown@cern.ch) CERN +* Felice Pantaleo [felice.pantaleo@cern.ch](mailto:felice.pantaleo@cern.ch) CERN * Giacomo Parolini [giacomo.parolini@cern.ch](mailto:giacomo.parolini@cern.ch) CERN * Alexander Penev [alexander.p.penev@gmail.com](mailto:alexander.p.penev@gmail.com) CompRes/University of Plovdiv, BG * Mayank Sharma [mayank.sharma@cern.ch](mailto:mayank.sharma@cern.ch) UMich From 9edd700c79e55fa9b19595a50c8e00195aa9f99e Mon Sep 17 00:00:00 2001 From: Simone Balducci Date: Tue, 11 Feb 2025 01:32:21 +0100 Subject: [PATCH 3/6] Fix links section --- _gsocproposals/2025/proposal_CLUEsteringAutotuning.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/_gsocproposals/2025/proposal_CLUEsteringAutotuning.md b/_gsocproposals/2025/proposal_CLUEsteringAutotuning.md index 5359e0d5c..5fbb4956b 100644 --- a/_gsocproposals/2025/proposal_CLUEsteringAutotuning.md +++ b/_gsocproposals/2025/proposal_CLUEsteringAutotuning.md @@ -52,9 +52,9 @@ Mentor availability: June-October * [Felice Pantaleo](mailto:felice.pantaleo@cern.ch) (CERN) ## Links - * [CLUE](clue) - * [CLUEstering](cluestering) - * [Alpaka](alpaka) + * [CLUE][clue] + * [CLUEstering][cluestering] + * [Alpaka][alpaka] [clue]: https://gitlab.cern.ch/kalos/clue [cluestering]: https://github.com/cms-patatrack/CLUEstering From 93acecf988c33b0a2cdcee4f653ae4a0b47e9e35 Mon Sep 17 00:00:00 2001 From: Simone Balducci Date: Tue, 11 Feb 2025 09:58:42 +0100 Subject: [PATCH 4/6] Fix typo in Patatrack project --- _gsocprojects/2025/project_Patatrack.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_gsocprojects/2025/project_Patatrack.md b/_gsocprojects/2025/project_Patatrack.md index 573ae8005..a6b256731 100644 --- a/_gsocprojects/2025/project_Patatrack.md +++ b/_gsocprojects/2025/project_Patatrack.md @@ -3,6 +3,6 @@ project: Patatrack layout: default logo: patatrack.png description: | - [Patatrack](https://patatrack.web.cern.ch/patatrack/index.html) project started in 2016 by a group of people with various area of expertise, such as software optimization, heterogeneous computing, track reconstruction and High Level Trigger (HLT) at the CMS experiment at CERN. The goal was to demonstrate that part of the HLT reconstruction could be efficienty offloaded on machines equipped with GPUs for parallel execution. Nowadays, Patatrack developments have been integrated into the CMS software for event reconstruction and the project focuses on the exploration of innovative software and hardware technologies to bring smart software closer to the detectors read-out at CERN experiments. + [Patatrack](https://patatrack.web.cern.ch/patatrack/index.html) project started in 2016 by a group of people with various area of expertise, such as software optimization, heterogeneous computing, track reconstruction and High Level Trigger (HLT) at the CMS experiment at CERN. The goal was to demonstrate that part of the HLT reconstruction could be efficiently offloaded on machines equipped with GPUs for parallel execution. Nowadays, Patatrack developments have been integrated into the CMS software for event reconstruction and the project focuses on the exploration of innovative software and hardware technologies to bring smart software closer to the detectors read-out at CERN experiments. --- {% include gsoc_project.ext %} From 50b7e83d72f71fd562ce530677252d3f5a061e5c Mon Sep 17 00:00:00 2001 From: Simone Balducci Date: Tue, 11 Feb 2025 09:59:57 +0100 Subject: [PATCH 5/6] Fix path of patatrack logo --- _gsocprojects/2025/project_Patatrack.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_gsocprojects/2025/project_Patatrack.md b/_gsocprojects/2025/project_Patatrack.md index a6b256731..b6d82cfcc 100644 --- a/_gsocprojects/2025/project_Patatrack.md +++ b/_gsocprojects/2025/project_Patatrack.md @@ -1,7 +1,7 @@ --- project: Patatrack layout: default -logo: patatrack.png +logo: patatrack-logo.png description: | [Patatrack](https://patatrack.web.cern.ch/patatrack/index.html) project started in 2016 by a group of people with various area of expertise, such as software optimization, heterogeneous computing, track reconstruction and High Level Trigger (HLT) at the CMS experiment at CERN. The goal was to demonstrate that part of the HLT reconstruction could be efficiently offloaded on machines equipped with GPUs for parallel execution. Nowadays, Patatrack developments have been integrated into the CMS software for event reconstruction and the project focuses on the exploration of innovative software and hardware technologies to bring smart software closer to the detectors read-out at CERN experiments. --- From 9238dc810288ae42aedd00ded79847ad57f260da Mon Sep 17 00:00:00 2001 From: Valentin Volkl Date: Tue, 11 Feb 2025 11:59:08 +0100 Subject: [PATCH 6/6] Update _gsocproposals/2025/proposal_CLUEsteringAutotuning.md --- _gsocproposals/2025/proposal_CLUEsteringAutotuning.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/_gsocproposals/2025/proposal_CLUEsteringAutotuning.md b/_gsocproposals/2025/proposal_CLUEsteringAutotuning.md index 5fbb4956b..c0ee704df 100644 --- a/_gsocproposals/2025/proposal_CLUEsteringAutotuning.md +++ b/_gsocproposals/2025/proposal_CLUEsteringAutotuning.md @@ -43,9 +43,9 @@ Interested students please contact simone.balducci@cern.ch * Experience with development of Python libraries ## Additional information -Difficulty level (low, medium, hard): medium -Duration: 350 hours -Mentor availability: June-October +* Difficulty level (low, medium, hard): medium +* Duration: 350 hours +* Mentor availability: June-October ## Mentors * **[Simone Balducci](mailto:simone.balducci@cern.ch) (CERN UNIBO)**