Ruminations of a Programmer

RSS: https://debasishg.github.io/atom.xml
编程、数学和技术深度探讨

安全即性能:Move 语义、借用检查器、debug_assert! 与冷路径卫生

Rust 的安全机制(move 语义、借用检查器、debug_assert!、错误模型)不是为安全付出的性能税,而是可以用来换取速度的工具。文章以 SPSC 无锁环形缓冲区为例,展示编译器在编译期消除边界检查、将决策推到编译期特化类型、内联消除抽象开销等具体手段。 这是 Low-Level Systems Design in Rust 系列第 7 篇,前 6 篇从硬件视角覆盖缓存行、内存序、NUMA、分配等话题。
评论点赞收藏37 天前

编译期杠杆:特化、分支与算术内联、函数内联

Rust 编译器可作为协作方,通过编译期常量、零大小类型和可证明冗余的边界检查生成无代码优化。本文以单生产者单消费者环形缓冲区为例,提出三大杠杆:编译期特化、分支与算术内联、函数内联,让编译器在已知事实下消除运行时开销。
评论点赞收藏65 天前

热路径上的零拷贝:预留/提交机制与快慢路径拆分

Rust 高性能系统设计系列的第四部分,深入探讨 SPSC 环形缓冲区的零拷贝优化。文章指出原子操作并非唯一瓶颈,提出了消除 copy-in/copy-out 的 reserve/commit 协议,以及将罕见情况与常见路径分离的 Fast-Path/Slow-Path 拆分策略,旨在让 CPU 更好地预测分支并提升流水线效率。
评论点赞收藏72 天前

摊销跨核协调:游标缓存与批量处理

Rust高性能系统编程系列的第三部分,聚焦于单生产者单消费者环形缓冲区中的跨核同步优化。文章深入探讨了如何通过游标缓存和批量处理来减少昂贵的跨核通信开销,提供具体的底层系统设计思路与代码实现细节,适合关注高吞吐低延迟架构的工程师参考。
评论点赞收藏79 天前

Rust中的缓存感知数据布局:字段分区、伪共享与128字节法则

深入讲解Rust高性能并发数据结构(如SPSC环形缓冲区)的内存布局优化。通过“字段分区”将不同核心的热点数据隔离,解决False Sharing问题。 文章指出使用128字节对齐而非64字节可防止CPU预取导致的伪共享,并辟谣了线性访问中手动软件预取的必要性。适合追求极致延迟和吞吐量的底层系统开发者。
评论点赞收藏85 天前

跨核契约:无锁 Rust 中的内存排序与单写者状态

深入解析 Rust 并发编程中核心的内存排序问题,以 SPSC 环形缓冲区为例,讲解如何正确且高效地在多核间共享数据。文章提供了具体的硬件层面优化思路和无锁编程的最佳实践,对构建高性能低延迟系统的开发者极具参考价值。
评论点赞收藏86 天前

架构分解:通过设计消除争用

总结 Rust 高并发项目中消除争用的架构设计原则,如 Actor 模型、无锁数据结构等。这些模式同样适用于 C++ 和 Zig。文章旨在整理一套通用的低延迟系统设计方法论,适合后端工程师参考。
评论点赞收藏100 天前

Why x86 Zeroes a Register With `xor eax, eax`

Why x86 Zeroes a Register With xor eax, eax If you have ever disassembled a program - even a trivial one - you have almost certainly seen this line: xor eax, eax It looks like a riddle. The instructio...
评论点赞收藏114 天前

Zig Allocation Patterns

Zig Allocation Patterns A reference for the allocation and ownership patterns used in porcupine-zig, plus the broader landscape of Zig allocator idioms. Examples cite types and functions in the codeba...
评论点赞收藏136 天前

The RAII Drop-Guard Pattern in Rust

The RAII Drop-Guard Pattern in Rust Context In Rust, any value that owns a resource and frees it in its Drop implementation acts as a guard: the resource lives for exactly as long as the value is in s...
评论点赞收藏153 天前

登录芦苇

登录后关注作者、收藏内容和参与讨论。