Skip to main content
European Commission logo print header

Middleware for memory and data-awareness in workflows

Project description

Middleware that optimises data movement via memory- and data-awareness paradigms

Middleware is the bridge connecting operating system functions and databases to the applications that rely on them. In the era of high-performance computing (HPC) and high-performance data analytics (HPDA), the bottleneck to performance is no longer floating point computational capability (i.e. raw computational power). Instead, restrictions on performance have become dominated by data movement through memory and storage systems. The EU-funded MAESTRO project aims to address the need for a data-aware and memory-aware middleware framework to deal with increasing data volumes. This will facilitate the optimisation of data handling via higher abstraction of data models, innovative workflow management and dynamic provisioning. Ultimately, this will lead to enhanced computational performance.


Maestro will build a data-aware and memory-aware middleware framework that addresses ubiquitous problems of data movement in complex memory hierarchies and at many levels of the HPC software stack.

Though HPC and HPDA applications pose a broad variety of efficiency challenges, it would be fair to say that the performance of both has become dominated by data movement through the memory and storage systems, as opposed to floating point computational capability. Despite this shift, current software technologies remain severely limited in their ability to optimise data movement. The Maestro project addresses what it sees as the two major impediments of modern HPC software:

1. Moving data through memory was not always the bottleneck. The software stack that HPC relies upon was built through decades of a different situation – when the cost of performing floating point operations (FLOPS) was paramount. Several decades of technical evolution built a software stack and programming models highly fit for optimising floating point operations but lacking in basic data handling functionality. We characterise the set of technical issues at missing data-awareness.

2. Software rightfully insulates users from hardware details, especially as we move higher up the software stack. But HPC applications, programming environments and systems software cannot make key data movement decisions without some understanding of the hardware, especially the increasingly complex memory hierarchy. With the exception of runtimes, which treat memory in a domain-specific manner, software typically must make hardware-neutral decisions which can often leave performance on the table . We characterise this issue as missing memory-awareness.

Maestro proposes a middleware framework that enables memory- and data-awareness.

Call for proposal


See other projects for this call

Sub call




Net EU contribution
€ 629 156,25
Wilhelm johnen strasse
52428 Julich

See on map

Nordrhein-Westfalen Köln Düren
Activity type
Research Organisations
Other funding
€ 0,00

Participants (7)