Intel® High Level Design
Support for Intel® High Level Synthesis Compiler, DSP Builder, OneAPI for Intel® FPGAs, Intel® FPGA SDK for OpenCL™
722 Discussions

I want to know how to control hyper-optimized handshaking setting

myg
Novice
1,135 Views

I just start using quartus pro 20.3 to compile on DE10-PRO.

I used prefetch_load in my code and get a error  as follow.

Compiler Error: Prefetching LSU is not available when hyper-optimized handshaking is enabled

 

Then I deleted prefetch_load and turn back into normal global memory access, this error disappeared. But I found than in my compile report, the hyper-optimized handshaking in Kernel Summary is off.

 

Why I can't apply this feature after cancel prefetch_load lsu? And how can it affect my design.

0 Kudos
1 Solution
Jessica_Intel
Employee
986 Views

Hi @myg,

 

There can be several reasons why hyper-optimized handshaking is "off" even though you are targeting Stratix 10.

 

The reason that hyper-optimized handshaking is "off" should be given in the optimization reports.

Please look for a column called "Hyper-Optimized Handshaking" in the Kernels Summary table of the Summary section of the report.

By clicking on an entry in this column, you should see the reason appear in the Details pane below. For example, the reason might be:

  • Hyper-optimized handshaking disabled due to instruction in Kernel my_kernel_name

 

I hope this helps you find the information you're looking for!

 

The most likely performance impact of no hyper-optimized handshaking, is lower achieved Fmax.

 

Best regards,

Jessica

View solution in original post

0 Kudos
5 Replies
BoonBengT_Altera
Moderator
1,094 Views

Hi @myg,


Thank you for posting in Intel community forum and hope all is well.

Just to clarify further, what code are you developing with? Is it RTL or OpenCL?


Also if you can share more details on the mention prefetch_load method such as the URL of the example design or the document that you are referring to that would be a great help.

Hope to hear from you soon.


Best Wishes

BB



0 Kudos
myg
Novice
1,090 Views

I'm building a platform in OpenCL with RTL embedded. The code worked well with the Arria 10 platform so I tried to used it on stratix 10.

I used the code below:

            ulong2 a_local = __prefetching_load(&a[i]);
            a_x_local0[0] = a_local.x;
            a_y_local0[0] = (int)a_local.y;
            subparts_to_process = __prefetching_load(&num_subparts[i]);
 
And I got an error of conflict between hyper-optimized handshaking and prefetch LSU when using this code, so I change __prefetching_load into normal memory access
 
            ulong2 a_local = a[i];
            a_x_local0[0] = a_local.x;
            a_y_local0[0] = (int)a_local.y;
            subparts_to_process =num_subparts[i];
 
The error disappeared. But in the html report, it shows that hyper-optimized handshaking is still in the status "off".
 
The kernel worked independently with no data exchange with other kernels. Why does hyper-optimized handshaking still in status "off" and do that affect the performance of my design?
0 Kudos
Jessica_Intel
Employee
987 Views

Hi @myg,

 

There can be several reasons why hyper-optimized handshaking is "off" even though you are targeting Stratix 10.

 

The reason that hyper-optimized handshaking is "off" should be given in the optimization reports.

Please look for a column called "Hyper-Optimized Handshaking" in the Kernels Summary table of the Summary section of the report.

By clicking on an entry in this column, you should see the reason appear in the Details pane below. For example, the reason might be:

  • Hyper-optimized handshaking disabled due to instruction in Kernel my_kernel_name

 

I hope this helps you find the information you're looking for!

 

The most likely performance impact of no hyper-optimized handshaking, is lower achieved Fmax.

 

Best regards,

Jessica

0 Kudos
myg
Novice
964 Views

I got no reason appear in the Details pane below when I click that colunm, anyway thanks for your help.

0 Kudos
BoonBengT_Altera
Moderator
900 Views

Hi @myg,


Great! Good to know that your doubts has been clarified, with no further clarification on this thread, it will be transitioned to community support for further help on doubts in this thread. Please login to ‘ https://supporttickets.intel.com/s/?language=en_US’, view details of the desire request, and post a feed/response within the next 15 days to allow me to continue to support you. After 15 days, this thread will be transitioned to community support. The community users will be able to help you on your follow-up questions.

Thank you for the questions and as always pleasure having you here.


Best Wishes

BB


0 Kudos
Reply