Get Started

  • 2021.2
  • 03/27/2021
  • Public Content

Build and Run a Sample Project Using the Command Line

Intel® oneAPI Base Toolkit
If you have not already configured your development environment, go to Configure Your System then return to this page. If you have already completed the steps to configure your system, continue with the steps below.
Command line development can be done with a terminal window or done through Visual Studio Code*. For details on how to use VS Code locally, see Basic Usage of Visual Studio Code with oneAPI on Linux*. To use VS Code remotely, see Remote Visual Studio Code Development with oneAPI on Linux*.
To compile and run a sample:
  1. Locate a sample project using the oneAPI CLI Samples Browser.
  2. Build and run a sample project using
    Make* or CMake*
    .

Download Samples using the oneAPI CLI Samples Browser

Use the oneAPI CLI Samples Browser to browse the collection of online oneAPI samples. As you browse the oneAPI samples, you can copy them to your local disk as buildable sample projects. Most oneAPI sample projects are built using Make or CMake, so the build instructions are included as part of the sample in a README file. The oneAPI CLI utility is a single-file, stand-alone executable that has no dependencies on dynamic runtime libraries.
An internet connection is required to download the samples for oneAPI toolkits. For information on how to use this toolkit offline, see Developing with Offline Systems in the Troubleshooting section.
To watch a video presentation of how to create a project with the command line, see Exploring Intel® oneAPI Samples from the Command Line.
  1. Open a
    terminal
    window.
  2. If you did not complete the steps in Option 2: One time set up for setvars.sh in the Configure Your System section,
    set
    system variables by
    sourcing
    setvars:
    For root or sudo installations:
    . /opt/intel/oneapi/setvars.sh
    For local user installations:
    . ~/intel/oneapi/setvars.sh
    The command above assumes you installed to the default folder. If you customized the installation folder,
    setvars.sh
    is in your custom folder.
    The
    setvars.sh
    script can be managed using a configuration file, which is especially helpful if you need to initialize specific versions of libraries or the compiler, rather than defaulting to the "latest" version. For more details, see Using a Configuration File to Manage Setvars.sh.
    If you need to setup the environment in a non-POSIX shell, see
    oneAPI Development Environment Setup for more configuration options.
  3. In the same
    terminal
    window, run the application
    (it should be in your PATH)
    :
    oneapi-cli
    The oneAPI CLI menu appears:
  4. Use the up and down arrow keys to select
    Create a project
    , then press
    Enter
  5. Move the arrow key down to select
    Create a project
    , then press
    Enter
    . The language selection will appear. If you want to run samples from a toolkit other than the
    Intel® oneAPI Base Toolkit
    , install the domain-specific toolkit before proceeding.
  6. Select the language for your sample. For your first project, select
    cpp
    , then press
    Enter
    . The toolkit samples list appears.
  7. Select the
    Vector Add
    sample. Vector Add is a simple test application that will help verify that the tools are setup correctly and can access your system's GPU:
  8. After you select a sample, press
    Enter
    .
  9. Specify the location for the project. The default location includes the path from where the utility was run and the name of the project.
  10. Press
    Tab
    to select Create, then press
    Enter
    :

Build and Run a Project Based on a oneAPI Sample Using Make

Some samples require additional steps or arguments for building and/or running the sample. Review the sample's README.md file for specific details regarding how to build and run the sample.
  1. Open a command prompt.
  2. Navigate to the directory which you specified when creating (downloading) the project. If there is no makefile in the project, refer to the section below on how to use CMake to create a project with a makefile that you can use to run the design.
  3. Build the program using Make.
    cd vector-add make all
  4. Run the program.
    make run
  5. Clean the program.
    make clean

Build and Run a Project Based on a oneAPI Sample using CMake

Some samples require additional steps or arguments for building and/or running the sample. Review the sample's README.md file for specific details regarding how to build and run the sample.
To run a different sample using CMake, where
<sample_name>
is the name of the sample you want to run.
  1. If necessary, re-run the command-line utility and select a CMake project that contains a
    CMakeLists.txt
    file.
    cd <sample_name>
  2. Navigate to the build directory.
    mkdir build cd build
  3. Build the program. Run CMake in the build directory to create the makefile. Use the newly created makefile to build the executable.
    cmake ../. make VERBOSE=1
  4. Run the program.
    make run
  5. Clean the program.
    make clean

Compile and run a sample for FPGA

You can run the
vector-add
sample (or any FPGA Data Parallel C++ (DPC++) code) in the following modes:
  • Emulation:
    Verifies the code correctness. Compilation completes in few seconds. Use this mode if you are using the
    Intel® oneAPI Base Toolkit
  • Report:
    Generates a static optimization report for design analysis. Compilation can take a few minutes to complete. When completed, you can find the reports in
    <project_name>.prj/reports/report.html
    . This can be used with the
    Intel® oneAPI Base Toolkit
    . For more information about the reports, refer to the Intel
    ®
    oneAPI DPC++ FPGA Optimization Guide
    .
  • Hardware:
    Generates the actual bitstream on an FPGA device. Compilation can take few hours to complete. Use this mode to measure performance. Download the Intel
    ®
    FPGA Add-On for oneAPI Base Toolkit
    to use this mode.
After downloading the vector-add design example using the oneAPI CLI Samples Browser, perform the following steps to compile and run the design:
  1. Change to the directory containing the
    vector-add
    design example using:
    cd <vector-add directory on the same system>
  2. Run the following
    make clean
    command before you start compiling.
    make clean -f Makefile.fpga
  3. Compile the design using one of the following options:
    • Compile for emulation using:
      make fpga_emu -f Makefile.fpga
    • Compile the report using:
      make report -f Makefile.fpga
      You can view the report at
      vector-add_report.prj/reports/report.html
      . This does not generate an executable.
    • Compile for hardware (takes a longer duration to complete) using:
      make hw -f Makefile.fpga
    If you compiled the hardware on a development system, copy the executable file
    vector-add.fpga
    to the runtime system.
  4. Run the design using one of the following options:
    • Run the design for emulation using:
      make run_emu -f Makefile.fpga
      If you are using a separate development system, perform this step on that system.
    • Run the design on FPGA hardware using:
      make run_hw -f Makefile.fpga
    To understand the command used in the Makefile, refer to the Intel® oneAPI Programming Guide.

Product and Performance Information

1

Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex.