Developer Guide

  • 2021.2
  • 06/11/2021
  • Public
Contents

Software SRAM Setting

The Software SRAM setting is an option in UEFI BIOS that enables or disables the capability.
When this option is enabled, you can use software SRAM to allocate low-latency memory buffers for your real-time applications.
When this option is disabled, you cannot use software SRAM.

Configuring the Setting

If you intend to use software SRAM and data streams optimizer together, you must take extra steps to ensure compatibility between the two technologies. See Compatibility between DSO and Cache Allocation.
To enable or disable the setting, see the BIOS steps in the Get Started Guide

Effects of the Setting

These diagrams show the behavior of the Software SRAM option.
At any time, you can run the cache configurator tool to check the current status of software SRAM on your target system. Doing so can help you verify the effects of the Software SRAM option. The examples in this section show possible output from the cache configurator. For details, see Cache Configurator.
Behavior on a System without Capsule
This diagram shows the behavior of the setting when the BIOS does not have a cache configuration capsule. When the BIOS has no capsule, it means no one has partitioned the cache or reserved software SRAM buffers via the cache configurator tool or
tcc_setup_ssram.sh
(such as the steps in the
Get Started with Intel® TCC Tools
process).
When the Software SRAM setting is enabled, the BIOS reserves the minimum amount of cache possible (equivalent to 1 cache way) in the L3 to be dedicated to software SRAM. The exact size of this region varies by processor. For the exact size, see Cache Architecture.
The following example shows possible output from the cache configurator when 1 cache way of L3 is reserved as software SRAM. Latency, cores, and buffer size may vary based on processor capabilities.
Here is an initial configuration you currently have on the system CURRENT BUFFERS ALLOCATED: 1 BUFFER 0 LATENCY(ns): 49 CACHE LEVEL: 3 CPU CORES: [0, 1, 2, 3] BUFFER SIZE(bytes): 524288
When the setting is disabled, the BIOS does nothing. No software SRAM is available for use.
The following example shows a possible output from the cache configurator when the software SRAM option is disabled.
Here is an initial configuration you currently have on the system CURRENT BUFFERS ALLOCATED: 0
Behavior on a System with Capsule
This diagram shows the behavior of the setting after the cache is configured via the cache configurator tool or
tcc_setup_ssram.sh
.
When the Software SRAM setting is enabled, the BIOS looks at the capsule that was saved in the BIOS when the cache was configured.
  • If the capsule does not have software SRAM, the BIOS applies the cache partitions. Additionally, the BIOS must reserve software SRAM when the setting is enabled, so it reserves the minimum amount of cache possible (equivalent to 1 cache way) in the L3 to be dedicated to software SRAM. In certain cases, this means the original cache partitioning schemes will need to be modified to enable the software SRAM buffer. RTCM, or a hypervisor supporting software SRAM, will adjust the partitioning. This is why you must
    disable
    the setting to apply a configuration that does not have software SRAM.
  • If the capsule has software SRAM, the BIOS applies the cache partitions and software SRAM buffers that are present in the capsule. In this case, the cache configurator will show the software SRAM buffers that were specified in the capsule.
When the setting is disabled, the BIOS applies the cache partitions but omits any software SRAM buffers if they are present in the capsule. No software SRAM is available for use. In this case, the cache configurator will show the same output as the first “disabled” example. When this happens, the cache space reserved for software SRAM will not be enabled via any of the cache capacity bitmasks, effectively going unused. Users can reclaim this cache space at runtime by modifying the capacity bitmasks to enable the cache ways previously reserved for software SRAM, or you can re-run the cache configurator tool and apply a new partitioning scheme that does not include software SRAM buffers.

Product and Performance Information

1

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