Condividi tramite


Test deallocate NVMe (LOGO)

Questo test controlla la conformità specifica del comando deallocate nelle unità controller NVMe.

Dettagli del test

   
Specifiche
  • Dispositivo. Archiviazione. ControllerDrive.NVMe.BasicFunction
Piattaforme
  • Windows 10, edizioni client (x86)
  • Windows 10, edizioni client (x64)
  • Windows Server 2016 (x64)
Versioni supportate
  • Windows 10
  • Windows 10, versione 1511
  • Windows 10 versione 1607
  • Windows 10, versione 1703
  • Windows 10 versione 1709
  • Windows 10 versione 1803
  • Windows 10, versione 1809
  • Windows 10, versione 1903
  • Aggiornamento successivo a Windows 10
Tempo di esecuzione previsto (in minuti) 2
Categoria Sviluppo
Timeout (in minuti) 120
Richiede il riavvio false
Richiede una configurazione speciale false
Type automatic

 

Documentazione aggiuntiva

I test in questa area di funzionalità potrebbero avere documentazione aggiuntiva, inclusi prerequisiti, configurazione e informazioni sulla risoluzione dei problemi, disponibili negli argomenti seguenti:

Esecuzione del test

Prima di eseguire il test, completare la configurazione di test come descritto nei requisiti di test: Prerequisiti di test dell'unità disco rigido.

Il test richiede che un'unità controller NVMe sia connessa. L'unità deve soddisfare anche i requisiti seguenti:

  • L'unità deve essere un'unità non di avvio. Il test è distruttivo. Preparerà il disco con la partizione e la formattazione corrette per il test.

  • L'unità deve supportare il comando Deallocate (Trim/Unmap/Discard). Il test invierà i comandi Deallocate usando il comando DATA edizione Standard T MANAGEMENT Trim.

Assicurarsi che sia disponibile un'unità separata da usare come unità logger. Il test selezionerà automaticamente l'unità di registrazione. È importante ridurre al minimo la quantità di attività che si verifica nell'unità al di fuori del test del logo. Poiché si tratta di un test delle prestazioni, l'attività esterna può influire sui risultati.

Risoluzione dei problemi

Per la risoluzione dei problemi generici degli errori di test HLK, vedere Risoluzione dei problemi relativi agli errori di test di Windows HLK.

  • Controllare la traccia WTT

    • Visualizzare il log attività di Esegui test delle prestazioni di taglio.

    • Aprire il file di log TrimPerf.wtl.

    • Verificare la presenza di messaggi che potrebbero risolvere il problema.

    • Copiare il file di log con estensione wtl. Questa è la traccia WTT descritta nella sezione Traccia WTT.

  • Controllare i risultati dei comandi avviati

    • Esplorare i log dei processi di Trim Performance Test (LOGO).

    • Aprire LaunchCommand.result.

    • Se l'errore è correlato all'avvio di un processo, determinare il motivo per cui logman o tracerpt non è riuscito.

  • Nessuna metrica trovata

    • Il test dipende dall'abilitazione della traccia ETW storport per ottenere le metriche di completamento del comando. Per altre informazioni sull'abilitazione di questa traccia, vedere la sezione Traccia ETW.

    • Verificare che nessun'altra traccia ETW storport sia attualmente in corso di registrazione. Una sola traccia ETW Storport può essere attiva alla volta.

  • Se viene visualizzato il messaggio di errore "Il test drive non supporta trim/unmap/deallocate/discard", provare quanto segue:

    • Controllare l'unità NVMe per assicurarsi che il bit LBPU della pagina VPD B2h sia impostato su uno.

    • Provare a inviare un comando Deallocate tramite il comando Trim di DATA edizione Standard T MANAGEMENT.

    • Eseguire di nuovo il test.

  • Test non riuscito con errori di mancata corrispondenza

    Il test invia i comandi deallocate e verifica il contenuto nell'area deallocata. Controlla i tre scenari seguenti. Se tutti non sono riusciti, viene segnalato un errore.

    • Dati precedenti: il comando Deallocate non ha eseguito alcuna operazione in tale area.

    • Tutti gli 0x00s: il comando Deallocate ha scritto tutti gli 0x00s nell'area.

    • Tutti i file 0xFFs: il comando Deallocate ha scritto tutti i file 0xFFs nell'area.

    Il test stampa la posizione di una violazione. Quando si controlla l'offset di violazione, utilizzare l'offset stampato nel file di log più l'offset di byte della violazione.

    Ad esempio, nel file di log viene stampato:

    Verifica della presenza di dati precedenti: mancata corrispondenza al byte X; Previsto: 0x3D, effettivo: 0xFF

    Controllo di convalida trim non riuscito in corrispondenza dell'offset Y, lunghezza Z

    L'offset dei byte di violazione è quindi X + Y (in byte).

  • Test non riuscito con "reset event found"

    I comandi di deallocazione non devono causare l'evento di reimpostazione del disco. Se si verifica questo errore, controllare l'implementazione del comando NVMe deallocate.

  • Se si vuole eseguire il debug dell'errore eseguendo test case specifici, è possibile provare le opzioni della riga di comando seguenti:

    • Visualizzare tutti i test case con numeri: TrimPerf.exe /DriveNumber [Archiviazione DriveNumber] /LogDriveLetter [LoggerDriveLetter]: /DeviceType NVMe /Scenario Compliance /PrintTestCaseName

    • Eseguire un test case specifico per numero di test case: TrimPerf.exe /DriveNumber [Archiviazione DriveNumber] /LogDriveLetter [LoggerDriveLetter]: /Scenario Compliance /Precondizione F /TestCase [TestCaseNumber]

  • Se si vuole eseguire il debug dell'errore più velocemente, provare a disabilitare la precondizione (riempire l'unità fino al 90%, richiede molto tempo) aggiungendo il parametro /Precondizione F come indicato di seguito:

    • TrimPerf.exe /DriveNumber [Archiviazione DriveNumber] /LogDriveLetter [LoggerDriveLetter]: /DeviceType NVMe /Scenario Si lamenta /DiskSize 0 /Cooldown 2 /Precondizione F

Per altre informazioni sulla risoluzione dei problemi, vedere Risoluzione dei problemi di Device.Archiviazione Test.

Altre informazioni

Il test valuta le metriche seguenti:

Comando Deallocate

  • Tutti i comandi Deallocate devono scrivere tutti i 0x00 o tutti i 0xFF o i dati precedenti nelle aree deallocate.

  • I comandi di deallocazione non devono generare eventi di reimpostazione del disco.

Comandi di I/O (con Deallocare l'invio simultaneo in aree diverse)

  • La deallocazione dei comandi non deve influire sulla correttezza delle operazioni di lettura/scrittura.

Passaggi di riproduzione manuale

  • Aprire l'editor del Registro di sistema e passare al percorso seguente: HKEY_LOCAL_MACHINE - SYSTEM ->> CurrentControlSet -> Enum-> SCSI -> Disk&Ven_[name of NVMe drive (not controller) under test] -> [device instance path] -> Device Parameters -> Storport

  • Fare clic con il pulsante destro del mouse su Storport, scegliere Nuovo, quindi fare clic su Valore DWORD (32 bit).

  • Assegnare alla chiave il nome EnableLogoETW e impostare il valore su 1.

  • Collegare l'unità sottoposta a test nel sistema o riavviare il computer per abilitare la chiave del Registro di sistema.

  • Copiare i file TrimPerf.exe, EtwProcessor.dll, Wex.Common.dll e Wex.Communication.dll nel computer locale.

  • Eseguire la riga di comando.

Sintassi dei comandi

Comando Descrizione

TrimPerf.exe /DriveNumber [Archiviazione DriveNumber] /LogDriveLetter [LogDriveLetter]: /DeviceType StorConsumer /Scenario Performance /DiskSize 0 /Cooldown 2

Esegue il test.

Nota

   Per la Guida della riga di comando per questo file binario di test, digitare /h.

 

Elenco file

file Ufficio

TrimPerf.exe

<[testbinroot]>\nttest\driverstest\storage\wdk\

Etwprocessor.dll

<[taefbinroot]>\

Wex.common.dll

<[taefbinroot]>\

Wex.communication.dll

<[taefbinroot]>\

 

Parametri

Nome parametro Descrizione del parametro
WDKDeviceID Percorso dell'istanza del dispositivo da testare.
LLU_NetAccessOnly Account utente per l'accesso alla condivisione file di test.
LLU_LclAmministrazione Usr Account utente per l'esecuzione del test.
Distruttivo (0,1) 0=Passivo, 1=Distruttivo
Archiviazione DriveNumber numero di unità Archiviazione