The High Performance and Dependable Computing Systems research group research activities are focused on differentiated aspects of computing and service-oriented applications and platforms, spanning from theory to modeling, design and implementation. Significant results have been achieved in:
- system-level cyber security, with a special focus on speculative execution;
- operating systems and virtualization, with a special focus on innovative capabilities offered by modern operating systems;
- the definition of frameworks and protocols for dependability in large scale infrastructures, with particular attention to application contexts entailing manipulation of data within (atomic) distributed transactions;
- the design and implementation of high-performance computing with particular interest to discrete event simulation platforms conforming to both pro- prietary and standardized protocol stacks;
- the design and development of innovative operating system services oriented to support-high performance computing applications and data intensive ones;
- binary instrumentation to transparently inject non-functional, rather performance/reliability-oriented capabilities, within general applications;
- the design of techniques for improving energy-efficiency of applications deployed on massively-parallel machines;
- the design and/or exploitation of transactional memory paradigms, either software- or hardware-based;
- the design and implementation of transparent middleware-level software to enable software reversibility on top of non-reversible hardware, as a building block to optimize execution of data-intensive applications and/or enable post-mortem reversible debugging;
- the definition and validation of accurate performance and dependability models for components/sub-systems forming the core of the aforementioned computing environments.
The vision characterizing the research of this group is based on a strong synergy between theoretical studies and design/development techniques aimed at bridging theory and practice by accurately assessing the viability of research results in environments and application contexts based on current technologies, and in those that can be foreseen via emerging technological trends. Up to now, various open source packages have been re- leased as a concrete indication of the effectiveness of the aforementioned approach. Some of the publicly-released packages have been already adopted by other (foreign) research centers/industrial parties.
Several research challenges can be easily envisaged along the paths of Quality-of- Service (QoS) oriented design of systems, as well as the design of autonomic systems embedding self-properties aimed at ensuring/guaranteeing/achieving pre-determined performance and/or dependability levels. The container hosting and framing these challenges will include both traditional system organizations and innovative computing environments relying on systematic use of infrastructure virtualization approaches, such as cloud computing. Further, we target innovative programming models and paradigms, such as sequential/concurrent programming based on (a) transparent and automatic techniques supporting reverse computing schemes as a mean for maintaining causal consistency as well as guaranteeing fault tolerance and security, and to enable reversible/post-mortem debugging (b) transparent injection via instrumentation of non-functional logic within generic applications so as to guarantee the possibility to drive the execution of these applications while optimizing resource/energy usage as well as performance.
The group is constantly collaborating with University of Rome "Tor Vergata" (DICII department), University of L'Aquila, CNR (SAKS group).