这是indexloc提供的服务,不要输入任何密码
Skip to content

Conversation

@lfdevs
Copy link
Owner

@lfdevs lfdevs commented Nov 5, 2025

lfdevs pushed a commit that referenced this pull request Nov 6, 2025
- Concepts used to implement `listenfd-32-bit-android.diff` based on similar patches found in other packages like `fish` and `below`
  - `S_IFMT` is not the same type as `st_mode` on 32-bit Android
  - `socklen_t` should be passed to `getsockname()` and `getsockopt()`, not `unsigned int`

- Based on this comment, `wasmtime` now has a codepath that supports 32-bit ARM: bytecodealliance/wasmtime#1173 (comment)

- This build of `wasmtime` has been tested on a 32-bit ARM Android device to run a precompiled `wasi-hello-world.wasm` that was copied from a different device, and is working successfully:
  - The `wasi-hello-world.wasm` was compiled using a GNU/Linux PC running the `cargo install cargo-component` tool via a Rust toolchain https://github.com/bytecodealliance/cargo-component

```
~ $ wasmtime wasi-hello-world.wasm
Hello, world!
~ $ uname -a
Linux localhost 3.4.112-Lineage-g716f00ee2e8 #1 SMP PREEMPT Sun Oct 13 11:16:54 CDT 2019 armv7l Android
~ $
```

- 32-bit x86 still has an error which is different and does not appear during the build for 32-bit ARM
lfdevs pushed a commit that referenced this pull request Nov 6, 2025
…anitizer instead of the shared library

- Makes the default behavior of on-device building with the address sanitizer match the default behavior of building with the address sanitizer on Clang for Desktop Linux distros, which is to use the static library

- Fixes termux#26485

- On devices that do not have `libclang_rt.asan-$arch-android.so` or which have a corrupted one, fixes building on-device with `-fsanitize=address`

- Samsung Galaxy S III SPH-L710 with LineageOS 14.1 Android 7.1.2 before:

```
~ $ clang test.c -fsanitize=address
~ $ ./a.out
WARNING: linker: /data/data/com.termux/files/home/a.out: unsupported flags DT_FLAGS_1=0x8000001
CANNOT LINK EXECUTABLE "./a.out": library "libclang_rt.asan-arm-android.so" not found
Aborted                    ./a.out
~ $ clang test.c -fsanitize=address -Wl,-rpath=$PREFIX/lib/clang/20/lib/linux
~ $ ./a.out
WARNING: linker: /data/data/com.termux/files/home/a.out: unsupported flags DT_FLAGS_1=0x8000001
~ $ termux-elf-cleaner ./a.out
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './a.out'
~ $ ./a.out
~ $ file /system/lib/libclang_rt.asan-arm-android.so
/system/lib/libclang_rt.asan-arm-android.so: cannot open `/system/lib/libclang_rt.asan-arm-android.so' (No such file or directory)
~ $
```

- After:
```
~ $ clang test.c -fsanitize=address
~ $ ./a.out
WARNING: linker: /data/data/com.termux/files/home/a.out: unsupported flags DT_FLAGS_1=0x8000001
~ $ termux-elf-cleaner a.out
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in 'a.out'
~ $ ./a.out
~ $
```

- Vivo iQOO Neo8 V2301A with Android 15 before:

```
thread #1, name = 'a.out', stop reason = signal SIGILL: illegal opcode
```

- After: believed to work
@lfdevs lfdevs changed the title addpkg(main/vulkan-wrapper-android): 25.0.0 addpkg(main/vulkan-wrapper-android): 25.0.0-2 Nov 6, 2025
@lfdevs lfdevs changed the title addpkg(main/vulkan-wrapper-android): 25.0.0-2 addpkg(main/mesa-vulkan-icd-wrapper): Android Vulkan wrapper Nov 6, 2025
@lfdevs
Copy link
Owner Author

lfdevs commented Nov 6, 2025

You can find the build artifacts here: https://github.com/lfdevs/termux-packages/actions/runs/19142566199
Specifically, look for files in the Artifacts section that start with debs, such as debs-aarch64-5db7b1b4a39b132466400aca0275fbb1f4a6d30f. After downloading and extracting it, you’ll obtain vulkan-wrapper-android_25.0.0_aarch64.deb.

Since GitHub Actions artifacts expire after 90 days, I’m providing the extracted .deb package directly here:

vulkan-wrapper-android_25.0.0.zip

PS: Please ignore the CI errors in this PR—the resulting .deb package is functional. To ensure a successful build, I merged the master branch into the dev/wrapper branch, but PRs do not support this approach.

@lfdevs
Copy link
Owner Author

lfdevs commented Nov 8, 2025

You can refer to the following commands to enable hardware acceleration using Android's Vulkan driver inside a Termux native container:

# Copy or download `vulkan-wrapper-android_25.0.0_aarch64.deb` into the current directory

# Remove packages that may conflict with this guide
pkg remove mesa-zink* vulkan-loader-android
# Install required packages
pkg update && pkg upgrade
pkg install x11-repo
pkg install termux-x11-nightly mesa
pkg install ./vulkan-wrapper-android_25.0.0_aarch64.deb
# Set environment variables
export DISPLAY=:0 MESA_LOADER_DRIVER_OVERRIDE=zink
# Start Termux:X11
kill -9 $(pgrep -f "termux.x11") 2>/dev/null
termux-x11 :0 -dpi 96 &

# Optional steps below
# Install related utilities
pkg install mesa-demos vulkan-tools vkmark glmark2
# Check GLX info
glxinfo
# Check Vulkan info
vulkaninfo
# Run performance benchmarks
vkmark && glmark2 && glmark2-es2

@lfdevs
Copy link
Owner Author

lfdevs commented Nov 8, 2025

Benchmarks

Overview

Device Model SoC GPU vkmark glmark2 (Zink) glmark2-es2 (Zink)
REDMI K80 Pro 24122RKC7C Qualcomm Snapdragon 8 Elite Adreno 830 8078 1149 1185
Pixel 6 Pro GLU0G Google Tensor G1 Mali-G78 MP20 1047 441 481
Xiaomi Pad 6 Pro 23046RP50C Qualcomm Snapdragon 8+ Gen 1 Adreno 730 3241 Not working Fallback to llvmpipe

Detailed test results

Adreno 830

vkmark
=======================================================
    vkmark 2025.01
=======================================================
    Vendor ID:      0x5143
    Device ID:      0x44050001
    Device Name:    Adreno (TM) 830
    Driver Version: 2150760496
    Device UUID:    64b1fb02435100000000010005440000
=======================================================
[vertex] device-local=true: FPS: 9153 FrameTime: 0.109 ms
[vertex] device-local=false: FPS: 7845 FrameTime: 0.127 ms
[texture] anisotropy=0: FPS: 7919 FrameTime: 0.126 ms
[texture] anisotropy=16: FPS: 7943 FrameTime: 0.126 ms
[shading] shading=gouraud: FPS: 7866 FrameTime: 0.127 ms
[shading] shading=blinn-phong-inf: FPS: 7867 FrameTime: 0.127 ms
[shading] shading=phong: FPS: 7833 FrameTime: 0.128 ms
[shading] shading=cel: FPS: 7868 FrameTime: 0.127 ms
[effect2d] kernel=edge: FPS: 8497 FrameTime: 0.118 ms
[effect2d] kernel=blur: FPS: 7878 FrameTime: 0.127 ms
[desktop] <default>: FPS: 8800 FrameTime: 0.114 ms
[cube] <default>: FPS: 7955 FrameTime: 0.126 ms
[clear] <default>: FPS: 7592 FrameTime: 0.132 ms
=======================================================
                                   vkmark Score: 8078
=======================================================
glmark2 (Zink)
=======================================================
    glmark2 2023.01
=======================================================
    OpenGL Information
    GL_VENDOR:      Mesa
    GL_RENDERER:    zink Vulkan 1.3(Adreno (TM) 830 (QUALCOMM_PROPRIETARY))
    GL_VERSION:     4.6 (Compatibility Profile) Mesa 25.2.5
    Surface Config: buf=32 r=8 g=8 b=8 a=8 depth=24 stencil=0 samples=0
    Surface Size:   800x600 windowed
=======================================================
[build] use-vbo=false: FPS: 1653 FrameTime: 0.605 ms
[build] use-vbo=true: FPS: 1640 FrameTime: 0.610 ms
[texture] texture-filter=nearest: FPS: 1592 FrameTime: 0.628 ms
[texture] texture-filter=linear: FPS: 1707 FrameTime: 0.586 ms
[texture] texture-filter=mipmap: FPS: 1645 FrameTime: 0.608 ms
[shading] shading=gouraud: FPS: 1462 FrameTime: 0.684 ms
[shading] shading=blinn-phong-inf: FPS: 1453 FrameTime: 0.688 ms
[shading] shading=phong: FPS: 1361 FrameTime: 0.735 ms
[shading] shading=cel: FPS: 1358 FrameTime: 0.737 ms
[bump] bump-render=high-poly: FPS: 1165 FrameTime: 0.859 ms
[bump] bump-render=normals: FPS: 1537 FrameTime: 0.651 ms
[bump] bump-render=height: FPS: 1608 FrameTime: 0.622 ms
[effect2d] kernel=0,1,0;1,-4,1;0,1,0;: FPS: 1158 FrameTime: 0.864 ms
[effect2d] kernel=1,1,1,1,1;1,1,1,1,1;1,1,1,1,1;: FPS: 893 FrameTime: 1.121 ms
[pulsar] light=false:quads=5:texture=false: FPS: 1401 FrameTime: 0.714 ms
[desktop] blur-radius=5:effect=blur:passes=1:separable=true:windows=4: FPS: 526 FrameTime: 1.904 ms
[desktop] effect=shadow:windows=4: FPS: 943 FrameTime: 1.061 ms
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 395 FrameTime: 2.535 ms
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=subdata: FPS: 518 FrameTime: 1.932 ms
[buffer] columns=200:interleave=true:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 469 FrameTime: 2.137 ms
[ideas] speed=duration: FPS: 591 FrameTime: 1.692 ms
[jellyfish] <default>: FPS: 929 FrameTime: 1.077 ms
[terrain] <default>: FPS: 264 FrameTime: 3.796 ms
[shadow] <default>: FPS: 919 FrameTime: 1.089 ms
[refract] <default>: FPS: 411 FrameTime: 2.437 ms
[conditionals] fragment-steps=0:vertex-steps=0: FPS: 1317 FrameTime: 0.760 ms
[conditionals] fragment-steps=5:vertex-steps=0: FPS: 1312 FrameTime: 0.762 ms
[conditionals] fragment-steps=0:vertex-steps=5: FPS: 1318 FrameTime: 0.759 ms
[function] fragment-complexity=low:fragment-steps=5: FPS: 1319 FrameTime: 0.758 ms
[function] fragment-complexity=medium:fragment-steps=5: FPS: 1282 FrameTime: 0.780 ms
[loop] fragment-loop=false:fragment-steps=5:vertex-steps=5: FPS: 1314 FrameTime: 0.761 ms
[loop] fragment-steps=5:fragment-uniform=false:vertex-steps=5: FPS: 1314 FrameTime: 0.761 ms
[loop] fragment-steps=5:fragment-uniform=true:vertex-steps=5: FPS: 1198 FrameTime: 0.835 ms
=======================================================
                                  glmark2 Score: 1149
=======================================================
glmark2-es2 (Zink)
libEGL warning: DRI3 error: Could not get DRI3 device
libEGL warning: Ensure your X server supports DRI3 to get accelerated rendering
=======================================================
    glmark2 2023.01
=======================================================
    OpenGL Information
    GL_VENDOR:      Mesa
    GL_RENDERER:    zink Vulkan 1.3(Adreno (TM) 830 (QUALCOMM_PROPRIETARY))
    GL_VERSION:     OpenGL ES 3.2 Mesa 25.2.5
    Surface Config: buf=32 r=8 g=8 b=8 a=8 depth=24 stencil=0 samples=0
    Surface Size:   800x600 windowed
=======================================================
[build] use-vbo=false: FPS: 1558 FrameTime: 0.642 ms
[build] use-vbo=true: FPS: 1615 FrameTime: 0.619 ms
[texture] texture-filter=nearest: FPS: 1069 FrameTime: 0.936 ms
[texture] texture-filter=linear: FPS: 1161 FrameTime: 0.862 ms
[texture] texture-filter=mipmap: FPS: 1134 FrameTime: 0.882 ms
[shading] shading=gouraud: FPS: 1044 FrameTime: 0.958 ms
[shading] shading=blinn-phong-inf: FPS: 1072 FrameTime: 0.934 ms
[shading] shading=phong: FPS: 1014 FrameTime: 0.986 ms
[shading] shading=cel: FPS: 1258 FrameTime: 0.795 ms
[bump] bump-render=high-poly: FPS: 1742 FrameTime: 0.574 ms
[bump] bump-render=normals: FPS: 1977 FrameTime: 0.506 ms
[bump] bump-render=height: FPS: 1821 FrameTime: 0.549 ms
[effect2d] kernel=0,1,0;1,-4,1;0,1,0;: FPS: 1295 FrameTime: 0.772 ms
[effect2d] kernel=1,1,1,1,1;1,1,1,1,1;1,1,1,1,1;: FPS: 904 FrameTime: 1.106 ms
[pulsar] light=false:quads=5:texture=false: FPS: 1659 FrameTime: 0.603 ms
[desktop] blur-radius=5:effect=blur:passes=1:separable=true:windows=4: FPS: 588 FrameTime: 1.702 ms
[desktop] effect=shadow:windows=4: FPS: 1055 FrameTime: 0.948 ms
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 442 FrameTime: 2.266 ms
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=subdata: FPS: 757 FrameTime: 1.322 ms
[buffer] columns=200:interleave=true:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 520 FrameTime: 1.925 ms
[ideas] speed=duration: FPS: 619 FrameTime: 1.617 ms
[jellyfish] <default>: FPS: 1063 FrameTime: 0.941 ms
[terrain] <default>: FPS: 296 FrameTime: 3.385 ms
[shadow] <default>: FPS: 1014 FrameTime: 0.986 ms
[refract] <default>: FPS: 429 FrameTime: 2.333 ms
[conditionals] fragment-steps=0:vertex-steps=0: FPS: 1504 FrameTime: 0.665 ms
[conditionals] fragment-steps=5:vertex-steps=0: FPS: 1488 FrameTime: 0.672 ms
[conditionals] fragment-steps=0:vertex-steps=5: FPS: 1490 FrameTime: 0.672 ms
[function] fragment-complexity=low:fragment-steps=5: FPS: 1473 FrameTime: 0.679 ms
[function] fragment-complexity=medium:fragment-steps=5: FPS: 1509 FrameTime: 0.663 ms
[loop] fragment-loop=false:fragment-steps=5:vertex-steps=5: FPS: 1563 FrameTime: 0.640 ms
[loop] fragment-steps=5:fragment-uniform=false:vertex-steps=5: FPS: 1537 FrameTime: 0.651 ms
[loop] fragment-steps=5:fragment-uniform=true:vertex-steps=5: FPS: 1471 FrameTime: 0.680 ms
=======================================================
                                  glmark2 Score: 1185
=======================================================

Mali-G78 MP20

glmark2-es2 (Zink)
=======================================================
    vkmark 2025.01
=======================================================
    Vendor ID:      0x13B5
    Device ID:      0x92020000
    Device Name:    Mali-G78
    Driver Version: 226496512
    Device UUID:    a77a84dbf6f534ddb5b88a99395ff94b
=======================================================
[vertex] device-local=true: FPS: 1203 FrameTime: 0.831 ms
[vertex] device-local=false: FPS: 1190 FrameTime: 0.840 ms
[texture] anisotropy=0: FPS: 1153 FrameTime: 0.867 ms
[texture] anisotropy=16: FPS: 1135 FrameTime: 0.881 ms
[shading] shading=gouraud: FPS: 1008 FrameTime: 0.992 ms
[shading] shading=blinn-phong-inf: FPS: 957 FrameTime: 1.045 ms
[shading] shading=phong: FPS: 980 FrameTime: 1.020 ms
[shading] shading=cel: FPS: 872 FrameTime: 1.147 ms
[effect2d] kernel=edge: FPS: 917 FrameTime: 1.091 ms
[effect2d] kernel=blur: FPS: 810 FrameTime: 1.235 ms
[desktop] <default>: FPS: 947 FrameTime: 1.056 ms
[cube] <default>: FPS: 1180 FrameTime: 0.847 ms
[clear] <default>: FPS: 1267 FrameTime: 0.789 ms
=======================================================
                                   vkmark Score: 1047
=======================================================
glmark2 (Zink)
WARNING: Some incorrect rendering might occur because the selected Vulkan device (Mali-G78) doesn't support base Zink requirements: feats.features.fillModeNonSolid feats.features.shaderClipDistance
=======================================================
    glmark2 2023.01
=======================================================
    OpenGL Information
    GL_VENDOR:      Mesa
    GL_RENDERER:    zink Vulkan 1.4(Mali-G78 (ARM_PROPRIETARY))
    GL_VERSION:     3.2 (Compatibility Profile) Mesa 25.2.5
    Surface Config: buf=32 r=8 g=8 b=8 a=8 depth=24 stencil=0 samples=0
    Surface Size:   800x600 windowed
=======================================================
[build] use-vbo=false: FPS: 503 FrameTime: 1.988 ms
[build] use-vbo=true: FPS: 547 FrameTime: 1.830 ms
[texture] texture-filter=nearest: FPS: 564 FrameTime: 1.775 ms
[texture] texture-filter=linear: FPS: 552 FrameTime: 1.814 ms
[texture] texture-filter=mipmap: FPS: 580 FrameTime: 1.726 ms
[shading] shading=gouraud: FPS: 519 FrameTime: 1.928 ms
[shading] shading=blinn-phong-inf: FPS: 544 FrameTime: 1.841 ms
[shading] shading=phong: FPS: 516 FrameTime: 1.940 ms
[shading] shading=cel: FPS: 528 FrameTime: 1.897 ms
[bump] bump-render=high-poly: FPS: 404 FrameTime: 2.476 ms
[bump] bump-render=normals: FPS: 615 FrameTime: 1.627 ms
[bump] bump-render=height: FPS: 598 FrameTime: 1.674 ms
[effect2d] kernel=0,1,0;1,-4,1;0,1,0;: FPS: 531 FrameTime: 1.886 ms
[effect2d] kernel=1,1,1,1,1;1,1,1,1,1;1,1,1,1,1;: FPS: 399 FrameTime: 2.508 ms
[pulsar] light=false:quads=5:texture=false: FPS: 585 FrameTime: 1.712 ms
[desktop] blur-radius=5:effect=blur:passes=1:separable=true:windows=4: FPS: 261 FrameTime: 3.846 ms
[desktop] effect=shadow:windows=4: FPS: 357 FrameTime: 2.805 ms
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 312 FrameTime: 3.211 ms
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=subdata: FPS: 412 FrameTime: 2.432 ms
[buffer] columns=200:interleave=true:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 297 FrameTime: 3.371 ms
[ideas] speed=duration: FPS: 314 FrameTime: 3.191 ms
[jellyfish] <default>: FPS: 450 FrameTime: 2.224 ms
[terrain] <default>: FPS: 164 FrameTime: 6.101 ms
[shadow] <default>: FPS: 419 FrameTime: 2.390 ms
[refract] <default>: FPS: 267 FrameTime: 3.755 ms
[conditionals] fragment-steps=0:vertex-steps=0: FPS: 375 FrameTime: 2.672 ms
[conditionals] fragment-steps=5:vertex-steps=0: FPS: 494 FrameTime: 2.026 ms
[conditionals] fragment-steps=0:vertex-steps=5: FPS: 500 FrameTime: 2.002 ms
[function] fragment-complexity=low:fragment-steps=5: FPS: 436 FrameTime: 2.297 ms
[function] fragment-complexity=medium:fragment-steps=5: FPS: 393 FrameTime: 2.549 ms
[loop] fragment-loop=false:fragment-steps=5:vertex-steps=5: FPS: 329 FrameTime: 3.045 ms
[loop] fragment-steps=5:fragment-uniform=false:vertex-steps=5: FPS: 351 FrameTime: 2.854 ms
[loop] fragment-steps=5:fragment-uniform=true:vertex-steps=5: FPS: 482 FrameTime: 2.076 ms
=======================================================
                                  glmark2 Score: 441
=======================================================
glmark2-es2 (Zink)
libEGL warning: DRI3 error: Could not get DRI3 device
libEGL warning: Ensure your X server supports DRI3 to get accelerated rendering
WARNING: Some incorrect rendering might occur because the selected Vulkan device (Mali-G78) doesn't support base Zink requirements: feats.features.fillModeNonSolid feats.features.shaderClipDistance
=======================================================
    glmark2 2023.01
=======================================================
    OpenGL Information
    GL_VENDOR:      Mesa
    GL_RENDERER:    zink Vulkan 1.4(Mali-G78 (ARM_PROPRIETARY))
    GL_VERSION:     OpenGL ES 3.1 Mesa 25.2.5
    Surface Config: buf=32 r=8 g=8 b=8 a=8 depth=24 stencil=0 samples=0
    Surface Size:   800x600 windowed
=======================================================
[build] use-vbo=false: FPS: 461 FrameTime: 2.173 ms
[build] use-vbo=true: FPS: 461 FrameTime: 2.170 ms
[texture] texture-filter=nearest: FPS: 447 FrameTime: 2.241 ms
[texture] texture-filter=linear: FPS: 491 FrameTime: 2.040 ms
[texture] texture-filter=mipmap: FPS: 461 FrameTime: 2.173 ms
[shading] shading=gouraud: FPS: 419 FrameTime: 2.387 ms
[shading] shading=blinn-phong-inf: FPS: 447 FrameTime: 2.240 ms
[shading] shading=phong: FPS: 426 FrameTime: 2.351 ms
[shading] shading=cel: FPS: 426 FrameTime: 2.352 ms
[bump] bump-render=high-poly: FPS: 373 FrameTime: 2.686 ms
[bump] bump-render=normals: FPS: 709 FrameTime: 1.411 ms
[bump] bump-render=height: FPS: 571 FrameTime: 1.754 ms
[effect2d] kernel=0,1,0;1,-4,1;0,1,0;: FPS: 576 FrameTime: 1.738 ms
[effect2d] kernel=1,1,1,1,1;1,1,1,1,1;1,1,1,1,1;: FPS: 464 FrameTime: 2.156 ms
[pulsar] light=false:quads=5:texture=false: FPS: 575 FrameTime: 1.740 ms
[desktop] blur-radius=5:effect=blur:passes=1:separable=true:windows=4: FPS: 331 FrameTime: 3.026 ms
[desktop] effect=shadow:windows=4: FPS: 489 FrameTime: 2.047 ms
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 349 FrameTime: 2.873 ms
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=subdata: FPS: 577 FrameTime: 1.734 ms
[buffer] columns=200:interleave=true:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 312 FrameTime: 3.209 ms
[ideas] speed=duration: FPS: 431 FrameTime: 2.323 ms
[jellyfish] <default>: FPS: 508 FrameTime: 1.972 ms
[terrain] <default>: FPS: 178 FrameTime: 5.642 ms
[shadow] <default>: FPS: 471 FrameTime: 2.126 ms
[refract] <default>: FPS: 283 FrameTime: 3.544 ms
[conditionals] fragment-steps=0:vertex-steps=0: FPS: 603 FrameTime: 1.661 ms
[conditionals] fragment-steps=5:vertex-steps=0: FPS: 588 FrameTime: 1.703 ms
[conditionals] fragment-steps=0:vertex-steps=5: FPS: 585 FrameTime: 1.712 ms
[function] fragment-complexity=low:fragment-steps=5: FPS: 567 FrameTime: 1.765 ms
[function] fragment-complexity=medium:fragment-steps=5: FPS: 568 FrameTime: 1.763 ms
[loop] fragment-loop=false:fragment-steps=5:vertex-steps=5: FPS: 598 FrameTime: 1.674 ms
[loop] fragment-steps=5:fragment-uniform=false:vertex-steps=5: FPS: 611 FrameTime: 1.637 ms
[loop] fragment-steps=5:fragment-uniform=true:vertex-steps=5: FPS: 556 FrameTime: 1.801 ms
=======================================================
                                  glmark2 Score: 481
=======================================================

Adreno 730

vkmark
=======================================================
    vkmark 2025.01
=======================================================
    Vendor ID:      0x5143
    Device ID:      0x7030002
    Device Name:    Adreno (TM) 730
    Driver Version: 2150002783
    Device UUID:    39e31f0c435100000000020003070000
=======================================================
[vertex] device-local=true: FPS: 3929 FrameTime: 0.255 ms
[vertex] device-local=false: FPS: 4687 FrameTime: 0.213 ms
[texture] anisotropy=0: FPS: 4769 FrameTime: 0.210 ms
[texture] anisotropy=16: FPS: 2957 FrameTime: 0.338 ms
[shading] shading=gouraud: FPS: 2888 FrameTime: 0.346 ms
[shading] shading=blinn-phong-inf: FPS: 3041 FrameTime: 0.329 ms
[shading] shading=phong: FPS: 2950 FrameTime: 0.339 ms
[shading] shading=cel: FPS: 2814 FrameTime: 0.355 ms
[effect2d] kernel=edge: FPS: 2888 FrameTime: 0.346 ms
[effect2d] kernel=blur: FPS: 2844 FrameTime: 0.352 ms
[desktop] <default>: FPS: 2909 FrameTime: 0.344 ms
[cube] <default>: FPS: 2669 FrameTime: 0.375 ms
[clear] <default>: FPS: 2795 FrameTime: 0.358 ms
=======================================================
                                   vkmark Score: 3241
=======================================================
glmark2 (Zink)
glx: failed to create drisw screen
failed to load driver: zink
glx: failed to create drisw screen
failed to load driver: zink
glx: failed to create drisw screen
failed to load driver: zink
Error: glXChooseFBConfig() failed
Error: Error: Couldn't get GL visual config!
Error: main: Could not initialize canvas
glmark2-es2 (Zink)
libEGL warning: DRI3 error: Could not get DRI3 device
libEGL warning: Ensure your X server supports DRI3 to get accelerated rendering
libEGL warning: egl: failed to create dri2 screen
=======================================================
    glmark2 2023.01
=======================================================
    OpenGL Information
    GL_VENDOR:      Mesa
    GL_RENDERER:    llvmpipe (LLVM 21.1.3, 128 bits)
    GL_VERSION:     OpenGL ES 3.2 Mesa 25.2.5
    Surface Config: buf=32 r=8 g=8 b=8 a=8 depth=32 stencil=0 samples=0
    Surface Size:   800x600 windowed
=======================================================
[build] use-vbo=false: FPS: 153 FrameTime: 6.570 ms
[build] use-vbo=true: FPS: 136 FrameTime: 7.402 ms
[texture] texture-filter=nearest: FPS: 120 FrameTime: 8.393 ms
[texture] texture-filter=linear: FPS: 120 FrameTime: 8.390 ms
[texture] texture-filter=mipmap: FPS: 109 FrameTime: 9.205 ms
[shading] shading=gouraud: FPS: 105 FrameTime: 9.561 ms
[shading] shading=blinn-phong-inf: FPS: 85 FrameTime: 11.814 ms
[shading] shading=phong: FPS: 80 FrameTime: 12.629 ms
[shading] shading=cel: FPS: 81 FrameTime: 12.491 ms
[bump] bump-render=high-poly: FPS: 47 FrameTime: 21.691 ms
[bump] bump-render=normals: FPS: 112 FrameTime: 8.968 ms
[bump] bump-render=height: FPS: 113 FrameTime: 8.918 ms
[effect2d] kernel=0,1,0;1,-4,1;0,1,0;: FPS: 61 FrameTime: 16.571 ms
[effect2d] kernel=1,1,1,1,1;1,1,1,1,1;1,1,1,1,1;: FPS: 39 FrameTime: 26.147 ms
[pulsar] light=false:quads=5:texture=false: FPS: 98 FrameTime: 10.240 ms
[desktop] blur-radius=5:effect=blur:passes=1:separable=true:windows=4: FPS: 17 FrameTime: 58.825 ms
[desktop] effect=shadow:windows=4: FPS: 40 FrameTime: 25.233 ms
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 59 FrameTime: 17.081 ms
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=subdata: FPS: 60 FrameTime: 16.944 ms
[buffer] columns=200:interleave=true:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 60 FrameTime: 16.861 ms
[ideas] speed=duration: FPS: 72 FrameTime: 13.934 ms
[jellyfish] <default>: FPS: 35 FrameTime: 29.157 ms
[terrain] <default>: FPS: 2 FrameTime: 505.722 ms
[shadow] <default>: FPS: 71 FrameTime: 14.102 ms
[refract] <default>: FPS: 8 FrameTime: 132.474 ms
[conditionals] fragment-steps=0:vertex-steps=0: FPS: 94 FrameTime: 10.714 ms
[conditionals] fragment-steps=5:vertex-steps=0: FPS: 90 FrameTime: 11.115 ms
[conditionals] fragment-steps=0:vertex-steps=5: FPS: 102 FrameTime: 9.863 ms
[function] fragment-complexity=low:fragment-steps=5: FPS: 105 FrameTime: 9.535 ms
[function] fragment-complexity=medium:fragment-steps=5: FPS: 84 FrameTime: 11.968 ms
[loop] fragment-loop=false:fragment-steps=5:vertex-steps=5: FPS: 103 FrameTime: 9.714 ms
[loop] fragment-steps=5:fragment-uniform=false:vertex-steps=5: FPS: 98 FrameTime: 10.279 ms
[loop] fragment-steps=5:fragment-uniform=true:vertex-steps=5: FPS: 77 FrameTime: 13.101 ms
=======================================================
                                  glmark2 Score: 78
=======================================================

@lfdevs lfdevs changed the title addpkg(main/mesa-vulkan-icd-wrapper): Android Vulkan wrapper addpkg(main/vulkan-wrapper-android): Android Vulkan wrapper Nov 10, 2025
@nightshadecf
Copy link

@lfdevs Thank you very much for this build, my termux run straight away without problem.
I get the same benchmark score as you did ( on adreno 830, Oneplus Pad 2 Pro ), everything run much smoother now, especially webgl, this is great 😃

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants