Peningkatan performa untuk game

Mulai Android 14, mode daya baru bernama GAME di Android Dynamic Performance Framework (ADPF) memungkinkan penyesuaian performa ponsel selama penggunaan game. GAME menunjukkan ke Power HAL bahwa aplikasi game berada di latar depan. Indikasi ini memungkinkan Power HAL untuk mengadopsi strategi manajemen daya saat {i>game<i} sedang dimainkan, sehingga pengguna pengalaman performa yang stabil dan lebih baik.

Untuk meningkatkan waktu pemuatan game, Android 13 memperkenalkan mode daya baru bernama GAME_LOADING dalam ADPF. GAME_LOADING menunjukkan apakah aplikasi game berada dalam status pemuatan sehingga Power HAL dapat memberikan peningkatan pemuatan. Indikasi ini memungkinkan Power HAL untuk memberikan langkah-langkah peningkatan performa yang dapat mempercepat pemuatan game baik.

Halaman ini menjelaskan cara melewati aplikasi game keadaan game ke Power HAL, menjelaskan cara mengkonfigurasi Power HAL untuk memanfaatkannya di perangkat Anda, serta cara menguji Power HAL terlepas dari implementasi layanan.

Deteksi dan notifikasi mode daya

Bagian ini menjelaskan cara Power Manager menangani mode GAME dan GAME_LOADING.

Mode daya GAME

Mode daya yang baru GAME di Android 14 menunjukkan Layanan Pengelola Daya bahwa pengguna sedang bermain game. Saat Power HAL diberi tahu tentang GAME perangkat, dapat menyesuaikan daya untuk meningkatkan performa, menurunkan suhu, dan daya tahan baterai, saat game sedang dimainkan.

Gambar berikut menjelaskan aliran informasi ke Power HAL untuk menunjukkan mode daya GAME:

mode game

Gambar 1. Alur informasi untuk menunjukkan bahwa game sedang dimainkan.

Mode daya GAME selalu disetel untuk aplikasi dengan appCategory dari GAME dalam AndroidManifest.xml.

GAME_LOADING mode daya

Mode pemuatan boost berfungsi dengan mendeteksi saat aplikasi game sedang dimuat dan memberi tahu Power HAL. Android 13 memperkenalkan status game baru yang disebut isLoading di API yang ditujukan untuk developer. Status game ini menggunakan GAME_LOADING baru mode daya di Layanan Pengelola Daya untuk memberi tahu HAL Daya tentang bagian atas pada level game. Setelah Power HAL diberi tahu tentang status pemuatan game, dapat menyesuaikan pengaturan kinerja platform dan kecepatan jam CPU, yang menghasilkan dalam waktu muat yang lebih baik.

Untuk menunjukkan bahwa game sedang dimuat, aplikasi game menggunakan Dasbor Game untuk mengatur isLoading di Pengelola Game. Pengelola Game meneruskan status ini ke Game Layanan Pengelola, yang menggunakan setPowerMode dengan GAME_LOADING baru untuk mengaktifkan Layanan Power Manager. Mode daya GAME_LOADING menunjukkan kepada Power HAL bahwa game berada dalam status pemuatan sehingga Power HAL dapat memberikan peningkatan pemuatan.

Gambar berikut menjelaskan aliran informasi dari aplikasi ke Power HAL untuk menunjukkan status pemuatan:

peningkatan pemuatan

Gambar 2. Alur informasi untuk menunjukkan bahwa game dalam status pemuatan.

Dasbor game memungkinkan pengguna mengaktifkan atau menonaktifkan fitur pemuatan boost dengan Setelan Performa. Setelan Performa selalu nonaktif secara default.

Sesuaikan Power HAL menggunakan GAME dan GAME_LOADING

Untuk memanfaatkan mode GAME dan GAME_LOADING, OEM harus menyesuaikan penerapan Power HAL. Karena pengelolaan daya dan peningkatan performa bersifat khusus hardware, tidak ada referensi implementasi untuk mode GAME atau GAME_LOADING tersedia hingga implementasi referensi untuk perangkat Google Pixel dirilis.

Untuk meningkatkan performa dalam mode GAME dan GAME_LOADING, OEM dapat memilih untuk menerapkan kombinasi tindakan berikut:

  • Stabilkan kecepatan frame
  • Meningkatkan kecepatan clock CPU
  • Mengurangi throttling suhu untuk sementara
  • Menetapkan prioritas CPU yang lebih tinggi ke aplikasi game latar depan
  • Mengurangi peningkatan CPU yang disesuaikan untuk aplikasi reguler non-game
  • Mengoptimalkan strategi distribusi daya terkait termal

Menguji implementasi mode GAME

Untuk menguji implementasi mode GAME, gunakan pengujian yang diawali dengan testGamePowerMode_ dalam GameManagerServiceTests.java.

Menguji penerapan GAME_LOADING

Untuk menguji implementasi mode GAME_LOADING, gunakan android.gamemanager.cts.GameManagerTest#testSetGameContext. Pengujian ini memverifikasi apakah GameManager::setGameContext() dengan isLoading konteks memanggil mode pemuatan game di Power HAL dalam mode performa.