九维我操你爹
从 python-build-standalone 代码仓库真的能学到很多东西,包括当你在饲养一只庞大无比的 CI 怪兽时需要怎么扩建动物园……
三页 commits history 看下来感觉脑袋好痒,似乎要长脑子了……
(随便摘录几条 commit 出来:
Implement matrix sharding (#492)
Retry on transient failures during artifact upload (#486)
unix: call ulimit -n to avoid overheads (#468)
三页 commits history 看下来感觉脑袋好痒,似乎要长脑子了……
(随便摘录几条 commit 出来:
Implement matrix sharding (#492)
Retry on transient failures during artifact upload (#486)
unix: call ulimit -n to avoid overheads (#468)
又是一个被升级搞到失眠的夜晚
刚好 GitHub 通知收到了 mimalloc_rust 项目发新的 release 的通知,就顺着一路看下去,没想到这一趟收获不小:
首先惊讶地发现 mimalloc 已经在开发 v3 版本了。新版本的优化方向如下:
然后重新追了一下 mimalloc 将本地 patch 往上游 cpython 同步的进度,发现至少当前识别到的 patch 都移植完了,而且 Python 已经在 3.13 正式打包了 mimalloc
再一看https://github.com/astral-sh/python-build-standalone 这边已经显式地要求 3.13 以后所有的构建使用 mimalloc 了。扫了一眼 commit history,把看起来有点意思的 commits 都打开看了下,从下面这条 commit 注意到一件事:
https://github.com/astral-sh/python-build-standalone/commit/cddb9c19fcbb656b5cda420dcd6c3bf196e53beb (Disable unsafe identical code folding in BOLT)
稍微追了下上下文,明白了原来编译时指定 --icf=all 可能导致什么样的问题(简单来说这一优化其实违反了 C/C++ 的语言规范。规范中,取两个不同函数的指针必须得到两个不同的指针值。然而 --icf=all 会激进地把所有能合并的函数都合并了,所以不同地方的相同函数会取到相同的指针值
编译时指定 --icf=all 是很早以前就被提及的最佳实践了,我抄了很多年,没想到现在最佳实践又变了……现在就去把我指定过 --icf=all 的地方都找出来改了
刚好 GitHub 通知收到了 mimalloc_rust 项目发新的 release 的通知,就顺着一路看下去,没想到这一趟收获不小:
首先惊讶地发现 mimalloc 已经在开发 v3 版本了。新版本的优化方向如下:
This version simplifies the lock-free ownership of previous versions, and improves sharing of memory between threads. On certain large workloads this version may use (much) less memory.
然后重新追了一下 mimalloc 将本地 patch 往上游 cpython 同步的进度,发现至少当前识别到的 patch 都移植完了,而且 Python 已经在 3.13 正式打包了 mimalloc
再一看https://github.com/astral-sh/python-build-standalone 这边已经显式地要求 3.13 以后所有的构建使用 mimalloc 了。扫了一眼 commit history,把看起来有点意思的 commits 都打开看了下,从下面这条 commit 注意到一件事:
https://github.com/astral-sh/python-build-standalone/commit/cddb9c19fcbb656b5cda420dcd6c3bf196e53beb (Disable unsafe identical code folding in BOLT)
稍微追了下上下文,明白了原来编译时指定 --icf=all 可能导致什么样的问题(简单来说这一优化其实违反了 C/C++ 的语言规范。规范中,取两个不同函数的指针必须得到两个不同的指针值。然而 --icf=all 会激进地把所有能合并的函数都合并了,所以不同地方的相同函数会取到相同的指针值
Identical Code Folding (ICF) is a powerful optimization to reduce the size of a linker output. It merges functions that happen to be compiled to the identical machine code that behave exactly the same.
The downside of doing this is the optimization per se violates the specification of the C/C++ language specs. In these languages, taking pointers of two distinctive functions must result in two non-equivalent pointer values. However, if we optimize two distinctive functions into a single function, that resulting two pointers will have the same value.
编译时指定 --icf=all 是很早以前就被提及的最佳实践了,我抄了很多年,没想到现在最佳实践又变了……现在就去把我指定过 --icf=all 的地方都找出来改了
【“我的出租屋里真的有很多蟑螂,但我认识的粥批真的没有几个”-哔哩哔哩】
https://www.bilibili.com/video/BV155MSziEtM
怎么我刚入方舟没几天就火了这么一个新史🤡
笑得大半夜打鸣
https://www.bilibili.com/video/BV155MSziEtM
怎么我刚入方舟没几天就火了这么一个新史🤡
笑得大半夜打鸣
#TIL
サイリウム
⇒ サイリューム
⇒ ケミカルライトの商標名
⇒ chemical + light
「改造サイリウム」って、なんかカッコいいものかと思ったら、
またしても暗号を3回もかけた和製英語か……
もう勘弁してくれよ😩
https://fixupx.com/livedoornews/status/1934580465882579417
サイリウム
⇒ サイリューム
⇒ ケミカルライトの商標名
⇒ chemical + light
「改造サイリウム」って、なんかカッコいいものかと思ったら、
またしても暗号を3回もかけた和製英語か……
もう勘弁してくれよ😩
https://fixupx.com/livedoornews/status/1934580465882579417
Reddit 論壇上,r/DataHoarder 的社區擁有超 85 萬名成員,是一個十分活躍的社區。就像隨處可見的極客圈子,人們分享技術經驗,交流設備的利弊、如何提升效率;偶爾,這裏也會化身賽博懺悔室,容人們為近乎強迫的數據囤積行為告解。
「囤積病友」們共享着一個普遍的信念,即對第三方平台的不信任。就像把現金從銀行中取出塞到床板裏的人,為擺脫雲存儲等服務的不確定性,他們在家中堆棧出數據的山洞。對關鍵數據遵循 3-2-1 的備份鐵律── 3 個副本,2 種存儲媒介,1 份異地保存──以保證即便房子被大火燒燬,它們也不會丟失。
💻 但特朗普的就職帶來了比屋頂着火更混亂的危機:數據被直接清除了。「互聯網永遠不會忘記」的語錄,如今已經很難反映現實。手忙腳亂的搶救之後,人們亟需更清晰的認識,數據公開為何重要,它們的消失對社會有怎樣的影響?歡迎點擊連結,深入閱讀報導與分析,理解數據消失背後對民主治理和公共知識體系的衝擊。
https://theinitium.com/article/20250616-international-trump-data-erase
看完这篇文章,会立刻想放弃 Cursor 投入 Claude Code 的怀抱
https://www.anthropic.com/engineering/claude-code-best-practices
https://www.anthropic.com/engineering/claude-code-best-practices
「安くまずい米は、農業者にとって二重の自殺行為である」週刊誌記者が追及した“JAグループの深い闇”とは
記事はこちら↓
https://bunshun.jp/articles/-/79403
#清武英利 #農協 #文春オンライン
記事はこちら↓
https://bunshun.jp/articles/-/79403
#清武英利 #農協 #文春オンライン