|Home \ Graduation Activities \ Post-Graduation Page||Login|
A Middleware for Parallel Computing in Clusters of Multicores
The purpose of this thesis is to equip an existent middleware layer for parallel computing with drivers that enable places (virtual node abstractions) to be deployed in distributed memory architectures, with particular focus on clusters of multi-cores. The middleware is composed of two layers: 1 - The higher layer provides an abstraction for processing nodes (place) that hides the idiosyncrasies of parallel computing, such as task management, communication, synchronization, shared memory management and data distribution, in an implementation independent layer with a well-defined interface. 2 - The lower layer is composed of drivers for specific functionalities, such as communication, synchronization, shared memory management and scheduling, on which the middleware delegates the concrete implementation of these features. This thesis will focus mostly on the lower layer, in particular on the implementation of network aware communication and shared memory management drivers that will enable places to be deployed along in a cluster (one or more places per node), and across a cluster (one place across multiple nodes). The work will also address the ability to classify drivers according to their features (for instance, network aware communication versus local communication) in order to choose the most adequate driver for a specific situation.
Start Date: 2011-02-15
End Date: 2012-06-22
Post-Graduation Student / Researcher / Professor: