纯 fragment shader 实现 radix sort:零 compute 每秒 50 亿键值对
Michael_Moroz_ · x · 2026-09-03
- 作者 MichaelMoroz 在 VRChat 的 Udon 限制下(仅 fragment shader blit,无 compute、无 atomics、无 scatter 写)实现了一个 radix sort。
- 键存于 float2 纹理(原索引+键位),按 Morton 序寻址使 2:1 矩形 behaving 像一维数组;每趟处理 4 bit,由三步 blit 加一次 mip 生成完成:histogram 步每个 texel 持有 16 个键并把数字以精确整数 packed 进 float 通道;Expand+GenerateMips 步利用 GPU mipmapper 做前缀扫描(平均 × 4^lod 等价求和),mip 金字塔即部分和树,精确到 2²⁴ 个元素;Gather 步因不能 scatter 而改为逆序遍历。
- 优化后每秒可排序 50 亿键值对,且完全不使用 compute shader,使排序只占模拟的极小开销,甚至可支撑无限无界 SPH 粒子模拟。
所属事件:开发者在 VRChat Udon 中用纯 fragment shader 实现 radix sort(2 条相关)→
「编程与Agent」频道最新
- 开源编码 Agent Pi 破 10 万 GitHub Star,v2 即将发布 — gklambauer · 2026-09-03
- 针对特定代码库定制的 agent harness 或将取代通用框架 — secemp9 · 2026-09-03
- Teknium 实测 Hermes Agent:15 小时递归子代理删掉 37.5 万行代码 — Teknium · 2026-09-03
- 用本地 Gemma 搭规划-执行-审查四 Agent 网络研究流水线 — HlddenDreck · 2026-09-03
- 开发者用 Qwen3-4B 加 LoRA 打造带记忆与人格的本地助手 Arcon — Feathered-Beast · 2026-09-03
- DeepSeek Harness 引发热议:Agent 外壳会比模型本身更重要吗 — samrauh · 2026-09-03