Visible to Intel only — GUID: GUID-7B26BD51-9D88-407D-A793-7B9F19CF9C44
Visible to Intel only — GUID: GUID-7B26BD51-9D88-407D-A793-7B9F19CF9C44
Minimum Latency Flow
The minimum latency flow attempts to minimize your kernel latency at the cost of decreased fMAX. Use this flow to optimize latency-sensitive designs.
To compile your design with the minimum latency flow, pass the -Xsoptimize=latency flag to the icpx command, as shown in the following example:
icpx -fsycl -fintelfpga -Xshardware -Xsoptimize=latency <source_file>.cpp
The following table lists the underlying controls that are enabled by the minimum latency flow, as well as their equivalent user controls. You can use these same user controls to manually override the underlying controls:
Description | Equivalent User Control |
---|---|
Disable hyper-optimized handshaking on Agilex™ 7 and Stratix® 10 devices | -Xshyper-optimized-handshaking=off |
Use zero-latency stall-free clusters exit FIFO | -Xssfc-exit-fifo-type=zero-latency |
Disable loop speculation | [[intel::speculated_iterations(0)]] [[intel::max_reinvocation_delay(1)]] |
Set reinvocation delay on all loops to 1 thereby allowing new loop invocations to begin immediately after a previous loop invocation has completed | [[intel::max_reinvocation_delay(1)]] |