The rise of the Internet of Things relies on increasingly mobile and numerous computing devices, for which battery-based or wired operation is not always feasible and for which energy-harvesting (e.g. solar power) operation may be preferable. There are increasingly important industrial, social, and governmental domains that will profit from adopting energy harvesting or hybrid power solutions, such as health introspection, smart cities, augmented reality sensing, assistive cyber-physical systems, security and defense monitoring, and emergency response, as well as natural synergies with green-computing. Energy-harvesting devices are expected to be numerous, but unreliable, and thus offer both an opportunity and challenge in their use as a parallel computing infrastructure. This project develops new interfaces spanning from software through hardware that allow energy-harvesting devices equipped with on-chip nonvolatile memory to be treated as parallel computing accelerators, while maintaining system level reliability. This project integrates research with education by training graduate students and undergraduate honors students in overcoming the cross-layer challenges, from circuits through system software, in utilizing computation platforms that experience frequent power interruptions.
This project addresses three open challenges in parallel computing using energy-harvesting powered systems: 1) A lack of coherence and synergy between hardware and software in terms of forward progress guarantees; 2) An overfocus on serial execution scenarios that has not lent itself to parallelism in energy-harvesting systems; and 3) the ad-hoc nature of previous efforts to explore the design space of architectural support for energy-harvesting systems. The project introduces four new foundational abstractions to address these open questions: 1) an unified, cross-layer hardware-software interface for metering and managing forward progress; 2) a set of fair and parallel forward progress metrics; 3) an exposed cross-layer interface for reasoning about approximate forward progress; and 4) an offload-based model for nonvolatile processors (NVPs), wherein NVPs can be viewed as accelerators for 'opportunistic computation.' Project results include the validation of these abstractions, a systematic mapping of the design space of hardware-supported approximate and heterogeneous energy-harvesting opportunistic computation accelerators, and the development and public distribution of the new software tools and simulation infrastructure necessary to model complex software systems executing on energy-harvesting accelerators.
This award reflects NSF's statutory mission and has been deemed worthy of support through evaluation using the Foundation's intellectual merit and broader impacts review criteria.
|Effective start/end date||10/1/18 → 9/30/23|
- National Science Foundation: $900,000.00