Transparent Runtime Migration of Loop-Based Traces of Processor Instructions to Reconfigurable Processing Units
The ability to map instructions running in a microprocessor to a reconfigurable processing unit (RPU), acting as a coprocessor, enables the runtime acceleration of applications and ensures code and possibly performance portability. In this work, we focus on the mapping of loop-based instruction trac...
Main Authors: | , , , |
---|---|
Format: | Article |
Language: | English |
Published: |
Hindawi Limited
2013-01-01
|
Series: | International Journal of Reconfigurable Computing |
Online Access: | http://dx.doi.org/10.1155/2013/340316 |
id |
doaj-1d8fe220ac5e4130b9739ccfbfab20a4 |
---|---|
record_format |
Article |
spelling |
doaj-1d8fe220ac5e4130b9739ccfbfab20a42020-11-24T23:19:42ZengHindawi LimitedInternational Journal of Reconfigurable Computing1687-71951687-72092013-01-01201310.1155/2013/340316340316Transparent Runtime Migration of Loop-Based Traces of Processor Instructions to Reconfigurable Processing UnitsJoão Bispo0Nuno Paulino1João M. P. Cardoso2João Canas Ferreira3Departmento de Engenharia Informática, Faculdade de Engenharia, Universidade do Porto, Rua Dr. Roberto Frias s/n, 4200-465 Porto, PortugalINESC TEC, Faculdade de Engenharia, Universidade do Porto, Rua Dr. Roberto Frias s/n, 4200-465 Porto, PortugalDepartmento de Engenharia Informática, Faculdade de Engenharia, Universidade do Porto, Rua Dr. Roberto Frias s/n, 4200-465 Porto, PortugalINESC TEC, Faculdade de Engenharia, Universidade do Porto, Rua Dr. Roberto Frias s/n, 4200-465 Porto, PortugalThe ability to map instructions running in a microprocessor to a reconfigurable processing unit (RPU), acting as a coprocessor, enables the runtime acceleration of applications and ensures code and possibly performance portability. In this work, we focus on the mapping of loop-based instruction traces (called Megablocks) to RPUs. The proposed approach considers offline partitioning and mapping stages without ignoring their future runtime applicability. We present a toolchain that automatically extracts specific trace-based loops, called Megablocks, from MicroBlaze instruction traces and generates an RPU for executing those loops. Our hardware infrastructure is able to move loop execution from the microprocessor to the RPU transparently, at runtime, and without changing the executable binaries. The toolchain and the system are fully operational. Three FPGA implementations of the system, differing in the hardware interfaces used, were tested and evaluated with a set of 15 application kernels. Speedups ranging from 1.26 to 3.69 were achieved for the best alternative using a MicroBlaze processor with local memory.http://dx.doi.org/10.1155/2013/340316 |
collection |
DOAJ |
language |
English |
format |
Article |
sources |
DOAJ |
author |
João Bispo Nuno Paulino João M. P. Cardoso João Canas Ferreira |
spellingShingle |
João Bispo Nuno Paulino João M. P. Cardoso João Canas Ferreira Transparent Runtime Migration of Loop-Based Traces of Processor Instructions to Reconfigurable Processing Units International Journal of Reconfigurable Computing |
author_facet |
João Bispo Nuno Paulino João M. P. Cardoso João Canas Ferreira |
author_sort |
João Bispo |
title |
Transparent Runtime Migration of Loop-Based Traces of Processor Instructions to Reconfigurable Processing Units |
title_short |
Transparent Runtime Migration of Loop-Based Traces of Processor Instructions to Reconfigurable Processing Units |
title_full |
Transparent Runtime Migration of Loop-Based Traces of Processor Instructions to Reconfigurable Processing Units |
title_fullStr |
Transparent Runtime Migration of Loop-Based Traces of Processor Instructions to Reconfigurable Processing Units |
title_full_unstemmed |
Transparent Runtime Migration of Loop-Based Traces of Processor Instructions to Reconfigurable Processing Units |
title_sort |
transparent runtime migration of loop-based traces of processor instructions to reconfigurable processing units |
publisher |
Hindawi Limited |
series |
International Journal of Reconfigurable Computing |
issn |
1687-7195 1687-7209 |
publishDate |
2013-01-01 |
description |
The ability to map instructions running in a microprocessor to a reconfigurable processing unit (RPU), acting as a coprocessor, enables the runtime acceleration of applications and ensures code and possibly performance portability. In this work, we focus on the mapping of loop-based instruction traces (called Megablocks) to RPUs. The proposed approach considers offline partitioning and mapping stages without ignoring their future runtime applicability. We present a toolchain that automatically extracts specific trace-based loops, called Megablocks, from MicroBlaze instruction traces and generates an RPU for executing those loops. Our hardware infrastructure is able to move loop execution from the microprocessor to the RPU transparently, at runtime, and without changing the executable binaries. The toolchain and the system are fully operational. Three FPGA implementations of the system, differing in the hardware interfaces used, were tested and evaluated with a set of 15 application kernels. Speedups ranging from 1.26 to 3.69 were achieved for the best alternative using a MicroBlaze processor with local memory. |
url |
http://dx.doi.org/10.1155/2013/340316 |
work_keys_str_mv |
AT joaobispo transparentruntimemigrationofloopbasedtracesofprocessorinstructionstoreconfigurableprocessingunits AT nunopaulino transparentruntimemigrationofloopbasedtracesofprocessorinstructionstoreconfigurableprocessingunits AT joaompcardoso transparentruntimemigrationofloopbasedtracesofprocessorinstructionstoreconfigurableprocessingunits AT joaocanasferreira transparentruntimemigrationofloopbasedtracesofprocessorinstructionstoreconfigurableprocessingunits |
_version_ |
1725577474591424512 |