Developer Guide


FPGA Optimization Flags

The following table summarizes FPGA optimization flags:
FPGA Optimization Flags
-Xsclock=<clock target in Hz/KHz/MHz/GHz or s/ms/us/ns/ps>
Schedules f
target for kernels.
icpx -fsycl -fintelfpga –Xshardware –Xsclock=<clock target> <source_file>.cpp
Disables burst-interleaving for all global memory banks of the same type and manages them manually
icpx -fsycl -fintelfpga -Xshardware <source_file>.cpp
Forces ring interconnect for global memory.
icpx -fsycl -fintelfpga -Xshardware -Xsglobal-ring <source_file>.cpp
Narrows the interconnect to save area while limiting write-only throughput to one bank's worth.
icpx -fsycl -fintelfpga -Xshardware -Xsforce-single-store-ring <source_file>.cpp
Narrows the interconnect to save area while reducing read-only throughput.
icpx -fsycl -fintelfpga -Xshardware -Xsnum-reorder=1 <source_file>.cpp
Reduces kernel area use by removing kernel invocation queue in SYCL* kernel.
icpx -fsycl -fintelfpga -Xshardware -Xsno-hardware-kernel-invocation-queue <source_file>.cpp
Modifies the handshaking protocol used in certain areas of the design
icpx -fsycl -fintelfpga -Xshardware -Xshyper-optimized-handshaking=auto <source_file>.cpp
icpx -fsycl -fintelfpga -Xshardware -Xshyper-optimized-handshaking=off <source_file>.cpp
Disables the automatic fusion of loops when compiling the design.
icpx -fsycl -fintelfpga -Xshardware -Xsdisable-auto-loop-fusion <source_file>.cpp
Fuses adjacent loops with unequal trip counts into a single loop without affecting either loop's functionality.
icpx -fsycl -fintelfpga -Xshardware -Xsenable-unequal-tc-fusion <source_file>.cpp
Pipelines loops in non-task (
) kernels.
icpx -fsycl -fintelfpga –Xshardware -Xsauto-pipeline <
Controls the semantics of floating-point operations.
icpx -fsycl -fintelfpga -Xshardware -fp-model=
Modifies the rounding mode of floating-point elementary operations in your design.
icpx -fsycl -fintelfpga -Xshardware -Xsrounding=ieee <source_file>.cpp
icpx -fsycl -fintelfpga -Xshardware -Xsrounding=faithful <source_file>.cpp
Globally controls exit FIFO latency of stall-free clusters using the specified exit FIFO type.
icpx -fsycl -fintelfpga -Xshardware -Xssfc-exit-fifo-type=zero-latency
Enables read-only cache and sets its size to
icpx -fsycl -fintelfpga -Xshardware -Xsread-only-cache-size=
Controls the hardware implementation of the supported data types and math functions of all kernels in your source code.
icpx -fsycl -fintelfpga –Xshardware -Xsdsp-mode=

Product and Performance Information


Performance varies by use, configuration and other factors. Learn more at