跳至主要內容
Agchub Agchub

k=0 給七位、k=1 打穿雙精度:拉馬努金級數的每項帳,與圓周率運算七十五年的成本曲線

從每項貢獻八位小數的收斂規格出發,拆解拉馬努金級數背後的數論結構,並檢視圓周率位數紀錄從ENIAC到雲端時代七十五年放大十的十一次方的計算成本與硬體行銷邏輯。

/ 編輯部 #高效能運算#技術演進#成本結構
k=0 給七位、k=1 打穿雙精度:拉馬努金級數的每項帳,與圓周率運算七十五年的成本曲線

把 k=0 那一項單獨取出來算,1/π ≈ (2√2/99²)×1103,倒數回來是 3.14159273,前七位與圓周率一致。補上 k=1,誤差壓到 10⁻¹⁶ 量級,多數計算機與雙精度浮點的 15 至 16 位有效數字就此用盡。知乎上這則提問掛了十年上下,提問者形容那些數字「跟圓周率風馬牛不相及」。這份驚嘆其實可以折算成一條規格:級數相鄰兩項的比值趨近 (1/99)⁴ ≈ 1.04×10⁻⁸,取十進位對數,每一項穩定貢獻約 8 位小數。一條 1914 年發表的手寫級數,放到今天的運算產業裡看,是一份單項產出明確、係數體積固定、只需大數乘法就能實作的工程配方。

收斂速度是這條公式唯一的規格

計算圓周率的歷史,先是一部每單位投入換取多少位數的效率史。西元前 250 年前後,阿基米德以 96 邊形夾出 3.1408 < π < 3.1429,誤差在小數點後兩位。幾何逼近的產出速率被死鎖:邊數每加倍,誤差約縮為四分之一,換算下來每次加倍只多 0.6 位。南北朝的祖沖之把區間壓到 3.1415926 與 3.1415927 之間,七位結果保持近千年,直到 1424 年阿爾卡西(al-Kashi)以 3×2²⁸ 邊形推進到十六位。在人力與紙筆的時代,每多一位小數的邊際成本以幾何級數上漲。

級數方法把成本曲線壓平。1706 年梅欽(John Machin)用 π/4 = 4arctan(1/5) − arctan(1/239) 手算出 100 位,arctan 展開式每項貢獻約 1.4 位。1949 年 ENIAC 花了 70 小時算出 2,037 位,用的仍是梅欽型公式,位數瓶頸由機器接手,公式規格沒變。

真正的世代跳躍有兩個節點。1976 年,Salamin 與 Brent 各自把高斯的算術幾何平均數(AGM)整理成演算法,收斂階從線性跳到二次,每一輪迭代位數直接翻倍。1985 年前後,Jonathan Borwein 與 Peter Borwein 補齊拉馬努金路線的完整證明,同批研究還產出更高階的迭代式。此後級數家族的篩選標準只剩一項:每一項、每一輪,產出多少位。

列出五種圓周率計算方法的收斂效率比較,從古希臘幾何逼近每次加倍僅零點六位,到 Chudnovsky 級數每項十四點一八位的效率階梯

99、396 與 1103,全部由 d=58 決定

那串看似隨機的常數,來源是橢圓模函數與複乘理論。對每個無平方因子的正整數 d,虛二次域 Q(√−d) 決定一族奇異模,其類多項式的根與 e^(π√d) 的值異常貼合。取 d=58,e^(π√58) ≈ 24,591,257,751.9999998,與 396⁴ = 24,591,257,856 只差約 104,相對落差 4×10⁻⁹。級數裡的 99、396(等於 4×99)、1103 與 26390,全數由 d=58 的類數結構給出。k=0 單項就有七、八位精度的來源,正是這個「幾乎整數」現象的級數化。

1988 年,Chudnovsky 兄弟把同一套機制換到 d=163。e^(π√163) 與整數 262,537,412,640,768,744 只差 0.75×10⁻¹²,對應的新級數以 640320³ 為公比,每一項貢獻 14.18 位。d 越大,每項產出越多,但常數的位數體積同步膨脹,實作上 d=163 已接近甜點。這是一場由數論結構固定供給的技術選型:換檔不必投入研發預算,只需在每項位數與係數維護成本之間做取捨。

統計圖卡呈現拉馬努金級數相鄰兩項比值趨近九十九的四次方分之一,換算後每項固定貢獻約八位十進位小數

紀錄競賽的記帳本:從公寓自組機到雲端帳單

1985 年,Gosper 在一臺 Symbolics Lisp 機器上用拉馬努金級數算到 17,526,200 位,這次計算同時完成公式驗證:若級數有誤,結果會與既有位數矛盾。1989 年起,Chudnovsky 兄弟先靠大型主機時間推到 4.8 億位,1991 年再以紐約公寓裡郵購零組件組裝的 m-zero 機器跨過 20 億位。兩人自行設計硬體、撰寫軟體,把受限制的資本全數換成位數,是垂直整合的極端樣本。

之後的帳本轉由機構與企業記帳。1999 年,金田康正團隊用日立 SR8000 在 37 小時內完成 2,061 億位;2002 年同一系列主機以約 600 小時跨過 1.24 兆位。2009 年 Bellard 用一臺桌上型電腦、約三個半月,算到 2.7 兆位。2019 年 Google 的 Emma Haruka Iwao 在 Google Cloud 上以 121 天算到 31.4 兆位;2022 年同一團隊再以 158 天推到 100 兆位。2024 年 StorageReview 以 AMD EPYC 9654、1.5 TB 記憶體與約 1 PB 的 NVMe 儲存,寫下 202 兆位。

把 1949 年的 2,037 位與 2024 年的 2.02×10¹⁴ 位相除,七十五年放大約 10¹¹ 倍,平均每年約 1.4 倍,斜率與運算力和儲存密度的硬體曲線幾乎重合。演算法紅利(每項 8 到 14.18 位、FFT 大數乘法、二進位拆分)與硬體紅利疊加,但主導項在硬體。這種以單位產出度量技術世代的方法,與先前拆解的星艦第一筆酬載帳用的是同一套算術:每公斤軌道成本對每項小數位數,都是把敘事換成可除的數。

列出從 1949 年 ENIAC 的兩千零三十七位,到 2024 年兩百零二兆位的五個圓周率計算紀錄裏程碑

需求側:科學早就在四十位前結帳

以可觀測宇宙直徑約 930 億光年對氫原子尺度約 10⁻¹⁰ 公尺相除,四十位上下的圓周率就足以把宇宙級圓周算到原子精度。純數學需求在半世紀前已經結帳,兆位級計算的買家另有其人。超級電腦與叢集需要長時間、高記憶體頻寬的驗收負載;儲存與處理器廠商需要可發布的極限案例;雲端供應商需要把基礎設施能力翻譯成大眾敘事。Google 兩次紀錄的位數本身就是文案:31.4 兆位取 π 乘以 10¹³,2022 年的 100 兆位對應周年節點。StorageReview 的配置單上,AMD 與 Solidigm 的產品型號清楚在列,一次紀錄等於一次能見度投放。

工具端,Alexander Yee 的 y-cruncher 自 2009 年以來佔據事實標準位置,2010 年後的公開紀錄幾乎全數由它完成。這套軟體閉源但免費,以個人專案規模維持了十餘年,商業對手始終沒有出現,原因在需求結構:付費意願集中在硬體與雲端帳單,軟體層難以單獨收租。1995 年的 BBP 公式則改變了存取模式,可以在不算前 N−1 位的條件下直接取出第 N 個十六進位位,成本結構從整檔儲存轉向按需取樣,如今用於兆位級結果的尾段驗證。位數本身的邊際價格一路走低,這與前沿模型 API 牌價兩年跌三百倍的曲線同向:單位產出降價,帳單轉移到資本支出與機器時間。

溢價不落在公式上

拉馬努金級數是零邊際成本的公共財,沒有授權費,也沒有專利保護。大型紀錄如今清一色使用 Chudnovsky 級數或 AGM 家族,每項 8 位的規格已被 14.18 位覆蓋,1914 年那條公式的實務角色退到教科書與入門實作。真正的帳單在執行端:位數每加一個數量級,儲存需求線性放大,運算量以 N log N 的速度走,電費與機器時間是唯一會成長的科目。

回到知乎那則提問。k=0 給七位、k=1 撞上機器精度的牆,是所有入門材料裡成本最低的驚嘆,這條級數在 2025 年仍被反覆翻出,靠的是這個結構。1103 與 26390 不再出現在紀錄申請書上,但它們穩定地出現在每年新進者的第一支程式裡,這是零授權費資產能留下的唯一一種報酬。