swung0x48
d8576a2ed3
[Fix] (DirectVulkan, ShaderTranspiler, MG_IntegrationTest, SelfTest, TraceReplay): use native subgroups and patch iterationRP's under-declared scratch
...
iterationRP's Program 203 declares shared vec2 prefixSumCache[32] for a
512-invocation workgroup indexed by gl_SubgroupID; any device narrower
than 16 lanes partitions into more than 32 subgroups and the pack writes
shared memory out of bounds (heap corruption on lavapipe's CPU
rasterizer, ssim 0.028 on the CI retrace). Fix it where the fault lies -
in the fixture - and keep the GL contract sound everywhere else:
- FixIterationRPSubgroupScratchPass: fingerprint-gated SPIR-V pass that
grows exactly that array to ceil(invocations/width) entries on sub-16-lane devices; every other module passes through byte-identical.
- DeriveNumSubgroupsPass stays default-on for the Adreno topology bug
and is made spec-sound: pipelines request REQUIRE_FULL_SUBGROUPS
whenever the workgroup shape makes the flag legal (computeFullSubgroups
enabled, local_size_x a multiple of the native width, subgroup count
within maxComputeWorkgroupSubgroups).
- EmulateSubgroupsPass: 32-lane virtual-subgroup lowering kept in-tree
as a last resort, enabled only by MOBILEGL_MAGMA_EMULATE_SUBGROUP=1 on
devices with no native subgroup support; fails closed on extended
subgroup instructions and on modules whose added scratch would exceed
maxComputeSharedMemorySize.
- IterationRPFirstReductionScenario skips gracefully outside the pack's
16..256-lane source domain; the new IterationRPScratchFixScenario runs
the fixture-shaped reduction on any width and asserts the exact
width-independent total. DriverPost keeps reporting FAIL on
out-of-domain devices.
- Program203 -> IterationRP rename throughout; the per-trace
num_subgroups_quirk plumbing is removed from the trace replayer, JNI
chain, and CI workflows.
2026-08-19 09:48:11 -04:00
swung0x48
2b6c2b561c
[Fix, Test] (DirectVulkan, ShaderTranspiler, TraceReplay): derive NumSubgroups behind opt-in quirk
2026-08-18 22:31:57 -04:00
swung0x48
6df5a6137f
[CI] (trace-replay): run iterationRP only on DirectVulkan
2026-08-16 11:09:56 -04:00
swung0x48
64a0ea397c
[Perf] (CI): rewrite one rolling ccache entry per job on the default branch instead of saving one per run
2026-08-12 01:56:17 -04:00
swung0x48
205d837942
[Fix, Test] (MG_Backend/DirectGLES, MG_Util, CI): keep an explicit LOD constant under a new avoid flag - folding the bias uniform into it kills the ANGLE llvmpipe JIT
2026-08-12 01:42:55 -04:00
swung0x48
64c3411d70
[Perf] (CI): restore unchanged trace fixtures from the Actions cache keyed on their Git LFS pointer oid, downloading only on a miss
2026-08-12 00:49:47 -04:00
swung0x48
09459edb6b
[Fix] (CI, android-plugin): an ANGLE window surface lost before init finishes is infrastructure, not a trace failure
2026-08-11 21:00:31 -04:00
swung0x48
3068cdadf8
[Test] (CI): keep the emulator log of the attempt that lost the emulator, and record host memory pressure
2026-08-11 20:51:54 -04:00
swung0x48
ca3d24f5ea
[Fix] (CI, android-plugin): keep a failed Android retrace's result artifact, and echo the logs a failed replay already wrote
2026-08-11 19:30:38 -04:00
swung0x48
fc0688c223
[Fix] (CI): stabilize Android retrace jobs
2026-07-18 19:52:04 -04:00
swung0x48
3e4ce5caa7
[Refactor] (MG_Impl/GLImpl): replace Flywheel dispatch sync hack with MOBILEGL_COHERENT_AS_FLUSH
2026-07-15 21:51:20 -04:00
swung0x48
f80f6f4a62
[Fix] (CI): retain fixtures for failed retraces
2026-07-15 04:36:15 -04:00
swung0x48
66caf907fd
[Fix] (CI): remove intermediate trace artifacts
2026-07-15 02:52:03 -04:00
swung0x48
d3150399c7
[Fix] (CI): download direct trace APK artifact
2026-07-15 02:01:53 -04:00
swung0x48
f1c6a12c06
[Fix] (CI): use full commit SHAs
2026-07-15 01:33:56 -04:00
swung0x48
947442ec78
[Fix] (CI): resolve trace APK by SHA
2026-07-15 01:27:09 -04:00
swung0x48
165dd003d7
[Chore] (CI): clean intermediate artifacts
2026-07-15 00:53:50 -04:00
swung0x48
b852ced3c1
[Chore] (CI): upgrade GitHub Actions runtimes
2026-07-15 00:36:08 -04:00
swung0x48
4a03d62b91
[Fix] (CI): publish APK artifacts directly
2026-07-15 00:34:52 -04:00
swung0x48
056574eebe
[Fix] (CI): name APK artifacts by commit
2026-07-15 00:22:12 -04:00
swung0x48
e61685547a
[Fix] (CI): locate unified trace APK
2026-07-15 00:17:08 -04:00
swung0x48
7ebaf43282
[Refactor] (Android plugin): unify renderer APK with Plugin V2 DSL
2026-07-14 23:37:21 -04:00
swung0x48
15580ff6a6
[Fix] (Retrace): preserve bundled ANGLE binaries
2026-07-15 08:46:28 +08:00
swung0x48
fd6f5bca83
[Fix] (Retrace): rely on APK signing for bundled ANGLE
2026-07-15 07:50:40 +08:00
swung0x48
b6d311f20b
[Fix] (Retrace): bundle and select signed ANGLE variants
2026-07-15 06:48:10 +08:00
swung0x48
533219ede7
[Fix] (Retrace): load ANGLE through LD_LIBRARY_PATH
2026-07-13 21:20:02 -04:00
swung0x48
a55a0645e2
[Refactor] (MG_Config, MG_Backend/DirectVulkan, trace-replay): centralize Magma env parsing and rename R11G11B10F fallback
2026-07-13 19:58:06 -04:00
swung0x48
fbbf3c4beb
[Chore] (trace-replay): document bliss ANGLE workaround
2026-07-08 07:14:45 +08:00
swung0x48
b88066b73b
[Fix] (trace-replay): accept Android SDK licenses explicitly
2026-07-08 01:56:45 +08:00
swung0x48
83d475eb02
[Fix] (trace-replay): stabilize ANGLE retrace cases
2026-07-08 01:07:20 +08:00
swung0x48
23671f1a99
[Chore] (trace-replay): cache Android retrace AVD
2026-07-07 06:30:15 +08:00
swung0x48
94e882762e
[Chore] (trace-replay): reduce retrace CI swap
2026-07-07 06:28:15 +08:00
swung0x48
672538f4f1
[Chore] (trace-replay): add swap to retrace CI
2026-07-07 05:21:50 +08:00
swung0x48
1902518cd6
[Fix] (trace-replay): enable Vulkan fallback in APK CI
2026-07-04 07:51:49 +08:00
swung0x48
bcb8a9b57b
[Chore] (trace-replay): skip 26.2 cases in CI
2026-07-03 20:42:46 +08:00
swung0x48
cd96db7829
[Chore] (trace-replay): gate retrace jobs on prerequisites
2026-07-02 21:26:38 +08:00
swung0x48
ca38d8fe86
[Chore] (trace-replay): fetch fixture from mirror
2026-07-02 21:12:56 +08:00
swung0x48
f10f7df389
[Chore] (trace-replay): use manifest file to organize retrace fixtures
2026-07-02 20:51:14 +08:00
swung0x48
9b06475811
[Fix] (replay-trace) refresh Minecraft 26.2 main menu fixture
2026-07-02 11:02:46 +08:00
swung0x48
233277d94b
[Fix] (replay-trace) add Minecraft 26.2 vanilla fixtures
2026-07-02 09:07:20 +08:00
swung0x48
2d1b8cdd30
[Fix] (replay-trace) run normal-world mod traces in CI
2026-07-01 13:07:35 +08:00
swung0x48
d2cbd2f596
[Fix] (replay-trace) recapture normal-world Fabric mod fixtures
2026-07-01 12:49:56 +08:00
swung0x48
a762346a3b
[Fix] (TraceReplay): support local Android retrace reports
2026-06-29 13:53:30 +08:00
swung0x48
d78892cad0
[Fix] (replay-trace): enable GLES mod retraces and crop minimap
2026-06-29 10:17:30 +08:00
swung0x48
46f3192c67
[CI] add normal-world per-mod retrace fixtures
2026-06-28 13:00:12 +08:00
swung0x48
6a11f96a5b
[CI] add per-mod common mod retrace fixtures
2026-06-28 10:40:52 +08:00
swung0x48
56be5318ab
[CI] add common mod retrace fixtures
2026-06-28 07:40:31 +08:00
swung0x48
5af927224f
[CI] skip submodules for artifact-only jobs
2026-06-28 00:34:56 +08:00
swung0x48
f68c7296a6
[Fix] (MG_Backend/DirectGLES): clamp UNORM fallback writes
2026-06-27 20:46:02 +08:00
swung0x48
8fd25acbb6
[CI] upload self-contained retrace summary
2026-06-27 20:05:37 +08:00