A Versatile Programming Model for Dynamic Task Scheduling on Cluster Computers
PhD Defense

By: Dejiang Jin
Advisor: Sotirios Ziavras
Department of Electrical and Computer Engineering

Time: 11:00 AM, Thursday, April 21st, 2005
Place: Room 202, ECE Center, New Jersey Institute of Technology (NJIT), Newark NJ. Directions

Abstract

This dissertation studies the development of application programs for parallel and distributed computer systems, especially PC clusters.  A methodology is proposed to increase the efficiency of code development and enhance performance while facilitating scalability and code portability.  A new programming model, the Super-Programming Model (SPM), is created. Programs are developed assuming an instruction set architecture comprised of Super-Instructions (SIs). SPM models the target system as a large Virtual Machine (VM); VM contains functional units implemented with code running on member computers to realize SIs. This approach resembles the process of designing instruction sets for microprocessors but the VM employs much coarser instructions and data structures.  A reference implementation of VM has been developed. SPM provides mechanisms, such as dynamic load balancing, to assure the efficient execution of programs. The vast majority of current programming models lack such mechanisms for distributed environments that suffer from long communication latencies. SIs use Super-Data Blocks (SDBs) as their operands. Each SI is assigned to a single member computer and is indivisible (i.e., its implementation is not interrupted for I/O).  SIs have predictable execution times because SDB sizes are limited by predefined thresholds. These qualities of SIs help dynamic load balancing. Since SPM employs coarse-grain tasks, the overall management overhead is small. SDB access can often overlap the execution of other SIs; a cache system further decreases average memory latencies. A performance estimation model is developed that takes these features into account. Finally, the definition of scalability for parallel/distributed processing is refined to represent a multi-dimensional entity.  Sample cases are analyzed.

Committee Members:

Dr. Sotirios G. Ziavras, Advisor, ECE, NJIT
Dr. Alexandros Gerbessiotis, Computer Science, NJIT
Dr. Sui-Hoi (Edwin) Hou, ECE, NJIT
Dr. Roberto Rojas-Cessa, ECE, NJIT
Dr. Jie Hu, ECE, NJIT