Tuning the ISA for increased heterogeneous computation in MPSoCs

Pedro H. E. Beckera, Jeckson D. Souzab and Antonio C. S. Beckc

Institute of Informatics, Universidade Federal do Rio Grande do Sul (UFRGS), Brazil
aphebecker@inf.ufrgs.br
bjdsouza@inf.ufrgs.br
ccaco@inf.ufrgs.br

ABSTRACT

Heterogeneous MPSoCs are crucial to meeting energy efficiency and performance, given their combination of cores and accelerators. In this work, we propose a novel technique for MPSoCs design, increasing their specialization and taskparallelism within a given area and power budget. By removing the microarchitectural support of costly ISA extensions (e.g., FP, SIMD, crypto) from a few cores (transforming them into Partial- ISA Cores), we make room to add extra (full and simpler) inorder cores and hardware accelerators. While applications must migrate from Partial-ISA cores when they need the removed ISA support, they also execute at lower power consumption during their ISA-extension-free phases, since partial cores have much simpler datapaths compared to their full-ISA counterparts. On top of it, the additional cores and accelerators increase task-level parallelism and make the MPSoC more suitable for application-specific scenarios. We show the effectiveness of our approach by composing different MPSoCs in distinct execution scenarios, using the FP instructions and RISC-V ISA as a case study. To support our system, we also propose two scheduling policies, performance- and energy-oriented, to coordinate the execution of this novel design. For the former policy, we achieve 2.8× speedup for a neural network road sign detection, 1.53× speedup for a video-streaming app, and 1.2× speedup for a taskparallel scenario, consuming 68%, 75%, and 33% less energy, respectively. For the energy-oriented policy, partial-ISA reduces energy consumption by 29% over a highly efficient baseline, with increased performance.

Keywords: MPSoC Design, Partial-ISA, Heterogeneous Systems.



Full Text (PDF)