作者:胖胖的小橘
十幾分鍾過去了,眼看著快到了下一節課的上課時間。
高院士才對著周圍的學生擺了擺手。
“好了,同學們,你們先去上下一節課吧,剩下的問題,你們可以問你們的任課教授。”
大家雖然挺失望的,但也不能不上下一節課呀,只能無奈散開。
高院士走出了階梯教室。
李東見狀也跟了上去。
走廊上,高院士察覺到後面有人跟著,回過頭看了看李東。
“同學,”高院士笑著問道。
“你不上課嗎?”
李東說道。
“我不是這個班的。”
高院士愣了一下,隨即反應了過來。
“元培的?”
李東點了點頭。
“哈。”高院士一下子就笑了出來。
他在元培學院那邊其實也是有掛課的,但像這種大一剛開學,就不去上自己院系的通識課,直接跑來信科學院的學生,有是有,但確實比較少見。
“走吧。”高院士招了招手,帶著李東穿過理科樓的連廊,來到了他在信科學院的獨立辦公室。
推門進去,高院士在辦公桌前坐下,示意李東也坐,隨口問道。
“怎麼?課上有什麼沒聽懂的地方嗎?”
李東搖了搖頭。
“都聽懂了,您講得深入湷觯训讓佑搀w和軟體演算法的關係剖析得特別透徹。”
高院士聽完,忍不住笑了。
這學生挺有趣的啊。
大一新生能聽懂多少底層併發?
這小馬屁拍得不顯山不露水的,情商蠻高的嘛。
而坐在對面的李東,完全不知道自己說了大實話,反而被人當成了高情商。
“那你跟著我來辦公室,是想問什麼?”
高院士饒有興趣的看著他。
李東直接問道。
“高老師,我最近在研究關於計算黎曼Zeta函式非平凡零點的底層演算法最佳化。”
“我想在這個多點求值(multiple evaluations)的基礎上,進一步最佳化它的記憶體分配,嘗試把計算規模推到萬億級甚至更高的極高階區間。”
“但在利用FFT對Zeta函式進行大規模網格展開時,底層記憶體的呼叫邏輯我總是處理不好。”
“當網格規模放大到千萬級、億級時,算力冗餘太大,經常引起嚴重的記憶體碎片化或者快取未命中。”
李東將自己對《黎曼手稿》巢狀進程式語言的一些遇到的問題說了出來。
“所以怎麼才可以在不改變整體數學時間複雜度的情況下,重構C++底層的記憶體排布方式呢?然後最大限度地迎合CPU的快取預取機制?”
高院士在聽到李東這番話後,放下保溫杯。
他特別喜歡這種會自己深度思考的學生。
他仔細想了想剛才李東說的記憶體分配邏輯,雖然他不能僅僅通過幾個問題就完全看透李東那套降維演算法。
畢竟他也不是專攻數學的。
但他還是發現了這套框架在硬體排程上的一些弱點。
“你的思路和正常學生很不一樣,切入點很偏,但非常有意思。”
高院士拿起一支筆,在紙上畫了一個簡單的記憶體分塊圖。
“既然用了FFT做多點求值,你不能用常規的連續記憶體分配去想。”
“位反轉置換會徹底打斷CPU快取的空間區域性性。”
“你得手動做分塊處理,把龐大的網格矩陣切分成能完全塞進 L2快取的小塊,在小塊內部完成咚汜嵩賹懟刂鞔妗!�
高院士耐心的給李東講解著記憶體對齊的精髓,句句都是乾貨。
李東聽著高院士的話,【程式碼直覺】瞬間將這些概念具象化。
“我明白了!謝謝高老師!”
李東是真心的感謝,這就是有名師的好處,他們可能不像李東一樣有外掛,但是也沒見牛頓他們有外掛呀,可是依然不影響他們的牛逼。
問完核心的學術問題後,李東突然想起了一個很現實的問題。
他的聯想電腦到現在都還開不了機,也還沒去買新的。
所以他有些不好意思的問道。
“那個……高老師,咱們學校能申請用機房嗎?”
高院士正喝著茶,聽到這個問題,差點沒嗆到。
“我們學校的機房都是公用資源,”
高院士有些哭笑不得的解釋道。
“你直接拿著你的校園卡去刷卡就能進去用。”
“當然,如果你需要跑超大規模的算力,可以在校園網上用學號申請超算中心的節點。”
李東這才恍然大悟。
高院士看著眼前這個有些迷糊的少年,越發覺得有意思了。
“同學,你叫什麼名字?”高院士微笑著問道。
“我叫李東。”
“李東……”高院士點了點頭,把這個名字記在了心裡。
第100章 破百億大關
燕大,35棟男寢,404室。
晚上九點四十。
“今天數院許晨教授的那場講座,真給我聽傻了。”
王浩作為拿過CMO金牌的主,他今天居然沒有完全聽懂。
“不愧是拿過拉馬努金獎的長江學者,把雙有理幾何裡的K-穩定性問題講得明明白白的,還有關於法諾簇極化的那段推導,他到底是怎麼想出來的。”
“確實牛逼,感覺自己高中搞的那些數競就像是在玩泥巴。”
劉強深以為然的點了點頭,隨即看了一眼時間。
“哎?這都快十點了,李東怎麼還沒回來?”
陳楠坐在下鋪的板凳上調侃道:“你們說……這小子不會一進大學就跑去談戀愛了吧?”
別以為能考進燕大元培學院的學霸們,就都是些只知道關上寢室門死磕書本的呆子。
畢竟都是十八九歲血氣方剛的年輕人,剛脫離了高中的苦海,誰心裡還沒有點對甜甜的戀愛的嚮往呢?
劉強推了推眼鏡。
“我承認,在顏值這塊兒,他確實能稍微壓我一頭。”
“但這才開學第一天啊!連校園的地形都沒摸熟呢,不會這麼快就勾搭上學姐了吧?”
就在三人瘋狂八卦的時候,“砰”的一聲,寢室門被推開了。
李東黑著一張臉,走了進來。
“喲,東哥回來了?怎麼這麼晚?”王浩看著他的臉色問道。
“這是……搭訕被拒了?”
李東翻了個白眼:“約個屁的會,我從機房剛被趕出來。”
晚嗎?李東覺得一點都不晚!甚至覺得時間過得太快了!
今天上午剛從高院士那得到了關於“記憶體分塊”與“快取命中對齊”的指點後,李東立馬就想去最佳化演算法。
但是他自己那臺破聯想到現在都開不了機,所以就直接殺到了信科學院的公共機房
雖說公共機房裡的桌上型電腦配置,還達不到他在江城六中借用的那種帶有GPU加速的小型伺服器叢集的級別,但至少比他那個辦公用的輕薄本要強得多,勉強能湊合用。
在機房裡,他將自己重新理解的演算法結合黎曼的降維演算法,重新用C++編寫了驗證非平凡零點的程式。
這一次,他手動將龐大的FFT網格切分成了能完美塞進CPU L2快取的微小資料塊,徹底解決了位反轉置換帶來的快取未命中問題。
光是重構這套底層程式碼,就花了他足足好幾個小時。
李東這次沒有像在高鐵上一樣從高階區域開始。
他為了驗算自己的演算法,這次他是從頭開始加全量驗證,要把Zeta函式在這條臨界線上的每一個非平凡零點全部揪出來!
李東不知道的是,就算是現在世界上最先進的演算法,再動用超算中心的伺服器叢集,跑到百億級,也要好幾個小時。
他深吸一口氣,按下了“Run”鍵。
程式跑得異常絲滑,沒有記憶體洩漏。
一千萬級……五千萬級……
一億級……十億級……百億級……
短短的三個小時,這套融合了頂級架構與降維數學思維的神級程式,硬生生在機房的普通電腦上,將每一個非平凡零點精準算出,計數一路狂飆,直接突破了百億級大關。
李東看著螢幕,正處在構思下一步多執行緒併發最佳化的絕對“心流”狀態中。
結果……
機房管理員大爺,無情的拍了拍他的肩膀。
“同學,九點半了,機房關門拉閘了啊。”
李東這才回過神來。
不是吧……
這樣在即將高潮的時候被打斷是很容易那啥的……
而且已經兩次了!!
所以,他只能被迫中斷了程序,把程式碼拷進隨身碟裡,回了寢室。
“必須得買臺屬於自己的高配電腦了!”李東在心裡咬牙切齒的想道。
他現在卡里還有三十多萬,想買啥不行?
至於高院士說的那種申請學校超算中心節點的事兒,流程太繁瑣,而且估計也有嚴格的機時限制,搞不好還要排隊,就被他暫時排除了。
此時,王浩聽完李東的話,愣了一下。
“你去機房幹嘛?今天下午物院那邊是王教授講的量子場論導論,你沒去聽呀?”
劉強和陳楠也滿臉不解的看著他。
他們以為李東既然喜歡物理,那肯定是去物院那邊了呀。
“哦,我去了信科那邊,聽了高穩院士的《底層演算法與高效能咚慵軜嫛贰!崩顤|隨口答道。
寢室裡的三人瞬間石化了。
“啊?”王浩詫異道。
上一篇:我家艺人太没上进心了
下一篇:挨打永久加防御,神魔都打不动我