Penetrate - NVMe SSD Test Software

Download

Last updated: 2024/10/24

Linux Package penetrate-1.2.0-demo.tar.gz Set up on Ubuntu 22.04/20.04
Windows Package penetrate-1.2.0-demo.rar Set up on Windows 10

Note

The version and file name of the download package may be different from what is mentioned in below sequence.

Host Reference System

On Ubuntu 22.04/20.04

System Update and Settings

        
user1@pc:~$ sudo apt-get update
user1@pc:~$ sudo apt-get install libconfig-dev libusb-dev
user1@pc:~$ sudo sysctl -w vm.nr_hugepages=1024
        
    

Decompress and Run Hello World

        
user1@pc:~$ tar -zxvf penetrate.tar.gz
user1@pc:~$ cd penetrate
user1@pc:~/penetrate$ sudo pni hello.pnt World 
Hello World!
        
    

Set up DUT

Say the DUT is /dev/nvme0.

        
user1@pc:~/penetrate$ sudo -s
root@pc:/home/user1/penetrate$ sdut --vfio-noiommu nvme0
Success: nvme0
        
    

If IOMMU is enabled on your system, use --vfio-iommu option.

        
root@pc:/home/user1/penetrate$ sdut --vfio-iommu nvme0
        
    

Run Sample Scripts

Change working directory into main.

        
root@pc:/home/user1/penetrate$ cd main
        
    

Test Sequential Read Speed

        
root@pc:/home/user1/penetrate/main$ pni a01_seqRdSpeed_1t1q.pnt 
        
    

The test log is put at log/a01_seqRdSpeed_1t1q.pnt/.

Test Sequential Write Speed

        
root@pc:/home/user1/penetrate/main$ pni a06_seqWrSpeed_1t1q.pnt 
        
    

The test log is put at log/a06_seqWrSpeed_1t1q.pnt/.

Test SR-IOV virtual functions

        
root@pc:/home/user1/penetrate/main$ pni b02_seq_mdevs_mfuns_mparts.pnt 
        
    

Check the test result in log/b02_seq_mdevs_mfuns_mparts.pnt/.

TCG Opal: Level 0 Discovery

        
root@pc:/home/user1/penetrate/main$ pni u10_Level0Discovery.pnt
        
    

The test log is put at log/u10_Level0Discovery.pnt/.

TCG Opal: List SP

        
root@pc:/home/user1/penetrate/main$ pni u11_ListSP.pnt
        
    

The test log is put at log/u11_ListSP.pnt/.

Run Opal Test Cases: A02 A03 A04 A05 A07 A08

        
root@pc:/home/user1/penetrate/main$ pni opal_test_cases_nvme.pnt
        
    

The test log is put at log/opal_test_cases_nvme.pnt/.

Revert by PSID

Say the PSID is 12345678901234567890123456789012

        
root@pc:/home/user1/penetrate/main$ pni u16_Revert_byPSID.pnt 12345678901234567890123456789012
        
    

On Windows 10

Note

Windows 10 should not be installed on an NVMe device. Before following below steps, make sure that Windows 10 is installed on a for example SATA disc.

Install WinDriver v16.3.0

The Peanut NVMe extension module is based on WinDriver v16.3.0. WinDriver v16.3.0 trial version is available at https://jungo.com/windriver/files/.
Remember to restart Windows 10 after this installation.

Decompress and Run Hello World

Disable Device on Computer Management

Penetrate "grabs" all detected NVMe devices on the system. To fully control any NVMe device, it is necessary to disable each NVMe device on Computer Management.

Follow the steps to disable NVMe devices.

Run Sample Scripts

Change working directory into main.

        
C:\penetrate> cd main
        
    

Test Sequential Read Speed

        
C:\penetrate\main> ..\pni a01_seqRdSpeed_1t1q.pnt 
        
    

The test log is put at log\a01_seqRdSpeed_1t1q.pnt\.

Test Sequential Write Speed

        
C:\penetrate\main> ..\pni a06_seqWrSpeed_1t1q.pnt 
        
    

The test log is put at log\a06_seqWrSpeed_1t1q.pnt\.

TCG Opal: Level 0 Discovery

        
C:\penetrate\main> ..\pni u10_Level0Discovery.pnt
        
    

The test log is put at log\u10_Level0Discovery.pnt\.

TCG Opal: List SP

        
C:\penetrate\main> ..\pni u11_ListSP.pnt
        
    

The test log is put at log\u11_ListSP.pnt\.

Run Opal Test Cases: A02 A03 A04 A05 A07 A08

        
C:\penetrate\main> ..\pni opal_test_cases_nvme.pnt
        
    

The test log is put at log\opal_test_cases_nvme.pnt\.

Revert by PSID

Say the PSID is 12345678901234567890123456789012

        
C:\penetrate\main> ..\pni u16_Revert_byPSID.pnt 12345678901234567890123456789012