Title :
A variability-aware OpenMP environment for efficient execution of accuracy-configurable computation on shared-FPU processor clusters
Author :
Rahimi, Azar ; Marongiu, Andrea ; Gupta, R.K. ; Benini, Luca
Author_Institution :
Dept. of Comput. Sci. & Eng., UC San Diego, La Jolla, CA, USA
fDate :
Sept. 29 2013-Oct. 4 2013
Abstract :
We propose a tightly-coupled, multi-core cluster architecture with shared, variation-tolerant, and accuracy-reconfigurable floating-point units (FPUs). The resilient shared-FPUs dynamically characterize FP pipeline vulnerability (FPV) and expose it as metadata to a software scheduler for reducing the cost of error correction. To further reduce this cost, our programming and runtime environment also supports controlled approximate computation through a combination of design-time and runtime techniques. We provide OpenMP extensions (as custom directives) for FP computations to specify parts of a program that can be executed approximately. We use a profiling technique to identify tolerable error significance and error rate thresholds in error-tolerant image processing applications. This information guides an application-driven hardware FPU synthesis and optimization design flow to generate efficient FPUs. At runtime, the scheduler utilizes FPV metadata and promotes FPUs to accurate mode, or demotes them to approximate mode depending upon the code region requirements. We demonstrate the effectiveness of our approach (in terms of energy savings) on a 16-core tightly-coupled cluster with eight shared-FPUs for both error-tolerant and general-purpose error-intolerant applications.
Keywords :
floating point arithmetic; image processing; meta data; microprocessor chips; multiprocessing systems; pattern clustering; FP pipeline vulnerability; FPV metadata; OpenMP extensions; accuracy configurable computation; approximate computation; error correction; floating point units; hardware FPU synthesis; image processing applications; metadata; multicore cluster architecture; optimization design flow; shared FPU processor clusters; software scheduler; variability aware OpenMP environment; Approximation methods; Computer architecture; Pipelines; Registers; Runtime; Software; Timing; OpenMP; PVT variability; approximation; floating-point; multi-core; resilient; timing error;
Conference_Titel :
Hardware/Software Codesign and System Synthesis (CODES+ISSS), 2013 International Conference on
Conference_Location :
Montreal, QC
DOI :
10.1109/CODES-ISSS.2013.6659022