UNISOC از ADPF برای بهبود عملکرد بازی اندروید استفاده می کند

بهینه سازی عملکرد و مدیریت حرارتی یک چالش حیاتی برای توسعه دهندگان بازی در اندروید است. برای ایجاد بهترین تجربه ممکن برای بازیکنان، توسعه دهندگان به ابزارهایی نیاز دارند تا نرخ فریم بالا و مصرف انرژی پایدار را متعادل کنند. چارچوب عملکرد پویای اندروید (ADPF) مجموعه مهمی از API ها را ارائه می دهد که به بازی ها اجازه می دهد مستقیماً با قدرت و سیستم های حرارتی دستگاه تعامل داشته باشند و این بهینه سازی دقیق را ممکن می کند.

UNISOC از این ابزارها برای ارائه بازی های برتر در SoC های خود استفاده می کند. با شروع Android 14، محصولات UNISOC به طور کامل از ADPF های اصلی ADPF از جمله Performance Hint، Thermal و Game Mode/State پشتیبانی می کنند. UNISOC برای افزایش بیشتر عملکرد در SoC های خود، از این ADPF های ADPF در موتور UNISOC Miracle Gaming خود برای نظارت بر بارهای کاری سیستم و تنظیم پویا عملکرد استفاده می کند و از تجربه بازی روان تر و پایدارتر اطمینان حاصل می کند.

شکل 1: بازی معجزه آسای UNISOC
شکل 1: بازی معجزه آسای UNISOC

بهینه سازی عملکرد و حرارت با ADPF

اجرای UNISOC از ADPF ابزارهای قدرتمندی را برای مدیریت عملکرد بازی در زمان واقعی به توسعه دهندگان می دهد.

  • Performance Hint: PerformanceHintManager به برنامه ها اجازه می دهد تا اطلاعات را به سیستم منتقل کنند و SoC را قادر می سازد تا مقدار مناسبی از منابع را در زمان مناسب اختصاص دهد. با ارائه نکاتی در مورد بار کاری و گزارش مدت زمان واقعی فریم‌ها، بازی‌ها می‌توانند به سیستم کمک کنند تا ترسیم و ترکیب لایه‌ها را به صورت پویا تسریع کند و منجر به عملکرد سازگارتر شود.

  • Thermal API: برای جلوگیری از throttling حرارتی مخرب، توسعه دهندگان می توانند از getThermalHeadroom() استفاده کنند. این عملکرد یک پیش‌بینی از وضعیت حرارتی دستگاه را ارائه می‌کند و به برنامه اجازه می‌دهد تا پیش از گرم شدن بیش از حد، بار کاری خود را به طور فعال تنظیم کند. این آینده نگری کلیدی برای تثبیت نرخ فریم بازی در طول جلسات شدید و طولانی مدت است.

  • Game Mode و Game State API: این APIها ارتباط بین بازی و سیستم را بهبود می بخشند. GameMode به کاربران اجازه می دهد تا هدف خود را اعلام کنند (به عنوان مثال، انتخاب یک تنظیم "عملکرد" ​​در بازی)، در حالی که GameState به بازی اجازه می دهد تا سیستم عامل را از وضعیت فعلی خود (به عنوان مثال، بارگیری، بازی و غیره) مطلع کند. سپس سیستم می‌تواند از مداخلاتی مانند مقیاس‌گذاری وضوح بازی و لغو FPS بازی برای بهینه‌سازی عملکرد بر اساس این زمینه استفاده کند.

ارائه نرخ فریم بهبود یافته و راندمان انرژی

ادغام ADPF در SoC های UNISOC پیشرفت های ملموسی را در نرخ فریم، مصرف انرژی و تجربه کلی بازی ارائه می دهد. در آزمایش‌هایی با عنوان محبوب LineageW از NCSOFT، مزایا در تنظیمات مختلف گرافیکی مشخص بود.

در کیفیت گرافیکی متوسط، بازی به افزایش قابل توجه 28.1 درصد نرخ فریم دست یافت و همزمان مصرف انرژی را تا 3.7 درصد کاهش داد و به مزایای دوگانه تجربه نرم‌تر و بازدهی بهتر دست یافت.

نتایج در تنظیمات دیگر نیز چشمگیر بود:

  • در تنظیمات گرافیکی بالا، نرخ فریم با تنها یک افزایش جزئی 3.1 درصدی در مصرف انرژی، به میزان چشمگیر 50.1٪ افزایش یافت که نشان دهنده توانایی ADPF برای باز کردن فضای بالای عملکرد قابل توجه است.

  • در تنظیمات گرافیکی پایین، بازیکنان شاهد افزایش 11.5 درصدی در نرخ فریم با 9.9 درصد افزایش مصرف انرژی بودند که حتی در پیکربندی‌های سخت‌تر نیز افزایش عملکرد را نشان می‌داد.

شکل 2: نرخ فریم گرافیکی پایین
شکل 2: نرخ فریم گرافیکی پایین
شکل 3: نرخ فریم گرافیک متوسط
شکل 3: نرخ فریم گرافیک متوسط
شکل 4: نرخ فریم گرافیکی بالا
شکل 4: نرخ فریم گرافیکی بالا
شکل 5: مصرف برق
شکل 5: مصرف برق

علاوه بر این، UNISOC یک ویژگی "بهینه سازی تطبیقی" را نشان می دهد. هنگامی که کاربر این گزینه را فعال می کند، برنامه می تواند به طور خودکار عناصر گرافیکی مانند بافت، شاخ و برگ، و کیفیت جلوه را در پاسخ به بازخورد سیستم تنظیم کند و از ارائه نرخ فریم پایدارتر اطمینان حاصل کند.

عملکرد تطبیقی ​​بعدی در SoCهای UNISOC چیست

UNISOC متعهد به تعمیق ادغام خود با ADPF است. همانطور که چارچوب تکامل می یابد، موتور بازی معجزه UNISOC به ترکیب جدیدترین ویژگی های اصلی ADPF ادامه می دهد و تضمین می کند که توسعه دهندگان و گیمرها از به روزترین عملکرد و فناوری های مدیریت حرارتی در دستگاه های مجهز به UNISOC بهره مند می شوند.

با سازگاری اندروید شروع کنید

Android Dynamic Performance Framework اکنون برای همه بازی‌سازان اندروید برای موتورهای بازی Unity، Unreal، Cocos Creator و از طریق کتابخانه‌های C++ در دسترس است.