JVM 优化之旅:一场与 VarInt 的意外邂逅

2025-07-25

作者在大型分布式数据处理平台上进行 Java 优化时,发现 VarInt 编码是一个潜在的优化点。他编写了一个使用 SIMD 指令集的超高性能 VarInt 编码器,在基准测试中实现了 4 倍的加速。然而,令人意外的是,在生产环境中,优化效果却消失了。原因是基准测试使用了随机数,而实际应用中的数字大多较小,优化算法在最坏情况下的优势在实际场景中微不足道。最终,作者回滚了更改,但这为 JVM 定制优化提供了宝贵的经验。

阅读更多

动态规划:并非你想象的那样

2025-07-21

“动态规划”一词在算法学习中常常令人困惑。“动态”并非指其变化性,而是指“编程”的计划性含义,源于上世纪50年代工程师规划建筑项目的“流程安排”。动态规划在计算机科学中指解决问题的子步骤顺序规划,例如计算斐波那契数列,其“程序”即为按依赖顺序计算fib(2)到fib(10)的步骤。这可以自顶向下或自底向上规划,最终计划一致,皆为动态规划。Richard Bellman创造此名词时,为了避开国防部长对“数学研究”的厌恶,巧妙地选择了“动态编程”,因“动态”一词无法用于贬义。

阅读更多
开发

Linux内核词频分析神器

2025-06-16

一个网站利用强大的搜索引擎,分析Linux内核源码中单词、人名、函数等出现的频率。用户可以输入关键词(支持通配符和正则表达式),查看结果。网站还提供交互式图表(需启用JavaScript),直观展示分析结果。这对于研究Linux内核,或理解其代码结构都非常有帮助。

阅读更多
开发 内核分析