Developer Guide

Intel oneAPI DPC++/C++ Compiler Handbook for Intel FPGAs

ID 785441
Date 5/08/2024
Public
Document Table of Contents

Balanced Throughput-Area Trade-Offs Flow

This flow attempts to balance throughput-area trade-offs. Specifically, the compiler might disable throughput-area trade-off heuristics that increase the throughput at the cost of area in this flow.

To compile your design with the maximum throughput without area optimization heuristics flow, pass the -⁠Xsoptimize=throughput-area-balanced flag to the icpx command, as shown in the following example:

icpx -fsycl -fintelfpga -Xshardware -Xsoptimize=throughput-area-balanced <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
Do not create banks [[intel::numbanks(1)]]
Do not create replicates (Create only one bank per memory) [[intel::max_replicates(1)]]
Do not create private copies [[intel::private_copies(1)]]