Developer Guide

  • 2021.1
  • 11/03/2021
  • Public
Contents

Step 2: Run RTCP on Untuned System

In this step, you will run the RTCP workload validation script on the untuned system that you set up in Step 1: RTCP Setup. As described in the scenario, Intel® TCC Mode is enabled in BIOS. This step will produce a baseline latency measurement of how the system performs with Intel® TCC Mode enabled, which you will later compare with the latency measurement gathered after tuning the system with the data streams optimizer.
  1. From your host system, connect to the target board via SSH. Replace
    <user>
    with the username (typically it is
    root
    for customer reference boards). Replace
    <target>
    with the IP address or hostname of the target board.
    ssh <user>@<target>
  2. In the SSH session
    , disable RTCM with the following commands:
    /usr/share/tcc_tools/scripts/setup_ssram/control_rtcm.sh disable reboot
  3. From your host system, reconnect to the target board via SSH.
    ssh <user>@<target>
  4. [Target board]
    Get the PCIe device address of the target board. Note the address for later use.
    lspci | grep I210
    Example output: In the example below, the address is 01:00.0.
    01:00.0 Ethernet controller: Intel® Corporation I210 Gigabit Network Connection (rev 03)
  5. Make sure that Intel® TCC Tools are installed on the target board:
    ls /usr/share/tcc_tools/ -la
    Make sure the directory is not empty.
  6. Go to the packet generator board. You can ssh from the target board to the packet generator board:
    ssh root@192.168.0.2
  7. [Packet generator board]
    Get the PCIe device address of the packet generator board. Note the address for later use.
    lspci | grep I210
    Example output: In the example below, the address is aa:00.0.
    aa:00.0 Ethernet controller: Intel® Corporation I210 Gigabit Network Connection (rev 03)
  8. Make sure that Intel® TCC Tools are installed on the packet generator board.
    ls /usr/share/tcc_tools/ -la
    Make sure the directory is not empty.
  9. Exit the connection to the packet generator board.
    exit
  10. [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 root@192.168.0.2 --pci_rtcp <target_pcie_address> --pci_pglm <packet_generator_pcie_address> --cpuid 3 --no-compute
    where
    Argument
    Description
    --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 enter
    0000:01:00.0
    in 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 enter
    0000:aa:00.0
    in this argument.
    --no-compute
    Indicates that the compute part of RTCP will be disabled. Only data transmission will be measured.
  11. Note that in the workload validation script command,
    --latency_us
    is 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.
  12. 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 =================================================== Success
    The first table displays:
    • Min: Minimum latency (execution time of the fastest iteration)
    • Max: Maximum latency (execution time of the slowest iteration)
    • Avg: Average latency
    The second table displays:
    • 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
    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.
  13. 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.
  14. Exit the connection to the target board.
    exit

Product and Performance Information

1

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