5–9 May 2025
IJCLab, Paris
Europe/Paris timezone

Marionette: Data Structure Description and Management for Heterogeneous Computing

7 May 2025, 11:00
20m
IJCLab, Paris

IJCLab, Paris

Talk Recognition of Sustainable Software HSF

Speaker

Nuno Dos Santos Fernandes (Laboratory of Instrumentation and Experimental Particle Physics (PT))

Description

Marionette is a header-only C++ library that was designed to allow the description of arbitrary data structures that can work across heterogeneous compute devices and on the host, providing complete interoperability and convenient interfaces with no impact on runtime performance. This is achieved by decoupling the description of the data to be held from the way in which data will be stored, which enables the generation of all memory allocations, transfers and deallocations at compile-time without requiring the end user to write any sort of boilerplate code, achieving the same performance as the equivalent hand-written alternatives. Furthermore, an expressive and intuitive object-oriented interface can be offered on both host and device(s), especially since arbitrary functions can be added to the interface of both the individual objects and the entire collection of them, without any runtime performance penalty as everything is resolved at compile-time. This user-extensible interface also means that the behaviour of pre-existing data structures can be replicated, allowing for immediate porting of pre-existing code with only minor adjustments to the data types. Furthermore, since the user can override and further specialize data transfers, gradual porting to the new data structures with minimal performance loss becomes possible as efficient ways to convert to and from pre-existing structures can be provided. With a focus on flexibility, customisability and extensibility without compromising expressivity, convenience or ease of use, Marionette is designed to offer a general solution for expressing data structures, catering to a wide variety of use cases and levels of expertise, with little to no runtime impact.

Author

Nuno Dos Santos Fernandes (Laboratory of Instrumentation and Experimental Particle Physics (PT))

Presentation materials

There are no materials yet.