UNISOC, ADPF를 활용하여 Android 게임 성능 향상

성능과 열 관리 최적화는 Android에서 게임 개발자에게 중요한 과제입니다. 최상의 플레이어 환경을 만들기 위해 개발자는 높은 프레임 속도와 지속 가능한 전력 소비의 균형을 맞추는 도구가 필요합니다. Android 동적 성능 프레임워크 (ADPF)는 게임이 기기의 전력 및 열 시스템과 직접 상호작용할 수 있도록 하는 중요한 API 집합을 제공하여 이러한 세부 조정된 최적화를 지원합니다.

UNISOC은 이러한 도구를 활용하여 SoC에서 우수한 게임 환경을 제공하고 있습니다. Android 14부터 UNISOC 제품은 성능 힌트, 열, 게임 모드/상태를 비롯한 핵심 ADPF API를 완전히 지원합니다. SoC의 성능을 더욱 향상하기 위해 UNISOC은 자체 UNISOC Miracle Gaming 엔진 내에서 이러한 ADPF API를 활용하여 시스템 워크로드를 모니터링하고 성능을 동적으로 조정하여 더 부드럽고 안정적인 게임 환경을 보장합니다.

그림 1: UNISOC Miracle Gaming
그림 1: UNISOC Miracle Gaming

ADPF를 사용한 성능 및 열 최적화

ADPF의 UNISOC 구현은 개발자에게 게임 성능을 실시간으로 관리할 수 있는 강력한 도구를 제공합니다.

  • 성능 힌트: PerformanceHintManager를 사용하면 애플리케이션이 시스템에 정보를 전달하여 SoC가 적절한 시간에 적절한 양의 리소스를 할당할 수 있습니다. 워크로드에 관한 힌트를 제공하고 프레임의 실제 지속 시간을 보고함으로써 게임은 시스템이 그리기와 레이어 컴포지션을 동적으로 가속화하도록 지원하여 더 일관된 성능을 제공할 수 있습니다.

  • 열 API: 개발자는 getThermalHeadroom() API를 사용하여 방해성 열 제한을 방지할 수 있습니다. 이 함수는 기기의 열 상태를 예측하여 애플리케이션이 과열이 발생하기 전에 워크로드를 선제적으로 조정할 수 있도록 지원합니다. 이러한 예측은 강렬하고 오래 지속되는 세션 중에 게임의 프레임 속도를 안정화하는 데 중요합니다.

  • 게임 모드 및 게임 상태 API: 이러한 API는 게임과 시스템 간의 통신을 개선합니다. GameMode를 사용하면 사용자가 의도를 알릴 수 있고 (예: 게임에서 '성능' 설정 선택) GameState를 사용하면 게임이 OS에 현재 상태 (예: 로드, 플레이 등)를 알릴 수 있습니다. 그러면 시스템은 게임 해상도 조정 및 게임 FPS 재정의와 같은 개입을 활용하여 이 컨텍스트에 따라 성능을 최적화할 수 있습니다.

프레임 속도 및 전력 효율성 향상

UNISOC SoC에 ADPF를 통합하면 프레임 속도, 전력 소비, 전반적인 게임 환경이 눈에 띄게 개선됩니다. 인기 있는 NCSOFT의 타이틀인 LineageW를 사용한 테스트에서 다양한 그래픽 설정에 걸쳐 이점이 명확하게 나타났습니다.

중간 그래픽 품질에서 게임은 프레임 속도가 28.1% 크게 향상되는 동시에 전력 소비가 3.7%감소하여 더 부드러운 환경과 효율성 향상이라는 두 가지 이점을 모두 달성했습니다.

다른 설정에서도 인상적인 결과를 얻었습니다.

  • 높은 그래픽 설정에서 프레임 속도는 50.1%나 급상승한 반면 전력 소모는 3.1% 만 증가하여 ADPF가 상당한 성능 여유 공간을 확보할 수 있음을 보여줍니다.

  • 그래픽 설정이 낮은 경우 플레이어는 프레임 속도가 11.5% 증가하고 전력 소비가 9.9% 증가하여 요구사항이 낮은 구성에서도 성능이 향상되었습니다.

그림 2: 그래픽 프레임 속도가 낮음
그림 2: 낮은 그래픽 프레임 속도
그림 3: 중간 그래픽 프레임 속도
그림 3: 중간 그래픽 프레임 속도
그림 4: 높은 그래픽 프레임 속도
그림 4: 높은 그래픽 프레임 속도
그림 5: 전력 소비
그림 5: 전력 소비

또한 UNISOC은 '적응형 최적화' 기능을 선보입니다. 사용자가 이 옵션을 사용 설정하면 애플리케이션이 시스템 피드백에 따라 텍스처, 잎, 효과 품질과 같은 그래픽 요소를 자동으로 조정하여 더 안정적인 프레임 속도를 제공할 수 있습니다.

UNISOC SoC의 적응형 성능의 다음 단계

UNISOC은 ADPF와의 통합을 심화하기 위해 노력하고 있습니다. 프레임워크가 발전함에 따라 UNISOC Miracle Gaming 엔진은 최신 핵심 ADPF 기능을 계속 통합하여 개발자와 게이머가 UNISOC 기반 기기에서 최신 성능 및 열 관리 기술을 활용할 수 있도록 합니다.

Android 적응성 시작하기

이제 모든 Android 게임 개발자가 Unity, Unreal, Cocos Creator 게임 엔진 및 네이티브 C++ 라이브러리를 통해 Android 동적 성능 프레임워크를 사용할 수 있습니다.

  • Unity 개발자는 적응형 성능 제공자 v5.0.0으로 시작할 수 있습니다. Thermal API는 Android 11 (API 수준 30)부터 대부분의 Android 기기에서 지원되고 Performance Hint API는 Android 12 (API 수준 31)부터 지원됩니다.

  • Unreal 개발자는 Android 12 (API 수준 31) 이상을 타겟팅하는 대부분의 Android 기기에서 Android 동적 성능 Unreal Engine 플러그인을 시작할 수 있습니다.

  • Cocos Creator의 경우 v3.8.2부터 Thermal API를, v3.8.3부터 Performance Hint API를 시작할 수 있습니다.

  • 맞춤 엔진의 경우 네이티브 ADPF C++ 샘플을 참고하세요.