/
Linktest - Intel Stratix 10 Node - OpenCL

Linktest - Intel Stratix 10 Node - OpenCL

In order to try and check the FPGA-to-FPGA serial channel connections of the Intel Stratix 10 cards with the OpenCL tool flow, we have prepared ready-to-use modules with compiled host code and synthesized device code. To run the tests, please follow the steps.

Get Node and Prepare Environment

  1. Get a node with Stratix 10 cards in the right BSP (all BSPs with _max suffix support serial channels)

srun --partition=fpga -A YOUR-PROJECT-NAME --constraint=bittware_520n_20.4.0_max -t 1:00:00 --pty bash

This command allocates one node with the correct BSP for one hour. You get a shell (bash) on the node.

  1. Load the ready-to-use modules to run the linktests

module reset module load fpga module load intel/opencl_sdk/21.4.0 module load bittware/520n/20.4.0_max module load changeFPGAlinks module load intel/testFPGAlinks-opencl

This commands

  • (intel/opencl_sdk/21.4.0 and bittware/520n/20.4.0_max): load the correct BSP version and the latest OpenCL SDK version that is supported on our systems

  • (changeFPGAlinks): loads the utility to change the topology how the FPGA-to-FPGA network is configured, see FPGA-to-FPGA Networking

  • (intel/testFPGAlinks-opencl): loads the OpenCL linktest suite

Configure Topology and Run Test

Before running a test, the correct topology on the FPGA-to-FPGA network needs to be set. This is done with the changeFPGAlinks utility. The following example describes the required steps for the test testFPGAlinks_throughput_nodes_1_cards_1 (using one FPGA node and one FPGA card). The test has the following parameters

Usage : testFPGAlinks_throughput_nodes_1_cards_1 [<options>] -d <device> : OpenCL Device : 0 - acl0 (default) : 1 - acl1 : 2 - acl2 -s <sequence> : Data Sequence : 0 - Random (default) : 1 - Count (with channel in top nibble) : 2 - Inverse of 1 -n <numerrs> : Num of errors per channel to display. Default 1 -v <verbosity> : How verbose to display. Default 0 -t <tx_gap> : Default = 0 -r <rx_gap> : Default = 0 -l <loops> : Default = 1 -m <testmode> : Test connection mode. : 0 - QSFP0 to QSFP1, QSFP2 to QSFP3 (default) : 1 - QSFP0 to QSFP2, QSFP1 to QSFP3 : 2 - QSFP0 to QSFP3, QSFP1 to QSPF2 : 3 - each QSFP linked to itself (loopback)

The important parameters are

  • -d to select the FPGA card (= 0 for the first FPGA card or = 1 for the second FPGA card)

  • -m to set the testmode, how the FPGA links are set. The image below shows a visualization of the different testmodes

 

grafik-20241030-145659.png

If we want to run testmode 0, we need to setup the FPGA-to-FPGA network accordingly. This is done with the changeFPGAlinks utility:

Testmode 0, see FPGA GUI

The other topologies for the testmodes can be set accordingly, expand to see details.

Testmode 1

Testmode 2

Testmode 3

Now we can run the test. To execute the test on the first FPGA card and the first testmode, we use

The test should end with Serial channel test PASSED.

Related content

FPGA-to-FPGA Networking
FPGA-to-FPGA Networking
Read with this
Intel FPGA SDK for OpenCL and Bittware BSP version combinations
Intel FPGA SDK for OpenCL and Bittware BSP version combinations
More like this
Running Compute Jobs
Running Compute Jobs
Read with this
FPGA News - 2019
FPGA News - 2019
More like this
FPGA News - 2020
FPGA News - 2020
More like this
Intel FPGA SDK for OpenCL
Intel FPGA SDK for OpenCL
More like this