In order to fully utilize the instruction level parallelism of VLIW DSP processors, DSP programs have to be optimized by software pipelining. Software pipelining has been studied for many years and widely implemented in optimizing compilers. However, due to the rearrangement of the original instructions, it is often very difficult to re-use or port the code of a software-pipelined loop to other processors. In this paper we present a practical approach to solve this problem. Our approach involves the following steps: (1) Using a newly developed software de-pipelining algorithm to convert the assembly code of a software-pipelined loop to a semantically equivalent sequential loop; (2) Using our pattern mapping technique to convert the sequenti...
Abstract.Pipeline interlocks arc used in a pipelincd architecture to prevent the execution of a mach...
In this paper, we propose a compiler method for software pipelining of loop nests on multi-core chip...
International audienceIntegrating register allocation and software pipelining of loops is an active ...
Software pipelining is a loop optimization technique used to speed up loop execution. It is widely i...
Abstract — Large amount of software for embedded digital signal processing systems is written in ass...
Developing efficient programs for many of the current parallel computers is not easy due to the arch...
Software pipelining is an effective technique to reduce cycle count by exploiting instruction level ...
This paper shows that software pipelining can be an effective technique for code generation for coar...
Software pipelining is a critical optimization for producing efficient code for VLIW/EPIC and supers...
Software Pipelining is a loop scheduling technique that extracts loop parallelism by overlapping the...
We investigate the problem of code generation for DSP systems on a chip. Such systems devote a limit...
An emerging trend in processor design is the incorporation of short vector instructions into the ISA...
register allocation, modulo scheduling, software pipelining, instruction scheduling, code generation...
Traditionally, software pipelining is applied either to the innermost loop of a given loop nest or f...
An emerging trend in processor design is the addition of short vector instructions to general-purpos...
Abstract.Pipeline interlocks arc used in a pipelincd architecture to prevent the execution of a mach...
In this paper, we propose a compiler method for software pipelining of loop nests on multi-core chip...
International audienceIntegrating register allocation and software pipelining of loops is an active ...
Software pipelining is a loop optimization technique used to speed up loop execution. It is widely i...
Abstract — Large amount of software for embedded digital signal processing systems is written in ass...
Developing efficient programs for many of the current parallel computers is not easy due to the arch...
Software pipelining is an effective technique to reduce cycle count by exploiting instruction level ...
This paper shows that software pipelining can be an effective technique for code generation for coar...
Software pipelining is a critical optimization for producing efficient code for VLIW/EPIC and supers...
Software Pipelining is a loop scheduling technique that extracts loop parallelism by overlapping the...
We investigate the problem of code generation for DSP systems on a chip. Such systems devote a limit...
An emerging trend in processor design is the incorporation of short vector instructions into the ISA...
register allocation, modulo scheduling, software pipelining, instruction scheduling, code generation...
Traditionally, software pipelining is applied either to the innermost loop of a given loop nest or f...
An emerging trend in processor design is the addition of short vector instructions to general-purpos...
Abstract.Pipeline interlocks arc used in a pipelincd architecture to prevent the execution of a mach...
In this paper, we propose a compiler method for software pipelining of loop nests on multi-core chip...
International audienceIntegrating register allocation and software pipelining of loops is an active ...