2025
- 20 Mar dispatch、post 和 defer
- 11 Mar [演讲笔记] 结构化并发与协程实践
- 05 Mar [演讲笔记] 飞快地解析 JSON
- 14 Feb ClickHouse 的 SIMD UTF-8 验证实现
- 13 Feb ClickHouse 的 inline memcpy 实现
- 09 Feb 一种没用的跳转判断优化算法
- 08 Feb 一种简单的查找优化算法
- 17 Jan 尝试 io_uring 低层接口编程
2024
- 04 Dec Linux/UNIX 的信号机制拾遗
- 26 Nov 适配 io_uring 异步函数到 C++26 std::execution
- 28 Sep Swiss table 源码分析
- 16 Sep C++ 的 std::simd 使用
- 31 Aug 使用 GenMC 检验 C/C++ 内存模型
- 07 Aug 浅读 perfbook:如果并行编程很难,那我能做点什么?
- 03 Aug [快速笔记] 抢占调度和 nvcsw/nivcsw
- 18 Jul [快速笔记] 打开文件优化:LOOKUP_CACHED
- 14 Jul Linux 内核的 io_uring 任务调度
- 06 Jul Linux 内核的 ftrace 实现思路
- 25 Jun 一些 IO 指标的跟踪点
- 16 Jun [翻译] eBPF 的工作原理
- 05 Jun 实现一个内核态的 web server
- 21 May 使用 packetdrill 观测 Linux 内核的 TCP 状态转移
- 14 May 使用 packetdrill 观测 Linux 内核的 TCP backlog
- 03 May Asio 的 io_context 任务调度
- 27 Apr 实现一个短至 200 行的 io_uring 协程
- 18 Apr 实现一个 zip (for C++20)
- 08 Apr [草稿] Linux 内核的内存回收机制
- 02 Apr 一些硬件特性对程序性能的影响
- 13 Feb [快速笔记] proc 文件系统的 pid 细节
- 06 Feb C++ 的类型双关和隐式生存期
- 31 Jan C++ 的定制点设计
- 24 Jan 浅谈系统性能的工作流
- 23 Jan 浅谈系统性能的基本理论
- 22 Jan [论文阅读] A Top-Down Method for Performance Analysis
- 12 Jan 使用 LLVM-MCA 进行静态性能分析
- 10 Jan 使用 remake 正确地调试 Makefile
2023
- 24 Dec 从 C++20 协程,到 Asio 的协程适配
- 03 Dec [论文阅读] Earliest Eligible Virtual Deadline First (EEVDF)
- 30 Nov 实现一个布谷鸟过滤器
- 19 Nov 浅谈 C++ 内存模型
- 05 Nov [论文阅读] Mimalloc: Free List Sharding in Action
- 29 Oct [翻译] C++ Execution:从零开始的 Sender/Receiver
- 20 Oct [翻译] 为什么 C++20 是最 awesome 的网络编程语言
- 10 Oct F2FS:通过 Linux 内核源码了解文件系统实现
- 03 Oct F2FS:通过 mkfs.f2fs 源码了解文件系统实现
- 28 Sep [论文阅读] F2FS: A New Filesystem for Flash Storage
- 10 Sep [快速笔记] Linker Script 与 vmlinux.lds
- 22 Aug RFC5681 笔记,以及 TCP Tahoe、TCP Reno 算法细节
- 14 Aug RFC6298 笔记:RTO 计算和定时器维护
- 31 Jul ELF 符号:复杂又麻烦的技术细节
- 05 Jul [论文阅读] MMAP = 💩
- 03 Jul Linux 内核的 blk-mq(Block IO 层多队列)机制
- 30 May 实现标准库 unified executors [C++20 低配复刻版]
- 19 Apr Linux 内核的 meminfo
- 10 Apr AOSP 的进程管理
- 23 Mar 从无栈协程,到 Asio 的协程实现
- 02 Mar 反汇编调研 this offset 和 vtable thunk
2022
- 08 Dec Linux 内核的 CFS 任务调度
- 22 Aug 实现一个 raft 协议
- 22 Jul 实现一个 RPC 轮子
- 28 May 实现一个简单的协程
- 12 May 浅谈 x86 特定体系下的并发
- 07 May Linux 内核的 mm 物理内存管理
- 13 Apr [草稿] ptmalloc 的一些参数
- 07 Apr [论文阅读] Scaling Memcache at Facebook
- 20 Feb CSAPP 第七章笔记:链接过程
- 11 Feb Linux 内核的 deadline elevator
2021
- 07 Dec libstdc++ 的容器实现
- 23 Oct Linux 内核的 VFS 简单流程
- 06 Sep 海猫鸣泣之时推理小剧场
- 30 Aug Linux 内核的 IO 预读算法
- 30 Jul 使用 CRTP 实现编译期接口定义
- 18 Jul 像位运算一样构造 tuple
- 01 Jul 实现一个比 glog 快十倍的日志库
- 14 May [逐渐变态] 实现编译时排序
- 21 Mar Linux 内核的 epoll 实现
- 02 Mar 浅谈侵入式容器
- 16 Feb C++ 的 std::sort 流程分析
- 20 Jan 实现一个 variant
2020
- 06 Dec 定时器的简单讨论
- 07 Nov 通过滑动窗口来优化 vector
- 21 Sep 十行以内实现一个 defer
- 29 Mar 数据库存储引擎的实现
- 27 Jan 局部敏感的哈希——SimHash
- 31 Dec 一些经典互斥算法的实现
2019
- 28 Dec 高维前缀和笔记
- 27 Dec 非常简洁的 shift-and / shift-or 教程
- 26 Dec 非常简洁的无旋 Treap 教程
- 24 Dec 红黑树的简易实现
- 22 Dec A*解决 K 短路
- 16 Dec 非常简洁的回文树教程
- 10 Dec KMP / exKMP / AC 自动机教程
- 09 Dec 非常简洁的后缀自动机教程
- 09 Dec [感性认识] 网络流中反向边的正确性
- 04 Dec 非常简洁的后缀数组教程
- 27 Nov 《巫师 3》开场旁白
- 14 Nov [无用知识] C/C++ 整型类型的一些历史细节
- 23 Oct PSYCHO-PASS 台词摘录
- 04 Jul FFT 推导过程
- 27 Jun PAXOS 小记
- 16 Mar Head First 设计模式学习笔记
2018
- 04 Dec 2018Nanjing - D 模拟退火
- 19 Oct 2018 青岛网络赛 G - Couleur 区间上的启发式合并
- 09 Sep 2018 徐州网络赛 - Trace
- 09 Sep 2018 沈阳网络赛 - Ka Chang KD 树暴力
- 17 Aug HDU - 4630 离线处理区间点对问题
- 16 Aug HDU - 6133 启发式合并
- 12 Aug Luogu - P3384 树链剖分模板
- 12 Aug BZOJ - 3166 可持久化 Trie 维护次大区间
- 12 Aug BZOJ - 2741 分块维护最大连续异或和
- 11 Aug ZOJ - 3649 树上倍增
- 10 Aug Codeforces - 24D 有后效性的 DP 处理
- 06 Aug POJ - 1821 单调队列优化 DP
- 05 Aug HihoCoder - 1513 bitset 处理五维偏序
- 20 Jul POJ - 1741 点分治 详解
- 20 Jul 2018 牛客多校 2 - J farm 随机乱搞/二进制分组
- 19 Jul SPOJ - COT 路径构造主席树
- 18 Jul ZOJ - 2112 主席树套树状数组
- 18 Jul HDU - 4866 主席树 二分
- 02 Jun BZOJ - 3555 哈希拼接
- 30 May HDU - 5306 剪枝的线段树
- 20 May Codeforces - 527C 平衡树维护几何
- 16 May SPOJ - COT2 离线路径统计
- 16 May POJ - 1990 区间贡献计算
- 12 May BZOJ - 4520 K 远点对
- 12 May BZOJ - 3489 KD 树 范围计数 空间思维转换
- 02 May SGU - 507 启发式合并维护平衡树信息
- 02 May Codeforces - 600E 树上启发式合并
- 02 May Codeforces - 570D 离散 DFS 序 特殊的子树统计
- 01 May SPOJ - FREQ2 莫队
- 30 Apr Wannafly 挑战赛 14 - E 并查集维护线性基区间
- 30 Apr BZOJ - 2115 独立回路 线性基
- 24 Apr 51nod - 1163 巧妙的并查集 O(1) 维护区间
- 22 Apr CodeChef - RIN 最小割应用 规划问题
- 22 Apr BZOJ - 1458 / P4311 最大流应用 贪心
- 20 Apr ZOJ - 2676 01 分数规划 浮点 ISAP
- 19 Apr Codeforces - 914F bitset 维护字符串匹配个数
- 07 Apr 18 华工校赛 - 小马哥的超级盐水 折半枚举
- 04 Apr UVALive - 3942 左儿子 trie DP
- 03 Apr UVA - 10817 状压 DP
- 26 Mar HDU - 1525 博弈 暴力分析
- 20 Mar ZOJ - 3632 DP 单调优化
- 17 Mar UVA - 10589 构造最优化函数
- 25 Feb 夜深人静补数学
- 24 Feb 树上启发式合并 初步
- 24 Feb SPOJ - REPEATS RMQ 循环节
- 23 Feb URAL - 1297 后缀数组的做法 LCP 应用
- 22 Feb [八分之一的男人] POJ - 1743 后缀数组 height 分组
- 20 Feb UVA - 11029 输出前三位
- 20 Feb Codeforces - 71E 状压 DP
- 19 Feb CodeChef - NWAYS 组合数 朱世杰恒等式
- 17 Feb POJ - 3233 矩阵套矩阵
- 17 Feb HDU - 4686 函数积的前缀和
- 17 Feb HDU - 1588 矩阵前缀和
- 14 Feb HDU - 2604 矩阵快速幂 字符串递推 两种解法
- 14 Feb HDU - 2256 矩阵快速幂 带根号的递推
- 13 Feb BZOJ - 1257 分块 详解
- 09 Feb POJ - 1456 贪心 堆常用操作 注意细节
- 07 Feb BZOJ - 4260 01 字典树 + 前后缀
- 03 Feb BZOJ - 2457 思維 + 貪心
- 01 Feb HDU - 4699 对顶栈
- 31 Jan POJ - 2018 二分 + 单调子段和
- 30 Jan POJ - 3263 差分 + 前缀和
- 30 Jan POJ - 1845 约数和
- 27 Jan BZOJ - 2157 树链剖分 + 线段树
- 26 Jan BZOJ - 1013 高斯消元
- 26 Jan BZOJ - 1003 DP + 最短路
- 25 Jan 线性筛小总结
2017
- 17 Dec 简易随机数
- 11 Dec POJ - 1080 枚举 / DP
- 08 Dec Codeforces - 722C 区间合并
- 04 Dec UESTC - 1437 LCA 模板
- 28 Nov Codeforces - 316C2 棋盘模型
- 27 Nov UVALive - 3645 时序模型
- 27 Nov UVA - 11082 行列模型
- 25 Nov 网络流模板
- 25 Nov Codeforces - 321B 最大费用流
- 23 Jul 高精度模板
- 05 May DX12 Chapter6 人肉机翻
- 01 May DX12 Chapter4 人肉机翻