Don’t settle for ‘make boot faster.’ It’s the wrong question to solve! The question to solve is ‘make boot fast’. ---LWN 2008
这段话强调了优化系统启动时的思维方式和目标。在 LWN 的 2008 年文章中,这句话的含义是:
“Don’t settle for ‘make boot faster.’ It’s the wrong question to solve!” 这里的意思是,不要仅仅想着让系统启动“变得更快一点”。因为这可能意味着仅做一些小的改进,而不是真正解决根本性的问题。你可能会因为一些微小的调整而得到些许的改进,但不会从根本上解决启动时间的问题。
“The question to solve is ‘make boot fast’.” 正确的问题应该是:如何让系统启动“变得快”。这个表述更注重结果,意味着从设计和实现上采取彻底的措施,使得系统启动速度整体提升。也就是说,要专注于系统的整体启动优化,找到每个可能延迟启动的瓶颈,从根本上解决它们,而不是仅仅依赖一些细小的改进。
总结来说,这段话强调了在系统优化时,应该有一个明确的最终目标(让启动速度变快),而不是仅仅想着不断调整来让它“稍微快一点”。只有这样,才能真正带来显著的性能提升。
还有一句话
通常情况下,让性能提升 10 倍比提升 10% 更容易。
虽然看上去好像不符合直觉,但其中的逻辑是这样的:
10% 改进的局限性:
提升 10% 通常意味着在现有系统或流程的基础上做一些小的优化。这通常会受到当前设计和结构的限制,意味着你只能进行小修小改,提升的幅度有限。 因为你试图保持现有系统的结构,所以每一项改进可能都变得很困难,收益有限。 10 倍提升的不同思维:
追求 10 倍的提升需要彻底重新设计整个系统或流程,不再拘泥于现有的框架和思维定势。为了实现巨大的提升,通常需要大胆创新和重大的结构性改变。 这种从零开始重新设计的思维可能会带来全新的解决方案,从而消除现有系统中的所有瓶颈。 举个例子: 假设你要优化一个启动流程来减少启动时间。如果只想提升 10%,你可能会在现有的步骤上做细小的改进,比如调整加载顺序或删除一些不必要的步骤,但效果可能有限。
而如果目标是让启动速度提高 10 倍,你可能会从根本上重新思考这个流程。比如,改变加载策略、并行化加载、甚至改变整个应用的架构设计,这样能实现从设计上对性能进行彻底的提升。
这句话的核心理念是强调“跳出框架,从根本上思考问题”的重要性。追求 10 倍的提升会促使你打破思维的限制,而不仅仅是依赖现有框架的小幅优化。
文档信息
- 本文作者:Lei Luc Shi
- 本文链接:https://lucshi.github.io/2024/01/01/opt-commonsense/
- 版权声明:自由转载-非商用-非衍生-保持署名(创意共享3.0许可证)
