Step 2: Run RTCP on Untuned System
- From your host system, connect to the target board via SSH. Replace<user>with the username (typically it isrootfor customer reference boards). Replace<target>with the IP address or hostname of the target board.ssh <user>@<target>
- In the SSH session, disable RTCM with the following commands:/usr/share/tcc_tools/scripts/setup_ssram/control_rtcm.sh disable reboot
- From your host system, reconnect to the target board via SSH.ssh <user>@<target>
- [Target board]Get the PCIe device address of the target board. Note the address for later use.lspci | grep I210Example output: In the example below, the address is 01:00.0.01:00.0 Ethernet controller: Intel® Corporation I210 Gigabit Network Connection (rev 03)
- Make sure that Intel® TCC Tools are installed on the target board:ls /usr/share/tcc_tools/ -laMake sure the directory is not empty.
- Go to the packet generator board. You can ssh from the target board to the packet generator board:ssh firstname.lastname@example.org
- [Packet generator board]Get the PCIe device address of the packet generator board. Note the address for later use.lspci | grep I210Example output: In the example below, the address is aa:00.0.aa:00.0 Ethernet controller: Intel® Corporation I210 Gigabit Network Connection (rev 03)
- Make sure that Intel® TCC Tools are installed on the packet generator board.ls /usr/share/tcc_tools/ -laMake sure the directory is not empty.
- Exit the connection to the packet generator board.exit
- [Target board]Run the workload validation script, using the following command. Replace<target_pcie_address>and<packet_generator_pcie_address>per the table below. Make sure to delete the angle brackets (< >) too.python3 /usr/share/tcc_tools/tools/demo/workloads/bin/rtcp_validation_script.py --latency_us 65 --ssh email@example.com --pci_rtcp <target_pcie_address> --pci_pglm <packet_generator_pcie_address> --cpuid 3 --no-computewhereArgumentDescription--pci_rtcp <target_pcie_address>Specify the address of the PCIe device on the target board.Format: 0000:<address>.Example: If the address is 01:00.0, you would enter0000:01:00.0in this argument.--pci_pglm <packet_generator_pcie_address>Specify the address of the PCIe device on the packet generator board.Format: 0000:<address>.Example: If the address is aa:00.0, you would enter0000:aa:00.0in this argument.--no-computeIndicates that the compute part of RTCP will be disabled. Only data transmission will be measured.
- Note that in the workload validation script command,--latency_usis the maximum latency requirement for RTCP latency. It is set to 65 microseconds (us), which aligns to the scenario. If the actual latency exceeds this requirement, the validation is considered a fail.
- Confirm that you see output similar to the example below.Start validation Validation is finished. Please wait for results processing. Validation information: iterations: 5455681 duration: 120 sec cpuid: 3 stress: No Required value less than 65.0 us. Statistic: Min |Max |Avg -------------------------------------- 8.176 us |30.096 us |11.0 us ====================================== Deadline |Iterations |Passed |Failed --------------------------------------------------- 65.0 us |5455681 |5455681 |0 =================================================== SuccessThe first table displays:
The second table displays:
- Min: Minimum latency (execution time of the fastest iteration)
- Max: Maximum latency (execution time of the slowest iteration)
- Avg: Average latency
The script compares the maximum latency measurement to the deadline. In this example, the maximum latency measurement of 30.096 us is lower than the requirement of 65.0 us, and the validation is considered a success. By observing the number of failed and passed iterations, you can understand how critical the maximum latency measurement is for your deadline. The values may be different on your system.Although the Intel® TCC Mode settings in BIOS already meet the latency requirement, they may not be optimal for other requirements. For example, Intel® TCC Mode disables all power management settings and may negatively affect use cases that have power consumption requirements. The data streams optimizer can balance latency and power requirements.
- Deadline: Maximum tolerable latency for each iteration
- Iterations: Total number of iterations
- Passed: Number of iterations that met the deadline
- Failed: Number of iterations that exceeded the deadline
- Make a note of the maximum latency measurement, so that you can compare it to the measurement that you will get after tuning the system.
- Exit the connection to the target board.exit