אופטימיזציה של הביצועים התרמיים ושל המעבד באמצעות Android Dynamic Performance Framework

במדריך הזה מוסבר איך להשתמש ב-Android Dynamic Performance Framework ‏ (ADPF) כדי לבצע אופטימיזציה של משחקים על סמך התכונות הדינמיות לניהול טמפרטורה ומעבד ב-Android. התכונות מיועדות בעיקר למשחקים, אבל אפשר להשתמש בהן גם באפליקציות אחרות שדורשות ביצועים גבוהים.

‫ADPF הוא קבוצה של ממשקי API שמאפשרים למשחקים ולאפליקציות שדורשות ביצועים גבוהים ליצור אינטראקציה ישירה יותר עם מערכות החשמל והתרמיות של מכשירי Android. בעזרת ממשקי ה-API האלה, אפשר לעקוב אחרי ההתנהגות הדינמית במערכות Android ולבצע אופטימיזציה של ביצועי המשחקים ברמה יציבה שלא גורמת להתחממות יתר של המכשירים.

ל-SoC בניידים ול-Android יש התנהגויות ביצועים דינמיות יותר מאשר למחשבים שולחניים ולקונסולות. ההתנהגויות האלה כוללות ניהול של מצב טמפרטורה, שעוני CPU משתנים וסוגים משתנים של ליבות CPU. השילוב הזה, יחד עם הטופולוגיה המגוונת יותר ויותר של ליבות במערכות על שבב (SoC), יוצר אתגרים כשמנסים לוודא שהמשחק יכול לנצל את ההתנהגות הזו בלי להשפיע לרעה על ביצועי המכשיר. התכונה 'התאמה דינמית של צריכת החשמל' מספקת חלק מהמידע הזה כדי שהביצועים יהיו צפויים יותר.

אלה התכונות העיקריות של ADPF:

  • Thermal API: מאפשר לעקוב אחרי המצב התרמי של המכשיר כדי שהאפליקציה תוכל להתאים את עומס העבודה באופן יזום לפני שהוא יהפוך לבלתי נסבל.
  • CPU Performance Hint API: מספק רמזים לביצועים שמאפשרים ל-Android לבחור את הגדרות הביצועים הנכונות (למשל, נקודת הפעולה של המעבד או הליבה) עבור עומס העבודה.
  • Game Mode API ו-Game State API: ממשקי ה-API האלה מאפשרים לבצע אופטימיזציה של המשחק על ידי מתן עדיפות לביצועים או לחיי הסוללה, על סמך ההגדרות של המשתמש וההגדרות הספציפיות של המשחק.
  • מצב ביצועים קבוע: הפעלת מצב ביצועים קבוע במכשיר במהלך השוואה לשוק כדי לקבל מדידות שלא משתנות בגלל תזמון דינמי של מעבד.
  • מצב חיסכון באנרגיה: מציין לביקור שאפשר לתזמן את השרשורים בביקור PerformanceHint כך שתינתן עדיפות לחיסכון באנרגיה על פני ביצועים. (זמין ב-Android 15)