猫眼影戏
猫眼影戏
付莉婷
手机审查
猫眼影戏记者 田武雄 报道Q8X2R7L1T4J5M9B6W3
新智元报道
编辑:倾倾
【新智元导读】许多人背着「过早优化是万恶之源」的名言,写出的却是随处漏风的代码。Google传奇Jeff Dean的这份条记破了真相:性能不是最后调出来的,而是你在选第一个容器、敲第一行代码时,就已经注定的物理下场。
2025年,是个很容易让人爆发错觉的时间点。
这时算力不再稀缺,云资源随叫随到,AI已经能写出准确无误的代码。
在这样的情形里,「性能」似乎正在悄悄贬值。由于代码写得慢一些,似乎也没什么大不了。
就在这种气氛下,Google的传奇工程师Jeff Dean更新了一份老文档:Performance Hints。
比起一篇炫技的论文,它更像是一份老派工程师的随笔,内里重新整理了基础规则。
它重复重申一个事实:盘算机底层的物理规则,从未由于云原生、AI或硬件的前进而改变。
硬件的前进掩饰了代码的低效,这些问题会在系统中一直群集,直到成为无法绕开的本钱。
「过早优化」,成了平庸代码的宽免权
所有工程师都听过一句老话:
Premature optimization is the root of all evil.(过早优化是万恶之源)。
它原本是提醒我们,别为了抠几行代码,把系统搞成一团乱麻。
但在实践中,这句话逐步变了味,成了一个免责口令——只要遇到性能质疑,一句「别过早优化」就能把所有问题挡回去。
效果走向了另一个极端:写代码时,性能被整体忽略。笼统可以多一层,数据可以多拷贝一次,API可以写得更「通用」。
瑞士奶酪模子:单个小误差没事,可是一层层叠加,对齐了会出大事
各人总以为未来有profiler,等真慢下来再说。
可等系统上线,流量涌入,响应最先变拖沓,各人终于翻开性能剖析图,却发明屏幕上什么都没有。
没有一个函数占掉40%的时间,没有显着的性能热门。你看到的只有一张异常平展的火焰图——每一层都慢一点,每一个看似无关紧要的选择,都给未来埋下隐患。
你很难指出那里出了错,由于问题从一最先就没有集中泛起——这正是Jeff Dean重复强调的一种模式。
性能不是被某个过失决议拖垮的,而是被一连串「看起来没问题」的决议逐步稀释掉的。
一旦走到这一步,优化会变得异常腾贵,由于你失去了明确的下手点。
所谓「要害的3%」,指的历来不是写完代码后再去抠字眼,而是在写第一行代码时,就要避开那些虽然利便、但显着低效的路径。
这不但是技巧,更像一种素养。真正拉开差别的地方,往往爆发在profiler还没派上用场之前。
5ns和5ms之间,隔着整个物理天下
若是说前面的区别爆发在「已经来缺乏了」,那么接下来要说的是:「为什么我们会在一最先就走错路」。
事实上,许多工程事故并不是由于「不会优化」,而是由于对「慢」没有感受。
在编辑器里,5ns和5ms看起来只是多了几个0。缩进一样,语法一样,在Code Review时看起来合理合规。
但在物理天下,这些数字基础不属于统一个标准。
Jeff Dean在清单里列出了一张延迟比照表。一旦把这些数字还原成现实中的时间,许多所谓的设计直觉会就地崩塌。
L1缓存掷中:约0.5ns,即是微观天下里的一次脉搏。
分支展望失败:5ns,是一连十次脉搏。
主存会见:50ns,相当于起个身,走下楼,取了个外卖。
随机磁盘寻址:10000000ns,相当于从北京一起走到了上海。
最早由Google工程师整理,Jeff Dean在多次演讲中用过这个思绪
若是你的计划里泛起了一次磁盘寻址,后面无论代码写得多优雅、逻辑多漂亮,在物理标准上都已经输透了。
这就是顶级工程师脑子里的「物理地图」。他们本能地知道:哪些操作属于统一量级,而哪些操作一旦混进来,系统的节奏就彻底乱了。
这也是「信封背面估算」(Back-of-the-envelope calculation)的价值所在。
它是一次下手之前的排查:这个计划会触发几多次内存会见?有没有隐藏的分派?循环里会不会撞上网络IO?
若是谜底里泛起了一个不适时宜的量级,这个计划就应该被扔进垃圾桶。
许多性能问题并非「实现得不敷好」,而是选错了路径。
一旦建设起这种标准感,许多无意义的争论就能一眼看透。
反直觉的真相:Google大佬的代码为什么看起来很「土」?
真正拉开差别的地方,不在于「写得多智慧」,而在于知道哪些地方「不值得智慧」。
掀开这份Performance Hints,我们能发明一个反直觉的事实:没有重大的算法,许多改动看起来都有点「土」。
但这些细碎的选择,却被Jeff Dean重复拿出来强调。
对内存的控制
「标准感」让我们意识到分派内存的珍贵,在实战中,这种意识会转化成对容器的极致考究。
为什么他们偏幸InlinedVector?由于在绝大大都场景下,它基础不碰堆内存,数据直接躺在栈上。
这带来的是实着实在的物理收益:少一次分派,多一次缓存掷中。
同样的,使用Arena(内存池)也不但是为了治理利便,而是为了让数据在物理内存上变得一连,顺应CPU缓存的节奏。
对数据漫衍的尊重
所谓的Fast Path(快路径),实质上是认可天下是不匀称的。99%的请求和输入都比想象中通俗。
若是坚持让每一次挪用都走那条「最通用、最包管」的路,现实上是在用少少数的边沿情形,绑架绝大大都的正常流量。
清单里提到的UTF-8处置惩罚就是一个典范:现实中大宗字符串着实只有纯ASCII字符。
若是一上来就按完整的剖析逻辑走,那每一个字节都在为万分之一的极端情形买单。
看一眼,是ASCII就直接放行——这种行为,建设在对数据纪律的尊重之上。
对笼统本钱的自觉
清单里举了个例子:把Protobuf逻辑改成原生结构体,性能提升20倍,让许多人担心。
Protobuf确实解决了跨语言和版本演进的难题,但便当从不是免费的,每一层封装、每一次剖析,都是一笔隐藏的「笼统税」。
就像在透支信用卡,你可以恣意购物,可一旦账单寄来,就要支付响应价钱。
笼统并不会消逝,只是被编译器睁开,最终落实到一行行详细的实现上。
当笼统层数一直叠加,本钱也会在底层被一并兑现。
这就是为什么他们建议在热路径里避开不须要的层级、避开那些「为了完整而完整」的设计。
目的是让你清晰地意识到,你究竟在为什么付费。
顶级工程师体贴的,历来不是怎样写出最智慧的代码,而是怎样阻止那些本不应泛起的开销。
当你在敲键盘时,能对分派、漫衍、笼统本钱坚持小心,许多性能瓶颈在爆发之前,就已经被挡在了门外。
想提高性能,就不可对价钱置若罔闻
许多人把性能明确成一种阶段性的事情:系统慢了,就最先优化;不慢,就先放一边。
但读完这份清单,你很难再这样看待它。
Jeff Dean们重复强调的,着实不是「怎样省下几纳秒」,而是「你是否真正明确自己正在使用的盘算资源」。
CPU、内存、缓存、磁盘......这些底层的物理纪律并没有由于云原生或AI的盛行而消逝,它们只是被包装得更笼统了。
顶级工程师之以是显得从容,是由于他们很少走到「火场」里:在写第一行代码时,他们就已经避开了那些注定腾贵的路径。
这份Performance Hints读起来不像教程,更像是一份肌肉影象。它不要求你随处极限优化,而是要求你在做决议时,不要冒充不知道价钱。
也许真正的分界线一直是——当你写下一个循环、设计一个数据结构、决议要不要多加一层时,脑海中是否浮现出那张时间和标准的地图。
一旦有了它,许多平庸的代码,你就再也写不下去了。
参考资料:
https://x.com/JeffDean/status/2002089534188892256?s=20
秒追ASI
?点赞、转发、在看一键三连?
点亮星标,锁定新智元极速推送!
??时势1:亚洲无吗
??12月30日,考古题材纪录片:讲述中华文明的精彩故事,
“哈哈,它哪天不闯一再祸,真不知道它怎么会这样能吃,小肚子就像无底洞般。”
,看欧美性爱最黄性交网站。??12月30日,广西深化重点领域改革 让经营主体大胆闯、放手干,
“快脱手,万不可让他乐成!”
,欧美激情国产乱码伦,超碰五月天,操到喷水视频。??时势2:黑人巨鞭躁女学生
??12月30日,赵乐际会见尼泊尔总理奥利,
金毛狮子挥舞尖锐的大爪子,“啪”的一声拍在了上面,马上火星四溅,巨石滚落了出去。
,一级黄一级片一级黄色影片久久,久久精品久久久久久噜噜老黄,欧美 不卡 在线。??12月30日,【在希望的田野上】抢抓农时 各地做好春耕春管,
黄昏,一群孩子上岸,偷偷摸摸,而毛球更是贼头贼脑,藏在草丛中张望。
,亚洲,国产,欧美一区二区,豆包成人版,一级性爱乱伦视频。??时势3:人人摸人人操碰
??12月30日,【光明论坛】坚持守正创新 不断取得改革新突破,
“小弟弟还怕羞啊,真可爱。”为首的女子轻笑,眸波流转,睫毛颤抖,俏脸皎洁晶莹,闪灼着感人的光泽。
,18禁巨乳美女在线操,520886·新疆版,宝宝握住它坐下自己动头~。??12月30日,RCEP全面生效一周年 外贸企业享惠水平持续提升,
熊孩子对神没有惧意,更谈不上敬畏,凶残的嚷着,稚嫩的小脸上带着一点小寻衅,就像小时间招惹村中的大黄般。
,美女的拉屎隐私秘 网站,天天干天天干天天日,91在线午夜福利一区二区。??时势4:在线观看无遮挡网址
??12月30日,大金砖为全球发展注入新动力,
“不起作用啊。”众人叹息,同时有些畏惧。
,日韩久久爱,人人干女人,亚洲国产精品无码尤物一区。??12月30日,云南省人大环境与资源保护委员会原副主任委员杨健被查,
此后,柳枝快速伸张,冲向高天,要将那凶蛟洞穿!
,贱狗vk,玩小处雏男av网站,龙卷被 黄漫扒衣。【“五一”假期广州接待游客近1104万人次】
【亿缕阳光|非遗“出海”】
责编:尹庆德
审核:梁荣忠
责编:许添财
Copyright (C) 2001- dzwww.com. All Rights Reserved
新闻信息效劳允许证 - 音像制品出书允许证 - 广播电视节目制作谋划允许证 - 网络视听允许证 - 网络文化谋划允许证
山东省互联网传媒集团主理 联系电话:0531-85193202 违法不良信息举报电话:0531-85196540
Copyright (C) 2001- Dzwww 鲁ICP备09023866号-1