출시: Android 11 (API 수준 30)
Android 기기는 시스템 부하에 따라 동적으로 클록을 변경할 수 있습니다. 이 동작은 사용 중에 전력을 절약하는 데는 유용하지만, 안정적인 성능 데이터를 얻기는 어려울 수 있습니다. 회귀 방지를 위해 코드 프래그먼트를 실행할 수 있는 속도를 확인하려고 하거나 최적화가 반복 가능한 경우에는 고정 클록 속도로 테스트되지 않으면 결과를 신뢰할 수 없습니다. 고정 클록을 사용하면 하나의 요소가 되는 CPU 주파수를 변경하지 않고 성능에 관해 정확한 A/B 테스트를 실행할 수 있습니다.
고정 성능 모드는 상한과 하한이 있는 CPU 클록과 GPU 클록을 설정합니다. 최신 기기에서는 상한과 하한이 동일한 지점으로 설정되어 변동이 제거됩니다. 이 CPU/GPU 작동 지점은 기기마다 다릅니다. 고정 성능 모드는 최대 기기 성능을 제공하지 않으며, 더 낮은 지속 가능한 작동 지점입니다. 작동 지점은 제한된 시간 동안 유지될 수 있지만 무기한 유지될 수는 없습니다. 고정 성능 모드는 코어 선택과 같은 다른 동적 성능 동작을 중지하지 않습니다. 따라서 워크로드를 여러 번 실행하고 동일한 코어를 사용하는 실행만 비교하는 것이 좋습니다.
다음 adb 명령어를 사용하여 고정 성능 모드를 사용 설정할 수 있습니다.
adb shell cmd power set-fixed-performance-mode-enabled [true|false]고정 성능 모드는 기기의 발열 상태를 지속 가능한 상태로 유지하지 않기 때문에 이러한 모드를 실행 중인 기기도 과열될 가능성이 있습니다. 이런 이유로 벤치마크 실행에는 다음이 권장됩니다.
- 실행 시작 전, 기기가 발열 상태와 관련하여 지속 가능한 상태를 반환하도록 대기합니다.
- 테스트하는 동안 기기의 열 상태를 모니터링하여 벤치마크 코드와 열 이벤트 간의 영향을 구분합니다.