arrow
Return

A Software Scheme for Multithreading on CGRAs

delete2015-01-21
delete11
PRE
AI
J
Jared Pager *
R
Reiley Jeyapaul
A
Aviral Shrivastava
DOI:10.1145/2638558delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
Recent industry trends show a drastic rise in the use of hand-held embedded devices, from everyday applications to medical (e.g., monitoring devices) and critical defense applications (e.g., sensor nodes). The two key requirements in the design of such devices are their processing capabilities and battery life. There is therefore an urgency to build high-performance and power-efficient embedded devices, inspiring researchers to develop novel system designs for the same. The use of a coprocessor (application-specific hardware) to offload power-hungry computations is gaining favor among system designers to suit their power budgets. We propose the use of CGRAs (Coarse-Grained Reconfigurable Arrays) as a power-efficient coprocessor. Though CGRAs have been widely used for streaming applications, the extensive compiler support required limits its applicability and use as a general purpose coprocessor. In addition, a CGRA structure can efficiently execute only one statically scheduled kernel at a time, which is a serious limitation when used as an accelerator to a multithreaded or multitasking processor. In this work, we envision a multithreaded CGRA where multiple schedules (or kernels) can be executed simultaneously on the CGRA (as a coprocessor). We propose a comprehensive software scheme that transforms the traditionally single-threaded CGRA into a multithreaded coprocessor to be used as a power-efficient accelerator for multithreaded embedded processors. Our software scheme includes (1) a compiler framework that integrates with existing CGRA mapping techniques to prepare kernels for execution on the multithreaded CGRA and (2) a runtime mechanism that dynamically schedules multiple kernels (offloaded from the processor) to execute simultaneously on the CGRA coprocessor. Our multithreaded CGRA coprocessor implementation thus makes it possible to achieve improved power-efficient computing in modern multithreaded embedded systems.
Keywords:
CGRA
multithreading
power efficiency
embedded system
runtime transformation
scheduling
compiler framework
AI Summary

AI Summary

Key information extracted from the uploaded paper, including a brief overview, abstract, background, key highlights, visual analysis, and future outlook.

Journal

ACM Transactions on Embedded Computing Systems cover
ACM Transactions on Embedded Computing Systems
IF:
2.6
Papers:
238
Citations:
2.3K

Organization

A
Arizona State University
Scholars:
2.7W
Papers: 2.5W
Citations: 4.2W
Cited Papers

Cited Papers

errShare
errSave
The prognosis of contact dermatitis
err1990-08-01
err0
PREAI
errDaniel J. Hogan; Christopher J. Dannaker; Howard I. Maibach
errShare
errSave
A 5-Year Follow-up Study of Generalized Anxiety Disorder and Panic Disorder
err1999-01-01
err0
PREAI
errCATHERINE L. WOODMAN; RUSSELL NOYES; DONALD W. BLACK; STEVE SCHLOSSER; STEPHEN J. YAGLA
errShare
errSave
researcher View more