OakGate SSD Test and Validation Software

Powering the OakGate SSD Test Appliances for High-Performance and Robust Testing of Flash Storage

OakGate SVF

The industry’s most advanc​ed​ storage-testing software, the Storage Validation Framework (SVF) engine and Enduro contro​ller application are the core integrated software applications that power the OakGate SSD Test appliances.


​​

​Key Features

 Complete Test Capabilities

  • Product validation​
  • Performance benchmarking
  • Protocol conformance testing
  • Protocol analysis
  • Power measurement and management
  • Peripheral management
  • Test automation
  • Test reporting
  • REST/Python APIs


Protocol Support

NVMe v1.2 through v2.0 Standard and MI Commands


Robust

Proven over time within many different environments by the leading storage manufacturers


Scalable

Ability to scale multiple Enduro applications, appliances, and DUTs


Connector/Format Agnostic

Ability to test DUTs of different connector types and formats with optionally purchased Modules


Easy Integration

Easily integrated into existing development, test, and manufacturing environments through APIs and automation scripting capabilities


Memory Fencing

Ability to detect direct memory access (DMA) violations during test


Advanced Features

ZNS, TCG, OCP, SR-IOV, CMB, HMB and Persistent Memory


Test a Variety of Data Storage Devices

  • PCIe® SSD cards/NVMe add-in cards (AIC)
  • SSD drives (PCIe, SAS, and SATA)
  • HDDs (PCIe, SAS, and SATA)
  • Arrays (PCIe, SAS, and SATA)



The applications have been purposefully built from decades of industry storage experience, providing a high-performance, feature-rich foundation. The fifth-generation software has been hardened over several years in intense test environments at major storage customer sites worldwide.

Together, the software provides a comprehensive list of storage features and capabilities, reaching far beyond basic protocol verification to deliver an unparalleled testing experience.​



discovered_c1r1.png  
discovered_c1r1.png  

The Discovered Appliances tool includes controls to discover and start an appliance, as well as the ability to update the software and discovery agent, and share driver instances. It also provides a method for associating peripherals and controlling power for hot swapping.

discovered_c1r1.png  

The Configuration tool provides numerous settings to configure devices, as well as displays device under test (DUT) information at its various levels in the asset tree. Each level contains control (menu) options such as Initialize, Shutdown, Configure, Reset, and so on.

discovered_c1r1.png  

The Exerciser tool is used to uniquely configure and run I/O traffic and tests for a selected LUN/namespace. The exerciser includes numerous individual and global settings to configure and run I/O traffic and tests on a selected LUN/namespace.

discovered_c1r1.png  

The Automation tool runs an automation suite, which consists of one or more test sets. A test set can include multiple tests, actions, and loops. Each of the individual tests can run with configured Exerciser settings and/or run directed tests. The automation suite runs in a predetermined order without user intervention.


discovered_c1r1.png  

A Directed Test (DT) tool runs a specific sequence of commands sent to the target with the expectation that the target device returns a specific sequence of responses. Preloaded DTs are intended to complete without failure. DTs are used for basic test functionality, specific conformance tests, or when tests that are configured through the Exerciser or Automation cannot cover specific test points.​


discovered_c1r1.png  

The SNIA 2.0 tool provides a means to run Storage Networking Industry Association (SNIA) performance tests on an SSD, such as an IOPS Test and a Latency Test, as defined in the SNIA Solid State Storage (SSS) Performance Test Specification (PTS), Version 2.0.1 (SNIA SSS PTS v2.0.1). Its results (the generated reports) enable comparative testing and analysis among solid state storage devices.

discovered_c1r1.png  

The Analyzer tool is one of the key features of Enduro. It provides real-time protocol analysis for each LUN/namespace.

discovered_c1r1.png  

The Dashboard is available for monitoring and convenience purposes at the right-side of the interface. When a controller/initiator or LUN/namespace is selected in the asset tree, the Live Statistics Bar displays the live Read IOPS, Write IOPS, Read B/W, Write B/W, and CPU utilization (with controller/initiator selected) statistics.

​All Your SSD Test Tools Integrated with
One Powerful Win​dowing System

​​​The OakGate SSD Test Software is built on three core pillars.

  1. ​​Product Validation is designed to test functional integrity of the product and uncover bugs. The user can do so via complex traffic generation and error injection.

  2. ​​Protocol Conformance provides a large set of built-in tests that helps verify conformance with a specific protocol that the device supports. The user can add t​heir own unique tests as well.

  3. ​​Performance Benchmarking allows the use to measure the true performance of the device under various workloads and generate all kinds of graphs and histograms.

​ ​​​
​​​​​​​​ R300 Appliance 

Around these three core pillars, the​ software incorporates a number of advanced capabilities. We have a built-in command level analyzer that records each command and lets the user go back analyze what led to a specific error. Customers can perform power cycling and power measurements on an individual DU​T basis. For Reliability and Production, SVF controls these functions in chambers and testers offered by our partners.

Additionally, we have a number of ways our customers can their write their own scripts to exercise specific functionality. For example, customers can write Python test scripts and run those through our REST APIs.


monitor_with_bubbles.png


SVF / Enduro Software Features

  •  

    Protocol Support

    Enjoy the satisfaction of having built-in support for the storage industry's most popular and emerging protocols.

    LEARN MORE
  •  

    Traffic Generation

    Easily generate high-performance, randomized traffic profiles with I/O profiles.

    LEARN MORE
  •  

    Error Injection

    Inject error conditions to see how the DUT behaves in​ real-life situations.

    LEARN MORE
  •  

    Data Validation

    Build confidence that your device behaves as intended and unconditionally keeps data in tact, even under the most stressful power-loss situations.

    LEARN MORE
  •  

    Protocol Conformance / Directed Tests

    Execute hundreds of built-in conformance tests that evaluate a device against its protocol, or create your own for maximum flexibility and control.

    LEARN MORE
  •  

    Protocol Analyzer

    Effectively debug and analyze from early prototype bring-up through long-term I/O testing using the embedded protocol analyzer.

    LEARN MORE
  •  

    Performance Benchmarking

    Deliver consistent benchmarking results, measure the true performance of the device under test, and generate a suite of performance analytics.

    LEARN MORE
  •  

    Peripheral Control & Power Management

    Test your product's true limits with our industry-leading multi-vendor support for peripheral control and power management.

    LEARN MORE

Protocol Support

Enjoy the satisfaction of having built-in support for the storage industry's most popular and emerging protocols. All OakGate appliances come fully equipped with built-in support for the storage industry's most popular protocols. OakGate keeps you ahead of the curve by working closely with standards committees and storage protocol specification workgroups, ensuring your test environment is feature-complete and conformance- test-ready.

With the OakGate Test Platform's native protocol integration and form factor support it's easy to test complex heterogeneous topologies without the need for additional tools or equipment. Coordinating and automating simultaneous multi-protocol test scenarios within a single, unified test platform decreases the complexity of your test infrastructure, while providing the fine-grain orchestration to meet every corner of your test plan.

  • PCIe - Gen1, Gen2, Gen3, and Gen4
    • NVMe
    • NVMe-MI
    • AHCI
    • SATA Express
    • SCSI Express / SOP
  • SAS - 3, 6, and 12 Gbps
  • SATA - 3 and 6 Gbps
  • FC - 4, 8, and 16 Gbps
  • iSCSI - 10, 40, and 100 Gbps

Traffic Generation

Easily generate high-performance, randomized traffic profiles with I/O profiles of test scenarios that would be extremely difficult to create manually or with any other test tool. Configure parameters such as fixed and random I/O sizes, a variety of data patterns, a broad range of queue depths, pre-defined error policies and I/O performance thresholds.

Intermix multiple I/O profiles that each has its own set of parameters (such as I/O size and read/write ratio) that control its behavior. Throttle I/O traffic to a specified level to pinpoint exactly how a device will behave under a given level of stress. Recreate an exact traffic scenario by replaying a previously saved analyzer trace.

  • Extremely high performing
  • Flexible for complete control of workloads
  • Fixed or randomized I/O patterns
  • Small-to-large queue depths
  • Multiple I/O profiles
  • I/O capping
  • Trace file replay, JEDEC enterprise and client workloads

Error Injection

Mix and Match Error Conditions and Traffic

Inject pre-built or custom protocol-specific error conditions and verify that your device behaves as expected even under the worst conditions. Mix and match any combination of normal I/O traffic and error injection.

Inject Custom Commands (Extra Traffic)

Insert custom commands into the overall traffic mix by choosing from pre-built commands or hand crafting your own as needed.

Inject Low Level Errors

Inject a wide variety of randomized low level errors including underflow and overflow conditions, aborts, dropped frames, link downs, resets, power on/off, and more.


Data Validation

Identify common errors and data corruption using data validation. Several data validation controls are available for you to decide what constitutes an error. Build confidence that your device behaves as intended, and unconditionally keeps data intact, even under the most stressful power-loss situation. When enabled, data validation checks whether the data that is read back from a target location is the same as the data that was last previously-written to that target location.


Protocol Conformance / Directed Tests

Protocol Conformance Test Suite

Execute hundreds of built-in PCIe/SAS/SATA conformance tests (also called directed tests (DTs)) that evaluate a device against its protocol.

Custom Tests through SDK

For maximum flexibility and control, create your own conformance tests with the directed test software development kit (dtSDK).


Protocol Analyzer

Effectively debug and analyze from early prototype bring-up through long-term I/O testing using the embedded protocol analyzer.

  • Real-time Traffic and I/O Statistics
  • Decoded Frame Analysis
  • Quick Search and Navigation
  • Trigger on I/O Events
  • Sort and Filter Features
  • Event Log Integration
Protocol Analyzer Screenshot 

Performance Benchmarking

Deliver consistent benchmarking results, measure the true performance of the DUT, and generate a suite of performance analytics

Performance Graph Screenshot 
  • Graph against changing variables: R/W/T IOPS, R/W/T BW, Avg R/W/T Latency, Max R/W/T Latency, Power (3v, 5v, 12v), Voltage (3v, 5v, 12v), Current (3v, 5v, 12v), Temperature
  • Able to iterate over: Queue Depth, Read/Write Ratio, IO Size, Data Entropy, Rounds, Tests, IO Capping, Temperature

Peripheral Control and Power Management

The SVF Pro is designed to provide a seamless path to in-chassis power cycling and measurement, as well as through external enclosures. Add multiple peripheral controllers to the application interface to manage/monitor peripheral capabilities for DUTs, such as power on/off, power measurement, device sleep (DevSleep) on/off, and temperature.

  • Independent and interactive device control
    • Manual power on/off
    • PCIe hot swap
  • Real-time monitoring of power consumption
  • Automated power control (induces stressful situations that are often a cause of device bugs)
  • Automated power measurement for benchmarking​





    ​​​



    ​​

    ​​




    ​​











    ​​​
    ​​​


















    ​​​​







    ​​
    ​​







    ​​