다음을 통해 공유


Trim 성능 테스트

이 테스트는 Trim 명령의 성능을 평가합니다.

테스트 세부 정보

   
사양
  • Device.Storage.Hd.Trim.BasicFunction
플랫폼
  • Windows 10, 클라이언트 버전(x86)
  • Windows 10, 클라이언트 버전(x64)
  • Windows Server 2016(x64)
지원되는 릴리스
  • Windows 10
  • Windows 10 버전 1511
  • Windows 10 버전 1607
  • Windows 10, 버전 1703
  • Windows 10, 버전 1709
  • Windows 10, 버전 1803
  • Windows 10, 버전 1809
  • Windows 10, 버전 1903
  • Windows 10에 대한 다음 업데이트
예상 실행 시간(분) 180
범주 벤치마크
시간 제한(분) 10800
다시 부팅 필요 false
특별한 구성 필요 false
형식 automatic

 

추가 설명서

이 기능 영역의 테스트에는 다음 항목에서 찾을 수 있는 필수 조건, 설정, 문제 해결 정보를 포함한 추가 설명서가 있을 수 있습니다.

테스트 실행

테스트를 실행하기 전에 테스트 요구 사항: 하드 디스크 드라이브 테스트 필수 조건에 설명된 대로 테스트 설정을 완료합니다.

Trim을 지원하는 디바이스는 적절한 컨트롤러에 연결되어야 합니다. 작업은 테스트를 위해 올바른 파티션과 포맷으로 디스크를 준비합니다. 테스트는 파괴적이므로 디스크는 부팅 드라이브가 될 수 없습니다. 또한 테스트는 많은 양의 데이터를 기록하므로 로거 드라이브로 사용할 수 있는 별도의 드라이브가 있는지 확인합니다. 테스트는 자동으로 로깅 드라이브를 선택합니다. 로고 테스트 이외의 드라이브에서 발생하는 작업의 양을 최소화하는 것이 중요합니다. 성능 테스트이기 때문에 외부 작업이 결과에 영향을 줄 수 있습니다. 또한 테스트를 시작하기 전에 드라이브를 채우기 위해 데이터를 작성하여 드라이브를 사전 조정하면 보다 일관된 결과를 얻을 수 있습니다. 이는 드라이브 구현에 따라 다르며 모든 드라이브에 유리한 것은 아닙니다.

문제 해결

HLK 테스트 실패의 일반적인 문제 해결은 Windows HLK 테스트 실패 문제 해결을 참조하세요.

  • WTT 추적 확인

    • Trim 성능 테스트 실행작업 로그를 봅니다.

    • 로그 파일 TrimPerf.wtl을 엽니다.

    • 문제를 해결할 수 있는 메시지를 확인합니다.

    • .wtl 로그 파일을 복사합니다. 이는 WTT 추적 섹션에 설명된 WTT 추적입니다.

  • 실행된 명령 결과 확인

    • 트림 성능 테스트(로고)의 작업 로그를 찾아봅니다.

    • LaunchCommand.result를 엽니다.

    • 오류가 프로세스 시작과 관련된 경우 logman 또는 tracerpt가 실패한 이유를 확인합니다.

  • 메트릭을 찾을 수 없음

    • 테스트는 명령 완료 메트릭을 가져오기 위해 Storport ETW 추적을 사용하도록 설정했는지 여부에 따라 다릅니다. 이 추적을 사용하도록 설정하는 방법에 대한 자세한 내용은 ETW 추적 섹션을 참조하세요.

    • 현재 로깅 중인 다른 Storport ETW 추적이 없는지 확인합니다. 한 번에 하나의 Storport ETW 추적만 활성화할 수 있습니다.

  • "테스트 드라이브가 트림을 지원하지 않습니다" 오류 메시지가 표시되면 다음을 시도합니다.

    • SATA SSD의 IDENTIFY DEVICE 데이터 단어 169 비트 0이 1로 설정되어 있는지 확인합니다.

    • DATA SET MANAGEMENT를 통해 Trim 명령을 보내보세요.

    • 테스트를 다시 실행합니다.

  • 읽기 및 쓰기 최대 대기 시간이 500밀리초를 초과하여 테스트가 실패한 경우 다음을 시도합니다.

    • Trim 없이 IO 대기 시간을 확인합니다. 대기 시간을 500밀리초 미만으로 낮추세요.

    • Trim이 있는 상태에서 IO 대기 시간을 확인합니다. 대기 시간을 500밀리초 미만으로 낮추세요.

  • 특정 테스트 사례를 실행하여 실패를 디버그하려면 다음 명령줄 옵션을 시도할 수 있습니다.

    • 모든 테스트 사례를 숫자로 표시: TrimPerf.exe /DriveNumber [StorageDriveNumber] /LogDriveLetter [LoggerDriveLetter]: /DeviceType StorConsumer /PrintTestCaseName

    • 테스트 사례 번호로 특정 테스트 사례 실행: TrimPerf.exe /DriveNumber [StorageDriveNumber] /LogDriveLetter [LoggerDriveLetter]: /DeviceType StorConsumer /Precondition F /TestCase [TestCaseNumber]

  • 특정 순수 Trim 시나리오를 실행하여 오류를 디버그하려는 경우 다음 명령줄 옵션을 시도할 수 있습니다.

    • 이진에는 다음과 같은 단위 테스트 옵션이 있습니다. TrimPerf.exe /DriveNumber [StorageDriveNumber] /LogDriveLetter [LoggerDriveLetter]: /DeviceType StorConsumer /Precondition F /UnitTest T /RangeCount [NumberOfRangesPerTrim] /SizeCount [SizeOfEachRange] /SizeUnit Sector /TrimCount [NumberOfTrims]

    • /RangeCount: Trim 명령어당 범위 수

    • /SizeCount: /SizeUnit에 있는 각 범위의 크기입니다.

    • /SizeUnit: /SizeCount의 세분성, SATA SSD의 경우 세분성은 섹터입니다.

    • /TrimCount: 테스트 사례에서 전송된 트림 수

  • 오류를 더 빨리 디버그하려면 다음과 같이 /Precondition F 매개 변수를 추가하여 사전 조건을 사용하지 않도록 설정합니다(드라이브를 90%까지 채우고 시간이 오래 걸림).

    • TrimPerf.exe /DriveNumber [StorageDriveNumber] /LogDriveLetter [LoggerDriveLetter]: /DeviceType StorConsumer /Scenario Performance /DiskSize 0 /Cooldown 2 /Precondition F

자세한 문제 해결 정보는 Device.Storage 테스트 문제 해결을 참조하세요.

추가 정보

작업은 테스트 중인 디바이스의 디바이스 인스턴스 ID를 가져와서 디바이스 인스턴스 ID를 물리적 드라이브 번호로 변환합니다. 작업은 드라이브를 분할하고 포맷하여 테스트에 필요한 구성으로 가져옵니다. 테스트는 요구 사항의 항목에 각각 매핑된 일련의 테스트 사례를 통해 실행됩니다. 테스트 사례는 독립적이며 순차적으로 실행됩니다. 테스트 사례 목록은 지정된 적절한 디바이스와 함께 PrintTestCaseName 명령줄 옵션을 사용하여 얻을 수 있습니다. 이러한 각 테스트 사례는 추가 테스트 또는 디버깅을 위해 독립 실행형 모드의 테스트를 사용하여 명령줄에서 실행할 수 있습니다.

Trim 성능 테스트는 각 유형의 디바이스에 대해 실행할 성능 테스트와 적절한 메트릭을 정의하는 정책 테이블을 저장합니다. 테이블에서 적절한 항목이 선택되면 테스트는 해당 디바이스에 대해 테이블에 정의된 스레드를 순차적으로 생성합니다. 각 스레드는 테이블에 지정된 매개 변수에 따라 실행됩니다. 각 스레드에 대한 중지 조건이 충족되면 스레드가 실행을 중지하고 결과를 구문 분석하여 통과/실패 로그를 생성합니다.

테스트는 대용량 성능 로그를 생성하며 테스트 중인 드라이브의 성능에 영향을 미치지 않기 위해 이러한 로그는 별도의 드라이브에 기록됩니다. 드라이브는 작업에 의해 자동으로 선택되지만 명령줄에서 지정할 수도 있습니다.

테스트 명령은 다음과 같습니다.

Trim 명령

모든 Trim 명령은 500밀리초 이내에 완료되어야 합니다.

IO 명령(Trim 전송과 동시에)

  • 모든 읽기 및 쓰기 명령은 500밀리초 이내에 완료됩니다.

  • I/O 명령의 98.5%가 100밀리초 이내에 완료됩니다.

명령 구문

명령 옵션 설명

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

테스트를 실행합니다.

참고

   이 테스트 이진에 대한 명령줄 도움말을 보려면 /h를 입력합니다.

 

파일 목록

파일 위치

TrimPerf.exe

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

Etwprocessor.dll

<[taefbinroot]>\

Wex.common.dll

<[taefbinroot]>\

Wex.communication.dll

<[taefbinroot]>\

 

매개 변수

매개 변수 이름 매개 변수 설명
WDKDeviceID 테스트할 디바이스의 인스턴스 경로입니다.
LLU_NetAccessOnly 테스트 파일 공유에 액세스하기 위한 사용자 계정입니다.
LLU_LclAdminUsr 테스트를 실행하기 위한 사용자 계정입니다.
Destructive (0,1) 0=패시브, 1=파괴적
StorageDriveNumber 스토리지 드라이브 번호입니다.
QueryStorage_bus_type 스토리지 버스 유형