Tăng hiệu suất cho trò chơi

Kể từ Android 14, chế độ năng lượng mới có tên là GAME trong Android Dynamic Performance Framework (Khung hiệu suất động Android – ADPF) cho phép tuỳ chỉnh hiệu suất của điện thoại trong khi dùng trò chơi. GAME cho HAL nguồn biết rằng ứng dụng trò chơi chạy ở nền trước. Chỉ báo này cho phép HAL nguồn áp dụng chiến lược quản lý nguồn điện khi đang chơi trò chơi để người dùng mang lại hiệu suất ổn định và được cải thiện.

Để cải thiện thời gian tải của trò chơi, Android 13 giới thiệu một chế độ năng lượng mới có tên là GAME_LOADING trong ADPF. GAME_LOADING cho biết liệu một ứng dụng trò chơi có ở trạng thái đang tải hay không để HAL nguồn có thể giúp tăng tốc độ tải. Chỉ báo này cho phép HAL nguồn nhằm cung cấp các biện pháp tăng hiệu suất có thể tăng tốc độ tải trò chơi bất cứ lúc nào.

Trang này mô tả cách ứng dụng trò chơi vượt qua trạng thái trò chơi thành HAL Nguồn, giải thích cách định cấu hình HAL Nguồn để tận dụng tính năng này trong thiết bị của bạn cũng như cách kiểm tra HAL nguồn trong quá trình triển khai.

Phát hiện và thông báo chế độ nguồn

Phần này mô tả cách Trình quản lý năng lượng xử lý các chế độ GAMEGAME_LOADING.

Chế độ năng lượng của GAME

Chế độ nguồn mới GAME trong Android 14 cho biết Dịch vụ Power Manager người dùng đang chơi trò chơi. Khi HAL nguồn được thông báo về GAME nó có thể điều chỉnh công suất để nâng cao hiệu suất, giảm nhiệt độ và kéo dài thời lượng pin trong khi đang chơi trò chơi.

Hình dưới đây giải thích luồng thông tin đến HAL nguồn để cho biết chế độ nguồn GAME:

chế độ trò chơi

Hình 1. Luồng thông tin cho biết một trận đấu đang diễn ra.

Chế độ nguồn GAME luôn được đặt cho các ứng dụng có appCategory trong tổng số GAME trong AndroidManifest.xml.

Chế độ nguồn GAME_loadING

Chế độ tăng tốc tải hoạt động bằng cách phát hiện thời điểm một ứng dụng trò chơi đang tải nêu rõ và thông báo cho HAL nguồn. Android 13 đưa ra trạng thái trò chơi mới có tên là isLoading trong API dành cho nhà phát triển. Trạng thái trò chơi này sử dụng GAME_LOADING mới chế độ nguồn trong Dịch vụ quản lý điện để thông báo cho HAL nguồn về trạng thái trò chơi của cấp độ. Sau khi được thông báo về trạng thái tải trò chơi, HAL nguồn có thể điều chỉnh các chế độ cài đặt về hiệu suất của nền tảng và tốc độ xung nhịp của CPU. Điều này mang lại tăng thời gian tải.

Để cho biết một trò chơi đang tải, ứng dụng trò chơi này sử dụng Trang tổng quan trò chơi để thiết lập isLoading trong Trình quản lý trò chơi. Trình quản lý trò chơi chuyển trạng thái này cho Trò chơi Dịch vụ quản lý, trong đó sử dụng setPowerMode với GAME_LOADING mới chế độ nguồn để gọi Dịch vụ Trình quản lý năng lượng. Chế độ nguồn GAME_LOADING cho HAL Power biết rằng trò chơi đang ở trạng thái đang tải để HAL Power có thể tăng tốc độ tải.

Hình dưới đây giải thích luồng thông tin từ ứng dụng đến nút Nguồn HAL để cho biết trạng thái tải:

tải-tăng

Hình 2. Luồng thông tin cho biết trò chơi đang ở trạng thái tải.

Trang tổng quan trò chơi cho phép người dùng bật hoặc tắt tính năng tăng cường tải trang Cài đặt hiệu suất. Chế độ Cài đặt hiệu suất luôn tắt theo mặc định.

Tuỳ chỉnh Power HAL bằng cách sử dụng GAME và GAME_hấtING

Để tận dụng các chế độ GAMEGAME_LOADING, OEM phải tuỳ chỉnh cách triển khai HAL Power. Vì việc quản lý nguồn điện và tăng cường hiệu suất là dành riêng cho từng phần cứng, nên không có thông tin tham khảo nào triển khai cho chế độ GAME hoặc GAME_LOADING khả dụng cho đến phát hành triển khai tham chiếu cho thiết bị Google Pixel.

Để nâng cao hiệu suất ở chế độ GAMEGAME_LOADING, OEM có thể chọn hãy triển khai kết hợp các biện pháp sau:

  • Ổn định tốc độ khung hình
  • Tăng tốc độ xung nhịp của CPU
  • Tạm thời giảm mức điều tiết nhiệt độ
  • Chỉ định mức độ ưu tiên cao hơn của CPU cho ứng dụng trò chơi trên nền trước
  • Giảm mức tăng CPU được điều chỉnh cho các ứng dụng thông thường, không phải trò chơi
  • Tối ưu hoá chiến lược phân phối điện liên quan đến nhiệt

Kiểm thử việc triển khai chế độ TRÒ CHƠI

Để kiểm thử việc triển khai chế độ GAME, hãy sử dụng các chương trình kiểm thử có tiền tố testGamePowerMode_ trong GameManagerServiceTests.java.

Kiểm thử quá trình triển khai GAME_TẢIING

Để kiểm thử việc triển khai chế độ GAME_LOADING, hãy sử dụng android.gamemanager.cts.GameManagerTest#testSetGameContext. Quy trình kiểm tra này xác minh xem GameManager::setGameContext()isLoading hay không ngữ cảnh gọi chế độ tải trò chơi trên HAL nguồn ở chế độ hiệu suất.