第19章 你們的超算是不是不太行啊?
當然,儘管是確定了閱讀順序,林楓也沒有馬上開始。
任何星辰大海那都是遙遠的夢想,想要追求遙遠的夢想這沒什麼。
但前提是要在此之前不需要為物質而煩惱。
想想那令人壓抑的信用卡帳單,林楓就一個頭兩大。
林楓現在還得為物質奔波。
「去碼頭整點薯條.jpg」
林楓記得當時加州大學洛杉磯分校高性能計算實驗室可是在第一時間表示他們已經安排超算集群開始驗證2^74207281-1和2^77232917-1是否是梅森素數了。
怎麼這麼久還沒出結果呢?
雖然說漫無目的地去尋找梅森素數挺困難的。
但要通過超級計算機驗證一個數是不是梅森素數還真不費勁。
一般來說,要驗證 2^74207281 - 1 是否是素數。
直接計算出這個數並檢查它是否有其他因數是最容易想到的思路。
但這明顯不可行。
像是2^74207281 - 1這種超大數的位數太多,如果暴力因式分解挨個試肯定無法在合理的時間內完成。
不過也不是毫無辦法。
盧卡斯-萊默測試可以有效簡化這個過程。
在藉助這個方法的情況下完全通過遞歸疊代序列驗證是否滿足特定條件。
具體步驟也不複雜。
此前在寫論文的時候林楓還特別了解過這方面。
先是初始化設 S_0 =4 ,而後遞歸:計算 S_(n+1) = S_(n^2 - 2 )
模 2^p - 1 ,運算從 n = 1開始,直到 n = p - 2 為止。
如果最終結果 S_(p-2) 是 0,那麼 2^p - 1 就是一個素數;否則它不是素數。
聽起來依舊是有點麻煩的。
但對於超級計算機來說這完全是小兒科好不好。
而且由於盧卡斯-萊默測試的複雜度是線性時間複雜度,即 O(p),這意味著計算的時間與 p 成正比。
對於2^74207281 - 1來說,只需要執行74207281 次循環,每次計算一個模運算。
盧卡斯-萊默測試每次疊代中包含的運算量比較複雜,涉及到大整數的平方和模運算。
不過估算的話也不是沒辦法。
可以粗略假設每次疊代進行模運算需要進行約 10^6次計算。
這樣計算的話,總的計算次數是:
74207281*10^6 約等於 7.42*10^13次計算。
如果計算機每秒可以執行 10^15次計算。
則總時間為 0.0742 秒。
理論上,一台超級計算機可以在不到 0.1 秒的時間內驗證 2^74207281 - 1 是否是一個梅森素數。
到林楓這卻這麼久還沒出結果?
只能說實屬正常。
畢竟林楓估算時是按照一台超算全部算力都用於驗證這樣情況進行的估算。
但如果用來驗證林楓這些成果動用的並不是全部算力,那麼實際速度往往要大打折扣。
這麼久還沒出結果,林楓估計實際分配的算力額甚至可能連這台超算0.01%的算力都不到。
不然,但凡是分配的算力多一點,林楓估計也早就搞完驗證了。
雖然情有可原。
但林楓現在可是等著這兩組梅森素數快快通過驗證然後搞一波50萬美元的資金呢。
結果現在這麼拖沓可還行。
搞錢這麼慢,豈不是影響林楓奔向星辰大海的速度。
而且眼看著信用卡帳單越積越高,林楓不能不著急。
林楓登上了推特,順手艾特了加州大學洛杉磯分校高性能計算實驗室:
「你們的超算是不是不太行啊?這麼簡單的單項運算,這麼久沒結果???」
額,新人沒排面啊。
林楓的問責直接被無視了。
不理我是吧。
既然如此,那林楓開啟「搞事情不嫌事大」模式。
林楓決定將事情搞得更「全面」一點。
林楓順手又艾特了一大堆其他超算機構:@ArgonneNL @OakRidgeLab @TianheSupercomputer……
甚至林楓還沒忘記艾特華國科學院的官推。
至於為什麼艾特華國科學院,是因為林楓記得此時天河二號正是此時全球最強的超級計算機。
連美國的「泰坦」也只能排第二。
在這樣強大的算力面前,盧卡斯-萊默測試這種線性複雜度的任務不過是小菜一碟。
「如果天河二號能拿來做這個運算,分分鐘搞定。」林楓默默想著。
甚至不需要天河二號動用他的全部計算量。
僅僅只是動用0.01%的算力估計很快就能出結果。
不過林楓也沒有抱有太大期望,畢竟此時推特上雖然是有些華國機構的官推。
但其實基本都是不怎麼活躍的狀態。
除了c站從那天天不知疲倦地發戰忽神器大熊貓之外,基本就沒幾個活躍的官號。
說起來,林楓為什麼要艾特一堆超算的機構。
是因為雖然都是超級計算機,但關於超算的能力一直都有挺激烈的競爭的。
每年甚至還有世界五百強計算機的排名榜。
是的,就跟評選世界五百強企業一樣。
計算機同樣是有著排名的。
而像是驗證一個數是不是梅森素數這樣簡單的任務,也耗費不了太多運算資源。
而加州大學洛杉磯分校如此不給力。
那自然是給了別的擁有超級計算機的部門踩著它們上位的機會。
很快,林楓那一堆瘋狂的艾特就有了回應。
林楓收到了史丹福大學計算機系官推的回覆:
「我們已經對超級計算機的任務進行了分配,並進行了驗證,經過驗證,可以得到肯定的答案,即2^74207281-1和2^77232917-1是全新的梅森素數。值得一提的是,我們全新的基於nx3構型的超級計算機在驗證這一結果的時候僅用時了0.003秒……」
而之後,麻省理工學院也是聲援了林楓一波:
「是的,沒錯,2^74207281-1和2^77232917-1是梅森素數,我們的超級計算機僅用時0.00159秒就完成了這次的驗證……」
「……」
誰說外國不捲的?
林楓只感覺因為自己拱火,不知不覺畫風好像轉換到奇奇怪怪的方向去了。
大家開始捲起了超算的能力。
當然,實際參加這樣能力測試的也只能是那些任務閒置期的超算了。
對於一些任務非閒置期的超算,想參加這樣的炫技也是心有餘力不足。
不過,至於事情的發展到什麼方向這不重要了。
重要的是2^74207281-1和2^77232917-1是梅森素數這事得到了很多機構的背書。
林楓感覺50萬美元已經在向他招手了。
而這件事之後,林楓發現他原本為0的學術積分從0變為了2。
大概是每個梅森素數的發現給林楓帶來了1點學術積分這樣。
另外,因為很多機構響應林楓的這波互動,林楓還收穫了很多關係係數分。
不知不覺關係係數分居然就增長到了5。
雖然同每個機構單次互動大概只能獲得0.05~0.2的關係積分不等。
雖然並不是很多,但不同於人跟人互動那種,同機構互動的時候林楓可以直接一個人互動一堆啊。
一時之間,林楓感覺又開啟了新的一扇大門。
任何星辰大海那都是遙遠的夢想,想要追求遙遠的夢想這沒什麼。
但前提是要在此之前不需要為物質而煩惱。
想想那令人壓抑的信用卡帳單,林楓就一個頭兩大。
林楓現在還得為物質奔波。
「去碼頭整點薯條.jpg」
林楓記得當時加州大學洛杉磯分校高性能計算實驗室可是在第一時間表示他們已經安排超算集群開始驗證2^74207281-1和2^77232917-1是否是梅森素數了。
怎麼這麼久還沒出結果呢?
雖然說漫無目的地去尋找梅森素數挺困難的。
但要通過超級計算機驗證一個數是不是梅森素數還真不費勁。
一般來說,要驗證 2^74207281 - 1 是否是素數。
直接計算出這個數並檢查它是否有其他因數是最容易想到的思路。
但這明顯不可行。
像是2^74207281 - 1這種超大數的位數太多,如果暴力因式分解挨個試肯定無法在合理的時間內完成。
不過也不是毫無辦法。
盧卡斯-萊默測試可以有效簡化這個過程。
在藉助這個方法的情況下完全通過遞歸疊代序列驗證是否滿足特定條件。
具體步驟也不複雜。
此前在寫論文的時候林楓還特別了解過這方面。
先是初始化設 S_0 =4 ,而後遞歸:計算 S_(n+1) = S_(n^2 - 2 )
模 2^p - 1 ,運算從 n = 1開始,直到 n = p - 2 為止。
如果最終結果 S_(p-2) 是 0,那麼 2^p - 1 就是一個素數;否則它不是素數。
聽起來依舊是有點麻煩的。
但對於超級計算機來說這完全是小兒科好不好。
而且由於盧卡斯-萊默測試的複雜度是線性時間複雜度,即 O(p),這意味著計算的時間與 p 成正比。
對於2^74207281 - 1來說,只需要執行74207281 次循環,每次計算一個模運算。
盧卡斯-萊默測試每次疊代中包含的運算量比較複雜,涉及到大整數的平方和模運算。
不過估算的話也不是沒辦法。
可以粗略假設每次疊代進行模運算需要進行約 10^6次計算。
這樣計算的話,總的計算次數是:
74207281*10^6 約等於 7.42*10^13次計算。
如果計算機每秒可以執行 10^15次計算。
則總時間為 0.0742 秒。
理論上,一台超級計算機可以在不到 0.1 秒的時間內驗證 2^74207281 - 1 是否是一個梅森素數。
到林楓這卻這麼久還沒出結果?
只能說實屬正常。
畢竟林楓估算時是按照一台超算全部算力都用於驗證這樣情況進行的估算。
但如果用來驗證林楓這些成果動用的並不是全部算力,那麼實際速度往往要大打折扣。
這麼久還沒出結果,林楓估計實際分配的算力額甚至可能連這台超算0.01%的算力都不到。
不然,但凡是分配的算力多一點,林楓估計也早就搞完驗證了。
雖然情有可原。
但林楓現在可是等著這兩組梅森素數快快通過驗證然後搞一波50萬美元的資金呢。
結果現在這麼拖沓可還行。
搞錢這麼慢,豈不是影響林楓奔向星辰大海的速度。
而且眼看著信用卡帳單越積越高,林楓不能不著急。
林楓登上了推特,順手艾特了加州大學洛杉磯分校高性能計算實驗室:
「你們的超算是不是不太行啊?這麼簡單的單項運算,這麼久沒結果???」
額,新人沒排面啊。
林楓的問責直接被無視了。
不理我是吧。
既然如此,那林楓開啟「搞事情不嫌事大」模式。
林楓決定將事情搞得更「全面」一點。
林楓順手又艾特了一大堆其他超算機構:@ArgonneNL @OakRidgeLab @TianheSupercomputer……
甚至林楓還沒忘記艾特華國科學院的官推。
至於為什麼艾特華國科學院,是因為林楓記得此時天河二號正是此時全球最強的超級計算機。
連美國的「泰坦」也只能排第二。
在這樣強大的算力面前,盧卡斯-萊默測試這種線性複雜度的任務不過是小菜一碟。
「如果天河二號能拿來做這個運算,分分鐘搞定。」林楓默默想著。
甚至不需要天河二號動用他的全部計算量。
僅僅只是動用0.01%的算力估計很快就能出結果。
不過林楓也沒有抱有太大期望,畢竟此時推特上雖然是有些華國機構的官推。
但其實基本都是不怎麼活躍的狀態。
除了c站從那天天不知疲倦地發戰忽神器大熊貓之外,基本就沒幾個活躍的官號。
說起來,林楓為什麼要艾特一堆超算的機構。
是因為雖然都是超級計算機,但關於超算的能力一直都有挺激烈的競爭的。
每年甚至還有世界五百強計算機的排名榜。
是的,就跟評選世界五百強企業一樣。
計算機同樣是有著排名的。
而像是驗證一個數是不是梅森素數這樣簡單的任務,也耗費不了太多運算資源。
而加州大學洛杉磯分校如此不給力。
那自然是給了別的擁有超級計算機的部門踩著它們上位的機會。
很快,林楓那一堆瘋狂的艾特就有了回應。
林楓收到了史丹福大學計算機系官推的回覆:
「我們已經對超級計算機的任務進行了分配,並進行了驗證,經過驗證,可以得到肯定的答案,即2^74207281-1和2^77232917-1是全新的梅森素數。值得一提的是,我們全新的基於nx3構型的超級計算機在驗證這一結果的時候僅用時了0.003秒……」
而之後,麻省理工學院也是聲援了林楓一波:
「是的,沒錯,2^74207281-1和2^77232917-1是梅森素數,我們的超級計算機僅用時0.00159秒就完成了這次的驗證……」
「……」
誰說外國不捲的?
林楓只感覺因為自己拱火,不知不覺畫風好像轉換到奇奇怪怪的方向去了。
大家開始捲起了超算的能力。
當然,實際參加這樣能力測試的也只能是那些任務閒置期的超算了。
對於一些任務非閒置期的超算,想參加這樣的炫技也是心有餘力不足。
不過,至於事情的發展到什麼方向這不重要了。
重要的是2^74207281-1和2^77232917-1是梅森素數這事得到了很多機構的背書。
林楓感覺50萬美元已經在向他招手了。
而這件事之後,林楓發現他原本為0的學術積分從0變為了2。
大概是每個梅森素數的發現給林楓帶來了1點學術積分這樣。
另外,因為很多機構響應林楓的這波互動,林楓還收穫了很多關係係數分。
不知不覺關係係數分居然就增長到了5。
雖然同每個機構單次互動大概只能獲得0.05~0.2的關係積分不等。
雖然並不是很多,但不同於人跟人互動那種,同機構互動的時候林楓可以直接一個人互動一堆啊。
一時之間,林楓感覺又開啟了新的一扇大門。