Mürekkepbalığı: GPU grafik hızlandırma

Cuttlefish'in hızlandırılmış grafik modu, konuk oluşturma komutlarını ana makinenize ileterek, oluşturma komut çağrılarını ana makinenizde çalıştırarak ve oluşturulan sonuçları konuğa geri ileterek işleme için ana makinenizin fiziksel grafik işleme birimini (GPU) kullanır.

Varsayılan olarak Mürekkep Balığı cihazınızdaki konuk tarafı oluşturma (örneğin, kullanıcı arayüzü ve video oynatma) SwiftShader tarafından gerçekleştirilir. SwiftShader, OpenGL ve Vulkan API'lerinin bir yazılım uygulamasıdır. SwiftShader bir yazılım uygulaması olduğundan, Mürekkepbalığı için herhangi bir ana makinede çalışabilen evrensel olarak erişilebilir bir işleme çözümü sağlar.

Ancak SwiftShader'ı kullanmak normal bir cihaz kadar performanslı değildir. Görüntü oluşturma, piksel değerleri bağımsız olarak hesaplanabildiğinden, büyük ölçüde paralelleştirilebilen paralel bir sorundur. Grafik işlem birimleri (GPU'lar), oluşturmayı hızlandırarak bu sorunu çözen donanım birimleridir.

Gereksinimler

Hızlandırılmış grafik modu, ana bilgisayarın aşağıdaki özelliklere sahip olmasını gerektirir:

  • GL_KHR_surfaceless_context uzantısını destekleyen EGL özellikli sürücü
  • OpenGL ES özellikli sürücü
  • Vulkan yetenekli sürücü

Hızlandırılmış grafik modlarını kullanın

GfxStream

GfxStream hızlandırılmış grafik modunu kullanmak için yerel Mürekkepbalığı cihazınızı --gpu_mode=gfxstream bayrağıyla başlatın. Bu modu kullanarak OpenGL ve Vulkan API çağrıları doğrudan ana bilgisayara iletilir.

launch_cvd --gpu_mode=gfxstream

Virgl

Virgl hızlandırılmış grafik modunu kullanmak için yerel Mürekkepbalığı cihazınızı --gpu_mode=drm_virgl bayrağıyla başlatın.

launch_cvd --gpu_mode=drm_virgl

Virgl hızlandırılmış grafik modunu kullanırken, OpenGL API çağrıları bir ara gösterime çevrilir (bkz. Gallium3D ). Ara gösterim ana bilgisayara iletilir ve ana bilgisayardaki virglrenderer kütüphanesi ara gösterimi tekrar OpenGL API çağrılarına çevirir.