首页
新智元报道
编辑:倾倾
【新智元导读】许多人背着「过早优化是万恶之源」的名言,写出的却是随处漏风的代码。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
?点赞、转发、在看一键三连?
点亮星标,锁定新智元极速推送!
《a亚洲A片视频网》,《Q8X2R7L1T4J5M9B6W3》免费国产日逼
“亚洲a级黄片免费观看”
强奸一级毛片在线
……
12月29日
“好大好深好猛好爽好湿视频”可卡因教母格丽塞尔达
↓↓↓
12月29日,广州:华南国家植物园落羽杉进入最佳观赏期,国产污视频在线,一级片黄色,欧美性交大全,国产三级电影网
12月29日,肯尼亚内阁首席部长兼外长穆达瓦迪将访华,做爰XXXⅩ性生交,91在线制服丝袜亚洲一区,强制张开双腿让尿孔喷水,日夜夜人人操人人操
12月29日,4月22日央行开展20亿元7天期逆回购操作,性高潮喷水视频,PornoHD.886老婆,Ryanconner丰满大屁股,嫖妓露脸超清对白正在播放
12月29日|雷士照明点亮三亚体育中心,助力少数民族运动会圆满举办|黑人狂躁日本艳妇A片软件下载|亚洲天堂在线综合|黄a视频亚洲|美女跪床 被 网无病毒
12月29日|海南首度向香港、澳门供应绿电|原神甘雨被盗宝团俘虏|国产亚洲一级毛片|天天操有精品|免费福利在线看黄网站
12月29日|山东滨州:城市公交突围记|大波美女视频一级A片|白鹿丝袜脚玩我下面好爽|星野鱼哥|欧美性爱YY特黄特黄免费大片……
12月29日,(身边的变化)山西高平:盘活民众“生活圈” 托起民生“幸福梦”,www henhenai,黄片毛色,HD╳╳,色色色色色色免费视频
12月29日,东莞—香港国际空港中心进出口货值突破100亿元,女生高潮喷水视频,15-91-6147,2020国内精品久久久久精免费,美女裸体黄A一级视频免费
12月29日|联合国防治荒漠化公约大会中国馆开馆|imgb秦嘉倪|久久久综合|破苞 娇小 69外|中国黄片
12月29日,“碳”路先行|山东港口青岛港如何“氢”装上阵?,国产农村盗摄视频,jizz国产黄色视频,xxxxxcum,丁香五月婷婷爱
12月29日,美国又现“血腥周末” 枪案频发造成近30人伤亡,性爱网址入口,俄罗斯全黄无码,亚洲av无码秘 蜜桃有贺由爱,a啊v免费在线视频
12月29日,助力亚冬会 哈尔滨机场开通“国际航班国内段”业务,女同互慰免费漫画网站,97人人干,人人操,锁住AV,娇小白嫩的×XXx性英
12月29日|福建向金门供水六周年 累计供水逾3500万吨|欧洲欧美一区|AVwww在线|汤唯被揉到高潮下不了床|欧美娇小性爱
12月29日|厦门港“丝路海运”航线船舶开行突破1万艘次|欧美a在线观看视频|岛国. com|日本变态吮乳吃奶虐乳|人人天堂av
12月29日|国际识局:这一年,超6万吨核污染水入海,仅是冰山一角?|国产全黄A一级毛片视频首页|黄wwwww|女生逼逼视频|扣出白浆
混合泳 袁昊然,160斤女生当模特全身散发着自信|发朋友圈前,你会犹豫吗?|日韩欧美在线小视频|污污污的网站|www.人人操.con|jiuse网站
监制:邓金木
策划:赖晗
主创:唐征宇 林箴贺 陈佛烘 颜亦阳 陈林韵
编辑:王家菁、段圣祺
小微企业如何穿越周期?
成都天府国际机场首次开通国际通程航班业务
两会受权发布丨十四届全国人大二次会议主席团举行第三次会议
豫鲁苏皖等地部分地区有大雾 西南地区东部江南等地有小到中雨
道中华丨让世界看到中国的美
市场监管总局发布《防范外卖餐饮浪费规范营销行为指引》
哈尔滨-布拉戈维申斯克航线成功首航
朝中社:韩国无人机“入侵平壤”?朝鲜公布最终侦察结果
2023年前11个月 全国健全完善规章制度1.6万多项
台湾花莲县海域发生4.5级地震 震源深度15千米
操大B
91AV免费在线
高中生破处在线观看
全部毛片网站
日韩一区二区视频在线播放
邪恶漫画无遮挡
美妇的秘密小东小说
梅花十三裸身被 羞羞
国内综合无码在线
炮阁导航

闽公网安备 35010302000113号