Dr. Martin Schulz

Time : Monday, February 01, 11:00am

Location: Stuart Building, Room # 238

 

HAMSTER: A Framework for Shared Memory Support in NUMA-based Cluster Environments

 

Abstract

NUMA-based clusters provide an efficient and cost-effective platform for parallel computing. However, a comprehensive software infrastructure with support for all major parallel programming paradigms is required in order to fully exploit their potentials. Such an infrastructure has been developed within the SMiLE project (http://smile.in.tum.de/) for commodity clusters based on the NUMA interconnection fabric SCI (Scalable Coherent Interface).

While support for message passing can be achieved on top of these architectures in a straightforward manner, the implementation of a Shared Memory programming framework imposes additional challenges. Most severely are the semantic gap between the global physical memory provided by the NUMA hardware and the global
virtual memory required for Shared Memory programming and the need for an explicit cache and consistency management.

The HAMSTER (Hybrid-dsm based Adaptive and Modular Shared memory archiTEctuRe, http://hamster.in.tum.de/) framework aims at overcoming these challenges and thereby at contributing to a multi-paradigm software infrastructure efficiently supporting both message passing and shared memory. Its core component is a Hybrid-DSM system combining the NUMA hardware capabilities with a lean software component for memory and consistency control. A prototype has been implemented within SMiLE and has been evaluated using several applications, including real-world codes from the area of nuclear medical imaging. The results of these experiments are very encouraging and prove both the feasibility and the efficiency of the proposed approach.