This extension provides integration of your project with the Intel® VTune™
Profiler and Intel® Advisor analysis tools. It also makes it easier to
configure your oneAPI C/++ projects for building, running and debugging your
application with Visual Studio Code* (VS Code).
Intel® VTune™ Profiler
is a performance profiling tool that provides advanced sampling and profiling
techniques to quickly analyze code, isolate issues and deliver insights for
optimizing performance on modern processors.
Intel® Advisor
is for software architects and developers who need the right information and
recommendations to make the best design and optimization decisions for
efficient vectorization, threading, and offloading to accelerators.
For details on which compiler options to use with the Intel® VTune™ Profiler,
see the Setup Analysis Target
section of the Intel® VTune™ Profiler User Guide.
For details on which compiler options to use with the Intel® Advisor, see the
Build Target Application
section of the Intel® Advisor User Guide.
This extension does not provide any of the tools that are required to perform
profiling or analysis.
Please visit https://www.intel.com/oneapi for details. For more
information on how to use Visual Studio Code with Intel oneAPI toolkits,
please visit Using VS Code with Intel oneAPI toolkits.
Preparing Tasks from Make / CMake Files
Using the VS Code explorer, click File -> Open Folder
.
Navigate to the folder where your project is located and click OK
.
(In our case it is oneAPI sample "Simple Add")
Press Ctrl+Shift+P ( or View -> Command Palette... )
to open the
Command Palette.
Type Intel oneAPI and select Intel oneAPI: Generate tasks
.
Follow the prompts to add targets from your make/cmake oneAPI project.
Run the target by selecting Terminal > Run task...
or by
Tasks: Run Task
from Command Palette.
Select the task to run.
Building a single cpp file:
Open the cpp file you want to build.
Press Ctrl+Shift+P
( or View -> Command Palette...
) to open the
Command Palette.
Type Intel oneAPI and select
Intel oneAPI: Quick build current file with ICPX
.
If you want to build a file with SYCL enabled, choose the option
Intel oneAPI: Quick build current file with ICPX and SYCL enabled
.
You need to have at least one of the above Intel analysis tools installed for
this extension to work and be useful.
Open a Visual Studio Code project.
Build your project to create the executable you plan to analyze (run proper
task from previous steps).
Press Ctrl+Shift+P
( or View -> Command Palette...
) to open the
Command Palette in VS Code.
Type Intel oneAPI and select Intel oneAPI:Launch Advisor
or
Intel oneAPI: Launch VTune Profiler
.
Select the executable you want to analyze. This needs to be done once for a
workspace unless you want to analyze a different executable.
Select the installation path of the tool * Intel Advisor or Intel VTune
Profiler. This needs to be done once for a workspace.
Enter the name of the tool`s project folder, or press enter to accept the
default. This needs to be done once for a workspace.
The extension will open the Intel VTune Profiler and pass the appropriate project
parameters to the tool.
This extension provides the ability to configure the cpp properties
includePath, defines, and compilerPath.
Press Ctrl+Shift+P
( or View -> Command Palette...
) to open the
Command Palette in VS Code.
Type Intel oneAPI: configure cpp properties configuration
and select it
from the palette.
Select cpp standard.
Select c standard.
A message will appear in the lower right corner to confirm the properties
have been configured.
To view or change the properties, open settings.json from the VS Code Explorer.
To make changes to the configuration, edit the default path in settings.json.
IntelliSense for basic code hints for FPGA Memory Attributes and CPU pragmas
- While typing some of the Attributes/Pragmas, there will be suggestions with
a description of what function should you use.
- The description with the common usage will be visible when hovering a cursor
over a Attribute or Pragma in your code.
FPGA Loop Directives, FPGA Memory Attributes, FPGA Kernel Attributes and CPU
pragmas are supported.
Learn more about FPGA Attributes
Learn more about CPU pragmas
Contributing
Install Visual Studio Code (at least version 1.42) and open this project within
it. You also need node + npm
.
- Switch to project root folder
npm install
code .
At this point you should be able to run the extension in the
"Extension Development Host".
License
This extension is released under the MIT License.
*Other names and brands may be claimed as the property of others.