Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
10 years ago

Interpreting Optimization Report

Hello Everyone,

I need help interpreting the following optimization report. The basic structure of my kernel looks as follows:

 
while(true)
   read_channel(channel_0)
   Modify data
   write_channel(channel_1)

I get the following Optimization Report:


========================================================================================================================
|                                           *** Optimization Report ***                                                |
========================================================================================================================
| Kernel: data_reader                                                                                      | File:Ln   |
========================================================================================================================
| Loop while.body                                                                                          | :167   |
|   Pipelined execution inferred.                                                                          |           |
|   Successive iterations launched every 10 cycles due to:                                                 |           |
|                                                                                                          |           |
|       Data dependency on variable pkt_size_bytes                                                         | :137   |
|       Largest Critical Path Contributors:                                                                |           |
|           54%: 'acl_stall_free_exit.c1.while.body.data_reader' Function Call Operation                   |           |
|           12%: 'acl_stall_free_entry.c1.while.body.data_reader' Function Call Operation                  |           |
|           10%: Icmp Operation                                                                            | :137   |
|           10%: Lshr Operation                                                                            | :215   |
========================================================================================================================

Line 167 has the while loop with condition.

Line 137 has a variable declaration.

Line 215 has a variable = array[index++] type assignment.

What does "54%: 'acl_stall_free_exit.c1.while.body.data_reader' Function Call Operation" mean? I cannot find any info online, nor in the Altera manuals about this.

My target is to lower the Initialization Interval.

Thanks for the help!

Monstrumus

1 Reply