Title :
Unrolling and retiming of stream applications onto embedded multicore processors
Author :
Che, Weijia ; Chatha, Karam S.
Author_Institution :
Fac. of Comput. Sci. & Eng., Arizona State Univ., Tempe, AZ, USA
Abstract :
In recent years, we have observed the prevalence of stream applications in many embedded domains. Stream applications distinguish themselves from traditional sequential programming languages through well defined independent actors, explicit data communication, and stable code/data access patterns. In order to achieve high performance and low power, scratch pad memory (SPM) has been introduced in today´s embedded multicore processors. Programing on SPM based architecture is both challenging and time consuming. In this paper we address the problem of automatic compilation of stream applications onto SPM based embedded multicore processors through unrolling and retiming. In our technique, code overlay and data overlay are implemented to overcome the limited SPM capacity. Smart double buffering and code prefetching are introduced to amortize memory access delays. We evaluated the efficiency of our technique through compiling several stream applications onto the IBM Cell processor and compared their performance with existing approaches.
Keywords :
embedded systems; memory architecture; multiprocessing systems; storage management; IBM Cell processor; SPM based architecture; SPM based embedded multicore processor; SPM capacity; automatic compilation; code overlay; code prefetching; code/data access pattern; data communication; data overlay; embedded domain; memory access delay; retiming; scratch pad memory; sequential programming language; smart double buffering; stream application; unrolling; Delay; Multicore processing; Pipelines; Processor scheduling; Program processors; Schedules; SPM; Stream; multicore; overlay; retiming; unrolling;
Conference_Titel :
Design Automation Conference (DAC), 2012 49th ACM/EDAC/IEEE
Conference_Location :
San Francisco, CA
Print_ISBN :
978-1-4503-1199-1