猫眼影戏
猫眼影戏
熊涛
手机审查
猫眼影戏记者 周晶晓 报道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日,中国创新创业大赛颠覆性技术创新大赛在大连开赛 展示未来材料领域发展潜能,
石村众人听到最后全都恼怒,这太太过了,弱小就这般没有职位吗?连招呼一声、连询问一句都没有,这是赤裸裸的蔑视。
,欧美XXXX做受欧美69,www.黄色网页久久,免费的黄色网站、。。??时势2:射黄网站在线观看免费
??12月30日,台湾艺人黄子佼被查持有未成年性影像 一审获刑8个月,
狻猊恐惧了,一直的颤抖,此后被瓦解,黑鼎将其炼化成一道道金色的神性光束,没入鼎内的金色浆液中。
,亚洲日韩被 到爽 黑料,欧美一级人爱视频18,最新国产潮吹手机在线视频网。??12月30日,2024东亚文化之都青少年宁波交流活动收官 共绘“海丝繁花”,
“好孩子,你是娘的自满。以后以后,没有人可以阻挡你的脚步,这片大地都将在你的脚下颤抖!”少妇激动无比,抱着石毅的一条手臂,脸上写满了欢喜,眸子中的光线火热无比。
,羞羞网站,大屄A片,九九视频在线观看黄片。??时势3:美女扒开胸露出奶头亲吻图片
??12月30日,河南宝丰:瓦斯治理先进装备助力矿井安全生产,
这块莹白的骨头堪称瑰宝,纪录了无限神秘,有符文的实质,有远古凶兽与神灵对决的刻图,一切都从原始之处入手。
,爱搞在线播放,午夜福利温泉下的母孑,成人看片软件。??12月30日,新疆,“马”上作为,
千斤巨石横空,砸落而下。
,www.九久久,欧美色图 亚洲视频 国产,色妞一区二区在线播放。??时势4:胡桃裸体秘 无遮挡奶
??12月30日,王毅:中国已成为动荡世界中的稳定力量、合作力量、进步力量,
石毅现在快十岁了,必定已经名动皇都。
,性交A级久久,簧片网站在线看,yy6029。??12月30日,张帅/斯尼亚科娃勇夺广网女双冠军,
不可以,无罪释放可以申请国家赔偿。有下列侵监犯身权情形之一的,受害人有取得赔偿的权力:违反刑事诉讼法的划定对公民接纳拘留步伐的,或者遵照刑事诉讼规则定的条件和程序对公民接纳拘留步伐,可是拘留时间凌驾刑事诉讼规则定的时限,其后决议作废案件、不起诉或者讯断宣告无罪终止追究刑事责任的等。 无罪释放后还可...
责编:邵新涯
审核:冯媛
责编:王永涛
Copyright (C) 2001- dzwww.com. All Rights Reserved
新闻信息效劳允许证 - 音像制品出书允许证 - 广播电视节目制作谋划允许证 - 网络视听允许证 - 网络文化谋划允许证
山东省互联网传媒集团主理 联系电话:0531-85193202 违法不良信息举报电话:0531-85196540
Copyright (C) 2001- Dzwww 鲁ICP备09023866号-1