Developer Guide

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

ID 785441
Date 6/24/2024
Public

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

Document Table of Contents

Review the FPGA Optimization Report

The FPGA optimization report provides suggestions on how you can modify kernels to increase performance. For compiler commands to generate the report, refer to the FPGA Compilation Flags.

Navigate to the <project_dir>/reports/ directory and review one of the following files of your application to determine whether the estimated kernel performance data is acceptable. Both options display the same report:

Launching the Intel® oneAPI FPGA Reports Tool

The Intel oneAPI FPGA Reports Tool is a generic report.html file from which you can open the <design_name>.zip file for any design. Use the Intel oneAPI FPGA Reports Tool to navigate between multiple reports quickly and easily, while needing to bookmark only one report.html file in your chosen Internet browser.

The Intel oneAPI FPGA Reports tool is installed as part of the FPGA Support Package for the Intel® oneAPI DPC++/C++ Compiler.

Run the oneAPI setvars (or oneapi-vars) script to have the fpga_report command added to your PATH environment variable.

On a Linux system, invoke the fpga_report command on the command-line interface. The command reports the path to the Intel oneAPI FPGA Reports Tool report.html file, which you can then open in a supported web browser.

On a Windows system, invoke the fpga_report.exe command from the Intel® oneAPI Base Toolkit install path. The command opens the Intel oneAPI FPGA Reports Tool report.html file in your default web browser.

The initial page of the Intel oneAPI FPGA Reports Tool report.html file displays a menu as shown in the following image:

Intel® oneAPI FPGA Reports Tool

Loading Your Design Optimization Report

Load a design optimization report by importing it into the Intel® oneAPI FPGA Reports interface as follows:

  1. Go to Get Started > Import Report Data and click Import.
  2. Navigate to the <project_dir>/reports/ directory.
  3. Select the <design_name>.zip file.
  4. Click Open. The report loads in the Intel® oneAPI FPGA Reports interface.

To open a report that you have opened previously, click the report under Recently Opened. This list is browser-specific, so reports opened in one browser are not shown in the Recently Opened list in a different browser.

RESTRICTION:
Mozilla* Firefox does not support the Recently Opened section.

Sample Optimization Report in the Intel® oneAPI FPGA Reports Tool

Comparing Reports

Use the Intel® oneAPI FPGA Reports tool to compare two optimization reports of the same design or different designs as follows:

  1. Under Compare Reports > Design 1, click Click here, navigate to the <project_dir>/reports directory and select the <design_name>.zip file of the first design. You can also drag files from the Recently Opened list to the file field.
  2. Under Compare Reports > Design 2, click Click here, navigate to the <project_dir>/reports directory and select the <design_name>.zip file of the second design. You can also drag files from the Recently Opened list to the file field.
  3. Click Compare.
The selected reports are launched in comparison mode as shown in the following image:

Comparison Mode in the Intel® oneAPI FPGA Reports Tool

NOTE:

Currently, only the Summary View and Loop Analysis have a comparison mode. For views not supported in the comparative mode, a view for each design is generated and you can identify the designs by the Design <number> text in the view name.

Filtering Nodes in Report Tables (Linux only)

RESTRICTION:
File nodes in report tables is available only for designs that were compiled on a Linux* based operating system.

For table views in the Intel® oneAPI FPGA Reports, you can filter nodes in the table views to hide information about data that is outside of your design such as header files and third-party libraries. With a filtered view of your design, you can focus on your design with fewer distractions.

For large designs, you can filter nodes to reduce clutter in the report tables and improve the load time of report tables.

You filter nodes by choosing what source files to hide in the reports. Hiding a source file in the reports hides all the nodes that result from the hidden source file.

Data that is found in tables that provide summaries about the entire design (such as area summaries) do not remove data from hidden nodes. The summaries show information about the entire design regardless of any node filtering applied.

REMEMBER:
Only nodes seen in table views will be hidden. Node Filtering does not affect the graphical views such as System Viewer or Schedule Viewer.

To filter nodes in the table views of the reports:

  1. From the Summary of the report, open the Report Settings page by clicking the settings icon in the top-right corner of the view:

  2. On the Report Settings page, go to the Hide Source Files section.

  3. In the Hide Source Files section, select the source files for the nodes that you want to hide in the table views. You can scroll this list of files or use the search field to filter the list file names that match a regular expression.

    The Hide Source Files section also provides categories of source files. Select a category to hide nodes from all the source files in that category.

Filtered nodes can show up in navigation lists, but selecting them displays a message that indicates that the source file for the node is hidden: