01
29

HPET는 고정밀 이벤트 타이머의 약자로 비활성화되면 이전 하드웨어의 성능을 향상시키는 것으로 알려져 있습니다.

그러나 새로운 하드웨어와 Windows 10에서는 어떻습니까?

이 비디오는 여러 게임에서 HPET Stock, ON 및 OFF를 테스트하면서 약간 설명합니다.

 

 

HPET 기본설정 : bcdedit /deletevalue useplatformclock

HPET 비활성화 : bcdedit /set useplatformclock false

HPET 활성화 : bcdedit /set useplatformclock true

 

 

 

 

WinTimerTester 1.1 다운로드

 

고정밀 이벤트 타이머(High Precision Event Timer, HPET) 작동 여부를 확인하는 프로그램

 

 

마우스 밀림이나 게임 프레임 끊김 등 컴퓨터 사용에 이상이 있는 경우 HPET 작동 여부를 확인해 볼 수 있다

 

WinTimerTester.zip
0.01MB

클릭해서 다운로드

 

 

 

TimerBench 다운로드

 

윈도우 타이머 최적 구성을 찾는데 도움이 되는 벤치마크 프로그램

 

 

 

TimerBench: Ein Benchmark für Windows Timer

Präzise, verlässliche und performante Timer sind die Grundlage für einen reibungslosen Betrieb von Windows, insbesondere PC-Spielen, Benchmarks und Multimedia-Anwendungen. Trotzdem wird das Thema selbst von Enthusiasten kaum gewürdigt. Jeder kann heutz

www.overclockers.at

위의 링크에서 다운로드

 

 

정확하고 안정적인 고성능 타이머는 Windows, 특히 PC 게임, 벤치마크 및 멀티미디어 응용 프로그램의 원활한 작동을 위한 기반입니다. 그럼에도 불구하고, 이 주제는 매니아들에게도 거의 높이 평가되지 않습니다. 오늘날 누구나 자신의 PC 구성 요소를 오버클럭하여 시스템의 모든 성능 저하를 짜낼 수 있습니다. 많은 사용자는 시간 측정뿐만 아니라 성능 측면에서 타이머가 수행하는 역할을 인식하지 못합니다. 이 도구는 이 주제에 대한 몇 가지 질문에 답하고 시스템에 대한 Windows 타이머의 최적 구성을 찾는 데 도움이 됩니다.

 

TimerBench의 초점은 현재 마법 같은 블랙박스 타이머 QueryPerformanceCounter 에 있습니다. 짧은 QPC. 이 Windows API 함수는 현재 거의 모든 응용 프로그램에서 시차를 측정하는 데 사용되기 때문입니다. 게임에서 프레임 속도 측정기나 스톱워치를 본 사람은 직장에서 QueryPerformanceCounter를 관찰할 가능성이 가장 큽니다. 그러나 QPC는 일반적으로 비교적 짧은 시간 동안 화면에서 발생하는 모든 것을 처리하기 때문에 이것들은 가장 확실한 응용 프로그램일 뿐입니다. 애니메이션, 물리 시스템뿐만 아니라 DirectX와 같은 그래픽 API 내의 기능도 있습니다. 초당 QPC가 사용되는 빈도는 애플리케이션 자체와 프레임 속도에 따라 다릅니다. 우리의 측정에 따르면 덜 복잡한 3D 워크로드도 100FPS 이상에서 초당 수십만 개의 QPC 호출을 쉽게 처리할 수 있습니다. 하락. 타이머 호출이 너무 느리면 CPU가 그래픽 카드에 충분한 전력을 공급할 수 없고 프레임 속도가 불필요하게 제한됩니다. 외부에서는 CPU만 병목 현상으로 표시되며 스트레스를 받는 코어에서 100% 활용도를 확인할 수 있습니다. 사용된 타이머의 성능도 이에 대한 책임이 될 수 있습니다.

 

TimerBench는 이러한 성능 손실을 정확히 찾아낼 수 있습니다. 우리 도구는 QueryPerformanceCounter(QPC 모드)의 현재 구성을 보여주고 사용된 타이머의 기술적 배경을 설명합니다("무엇?" 버튼 사용). 또한 다시 시작을 포함하여 클릭 한 번으로 QPC 모드를 변경한 다음 테스트("실행")할 수 있습니다. 벤치마크 자체는 타이머의 최대 원시 성능을 위한 합성 테스트와 게임에서 측정하기 위한 게임 테스트의 두 가지 테스트로 구성됩니다. 게임 테스트는 Unreal Engine(4.17.1) 및 DirectX에 의존합니다.

 

 

HPET이란 무엇입니까?

 

이미 눈치채셨겠지만 "HPET"라는 단어는 벤치마크에서 자주 사용됩니다. 고정밀 이벤트 타이머 의 약자입니다.그리고 지금까지 PC 시스템에서 가장 정확한 타이머입니다. 칩셋의 집에 있으며 14.32MHz의 주파수에서 실행됩니다. 최신 Intel 플랫폼(Skylake의)에서는 24MHz입니다. 불행히도 HPET에는 문제가 있습니다. 측정이 정확하더라도 이를 얻는 데 비용이 많이 들 수 있습니다. 얼마나 비싼가? Broadwell-E와 같은 구형 플랫폼에서 Windows 10에서 HPET 타임스탬프를 요청하는 데 약 1마이크로초가 걸립니다. 반면에 CPU의 통합 TSC 타이머(타임스탬프 카운터)는 최대 100배 빠르지만 최소 4배 덜 정확합니다. 불행히도 Windows 버전 및 플랫폼에 따라 벤치마크에서 사용하기에 부분적으로 신뢰할 수 없지만 그것은 또 다른 이야기입니다.

 

일반적으로 TSC의 정밀도 부족이나 HPET 호출의 마이크로초가 우리를 괴롭히지 않으므로 손실은 모든 형태에서 측정 정확도에 가깝습니다. 결과적으로 지금까지는 Windows가 전적으로 HPET 또는 TSC에 의존하는지 여부는 기본적으로 관련이 없습니다. 게임 및 프레임 속도에 따라 활성 HPET가 있는 일부 애니메이션은 동종 요법의 양만큼 더 부드럽게 되었을 수 있지만 너무 빈번한 타이머 사용과 동시에 약한 CPU는 TSC를 몇 프레임 더 도왔습니다. HPET를 비활성화해야 하는지 여부 에 대해 인터넷에서 많은 포럼 토론을 일으킨 것은 바로 이러한 상황입니다 . 당연히 모든 상황에 맞는 정답은 없습니다.

 

 

X299 HPET-버그

 

현재 플랫폼에 대한 요약: 이 벤치마크에 대한 아이디어 또는 필요성은 모두 고급 X299 칩셋을 사용하는 Intel의 Kaby Lake X 및 Skylake X에 대한 테스트에서 비롯되었습니다. 특정 상황에서 벤치마크 과정의 게임 성능에 큰 불일치가 있었습니다. 문제에 대한 심층 조사에서 CPU 병목 현상으로 인해 그래픽 카드가 충분히 활용되지 않는 것으로 나타났으며, 이는 모든 코어에서 4.5GHz 이상에서도 변경되지 않았습니다. 활성 고정밀 이벤트 타이머가 코어의 전체 활용을 담당한다는 것을 알게 된 것은 Windows의 타이머 구성에 주의를 기울일 때까지였습니다. 다음 비디오에서는 활성 HPET 타이머의 영향을 보여줍니다.Witcher 3, Doom (2016), Project CARS 및 The Division. 오버레이의 첫 번째 줄에서 GPU 온도, 사용률 및 GPU 클럭 속도를 볼 수 있으며 마지막 네 줄은 클럭 속도와 모든 CPU 코어의 사용률을 보여줍니다.

 

 

비디오에서 볼 수 있듯이 버그는 다양한 정도로 프레임 속도에 영향을 줍니다. Project CARS에서는 초당 15프레임만 손실되지만 Doom on Vulkan에서는 약 100프레임을 잃어야 하지만 여전히 유동적입니다. The Witcher 3는 30FPS로 거의 플레이할 수 없게 되었고, 동일한 운명이 The Division®에 닥쳤습니다. 여기서 우리는 나쁜 타이머 성능의 영향이 게임과 그 프로그래밍에 달려 있음을 아주 잘 알 수 있습니다. 초당 시간 측정이 자주 발생할수록 손실이 커질 수 있습니다.

 

 

사용법

 

시스템 테스트를 위해 다음 절차를 권장합니다.

1. 게임을 플레이하는 해상도를 선택합니다. 여러 해상도로 플레이하는 경우 가장 낮은 해상도를 테스트하십시오.
2. 가능하면 백그라운드 프로그램을 닫습니다.
3. 벤치마크를 시작하고 방해받지 않고 실행하십시오.
4. 현재 활성 상태에 따라 QPC 모드를 TSC에서 HPET로 또는 그 반대로 변경합니다. 다시 시작해야 합니다.
5. 1-3단계를 반복하고 결과를 비교합니다(버튼 => 결과 열기).

 

 

결론: Core i9-10980XE는 이론적으로 Invariant TSC보다 175배 느립니다. FullHD 게임 에서 이는 게임 테스트에서 초당 최대 360프레임 이상의 성능 손실 과 심각한 저킹(최대 프레임 시간 73ms)으로 이어집니다. 동시에 GPU 로드가 96%에서 평균 44%로 떨어지므로 그래픽 카드가 더 이상 사용되지 않습니다.

권장 사항: 고정밀 이벤트 타이머는 항상 비활성화되어야 합니다! 정밀 타이머가 필요한 경우 결과를 제공하기 위해 인텔 지원에 문의하는 것이 좋습니다.

 

 

다른 프로세스의 타이머 사용

 

TimerBench는 QPC 타이머의 성능을 측정할 뿐만 아니라 다른 프로세스 또는 응용 프로그램에서 사용되는 타이머를 측정할 수도 있습니다. "Tools => Measure Process" 메뉴 항목을 통해 실행 중인 응용 프로그램을 수신할 수 있도록 프로세스 이름만 제공하면 되는 대화 상자에 도달합니다. 프로세스 이름은 일반적으로 실행된 .exe 파일의 이름입니다. 작업 관리자의 "세부 정보" 탭에서 모든 프로세스 목록을 찾을 수 있습니다. Windows의 모든 일반적인 API 타이머가 지원되며 초당 평균 호출을 포함하여 각 사용이 표시됩니다. 다음 약어는 식별에 도움이 됩니다.

 

QPC ... QueryPerformanceCounter()
TGT ... timeGetTime()
GTC ... GetTickCount() 및 GetTickCount64()
GST ... GetSystemTime() , GetSystemTimeAsFileTime() 및 GetSystemTimePreciseAsFileTime()
GLT ... GetLocalTime()
QIT ... QueryUnbiasedInterruptTime()

 

 

자주하는 질문

 

최소 요구 사항은 무엇입니까?

TimerBench는 모든 플랫폼과 호환되지만 Windows 7 이상만 지원합니다.

 

TimerBench에서 MSVCP140.dll 파일이 누락되었다고 보고하는 이유는 무엇입니까?

최신 버전의 TimerBench를 사용하십시오. Visual C++ 런타임을 정적으로 연결하므로 이 오류가 더 이상 발생하지 않습니다.

 

내 벤치마크 값이 실행마다 다른 이유는 무엇입니까?

다른 벤치마크와 마찬가지로 가능한 한 적은 수의 백그라운드 프로그램이 실행되고 있는지 확인해야 합니다. 고정밀 이벤트 타이머가 활성화되면 CPU 및 사용 가능한 코어의 클럭 속도에 관계없이 초당 특정 횟수만 읽을 수 있기 때문에 특히 이론 테스트에서 여전히 큰 변동이 있을 수 있습니다. 운영 체제는 많은 기본 기능에도 HPET를 사용하기 때문에 벤치마크에서 타이머 리소스를 가져갑니다.

 

 

이를 확인하는 좋은 방법은 벤치마크의 여러 인스턴스에서 두 개 이상의 이론적 테스트를 동시에 실행하는 것입니다.

COMMENT
 

인기 글


최근 글