败犬日报 2025-01-13
1. 真实案例之函数参数 const string &
,直接 const_cast
后 move
走了
:听说 move 能提高效率 这人怎么不 move? :搞定 怎么提示我 move 无效 说这是 const 的。 :找到了 const_cast 可以移除 const 我真是天才。
笑死了。
2. clangd19 没有 requires 关键字的高亮
这个功能还没做。
3. memset benchmark
https://github.com/nadavrot/memset_benchmark
一个 memset, memcpy 的实现和 benchmark。
4. simd 128 位提升到 256/512 位什么情况下性能会劣化
不同长度 SIMD 指令的延迟、吞吐不一定相同,如果没处理好就会导致性能降低。
除此之外可能还有 CPU 降频、对齐之类的问题。
群友表示大多数情况性能不会提升。
5. non-temporal 指令
绕过 cache 直接读写内存,可以避免其他需要的数据留在 cache 上不被踢出。
6. DMA 用来做什么
DMA 可以不占用 CPU 完成内存搬运(但不能加速这个过程)。
DMA 一般在介绍时会带上 IO 设备,但是其实内存之间的搬运也是可以的。