Award Abstract # 1526205
SHF: Small: Green Parallel Language Systems

NSF Org: CCF
Division of Computing and Communication Foundations
Recipient: THE RESEARCH FOUNDATION FOR THE STATE UNIVERSITY OF NEW YORK
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: FY 2015 = $484,547.00
History of Investigator:
  • Yu David Liu (Principal Investigator)
    davidl@binghamton.edu
Recipient Sponsored Research Office: SUNY at Binghamton
4400 VESTAL PKWY E
BINGHAMTON
NY  US  13902
(607)777-6136
Sponsor Congressional District: 19
Primary Place of Performance: SUNY at Binghamton
4400 Vestal Parkway East
Binghamton
NY  US  13902-6000
Primary Place of Performance
Congressional District:
19
Unique Entity Identifier (UEI): NQMVAAQUFU53
Parent UEI: L9ZDVULCHCV3
NSF Program(s): Software & Hardware Foundation
Primary Program Source: 01001516DB NSF RESEARCH & RELATED ACTIVIT
Program Reference Code(s): 7923, 7943
Program Element Code(s): 779800
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.

Anthony Canino and Yu David Liu and Hidehiko Masuhara "Stochastic Energy Optimization for Mobile GPS Applications" International Conference on Foundations of Software Engineering (FSE'18) , 2018
Yuheng Long, Yu David Liu, Hridesh Rajan "First-Class Effect Reflection on Effect-Guided Programming" ACM Conference on Object-Oriented Programming, Systems, Languages and Applications (OOPSLA). , 2016
Philip Dexter and Yu David Liu and Kenneth Chiu "Lazy Graph Processing in Haskell" ACM Haskell Sympoisum , 2016
Haris Ribic and Yu David Liu "AEQUITAS: Coordinated Energy Management Across Parallel Applications" International Conference on Supercomputing , 2016
Gustavo Pinto, Kenan Liu, Fernando Castor and Yu David Liu "A Comprehensive Study on the Energy Efficiency of Java Thread-Safe Collections" International Conference on Software Maintenance and Evolution , 2016
Gustavo Pinto, Anthony Canino, Fernando Castor, Guoqing Xu, and Yu David Liu "Understanding and Overcoming Parallelism Bottlenecks in ForkJoin Applications" International Conference on Automated Software Engineering , 2017

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.

Print this page

Back to Top of page