BLOG
思考与实践
图形、系统、工程,以及技术之外的观察。
27 篇文章

GPU Book Vol.6-Apple
把 Apple GPU 放回 SoC、UMA、TBDR、片上缓存、SLC、DVFS 与 Metal 的整体约束中,解释 Shader Core 的 Clause-Based Execution、变长 ISA、Operand/Accumulator Cache、动态缓存、多级调度与依赖追踪;随后覆盖 Graphics Path、Tile Memory、UTC、Mesh Shading、RTU、SER、Neural Accelerator、Metal 4 以及跨 NVIDIA/AMD 的工程映射,说明 Apple GPU 不能按独显逻辑等比理解。

GPU Book Vol.3-AMD
沿 TeraScale、GCN、RDNA 与 CDNA 追踪 AMD 的架构路线:从依赖编译器挖掘 ILP 的 VLIW,转向标量 SIMT、ACE 与多 wavefront 的 TLP,再以 Wave32、WGP、Infinity Cache 以及图形与计算分叉回应吞吐、能效和市场约束;后半部分用 Latency-Hiding Stack 统一解释 ISA、调度、执行、寄存器、内存、封装互联、可靠性和 ROCm 生态,并讨论 UDNA 与 Project Amethyst 等未来方向。

GPU Book Vol.2-Nvidia
把 Vol.1 的公约数模型落到 NVIDIA,从 Tesla、Fermi、Kepler、Maxwell、Pascal、Volta、Turing、Ampere、Ada 到 Hopper 和 Blackwell,逐代分析 ISA、warp scheduling、Scoreboard、执行单元、寄存器文件、Occupancy、Memory Subsystem 及图形、计算、RT 和 AI 功能;全文同时比较固定功能弱化、专用单元、片上存储、互联和数据中心与游戏产品线的工程权衡。

GPU Blog Vol.1-Beginne
建立跨厂商 GPU 的公约数模型,沿 Fixed Function、Programmable Shader、Unified Shader、GPGPU 与专用加速单元追踪 data movement、dependency tracking、fixed-function ownership 与 programmability 的再分配;随后从 Graphics API、驱动、宏观 Architecture 到 Microarchitecture,系统解释执行、内存、几何、光栅、纹理、RT、调度、寄存器、依赖和可观测 stall,并给出用这些维度审查新硬件的框架。

GPU Blog 开篇:Feature 上去了,帧数没动
从 Constant Buffer 与 SSBO 的访存路径差异切入,说明 API 特性把成本转移到硬件执行路径;进一步用 Bindless、Mesh Shading、Async Compute、Ray Tracing 与 Virtualized Geometry 解释 feature、数据局部性和实际帧数之间的关系,并介绍后续 GPU 架构系列的分析方法。

Scratchpad Memory in Modern GPU
围绕数据驻留位置与出片时机,解释 Metal Tile Shading、Apple Tile SRAM、Qualcomm Adreno Tile Memory Heap 及其同步、一致性、生命周期和调度模型;文章将这些机制延伸到 Xbox One eSRAM、NVIDIA DSM 与 Persisting L2,比较容量、粒度、跨 Pass 生命周期和开发方式,并给出资源布局、Draw/Dispatch 编排、同步、跨 Pass 持久化、Tile 边界和性能平衡实践。

Evolution history of Vertex Reuse in GPU
以顶点着色器重复调用和几何带宽为切口,完整比较传统索引去重与 Post-Transform Cache 的两级硬件重用机制、NVIDIA Warp、AMD Primitive Subgroup、移动端 Tile 与 AMD DSBR 的边界;文章进一步讨论多视图重用、控制权从固定几何流程转向软件、Mesh Shader meshlet 的显式顶点重用,以及离线聚类、共享内存和属性压缩的工程职责。

GPU Rendering Architecture: Past Present Future
从 Geometry Architecture 与 Hidden Surface Removal 两条主线梳理 IMR、TBR、TBIMR、Mali 的 IDVS/DVS、PowerVR 的 UDL,以及 Hi-Z、ISP、LRZ、FPK、Fragment Prepass 和 Apple Punch Through 等可见性机制;文章比较各架构的提前裁决位置、局限和失效条件,并给出面向不同渲染架构的几何组织、管线状态和最佳实践。

从 LLM 到 Agentic AI:能力、应用、局限与未来的 Innovator 技术路径
从 RNN/LSTM、Transformer 和 GPT-4 的能力来源出发,梳理 AGI 从 Chatbot 到 Agent 的分级与交互范式变化,解释多模态、System 2 推理、DeepSeek-R1 与 Test-Time Compute 如何重分配计算预算;随后分析 Token 二次复杂度、上下文腐烂、灾难性遗忘和 RAG 的结构性限制。文章进一步拆解 Agent 的工具调用、MCP、Skills、Agentic RAG、Prompt/Context Engineering 及研究、长文本、数据规范和工程调试工作流,最后指出当前模型在逻辑泛化、长期记忆、Agent 稳定性、世界模型和在线学习闭环上的缺口,并提出以可证伪预测、Verifier、持久记忆和 Dynamic Learning 构成 Innovator 系统的设想,以 AlphaGo 和 AlphaFold 作为局部闭环的实证锚点。

商业化材质体系:效果表达与工程优化
文章从上线前 iOS 纹理绑定超限导致的 8% 崩溃率切入,追溯商业化角色材质在纹理数量、ALU、Sub-Mesh 和 Draw Call 上的膨胀,并以移动端 GPU 的纹理延迟、寄存器 Occupancy、分支分化和 Metal 31 槽硬墙建立底层约束。随后记录用 RenderDoc 与 LLM 逆向竞品染色 Shader、修复暗部 Artifact,并将 HSV 相关计算移到 CPU 的过程;提出四层 CommercialMaster、Texture-8 通道预算与寄生复用策略,覆盖 CPU/GPU 预计算、循环展开、静态分支、选择算子、Mask 分块裁剪、材质槽清理、双面拆分和妆容烘焙。验证数据显示指令数、VGPR 和纹理内存显著下降,同时保留 PC 端 0.27ms 增量与 Texture-8 后续扩展受限等边界。

Shell Fur 多通道材质系统
文章比较 DCC 烘焙 N 层壳模型与 GFurPRO 两种绒毛方案,提出在 MeshComponent 上以 Draw Instance 让 GPU 按 InstanceID 展开壳层、由材质控制层深和方向的多通道 Shell Fur 系统。内容完整覆盖 Fur 开关、材质与 Count Bias 的挂载数据结构,LOD 预生成、渲染提交、材质相关性、纹理流送、着色器编译标记、Per Section 层数取最小规则,以及 VertexColor 搭载切线空间毛发方向和 Paint Module 的美术工作流;同时说明失去逐层宏观造型能力、阴影轮廓不足、运行时开关成本和每级 LOD 预建 MID 等限制,并提出迁移到 GPU Scene Per Section Uniform、整合 Mesh 编辑器入口的后续方向。

Farlight 84 水体渲染
围绕移动端水体,逐层实现吸收、散射、相位函数、法线、高光、Cube/Screen Reflection,以及水下雾、切线效果;随后从 Shader ISA/质量等级和 Pipeline 的混合、深度淡出、反射折射优化,到集成与流体交互、Clipmap、焦散和 FFT 后续计划。