Skip to main content
eScholarship
Open Access Publications from the University of California

UC Irvine

UC Irvine Electronic Theses and Dissertations bannerUC Irvine

A Fine-grain Parallel Execution Model for Homogeneous/Heterogeneous Many-core Systems

Abstract

Computing systems have undergone a fundamental transformation from single core devices to devices with homogeneous/heterogeneous many-cores connected within a single or multiple chips. However, while the core count per chip continues to increase dramatically, the available on-chip memory per core is only getting marginally bigger. How to successfully explore parallelism and deliver scalability is a major research issue and we have successfully attacked three main problems:

First, it is well known that, in homogeneous shared-memory many-core systems, traditional coarse-grain multithreading models are reaching their limits. We have thus proposed and designed a fine-grain event-driven multithreading execution model that will deliver the parallelism required to efficiently operate with dependence-heavy applications in shared-memory systems. By performing finer-grained and hierarchical synchronization, even "almost embarrassingly parallel" workloads can obtain large performance improvement.

Second, it has been recognized that, in heterogeneous High Performance Computing systems, the performance depends on how well the scheduler can allocate workloads to the appropriate computing devices and make communication and computation to overlap efficiently. With different types of resources integrated into one system, the complexity of the scheduler correspondingly increases. Moreover, when the applications have varying problem sizes on different heterogeneous resources, the complexity of the scheduler grows accordingly. Our proposed profile-based Iterative Dynamic Adaptive Work-Load balance scheduling approach (IDAWL) combines offline machine learning with online scheduling offers a general approach to efficiently utilize, in a dynamic fashion, available heterogeneous resources.

Finally, for those applications where the computation can be naturally expressed as streams, our Stream-based fine-grain program execution model, was developed to explore parallelism of hierarchical heterogeneous resources. It can exploit two levels (coarse- and fine-grain) of parallelism, efficiently utilizing locally available heterogeneous resources to construct streaming pipeline stages and minimize data movement to enhancing data locality.

Main Content
For improved accessibility of PDF content, download the file to your device.
Current View