Sciweavers

CC
2003
Springer

Early Control of Register Pressure for Software Pipelined Loops

13 years 8 months ago
Early Control of Register Pressure for Software Pipelined Loops
Abstract. The register allocation in loops is generally performed after or during the software pipelining process. This is because doing a conventional register allocation at first step without assuming a schedule lacks the information of interferences between variable lifetime intervals. Thus, the register allocator may introduce an excessive amount of false dependences that reduce dramatically the ILP (Instruction Level Parallelism). We present a new framework for controlling the register pressure before software pipelining. This is based on inserting some anti-dependences edges (register reuse edges) labeled with reuse distances, directly on the data dependence graph. In this new graph, we are able to guarantee that the number of simultaneously alive variables in any schedule does not exceed a limit. The determination of register and distance reuse is parameterized by the desired critical circuit ratio (MII) as well as by the register pressure constraints - either can be minimized ...
Sid Ahmed Ali Touati, Christine Eisenbeis
Added 06 Jul 2010
Updated 06 Jul 2010
Type Conference
Year 2003
Where CC
Authors Sid Ahmed Ali Touati, Christine Eisenbeis
Comments (0)