PyDac: a distributed runtime system and programming model for a heterogeneous many-core architecture
1 online resource (88 pages) : PDF
University of North Carolina at Charlotte
Heterogeneous many-core architectures that consist of big, fast cores and small, energy-efficient cores are very promising for future high-performance computing (HPC) systems. These architectures offer a good balance between single-threaded performance and multithreaded throughput. Such systems impose challenges on the design of programming model and runtime system. Specifically, these challenges include (a) how to fully utilize the chip's performance, (b) how to manage heterogeneous, unreliable hardware resources, and (c) how to generate and manage a large amount of parallel tasks.This dissertation proposes and evaluates a Python-based programming framework called PyDac. PyDac supports a two-level programming model. At the high level, a programmer creates a very large number of tasks, using the divide-and-conquer strategy. At the low level, tasks are written in imperative programming style. The runtime system seamlessly manages the parallel tasks, system resilience, and inter-task communication with architecture support. PyDac has been implemented on both an field-programmable gate array (FPGA) emulation of an unconventional heterogeneous architecture and a conventional multicore microprocessor. To evaluate the performance, resilience, and programmability of the proposed system, several micro-benchmarks were developed. We found that (a) the PyDac abstracts away task communication and achieves programmability, (b) the micro-benchmarks are scalable on the hardware prototype, but (predictably) serial operation limits some micro-benchmarks, and (c) the degree of protection versus speed could be varied in redundant threading that is transparent to programmers.
EMULATIONFPGAMANY-CORE ARCHITECTUREPROGRAMMING MODELPYTHONRUNTIME SYSTEM
Thesis (Ph.D.)--University of North Carolina at Charlotte, 2014.
This Item is protected by copyright and/or related rights. You are free to use this Item in any way that is permitted by the copyright and related rights legislation that applies to your use. For other uses you need to obtain permission from the rights-holder(s). For additional information, see http://rightsstatements.org/page/InC/1.0/.
Copyright is held by the author unless otherwise indicated.