Demo Data from EDBT 2026 / reviewers in the wild / expert
Simone Pellegrini
dblp:68/7273
· DBLP profile ↗
9ranked-venue papers
4as first author
1since 2021 · last 2023
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 5 · 1 first-authorHuman-computer interaction and ubiquitous computing · 1 · 1 since 2021Applied, interdisciplinary, general and emerging computing · 1 · 1 since 2021
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Software engineering, system software, and programming languages
1 paper |
Compilers and program optimization · 100% | |
| Computer architecture, parallel and distributed computing, and storage systems
1 paper |
Parallel and multicore computing · 77% Performance modeling and evaluation · 23% |
Topics — the 3 heaviest of 4, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Compilers and program optimization
autotuning |
0.1 | 1 | 2012 | A multi-objective auto-tuning framework for parallel codes · SC 2012 |
Compilers and program optimization › loop optimization
loop tiling |
0.1 | 1 | 2012 | A multi-objective auto-tuning framework for parallel codes · SC 2012 |
Parallel and multicore computing
parallel programming runtimes |
0.1 | 1 | 2012 | A multi-objective auto-tuning framework for parallel codes · SC 2012 |
Methods — techniques the papers use, named apart from their topics
runtime adaptation · 0.3multi-objective optimization · 0.3compiler auto-tuning · 0.3
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2023 | Entreprenursery: Taking Care of IdeasabstractThe birth of a student entrepreneurial idea needs a delivery room and a research methodology. It should be nourished to grow like a nursery takes care of its offspring for them to become healthy adults. The initial birth of a startup idea needs encouragement, assistance and protection. Entreprenursery's main goal is to bring to life ideas and to help them develop once discovered. In this respect, Entreprenursery, working as an accelerator of ideas, is built on stakeholders who take care of the student's inclination for entrepreneurship. Entreprenursery is characterized by an informal teaching approach that breaks down barriers, fosters involvement and creates an enjoyable working atmosphere within students, mentors, corporates and entrepreneurial members of the society. All of them are part of a quadruple helix model in which the main actors are students leading their startup ideas to innovation. A digital platform – pingel@p – manages the collection and helps all stakeholders to work together to reach a common goal: allowing startup ideas to grow in a safe but encouraging environment by taking care of the intellectual property (IP) as well. Providing IP protection gives students a nurtured feeling and a sense of ownership. In Entreprenursery, students are also confronted with companies expressing their business needs and challenges, allowing entrepreneurial students to take them up. Mauro Citraro, Cristina Carcano-Monti, Simone Pellegrini, Alessandro Puiatti, Lorenzo Sommaruga |
EDUCON | 3 |
| 2014 | A uniform approach for programming distributed heterogeneous computing systemsabstractLarge-scale compute clusters of heterogeneous nodes equipped with multi-core CPUs and GPUs are getting increasingly popular in the scientific community. However, such systems require a combination of different programming paradigms making application development very challenging. In this article we introduce libWater, a library-based extension of the OpenCL programming model that simplifies the development of heterogeneous distributed applications. libWater consists of a simple interface, which is a transparent abstraction of the underlying distributed architecture, offering advanced features such as inter-context and inter-node device synchronization. It provides a runtime system which tracks dependency information enforced by event synchronization to dynamically build a DAG of commands, on which we automatically apply two optimizations: collective communication pattern detection and device-host-device copy removal. We assess libWater's performance in three compute clusters available from the Vienna Scientific Cluster, the Barcelona Supercomputing Center and the University of Innsbruck, demonstrating improved performance and scaling with different test applications and configurations. Ivan Grasso, Simone Pellegrini, Biagio Cosenza, Thomas Fahringer |
J. Parallel Distributed Comput. | 2 |
| 2013 | INSPIRE: The insieme parallel intermediate representationabstractProgramming standards like OpenMP, OpenCL and MPI are frequently considered programming languages for developing parallel applications for their respective kind of architecture. Nevertheless, compilers treat them like ordinary APIs utilized by an otherwise sequential host language. Their parallel control flow remains hidden within opaque runtime library calls which are embedded within a sequential intermediate representation lacking the concepts of parallelism. Consequently, the tuning and coordination of parallelism is clearly beyond the scope of conventional optimizing compilers and hence left to the programmer or the runtime system. The main objective of the Insieme compiler is to overcome this limitation by utilizing INSPIRE, a unified, parallel, highlevel intermediate representation. Instead of mapping parallel constructs and APIs to external routines, their behavior is modeled explicitly using a unified and fixed set of parallel language constructs. Making the parallel control flow accessible to the compiler lays the foundation for the development of reusable, static and dynamic analyses and transformations bridging the gap between a variety of parallel paradigms. Within this paper we describe the structure of INSPIRE and elaborate the considerations which influenced its design. Furthermore, we demonstrate its expressiveness by illustrating the encoding of a variety of parallel language constructs and we evaluate its ability to preserve performance relevant aspects of input codes. Herbert Jordan, Simone Pellegrini, Peter Thoman, Klaus Kofler, Thomas Fahringer |
PACT | 2 |
| 2013 | LibWater: heterogeneous distributed computing made easyabstractClusters of heterogeneous nodes composed of multi-core CPUs and GPUs are increasingly being used for High Performance Computing (HPC) due to the benefits in peak performance and energy efficiency. In order to fully harvest the computational capabilities of such architectures, application developers often employ a combination of different parallel programming paradigms (e.g. OpenCL, CUDA, MPI and OpenMP), also known in literature as hybrid programming, which makes application development very challenging. Furthermore, these languages offer limited support to orchestrate data and computations for heterogeneous systems. Ivan Grasso, Simone Pellegrini, Biagio Cosenza, Thomas Fahringer |
ICS | 2 |
| 2012 | On the Effects of CPU Caches on MPI Point-to-Point CommunicationsabstractSeveral researchers investigated the placing of communication calls in message-passing parallel codes. The current rule of thumb it to maximize communication/computation overlap with early binding. In this work, we demonstrate that this is not the only design constraint because CPU caches can have a significant impact on communications. We conduct an empirical study of the interaction between CPU caching and communications for several different communication scenarios. We use the gained insight to formulate a set of intuitive rules for communication call placement and show how our rules can be applied to practical codes. Our optimized codes show an improvement of up to 40% for a simple stencil code. Our work is a first step towards communication optimizations by moving communication calls. We expect that future communication-aware compilers will use our insights as a standard technique to move communication calls in order to optimize performance. Simone Pellegrini, Torsten Hoefler, Thomas Fahringer |
CLUSTER | 1 |
| 2012 | A Lightweight C++ Interface to MPIabstractThe Message Passing Interface (MPI) provides bindings for the three programming languages commonly used in High Performance Computing (HPC): C, C++ and Fortran. Unfortunately, MPI supports only the lowest common denominator of the three languages, providing a level of abstraction far lower than typical C++ libraries. Lately, after the decision of the MPI committee to deprecate and remove the C++ bindings from the MPI standard, programmers are forced to use either the C API or rely on third-party libraries. In this paper we present a lightweight, header-only C++ interface to MPI which uses object oriented and generic programming concepts to improve its integration into the C++ programming language. We compare our wrapper with a related approach called Boost. MPI showing how MPP facilitates the interaction with C++ objects. Performance wise, MPP outperforms Boost. MPI by reducing the interface overhead by a factor of eight. Additionally, MPP's handling of user-defined data types allows transferring of STL containers (e.g. std::list) up to 20 times faster than Boost. MPI for small linked lists by relying on software serialization. Simone Pellegrini, Radu Prodan, Thomas Fahringer |
PDP | 1 |
| 2012 | Exact Dependence Analysis for Increased Communication Overlap
Simone Pellegrini, Torsten Hoefler, Thomas Fahringer |
EuroMPI | 1 |
| 2012 | A multi-objective auto-tuning framework for parallel codesabstractIn this paper we introduce a multi-objective autotuning framework comprising compiler and runtime components. Focusing on individual code regions, our compiler uses a novel search technique to compute a set of optimal solutions, which are encoded into a multi-versioned executable. This enables the runtime system to choose specifically tuned code versions when dynamically adjusting to changing circumstances. We demonstrate our method by tuning loop tiling in cache-sensitive parallel programs, optimizing for both runtime and efficiency. Our static optimizer finds solutions matching or surpassing those determined by exhaustively sampling the search space on a regular grid, while using less than 4% of the computational effort on average. Additionally, we show that parallelism-aware multi-versioning approaches like our own gain a performance improvement of up to 70% over solutions tuned for only one specific number of threads. Herbert Jordan, Peter Thoman, Juan José Durillo, Simone Pellegrini, Philipp Gschwandtner, Thomas Fahringer, Hans Moritsch |
SC | 4 |
| 2011 | Leveraging C++ Meta-programming Capabilities to Simplify the Message Passing Programming Model
Simone Pellegrini, Radu Prodan, Thomas Fahringer |
EuroMPI | 1 |