Automatically fused instructions: algorithms for the customization of the instruction, set of a recon?gurable architecture

Abstract

In this dissertation, we address the design of algorithms for the automatic identi?cation and selection of complex application-speci?c instructions used to speed up the execution of applications on recon?gurable architectures. The computationally intensive portions of an application are analyzed and partitioned in segments of code to execute in software and segments of code to atomically execute in hardware as single instructions. These instructions extend the instruction-set of the recon?gurable architecture in use and they are application-speci?c. The main goal of the work presented in this dissertation is the identi?cation of application-speci?c instructions with multiple-inputs and multiple-outputs. The instructions are generated in two consecutive steps: ?rst, the application is partitioned in non-overlapping single-output instructions and, then, these instructions are further combined in multiple-output instructions following different policies. We propose different algorithms for the partitioning of an application in both single-output and multiple-output instructions. A number of approaches have been proposed in both academia and industry for extending a given instruction-set with application-speci?c instructions to speed up the execution of applications. The proposed solutions usually have a high computational complexity. The algorithms proposed in this dissertation provide quality solutions and have linear computational complexity in all cases but one, in which case the proposed solution is optimal. Additionally, compared with existing approaches, the new application-speci?c instructions are atomically executable in hardware by construction, whereas existing approaches increase the computational complexity by testing each generated instructions. The proposed algorithms are tested on the Molen recon?gurable architecture. The experimental results on well-known benchmarks show that a considerable speed up can be obtained in the execution of an application by using the application-speci?c instructions identi?ed by the proposed algorithms.Computer EngineeringElectrical Engineering, Mathematics and Computer Scienc

    Similar works

    Full text

    thumbnail-image

    Available Versions

    Last time updated on 09/03/2017