Windows 11의 GPU TDR: TdrLevel, 지연 및 재시도 한도
목차
짧은 답변
섹션 제목: “짧은 답변”Timeout Detection and Recovery(TDR)는 GPU 멈춤을 감지합니다. GPU가 정해진 시간 안에 응답하지 않으면 Windows는 그래픽 하위 시스템 복구를 시도합니다. 대기 시간을 늘리거나 복구를 끄면 멈춤에 대한 반응이 달라질 뿐, GPU가 빨라지지는 않습니다.
무엇을 확인했는가
섹션 제목: “무엇을 확인했는가”그래픽 하위 시스템이 나열된 TDR 매개 변수를 읽는지, 그 값이 어떻게 정규화되는지, 대기 시간을 늘리거나 복구를 끄면 무엇이 달라지는지 확인했습니다.
연구 범위
섹션 제목: “연구 범위”Windows 11 25H2 build 26200.9168, WDDM 드라이버 모델을 사용하는 그래픽 하위 시스템 dxgkrnl.exe. 물리적 GPU와 개별 드라이버는 표본에 포함되지 않았습니다.
방법론
섹션 제목: “방법론”매개 변수를 dxgkrnl.exe 코드와 정적으로 대조하고, 정규화 범위를 확인하고, Microsoft 공개 문서와 대조했습니다.
표준 값
섹션 제목: “표준 값”| Registry path | Value | Type | Default | 역할 |
|---|---|---|---|---|
HKLM\SYSTEM\CurrentControlSet\Control\GraphicsDrivers |
TdrLevel |
REG_DWORD |
3 |
TDR recovery 수준 |
| 동일 경로 | TdrDelay |
REG_DWORD |
2초 |
기본 GPU 대기 시간 |
| 동일 경로 | TdrDdiDelay |
REG_DWORD |
5초 |
DDI recovery 지연 |
| 동일 경로 | TdrDodPresentDelay |
REG_DWORD |
2초 |
display-only present 지연 |
| 동일 경로 | TdrDodVSyncDelay |
REG_DWORD |
2초 |
display-only VSync 지연 |
| 동일 경로 | TdrLimitCount |
REG_DWORD |
5 |
허용 반복 횟수 |
| 동일 경로 | TdrLimitTime |
REG_DWORD |
60초 |
TDR 집계 창 |
TdrLevel
섹션 제목: “TdrLevel”허용되는 값은 0..3입니다. 0는 멈춤 감지를 끄고, 1는 대기 시간을 초과하면 Windows를 비상 정지시키며, 2는 VGA에서 구현되지 않은 복구를 나타내고, 3는 표준 복구를 켭니다. 범위를 벗어난 값은 3로 정규화됩니다. 이 매개 변수는 그래픽 하위 시스템 초기화 시 dxgkrnl.exe가 읽습니다.
기본값을 그대로 두십시오. 복구를 끄면 데스크톱이 멈춰서 시스템을 다시 시작해야 할 위험이 커집니다. 임시 변경은 드라이버가 대기 시간을 초과하는 특정 사례를 진단할 때, 그리고 구성을 되돌릴 방법이 준비된 경우에만 정당화됩니다.
Timeout과 retry limit
섹션 제목: “Timeout과 retry limit”TdrDelay는 기본 GPU 대기 시간 매개 변수입니다. GPU가 GPU 스케줄러의 선점 요청을 얼마나 미룰 수 있는지를 초 단위로 나타내며, Microsoft 문서에 따르면 이것이 실제 타임아웃 임계값입니다. 문서화된 기본값은 2초입니다. TdrDebugMode는 TDR의 디버그 동작을 지정합니다. 기본적으로는 디버거에서 중지하지 않는 복구가 사용되며, 다른 모드는 복구 전 커널 디버거에서 중지, 타임아웃 무시, 무조건 복구를 뜻합니다. Microsoft는 두 키를 드라이버 테스트와 디버깅용으로 문서화하며 최종 사용자가 변경해서는 안 된다고 명시합니다.
TdrDdiDelay는 DDI 지연을 지정합니다. 세 가지 DDI/DOD 지연 매개 변수는 모두 초 단위로 측정되며 유효 범위는 1..900입니다. 0는 1이 되고, 900보다 큰 값은 900로 제한됩니다.
TdrDodPresentDelay와 TdrDodVSyncDelay는 kernel-mode display-only driver(KMDOD)에 관한 것이며 Microsoft는 디버깅용으로만 문서화합니다. 개별 GPU의 일반 WDDM 드라이버에서는 범용 timeout 설정이 아닙니다.
TdrLimitCount의 유효 범위는 1..32이고 기본값은 5입니다. 이 매개 변수는 기본값이 60초인 TdrLimitTime와 함께 작동합니다. Windows는 이 기간 동안의 복구를 집계하며, 한도를 소진하면 이후 멈춤에 대한 반응이 더 강해집니다.
대기 시간을 늘리면 GPU가 복구까지 더 많은 시간을 갖지만 애플리케이션은 더 오래 응답하지 않습니다. 줄이면 문제를 더 빨리 감지하지만 긴 정상 작업 중에 복구가 더 자주 작동할 수 있습니다.
확인된 것
섹션 제목: “확인된 것”- 조사한 빌드에서 매개 변수의 경로, 형식, 기본값.
- 그래픽 하위 시스템 초기화 시 매개 변수 읽기.
- 허용 범위를 벗어난 값의 정규화.
- KMDOD 매개 변수의 디버깅 전용 용도 문서화.
- 같은 빌드의 부팅 추적에서 그래픽 하위 시스템이 초기화 시 TDR 블록 전체를 한 번에 읽었습니다 —
TdrLevel,TdrDelay,TdrDdiDelay,TdrDodPresentDelay,TdrDodVSyncDelay,TdrLimitCount,TdrLimitTime,TdrDebugMode; 모든 항목이 없었으므로 기본값이 적용됩니다(BoosterX Research 관찰, 이 추적에서TdrDelay와TdrDebugMode읽기는 확인되었으나 그 값의 정규화는 별도로 확인하지 않았습니다).
확인되지 않은 것
섹션 제목: “확인되지 않은 것”- 변경이 개별 GPU, 드라이버, 게임에 미치는 영향.
- 진단 외 상황에서 타임아웃 증가나 복구 비활성화의 이점.
- 다른 Windows 빌드에서의 동작.
실용적 결론
섹션 제목: “실용적 결론”기본값을 그대로 두십시오. 대기 시간이나 반복 한도의 임시 변경은 특정 드라이버 멈춤을 진단할 때, 그리고 구성을 되돌릴 방법이 준비된 경우에만 정당화됩니다.
상태 복원
섹션 제목: “상태 복원”기본값을 되돌리거나 선택적 항목을 삭제하십시오. 변경은 다음 그래픽 하위 시스템 초기화 시 적용됩니다.
제한 사항
섹션 제목: “제한 사항”매개 변수 읽기는 Windows 11 25H2 build 26200.9168에서 확인되었습니다. 그 영향은 WDDM 드라이버, GPU 모델, display-only 모드, 멈춤 원인에 따라 달라집니다.
기본 구성으로 되돌리려면 이 선택적 값을 삭제하십시오. 항목이 없으면 그래픽 하위 시스템은 기본값을 사용합니다. 조사한 빌드에서는 이를 명시적으로 기록해도 같은 결과가 나옵니다. 삭제하면 향후 Windows 버전이 값이 바뀔 경우 자체 값을 선택할 수 있습니다.
연구와 사용된 도구는 BoosterX 개발자에게 속하므로 개발자는 결과에 직접적인 이해관계가 있습니다. 방법론과 적용 범위는 위에 설명되어 있으며, 결론은 공개 데이터와 나열된 공개 출처로 검증할 수 있습니다.
- Timeout Detection and Recovery, Microsoft Learn, 확인일 2026-09-01.
- TDR registry keys, Microsoft Learn, 확인일 2026-09-19.
공개 출처 확인일: 2026-09-19.
변경 이력
섹션 제목: “변경 이력”- 2026-09-20: 이해 상충 고지 추가.
- 2026-09-19: 기본값이 있는
TdrDelay와TdrDebugMode추가, 부팅 추적에서 전체 TDR 블록 읽기 관찰 추가; TDR 키 출처 재확인. - 2026-09-02: 최초 게시; 매개 변수 읽기와 정규화 확인, GPU 복구에 미치는 영향 범위 추가.
