
Technical discussions about the TI C6000 DSPs (including the c62x, c64x and c67x DSPs).
Hi,
I am trying to understand the software pipeline information provided
by the compiler.
I could not understand what the compiler means by
" Searching for software pipeline schedule at ...
ii = 1 Schedule found with 10 iterations in parallel "
what does ii(iteration interval means) and iterations in parallel mean
and how does they affect software pipelining?
The software pipelined loop kernel is
;**
--------------------------------------------------------------------------*
L2: ; PIPED LOOP KERNEL
DW$L$_retu$3$B:
.dwpsn
"C:\CCStudio\tutorial\sim64xx\reed_6446\sum_of_no\Debug\Untitled21.c",10,0
.dwpsn
"C:\CCStudio\tutorial\sim64xx\reed_6446\sum_of_no\Debug\Untitled21.c",12,0
ADD .L1 A3,A6,A6 ; |11| <0,9>
|| DOTP2 .M1 A4,A4,A3 ; |11| <4,5>
|| [ B0] BDEC .S2 L2,B0 ; |9| <5,4>
|| LDNW .D1T1 *A5++(4),A4 ; |11| <9,0>
DW$L$_retu$3$E:
;**
--------------------------------------------------------------------------*
In this Loop kernel i cannot understand the comments after the
instructions.
e.g ADD .L1 A3,A6,A6 ; |11| <0,9>
what does "|11| <0,9>" mean?
Thanks
Khawar Shahzad
------------------------------------
OMAP35x EVM jump-starts low-power apps
------------------------------------
The modular and extensible OMAP35x Evaluation Module (EVM) enables developers to start building
applications based on the OMAP35x architecture:http://www.DSPRelated.com/omap35x
Khawar, On Mon, Jul 28, 2008 at 1:44 AM, Khawar Shahzad <k...@yahoo.com> wrote: > Hi, > I am trying to understand the software pipeline information provided > by the compiler. > I could not understand what the compiler means by > > " Searching for software pipeline schedule at ... > ii = 1 Schedule found with 10 iterations in parallel " > > what does ii(iteration interval means) and iterations in parallel mean > and how does they affect software pipelining? > > The software pipelined loop kernel is > > ;** > ----------------------------------------------------------* > L2: ; PIPED LOOP KERNEL > DW$L$_retu$3$B: > .dwpsn > "C:\CCStudio\tutorial\sim64xx\reed_6446\sum_of_no\Debug\Untitled21.c",10,0 > .dwpsn > "C:\CCStudio\tutorial\sim64xx\reed_6446\sum_of_no\Debug\Untitled21.c",12,0 > > ADD .L1 A3,A6,A6 ; |11| <0,9> > || DOTP2 .M1 A4,A4,A3 ; |11| <4,5> > || [ B0] BDEC .S2 L2,B0 ; |9| <5,4> > || LDNW .D1T1 *A5++(4),A4 ; |11| <9,0> DW$L$_retu$3$E: > ;** > ----------------------------------------------------------* > > In this Loop kernel i cannot understand the comments after the > instructions. > e.g ADD .L1 A3,A6,A6 ; |11| <0,9> > what does "|11| <0,9>" mean? <mld> Have you looked at the software pipeline info in the compiler manual [spru187] and the C6000 programmer's guide [spru198]?? |11| is the source line number. <0,9> means... "It [compiler] attaches a 2-tuple <x, y> to the comments to specify the iteration and cycle of the loop an instruction is on in the software pipeline. The zero-based number x represents the iteration the instruction is on during the first execution of the loop kernel. The zero-based number y represents the cycle that the instruction is scheduled on within a single iteration of the loop." mikedunn > > Thanks > Khawar Shahzad -- www.dsprelated.com/blogs-1/nf/Mike_Dunn.php ------------------------------------ OMAP35x EVM jump-starts low-power apps ------------------------------------ The modular and extensible OMAP35x Evaluation Module (EVM) enables developers to start building applications based on the OMAP35x architecture:http://www.DSPRelated.com/omap35x