Wpis z mikrobloga

Takie szybki wpis dla Linuksowych Świrów. Ogólnie moje wpisy są częściej na hejto, bo wykop to zdycha, a szczególnie tag Linux, ale ktoś go pewnie czyta.

Jestem fanem odpalania środowiska a'la Linuksowego na smartfonie. Czemu? Smartfony są dość szybkie do wielu zastosowań, bardzo tanie i faktycznie mobilne.

Termux to środowisko Linuksowe skompilowane na Androidzie. Coś jak Cygwin, ale kernel natywny XD Tak więc każda aplikacja jest kompilowana z użyciem NDK itd.

Przez długi czas OpenGL był renderowany przy użyciu llvmpipe, czyli software rendering. Działało to całkiem całkiem powiedzmy. Procesory są szybkie, Crysisa nie odpalisz, ale jakieś bardzo proste gry z lat 90-00 już tak.

Nadzieja pojawiła się przy okazji Zink, czyli uruchamianiu OpenGL na Vulkan. Niestety jedna z dużych aktualizacji zniszczyła te marzenia.

Na szczęście udało się parę dni temu wdrożyć (a dzisiaj nawet ulepszyć) coś innego. Wykorzystanie OpenGLESa Androidowego. W skrócie odpowiednio spreparowana Mesa na Termux działa jako klient i za pomocą protokołu virgl odwołuje się do serwera, który używa bibliotek Androidowych.

Szybkie benchmarki glmark2:

RX5500M: 2406 ???????
Vega 10: 4554
Intel N2840 iGPU: 132
Intel Xe Graphics TGL GT2 (i5-11320H) - 3783

Android: 188
LLVMPipe: 65
Virglrenderer GL (po dzisiejszej aktualizacji) - 159
Zink 22.0.5 GL - 199

Wynik? Moim zdaniem całkiem git :) Bijemy Celerona XD Z jednej strony śmieszne, ale z drugiej to nie taki zły wynik. Linuksowe (FLOSS) gry powinny działać w mojej opinii całkiem git, nawet na minimalnych (a pewnie i wyżej), a to się głównie liczy na ARMie, bo inaczej wchodzi w grę emulacja. Niestety Termux nie ma Multiliba, więc zabawa w darmowego Exagear na razie jest niemożliwa (ale jak się uda to może przebije wydajnością ten ruski produkt :P)

#linux #android
  • Odpowiedz