Multithreading in distributed-memory systems and simulation: Design, implementation, and experiments

Janche Sang, Purdue University

Abstract

This dissertation focuses on design and implementation issues of a multithreaded parallel programming paradigm for distributed-memory systems. One of the features of the multithreaded model is a thread migration capability, primarily used to balance loads across processors and increase data locality of reference. We have implemented two prototype multithreaded packages: one is realized through a set of functions containing minimal assembly code and another is based mainly on compile-time program transformations. Since the latter can transform a thread's physical states into logical forms, it makes thread migration in heterogeneous distributed environments feasible. A process-oriented simulation system has been designed and implemented based on the threads libraries. We have proposed two efficient algorithms for the simulation of round-robin and processor sharing simulation disciplines. A novel mobile-process approach has also been proposed for parallelizing process-oriented simulation systems. This approach entails the migration of a requesting process with its timestamp to the remote site hosting the requested passive object. As a result, the migrant process can make subsequent accesses of the object locally and continue execution transparently, as if on its original host.

Degree

Ph.D.

Advisors

Rego, Purdue University.

Subject Area

Computer science

Off-Campus Purdue Users:
To access this dissertation, please log in to our
proxy server
.

Share

COinS