
NSF Org: |
CCF Division of Computing and Communication Foundations |
Recipient: |
|
Initial Amendment Date: | June 15, 2015 |
Latest Amendment Date: | June 15, 2015 |
Award Number: | 1526205 |
Award Instrument: | Standard Grant |
Program Manager: |
Anindya Banerjee
abanerje@nsf.gov (703)292-7885 CCF Division of Computing and Communication Foundations CSE Directorate for Computer and Information Science and Engineering |
Start Date: | July 1, 2015 |
End Date: | June 30, 2019 (Estimated) |
Total Intended Award Amount: | $484,547.00 |
Total Awarded Amount to Date: | $484,547.00 |
Funds Obligated to Date: |
|
History of Investigator: |
|
Recipient Sponsored Research Office: |
4400 VESTAL PKWY E BINGHAMTON NY US 13902 (607)777-6136 |
Sponsor Congressional District: |
|
Primary Place of Performance: |
4400 Vestal Parkway East Binghamton NY US 13902-6000 |
Primary Place of
Performance Congressional District: |
|
Unique Entity Identifier (UEI): |
|
Parent UEI: |
|
NSF Program(s): | Software & Hardware Foundation |
Primary Program Source: |
|
Program Reference Code(s): |
|
Program Element Code(s): |
|
Award Agency Code: | 4900 |
Fund Agency Code: | 4900 |
Assistance Listing Number(s): | 47.070 |
ABSTRACT
Title: SHF:Small:Green Parallel Language Systems
The broad spectrum of modern parallel computing platforms are faced with the growing concern about energy consumption. This project explores the frontier at the converging point of parallel computing and energy-efficient computing. The intellectual merits of the proposal are to study energy efficiency of parallel computing through novel programming language and compiler technologies, and produce a set of energy-optimizing compilers, language runtimes, and programming models for parallel systems. With parallel platforms pervasively deployed in the modern computing world, the project's broader significance and importance are as diverse as reducing the operational cost of data centers, improving system reliability of mission-critical systems, extending the battery life of handheld devices, and promoting the environmental sustainability of our society.
The unifying theme of the project is to exploit program structures and run-time semantic information for optimizing energy consumption of multi-threaded programs on parallel architectures. Concretely, the project consists of three interconnected directions. (i) energy-efficient thread management, that is, optimizing energy consumption through coordinating threads based on their static and dynamic dependencies. (ii) energy-efficient data management, that is, promoting energy proportionality through analyzing data-intensive programs in a setting where data rates, data processing schedules, and CPU frequencies may interplay in complex fashions. (iii) energy-efficient synchronization management, that is, harvesting different thread synchronization patterns to achieve pattern-specific energy optimization. Together, the three directions constitute a unique and important dimension of energy optimization for parallel computing platforms.
PUBLICATIONS PRODUCED AS A RESULT OF THIS RESEARCH
Note:
When clicking on a Digital Object Identifier (DOI) number, you will be taken to an external
site maintained by the publisher. Some full text articles may not yet be available without a
charge during the embargo (administrative interval).
Some links on this page may take you to non-federal websites. Their policies may differ from
this site.
PROJECT OUTCOMES REPORT
Disclaimer
This Project Outcomes Report for the General Public is displayed verbatim as submitted by the Principal Investigator (PI) for this award. Any opinions, findings, and conclusions or recommendations expressed in this Report are those of the PI and do not necessarily reflect the views of the National Science Foundation; NSF has not approved or endorsed its content.
From cloud computing to edge computing, and from data centers to smartphones, energy consumption is a primary concern of modern computing infrastructure. As multi-core CPUs become prevalent in computing platforms, how to make multi-threaded applications energy-efficient is a challenging problem that urgently calls for solutions. This project addresses this challenge through innovations of parallel and concurrent programming languages. First, the project has produced an energy-efficient working stealing language runtime, with the key idea of coordinating threads based on program semantic information such as synchronization patterns. We have further improved its practicality by enabling its deployment in a time-shared operating system, where multiple runtimes may co-exist. Second, the project investigates into the energy impact of data parallelism in stream-based runtimes. This effort has resulted in a type system to judiciously coordinate data processing units for throughout optimization, a novel instance of performance reasoning for data-intensive programs. Third, the project studies the role of reinforcement learning in optimizing the energy consumption of multi-threaded applications, leading to an adaptive design based on online monitoring. Fourth, the project conducts comprehensive case studies on the energy efficiency of multi-threaded applications, including the Java ForkJoin framework, the Akka message-passing framework, and diverse computation-intensive and data-intensive workloads. These case studies shed light on energy characteristics of modern applications. Fifth, the project results in a programming foundation that captures the essence of adaptive energy optimization at the layer of programming languages. The results from the project have been published in premier computer science conferences spanning research communities of programming languages, software engineering, and high-performance computing. The project has supported 5 Ph.D. students and numerous Master's and undergraduate students. The project helps significantly enrich a course taught at State University of New York at Binghamton ("Programming Models for Emerging Platforms"), and has brought the Principal Investigator to science fairs targeting K-12 students. All artifacts produced through the project are open-source on GitHub.
Last Modified: 09/16/2019
Modified by: Yu David Liu
Please report errors in award information by writing to: awardsearch@nsf.gov.