僅剩 1 位 73 歲開發者苦撐,這個能求解超複雜物理方程式的計算程式快要沒人維護了

僅剩 1 位 73 歲開發者苦撐,這個能求解超複雜物理方程式的計算程式快要沒人維護了

高等物理先進計算必備程式之一,快要沒人維護了。

隨著唯一的長期維護者達到 73 歲高齡,計算系統 FORM 的命運開始變得撲朔迷離起來。

僅剩 1 位 73 歲開發者苦撐,這個能求解超複雜物理方程式的計算程式快要沒人維護了

過去 30 多年,這個程式被視為粒子物理學研究的基礎工具之一,可計算伽馬矩陣、平行計算、模式匹配等。

計算費曼圖的軟體包 FormCalc 也是在它的基礎上實現。

要知道,費曼圖能夠用圖像描述大型粒子對撞機中粒子碰撞的可能結果,號稱“有助於幫助改變物理學家看世界的方式”。

除此之外,高階 QCD(量子色動力學) β 函數、多重 Zeta 數值(MZV)的數學結構研究等也都用到了 FORM。

甚至在它誕生十數年後,仍舊有大量前沿研究依賴於它。

自 2000 年以來,平均每隔幾天就有一篇基於 FORM 的粒子物理學論文被發表

但這樣重要的計算程式,現在卻只靠一位 73 歲的退休人員維護 —— 其開發者荷蘭粒子物理學家喬斯・維馬塞倫(Jos Vermaseren)。

僅剩 1 位 73 歲開發者苦撐,這個能求解超複雜物理方程式的計算程式快要沒人維護了

如今,隨著老爺子年事已高,其後繼維護者還沒找到。

而完全能頂替它的程式似乎還沒有出現,儘管 Mathematica 也能計算,但是速度上完全無法與之相比。

靠硬碟空間求解超長公式

簡單理解,FORM 是一個可以進行符號運算的程式。

相較於更通用的 Mathematica,它更專注於大規模處理符號表示式。

僅剩 1 位 73 歲開發者苦撐,這個能求解超複雜物理方程式的計算程式快要沒人維護了

但本質上 FORM 還是數學代數系統,具體的操作過程大概是這樣的:

設定函數 f 中,在 x 之前如果出現任何參數,都將它們進行調換。

Symbol x;
Local E = f(1,2,x,3,4);

id f(?a,x,?b) = f(?b,?a);

Print;
.end

那麼 FORM 輸出的結果將會是:F=f(3,4,1,2)。

它主要有兩方面特點:

第一、計算快。

FORM 建立了一些專業演算法,比如能將費曼圖中的某些部分快速相乘;通過重新排列方程減少相乘、相加步驟。

第二、能處理超級大的方程式。

只要硬碟空間夠大,多長都能算。

這正是 FORM 最特別的地方。

電腦的儲存模式可分為兩種。其一是主要儲存,這裡常說的是 RAM(隨機儲存器)。它是電腦系統中最重要的儲存器,能和 CPU 直接交換資料,隨時讀寫、速度很快,但儲存空間非常有限。另一種是外存,也就是硬碟、固態硬碟、磁碟等。它們的優點是容量大,但計算速度慢。

比如一台筆電的記憶體只有 16GB,但是儲存空間可以到 2TB。

如果想要求解超複雜的物理方程式,那必須要依靠主存。

但問題是,這麼小的容量空間,根本無法處理超長公式。更何況 FORM 生於 80 年代,那個時候的主存容量就更小了。

僅剩 1 位 73 歲開發者苦撐,這個能求解超複雜物理方程式的計算程式快要沒人維護了

FORM 選擇了一個巧妙的方法 —— 把硬碟當成主存來用。

通過將主存和硬碟空間“分頁”處理,然後將方程式放入到不同的“頁”上,並且為每一個項都固定一個儲存位置,程式執行時就能快速找到各個項的位置將其帶回真正的主存,而不必訪問其他的項。

這樣做的好處是在擴大主存的同時,還繞開了低效的記憶體交換操作,可以快速計算複雜龐大的方程式。

憑藉著這一特點,FORM 自誕生後便成為了粒子物理學中的關鍵工具之一。

即便放到現在 FORM 也依舊至關重要 —— 畢竟計算儲存發展的速度,怎麼也追不上物理學方程式加長的速度……

在 FORM 的 GitHub 首頁上也寫著:

FORM 是高能物理領域中許多最先進計算的必備工具。

僅剩 1 位 73 歲開發者苦撐,這個能求解超複雜物理方程式的計算程式快要沒人維護了

值得一提的是,FORM 並不能被視為 CAS 的加強版,它們的程式邏輯並不相同。

上手 FORM 可能需要一點門檻,但只要跨過去,就是打開一番新天地了。FORM 和 CAS 配合使用可以解決數學、物理中諸多難以計算的複雜問題。

蘇黎世大學教授托馬斯・格爾曼(thames Gehrmann)表示,自己的課題組在過去 20 年中取得的大多數高精度結果,很大程度上都依賴於 FORM。

高能物理學助理教授馬特・馮・希佩爾(Matt von Hippel)在 Quantamagazine 的文章中也提到,自己的一位同事前不久才使用 FORM 將一項計算的精度推到新高度。

被重視程度卻遠遠不夠

但和想像中不同,這樣一個為高能物理領域帶來巨大進步的工具,一路發展過來,背後的維運卻冷冷清清,以至於現在整個軟體都岌岌可危。

FORM 的起點在 1984 年。當時電腦的角色正在迅速變化,PC 機在這個時期開始普及。

其前身是一個名為 Schoonschip 的程式,由荷蘭物理學家馬蒂努斯・維爾特曼(Martinus Veltman)建立。

和我們今天許多常用的電腦程式不同,當時的程式大都是搭載於外部的 ROM 晶片中,得把晶片插到電腦上才能運行(試想一下光碟)——Schoonschip 也不例外。

而喬斯則希望做出一個更易於訪問的程式,可被世界各地高校下載的那種。

僅剩 1 位 73 歲開發者苦撐,這個能求解超複雜物理方程式的計算程式快要沒人維護了

開發 FORM 之初,喬斯使用的是 FORTRAN 語言(也是 FORM 名字的重要來源),這種語言很擅長“搞數學”。

FORTRAN 是由 IBM 為科學和工程應用開發的,是第一代電腦高級語言。

從上世紀 50 年代起,FORTRAN 一度成了科學和工程計算的首選語言;從 60 年代末到 70 年代初,大多數高性能電腦都支援 FORTRAN,許多專門的編譯器和工具可以用其編寫演算法。

而隨著電腦技術發展、其它程式語言一個個出現,FORTRAN 慢慢被 C、C++、Python、Matlab 等取代,因為它沒有對象導向程式的支援,且語法比較笨重。

在 1989 年,FORM1.0 正式發佈前,喬斯改用 C 語言把 FORM 重寫了一遍。

但 FORM 其實從誕生起就在被逐漸推廣試用了:1984 至 1986 年間,FORM 最早支援的是 Apollo 工作站,這是上世紀 80 年代的第一批圖形處理工作站。

僅剩 1 位 73 歲開發者苦撐,這個能求解超複雜物理方程式的計算程式快要沒人維護了

到上世紀 90 年代初,全球已有超過 200 家機構下載了 FORM,後面這個數字還在不斷攀升。

與此同時,FORM 還發展出了 3 個不同的版本:

  • FORM:順序版,旨在在單個處理器上運行;

  • ParFORM:多處理器版,處理器有自己的記憶體,可以使用叢集和系統,同時為兩個及以上的處理器;

  • TFORM:處理器共用記憶體系統的多執行緒版,主要用於處理器數量有限的系統。

  • FORM 和 FormCalc 是相互補充的,FORM 作為一種通用符號計算和公式管理軟體,而 FormCalc 作為一種特定於高能物理研究的工具。

這麼看來,FORM 貌似一直在茁壯成長。但其實從開發至今,維護 FORM 的人數總共也就十餘人。

到現在,只剩下 73 歲的喬斯孤零零一人還在苦苦支撐。

為什麼會這樣?

一個重要的原因是:在物理學界,開發程式的努力往往被低估了。

喬斯老爺子無奈地表示:

多年來,我一直看到物理學領域中在計算工具開發上花大把時間的人,得不到一個終身職位。

而且相比之下,喬斯及 FORM 還算是挺幸運的,因為他本身有終身職位 —— 荷蘭國家亞原子物理研究所(Nikhef)長期擔任理論組研究員。

而且 FORM 也受到了歐洲研究理事會(ERC)的關注。

光是在 2012 年,ERC 就給 FORM 的相關項目資助了 170 萬歐元。當時喬斯提出把遊戲領域的蒙特卡洛方法,用來求解高能物理方程(這種方程往往要求高精度、計算量巨大)。

並且這是 ERC 給喬斯等 Nikhef 研究人員的第三筆大額撥款。

但同樣是在粒子物理學領域,義大利物理學家 Stefano Laporta 就沒這麼走運了。他也開發了一種很有用的簡化演算法,可是整個職業生涯中都沒收到什麼資助……

如今,即便是曾經發展還不錯的 FORM,想要找到後續維護者都有些難了。

因為這不光會耗費精力、往往得不到高收益,還要求開發人員有過硬的跨學科能力。(其中一科還是粒子物理...)

有網友指出:

其實最難的不是寫程式碼,而是確保它能正確處理資料。

比如,要對國際粒子物理學委員會編寫的參考書 PDG Review of Particle Physics 行之有效。

如果後續維護不跟進,FORM 很快就會跟不上電腦更新迭代的腳步,變得越來越不可用。

學者 Ben Ruijl 最近在嘗試用 Rust 開發一個新版本的 FORM——DreFORM,來嘗試減少 FORM 中的 bug。

但是到現在為止新版本還沒有完成,因為 Ben Ruijl 不得不因為自己主要的研究課題而擱置它。

對此,哥本哈根大學(尼爾斯・玻爾的母校)的粒子物理學助理教授 Matt von Hippel 表示擔憂:

(假如 FORM 真不行了,)物理學者可能不得不只能選擇 Mathematica,其速度比 FORM 慢了好幾個數量級。

粒子物理學可能還會因此停滯不前,只有少數人能夠勝任最難的計算工作。

眼下,喬斯老爺子已在積極思考解決辦法。據說在今年 4 月份,他會召開一個 FORM 使用者峰會,號召大家一起討論後續維護問題。

GitHub 上,也有不少使用者在一直在為這個程式找 Bug、提意見。

僅剩 1 位 73 歲開發者苦撐,這個能求解超複雜物理方程式的計算程式快要沒人維護了

我們發現最近也有人在更新項目,但似乎程式碼出現了一些問題。

僅剩 1 位 73 歲開發者苦撐,這個能求解超複雜物理方程式的計算程式快要沒人維護了

FORM 首頁:

https://www.nikhef.nl/~form/

GitHub 首頁:

https://github.com/vermaseren/form

參考連結:

本文來自:量子位 (ID:QbitAI)

 

 

Qbitai
作者

量子位(Qbitai)專注於人工智慧及前沿科技領域,提供技術研發趨勢、科技企業動態、新創公司報道等最新資訊,以及機器學習入門資源、電腦科學最新研究論文、開源程式碼和工具的相關報導。

使用 Facebook 留言
Ian
2.  Ian (發表於 2023年6月21日 13:38)
看完這篇報導,我第一時間的感受其實是,臺灣在地的電腦科技資訊類新聞媒體,現在引用中國大陸的媒體文章,已經都沒有細心在做「慣用詞轉換成在地化詞彙」的工作了,而是把字元簡轉正了事。整個臺灣社會點滴被「中共的規範」溫水煮青蛙煮到熟,就是從這樣的細節開始的。
舉例:
“” -> 「」(全形符號)
PC 機 -> 個人電腦
更易於「訪問」 -> 備份、存取、複製、取得。
可被世界各地「高校」下載 -> 高中、大學、學校。
可被世界各地高校「下載」 -> 備份、複製、取得。
發表回應
謹慎發言,尊重彼此。按此展開留言規則