Intel® FPGA AI Suite: Compiler Reference Manual

ID 768972
Date 4/05/2023
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

4.6. Architecture Optimizer Options (dla_compiler Command Options)

--mmax-resources Option

Syntax
--mmax-resources=<max_ALMs>,<max_M20Ks>,<max_DSPs>
Description
This option specifies the maximum number of ALMs, M20Ks, and DSPs to use when optimizing the architecture.

If you do not specify this option, the architecture uses as many resources as needed. In rare cases, the optimizer might use more resources than are available on the FPGA device.

Default Value
N/A
Example
--mmax-resources=50000,500,400
Parsed As
(vector<int>)
The vector must be of length 3. The int values can be separated by one of the following characters:
  • ,
  • ;
  • |
  • \

--mmax-resources-alm-util Option

Syntax
--mmax-resources-alm-util=<percent_alm_utilization>
Description
Set this option only if you also set the --mmax-resources option.

This option sets a percentage target of the <max_ALMs> value from the --mmax-resources option that architecture optimizer aims to use for the architecture. The remaining ALMs are used by the Intel® Quartus® Prime software to improve timing closure.

Valid values for this option are integers in the 1-100 range.

Default Value
100
Example
--mmax-resources-alm-util=75
Parsed As
(int)

--mtarget-fps Option

Syntax
--mtarget-fps=<target_framerate>
Description
This option specifies the target frame rate (fps) for an architecture optimized for minimum resource usage.

The architecture optimizer can use in excess of 100GB of RAM when using this option, and thus requires a server-class machine.

To reduce the number of threads and memory used by the architecture optimizer when you use the --mtarget-fps, set the COREDLA_TARGET_FPS_THREAD_LIMIT environment variable to specify the maximum number of threads to use. For example, issuing a export COREDLA_TARGET_FPS_THREAD_LIMIT=1 command, limits the architecture optimizer to running on one thread. Limiting the number of threads reduces the computational parallelism and can increase the runtime of the architecture optimizer.

Example
--mtarget-fps=25.0
Parsed As
(double)

--network-weighting Option

Syntax
--network-weighting="<network_weight_1> <network_weight_2> <network_weight_3>...<network_weight_n>"
Description
This option defines the relative optimization weighting of input graphs.
For example, if two graphs are specified and have throughput values of fps1 and fps2 , then the overall throughput is maximized using the user-specified weights w1 and w2 as follows:

When you specify multiple networks, the list of weights must be space-delimited.

If this option is not specified, all networks are equally weighted.

Example
--network-weightings="1 2"
Parsed As
(vector<int>)