במצב הגרפיקה המואץ של הדיונון משתמש במכונה הפיזית יחידת עיבוד גרפי (GPU) לעיבוד על ידי העברת פקודות רינדור לאורחים במחשב המארח, הרצת קריאות פקודות הרינדור במחשב המארח שלכם ומעבירים את התוצאות המוצגות בחזרה לאורחים.
מכשיר דיונון עם Android 11 ואילך מזהה גרפיקה מואצת ומשתמש בה. אם המחשב המארח לא תומך הגרפיקה מואצת, או שגרסת Android ב-Android מגרסה 10 ומטה, רינדור בצד האורח (לדוגמה, הפעלת ממשק משתמש וסרטונים) במכשיר Cuttlefish מטופל על ידי SwiftShader. SwiftShader היא הטמעת תוכנה של ממשקי OpenGL ו-Vulkan API. כי SwiftShader היא הטמעת תוכנה, היא מספקת גישה עיבוד תמונה דיונון שמסוגל לפעול בכל מכונה מארחת.
עם זאת, השימוש ב-SwiftShader לא פחות טוב ממכשיר רגיל. הרינדור הוא בעיה מקבילה שיכולה להיות מקבילה להדרגתית, שאפשר לחשב בנפרד. יחידות עיבוד גרפיקה (GPU) יחידות חומרה שמטפלות בבעיה זו על ידי האצת העיבוד.
הדרישות
מצב גרפיקה מואצת מחייב שהמארח:
- מנהל התקן עם תמיכה ב-EGL שתומך בתוסף
GL_KHR_surfaceless_context
- מנהל התקן עם OpenGL ES
- נהג/ת עם יכולות Vulkan
שימוש במצבי גרפיקה מואצים
GfxStream
כדי להשתמש במצב הגרפיקה המואצת של GfxStream, צריך להפעיל את הדיונון המקומי
מכשיר עם הדגל --gpu_mode=gfxstream
. שימוש במצב הזה, ב-OpenGL וב-Vulkan
הקריאות ל-API מועברות ישירות למארח.
launch_cvd --gpu_mode=gfxstream
וירגל
כדי להשתמש במצב הגרפיקה המואצת של Virgl, צריך להפעיל את מכשיר Cuttlefish המקומי
עם הדגל --gpu_mode=drm_virgl
.
launch_cvd --gpu_mode=drm_virgl
כשמשתמשים במצב הגרפיקה המואצת של Virgl, קריאות OpenGL API מתורגמות לייצוג ביניים Gallium3D). של ייצוג ביניים מועבר למארח ספריית virglrenderer מופעלת המארח מתרגם את ייצוג הביניים בחזרה לקריאות ל-OpenGL API.