Publication:

Parallel Programming Approaches to Optimize Performance and Energy Consumption on Heterogeneous Computing Systems

Loading...
Thumbnail Image

Date

2023-04-25

Published Version

Published Version

Journal Title

Journal ISSN

Volume Title

Publisher

The Harvard community has made this article openly available. Please share how this access benefits you.

Research Projects

Organizational Units

Journal Issue

Citation

Bauer, Brian. 2023. Parallel Programming Approaches to Optimize Performance and Energy Consumption on Heterogeneous Computing Systems. Master's thesis, Harvard University Division of Continuing Education.

Abstract

Parallel programming offers the ability to simultaneously improve the performance and reduce the energy consumption of software running on heterogeneous computing systems. Software developers have long preferred to avoid parallel programming, if possible, for reasons such as perceived difficulty, lack of portability between systems, and the pace of improvement in computer hardware. However, generational changes in computer hardware are now focused on specialized components and increased computational cores, and the continued evolution of these systems places increased emphasis on achieving improvements via the use of these components.

This thesis investigates parallel programming techniques that make use of components common to modern heterogeneous systems, and proposes that the difficulty and lack of portability need not be barriers to large improvements. Using a variety of heterogeneous systems, algorithms were implemented and then transformed using multiple cores, SIMD execution units, and GPUs. Reductions in execution time ranging from 71-94% and energy consumption of 76-98% were observed, demonstrating the effectiveness of using specialized components for improved performance and reduced energy consumption.

Description

Other Available Sources

Research Data

Keywords

Energy consumption, GPU programming, Heterogeneous systems, Parallel programming, SIMD programming, Software engineering, Computer science, Computer engineering

Terms of Use

This article is made available under the terms and conditions applicable to Other Posted Material (LAA), as set forth at Terms of Service

Endorsement

Review

Supplemented By

Related Stories