如何实现可动态扩展的共享内存池
开发者通常为了提高内存使用效率,或者避免内存泄漏,需要将内存池化管理。稍复杂一点的系统,一般都会有自己的内存管理机制,我在研读源码的时候,比较习惯先看内存管理模块的实现,这块很见开发者的基本工和工程思想,颇有一叶知秋之感 …
阅读全文Vibe coding 仙人,什么好玩研究什么,不限于 Python、AI、美食、美景、美人....

开发者通常为了提高内存使用效率,或者避免内存泄漏,需要将内存池化管理。稍复杂一点的系统,一般都会有自己的内存管理机制,我在研读源码的时候,比较习惯先看内存管理模块的实现,这块很见开发者的基本工和工程思想,颇有一叶知秋之感 …
阅读全文文件清单 压缩包中包含: 可执行程序 EnglishWordCheck.ext 示例单词清单:english words1.txt 示例 word 文档:sample.doc 使用要求 1. 单词清单文件 文件名自定,文 …
阅读全文今年 AI 发展迅速,尤其是 LLM 涌现出了爆款应用 “ChatGPT”,不会整两句 GPT 你都不好意思扫共享单车。但是由于 OpenAI 的服务限制,国内访问比较困难。再加上自己的问题多少会有一些隐私问题,如果让云 …
阅读全文在上一实战案例中,展示了 bpftrace 最常规的用法:观察。利用 bpftrace 可以我们可以从内核层面,观察整个服务的任何函数调用状态。借助收集到的信息,辅助定位 bug。 最近几个月我都投入在一个分布式系统的开 …
阅读全文内存泄漏是 C 开发非常经典的问题,目前已经存在很多优秀的内存检测工具,比如强大的 Valgrind。 借助 ebpftrace 我们可以非常简单、直观的找到泄漏的位置,而且非常灵活,自己决定其中的细节。 文中我构建了一 …
阅读全文bpftrace 也提供了常见的流程控制语句: 条件语句 循环语句 如果你熟悉 C 或者 Java,它们看起来会相当眼熟。 条件语句 bpftrace 的条件语句与 C 语言完全一样: 当满足条件时执行 A 处语句,否则 …
阅读全文bpftrace 无法定义函数,但提供了约 30 个内置函数,可以在 bpftrace 脚本的任意位置调用它们。这里介绍几个最常用的内置函数,完整的列表可以参考官方文档 …
阅读全文内置变量 无论 Dynamic tracing 或者 Static tracing,它们的目的都是监听特定函数调用事件,这些函数即可以在内核中,也可以在用户态的应用或者 lib 中。获知这些函数调用时的参数、返回值就已经 …
阅读全文ebpf 支持 hardware iter kfunc kprobe software tracepoint 以及 uprobe 等几大类探针,我们从最常用的应用场景:探测内核和应用函数调用入手。 dynamic …
阅读全文前文提到 bpftrace 的语法: bpftrace 语法深受 AWK 的影响, 前的部分相当于 AWK 的 condition, 中的部分相当于 AWK 的 action。只不过 bpftrace 执行 …
阅读全文市场长期将 CUDA 软件生态视为 NVIDIA 最深的护城河,但随着 Triton 等高级抽象编译框架的普及,底层硬件软件栈正在被“屏蔽”。竞争对手通过单卡算 …
1. DRAM与内存墙 2017 年,NVIDIA V100 搭载 HBM2 显存,带宽 0.9TB/s,峰值算力 125 TFLOPS。2023 年,H100 …
开发者通常为了提高内存使用效率,或者避免内存泄漏,需要将内存池化管理。稍复杂一点的系统,一般都会有自己的内存管理机制,我在研读源码的时候,比较习惯先看内存管理模 …
推荐书籍 这是我从大量算法书籍中精心筛选出来的,它 重视算法原理的理解, 用生动的例子替代晦涩的公式证明, 绘图也非常有趣, 对非专业开发者十分友好。 我的 …
封神?一点都不夸张! 如果对所有算法排位,傅立叶变换绝对可以封神。傅立叶变换有多牛?!相当于给人类安了第三只眼!基本上不是人类能搞出来的东西。凡人,准备 …