Mulai 27 Maret 2025, sebaiknya gunakan android-latest-release, bukan aosp-main, untuk mem-build dan berkontribusi pada AOSP. Untuk mengetahui informasi selengkapnya, lihat Perubahan pada AOSP.
Tetap teratur dengan koleksi
Simpan dan kategorikan konten berdasarkan preferensi Anda.
Mode grafis yang diakselerasi Cuttlefish menggunakan unit pemrosesan grafis (GPU)
fisik mesin host Anda untuk rendering dengan meneruskan perintah rendering tamu
ke mesin host, menjalankan panggilan perintah rendering di mesin host,
dan meneruskan hasil yang dirender kembali ke tamu.
Perangkat Cuttlefish yang berjalan di Android 11 atau yang lebih tinggi
mendeteksi dan menggunakan grafis yang dipercepat. Jika mesin host tidak mendukung
grafik yang dipercepat atau versi Android adalah
Android 10 atau yang lebih rendah, rendering sisi tamu (misalnya,
UI dan pemutaran video) di perangkat Cuttlefish Anda ditangani oleh SwiftShader.
SwiftShader adalah implementasi software OpenGL dan Vulkan API. Karena
SwiftShader adalah implementasi software, SwiftShader menyediakan solusi rendering
yang dapat diakses secara universal untuk Cuttlefish yang dapat berjalan di mesin host mana pun.
Namun, penggunaan SwiftShader tidak seperforma perangkat normal. Rendering adalah
masalah paralel yang dapat diparalelkan secara masif, karena nilai
piksel dapat dihitung secara independen. Unit pemrosesan grafis (GPU) adalah
unit hardware yang mengatasi masalah ini dengan mempercepat rendering.
Persyaratan
Mode grafis yang dipercepat mengharuskan host memiliki:
Driver yang kompatibel dengan EGL yang mendukung ekstensi GL_KHR_surfaceless_context
Driver yang kompatibel dengan OpenGL ES
Driver yang kompatibel dengan Vulkan
Menggunakan mode grafis yang dipercepat
GfxStream
Untuk menggunakan mode grafis yang dipercepat GfxStream, luncurkan perangkat Cuttlefish lokal
Anda dengan flag --gpu_mode=gfxstream. Dengan mode ini, panggilan API
OpenGL dan Vulkan diteruskan langsung ke host.
launch_cvd --gpu_mode=gfxstream
Virgl
Untuk menggunakan mode grafis yang dipercepat Virgl, luncurkan perangkat Cuttlefish lokal
dengan flag --gpu_mode=drm_virgl.
launch_cvd --gpu_mode=drm_virgl
Saat menggunakan mode grafis yang dipercepat Virgl, panggilan OpenGL API diterjemahkan
menjadi representasi perantara (lihat
Gallium3D). Representasi
antara dikomunikasikan ke host dan
library virglrenderer di
host menerjemahkan representasi antara kembali ke panggilan OpenGL API.
Konten dan contoh kode di halaman ini tunduk kepada lisensi yang dijelaskan dalam Lisensi Konten. Java dan OpenJDK adalah merek dagang atau merek dagang terdaftar dari Oracle dan/atau afiliasinya.
Terakhir diperbarui pada 2025-07-27 UTC.
[[["Mudah dipahami","easyToUnderstand","thumb-up"],["Memecahkan masalah saya","solvedMyProblem","thumb-up"],["Lainnya","otherUp","thumb-up"]],[["Informasi yang saya butuhkan tidak ada","missingTheInformationINeed","thumb-down"],["Terlalu rumit/langkahnya terlalu banyak","tooComplicatedTooManySteps","thumb-down"],["Sudah usang","outOfDate","thumb-down"],["Masalah terjemahan","translationIssue","thumb-down"],["Masalah kode / contoh","samplesCodeIssue","thumb-down"],["Lainnya","otherDown","thumb-down"]],["Terakhir diperbarui pada 2025-07-27 UTC."],[],[],null,["# Cuttlefish: GPU graphics acceleration\n\nCuttlefish's accelerated graphics mode uses your host machine's physical\ngraphics processing unit (GPU) for rendering by passing guest rendering commands\nto your host machine, running the rendering commands calls on your host machine,\nand passing the rendered results back to the guest.\n\nA Cuttlefish device running in Android 11 or higher\ndetects and uses accelerated graphics. If the host machine doesn't support\naccelerated graphics or the Android version is\nAndroid 10 or lower, guest-side rendering (for example,\nUI and video playback) in your Cuttlefish device is handled by SwiftShader.\nSwiftShader is a software implementation of the OpenGL and Vulkan APIs. Because\nSwiftShader is a software implementation, it provides a universally accessible\nrendering solution for Cuttlefish capable of running on any host machine.\n\nHowever, using SwiftShader isn't as performant as a normal device. Rendering is\na parallel problem that can be massively parallelized, as pixel\nvalues can be computed independently. Graphics processing units (GPUs) are\nhardware units that address this problem by accelerating rendering.\n\nRequirements\n------------\n\nAccelerated graphics mode requires that the host have:\n\n- EGL capable driver supporting the `GL_KHR_surfaceless_context` extension\n- OpenGL ES capable driver\n- Vulkan capable driver\n\nUse accelerated graphics modes\n------------------------------\n\n### GfxStream\n\nTo use the GfxStream accelerated graphics mode, launch your local Cuttlefish\ndevice with the `--gpu_mode=gfxstream` flag. Using this mode, OpenGL and Vulkan\nAPI calls are forwarded directly to the host. \n\n```\nlaunch_cvd --gpu_mode=gfxstream\n```\n\n### Virgl\n\nTo use the Virgl accelerated graphics mode, launch your local Cuttlefish device\nwith the `--gpu_mode=drm_virgl` flag. \n\n```\nlaunch_cvd --gpu_mode=drm_virgl\n```\n\nWhen using the Virgl accelerated graphics mode, OpenGL API calls are translated\ninto an intermediate representation (see\n[Gallium3D](https://www.freedesktop.org/wiki/Software/gallium/)). The\nintermediate representation is communicated to the host and the\n[virglrenderer](https://gitlab.freedesktop.org/virgl/virglrenderer) library on\nthe host translates the intermediate representation back to OpenGL API calls.\n| **Note:** Vulkan isn't supported."]]