Developer Guide

  • 2021.1
  • 11/03/2021
  • Public
Contents

Host-Target Reference Implementation

The host-target reference implementation demonstrates the workflows described in Developer Workflow Overview. The host system is a development machine. The target system is the machine being tuned.

Preproduction Phase

The preproduction steps are divided between the host and target, as shown in the following diagram.
Steps:
  1. You will do your work on the host system. The reference implementation includes samples of the input files:
    requirements file
    ,
    workload validation script
    , and
    environment file
    .
  2. On the host system, run the data streams optimizer with the input files. The rest of the workflow is automated by the tool. At each step, the tool will display status messages on the console.
    In this release, ensure that RTCM is disabled before using the data streams optimizer for the first time and remains disabled afterward. For more details and instructions, see Real-Time Configuration Manager (RTCM). If you combine RTCM and data streams optimizer, you may experience system hang and various errors due to offline cores. To resolve the errors, you may need to reflash the BIOS. For more details, see Troubleshooting.
  3. On the host system, the tool finds a tuning configuration.
  4. The tool wraps the tuning configuration in a
    capsule
    image. The capsule image is a mechanism for transporting and applying the tuning configuration to the reference BIOS. The tool uses software called
    Subregion Capsule Tool
    to create the capsule.
  5. The tool connects to the target system via SSH.
  6. The tool moves the capsule image to the target system.
  7. On the target system, the tool applies the capsule image using software called
    fwupdate
    .
  8. The tool reboots the target system. The tuning configuration is applied to the target system.
  9. The tool runs your workload validation script. The script tests whether the workload executed successfully having met the requirements specified, and accordingly returns success or failure.
  10. If the script returns failure, the tool selects another configuration. The tool repeats the configuration and validation process until the requirements are met or the tool is unable to identify any other configurations.
  11. If the requirements are met, the tool generates a
    tuning configuration file
    on the host system. The file specifies the selected tuning configuration. You will use the file to tune your production environment.
To accomplish this flow, the host and target use certain components.
The host uses the following components:
  • Requirements file and environment file
  • Data streams optimizer
  • Subregion capsule tool
The target uses the following components:
  • Workload validation script
  • fwupdate tool
  • Yocto Project-based OS
  • Reference BIOS
The host and target are connected via SSH.

Production Phase

The production steps are divided between the host and target, as shown in the following diagram.
Steps:
  1. You will do your work on the host system. First, acquire the
    tuning configuration file
    from the preproduction phase.
  2. Run the data streams optimizer with the tuning configuration file as input. The rest of the workflow is automated by the tool. At each step, the tool will display status messages on the console.
    In this release, ensure that RTCM is disabled before using the data streams optimizer for the first time and remains disabled afterward. For more details and instructions, see Real-Time Configuration Manager (RTCM). If you combine RTCM and data streams optimizer, you may experience system hang and various errors due to offline cores. To resolve the errors, you may need to reflash the BIOS. For more details, see Troubleshooting.
  3. The tool creates a capsule based on the tuning configuration file. Unlike the preproduction phase, the tool does not need the subregion capsule tool software.
  4. The tool connects to the target system via SSH.
  5. The tool moves the capsule image to the target system.
  6. On the target system, the tool applies the capsule image.
  7. The tool reboots the target system. The tuning configuration is applied to the target system.
To accomplish this flow, the host and target uses certain components.
The host uses the following components:
  • Tuning configuration file
  • Data streams optimizer
The target uses the following components:
  • fwupdate tool
  • Yocto Project-based OS
  • Reference BIOS
The host and target are connected via SSH.
Consider the following items to secure the connection between host and target:
  • Disable weak algorithms and cipher suites (any suites that use SHA1 or SHA224 or MD5, DES cipher variants, non-AES symmetric cipher variants) from the ssh_config
  • Choose adequate key sizes (minimum 3k for RSA keys, minimum 256 bits for AES keys)
  • Run up-to-date SSH server packages

Next Steps

Try the reference implementation: Get Started with a Sample.

Product and Performance Information

1

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