第99章 顧川的含金量(3/5)
第99章 顧川的含金量(3/5)
楊偉龍最後只是被宿管罵了一頓,也沒有真的被怎麼樣。
只是他看顧川的眼神,多少帶了點別的意味。
顧川壓根不在乎。
你爽不爽不要緊,我爽了就行。
他很忙,沒時間在這種小人物身上浪費太多的時間。
5173要管,專利和論文的事情也不能落下,這一周,顧川的生活很規律,上午是傳奇玩家們在線的低谷,他就去四牌樓做科研,下午回浦口校區,在小店裡繼續虧錢。
羅俊舟和楊健龍動用了一點小小的權力,把自己帶的研究生拉進了課題組,美其名曰是幫顧川幹活,實際上就是蹭一下論文。
顧川很識趣地沒有任何意見。
整個課題組算上顧校、羅俊舟和楊健龍,現在總人數達到了驚人的二十一個人。
三位青年教師,主要負責統籌。
四位博士生,負責攻克測試腳本里的難點。
剩下的碩士生全是科研牛馬,負責搭環境、插網線、跑數據和排版。
當然,還有買飯。
值得一提的是,原本沒有資格參加這個課題組的於墩德,也被顧川拉了過來。
「學弟啊,你看看這個數據。」李旭是羅俊舟的首席大弟子,現在雖然還是個講師職位,但是性格穩重,技術過硬,是羅俊舟門下,公認的最有可能衝擊副教授名頭的大師兄。
按道理,快三十歲的他完全可以叫顧川一句小顧,但顧川這些天展現出來的東西,讓他非常服氣。
在當下風氣還比較純粹的學術界,有能力,是真的能受到尊重的。
「我看看...」顧川在寫最底層的核心代碼,聞言把鍵盤推了回去接過了報告。
「按照你的理論,0(1)架構下的CPU應該很平滑,但剛才,只有一個新的網絡連接進來,服務端的CPU占用率卻瞬間飆升到了100%,」李旭指了指表格里的波峰,「是不是有什麼問題?」
「了解了。」顧川點頭,「我給你說一下吧。」
「你等等...」李旭這些天已經經歷了很多次這樣的事情,先抬手打斷了一下他的發言,朝身後喊了一句,「先把手上的活停一停,來聽一下!」
「哦哦!來了來了!」
「好嘞!」
房間內一陣嘈雜。
「小華人呢?」
「去買飯了...」
「我暈,這才幾點,就去買飯了?」
李旭在這裡資歷最老,能力最高,他都對顧川服氣,課題組自然沒有人再會挑戰顧川。
(由於緩存原因,請用戶直接瀏覽器訪問 看書首選 TW 看書網,𝓼𝓱𝓾.𝓽𝔀超給力 網站,觀看最快的章節更新)
「先別管小華了,」李旭擺擺手,看著端著板凳圍成一圈的眾人,「好好聽講。」
眾人立刻閉嘴,打開了本子,準備記錄。
顧川總覺得這個場面很熟悉,頗有種「皇上讓你們卸甲,就卸甲吧」的感覺。
他忍住笑,清了清嗓子,「其實這個問題很簡單,就是數學上的完美和底層作業系統的衝突。」
「是誰寫的多線程測試腳本?」
「呃,我寫的...」一個女生舉了舉手,「很奇怪,我檢查過算法公式,應該沒有問題,也檢查了代碼,沒發現內存泄露和死循環,但是每次都能復現。」
她叫喬姝,是課題組唯一一個女生,長得...很理科。
「這不怪你,」顧川調了一下代碼看了一眼,「這是Linu的問題。」
「你這麼寫的話,當一個客戶端的TCP連接到達網卡,Linu內核就會喚醒所有正在等待的線程。」
「這在作業系統里叫做上下文切換,極其消耗CPU資源。」
李旭皺眉聽完,這段分析有理有據,沒什麼問題,「那要怎麼做呢?」
總不能去改Linu的參數吧?
「我提供兩套思路。」顧川站起身,立刻有眼尖的學生把一塊白板推了過來。
「第一套叫驚群鎖,你們看啊。」他在白板上寫寫畫畫,「不要讓所有的線程都去直接監聽埠,而是先搶這把鎖,只有拿到這把鎖的唯一一個線程,才有資格去等待網絡請求。」
嗯,這個好像也能申請個專利。
顧川邊寫邊想。
實際上這個方案,就是後世大名鼎鼎的Ngin伺服器用來稱霸網際網路、解決驚群效應的經典底層邏輯。
「這個好哎。」喬姝感覺今天又學到了。
「是吧,」顧川微笑。
他挺喜歡給這群學生上課的。
要不然,以後弄個名譽教授的頭銜?
「當然,這只是應用層的代碼,大家都是研究生,我教大家一點更深的東西。」顧川看到人群里於墩德有些尷尬的撓了撓頭,笑意更濃了點,「既然是作業系統的問題,那就給作業系統動個小小的手術。」
「給...作業系統動手術?」李旭張了張嘴。
你還真準備給系統調參數?!
「你等等...我打個電話給羅導...」他慌慌張張摸出手機。
這也太嚇人了!
「行,」顧川放下筆,隨意說道,「正好也等等華哥。」
羅俊舟接到電話的那一刻,就知道顧川想要幹嘛,拉著顧校和楊健龍一起,三個人急匆匆的從辦公室趕了過來。
整個課題組刷的一下全都站了起來。
「都坐,都坐。」顧校笑著壓手,「我就是來聽聽,不要這麼大排場。」
「小顧啊。」他看向顧川,「你繼續。」
「哎,你們的飯菜來咯!」門口突然莽莽撞撞地跑過來一個男生,正是小華,結果看到顧校,臉色頓時一僵,「呃...」
「...還不趕快進來。」楊健龍黑著臉,覺得很丟人,「把飯放桌上,找個位置。」
顧川憋著笑,等小華入了座,才繼續往下說。
「其實我們剛剛的方法,雖然解決了CPU飆升的問題,但幾十個線程去搶一把鎖,本身還是會有損耗,跑出來的數據還是會比理論要高。」
「所以說,我們應該這樣...」
他在白板上寫下了一行代碼。
WQFLAGEXCLUSIVE。
「這是一個排他性喚醒標註,」顧川解釋道,「當加上這個標註後,內核在隊列里會按照順序,只叫醒排在第一個的線程,絕不打擾後面的。
「嘶...」李旭看向自家導師。
這玩意兒寫錯哪怕一個指針,一整台伺服器就會瞬間內核崩潰,直接藍屏死機。
E4500太貴了,他做不了這個主。
羅俊舟也沒想到剛來就聽到這種事情,躊躇了一下,看向了身旁的顧校。
全場都在看他。
顧校置若罔聞,目光灼灼地看著白板上這行簡單的C語言代碼。
他看的不是一行代碼,而是其背後所代表的東西。
能寫出優秀算法的人雖然少,但是名校里好歹還有幾個,但是,敢去動Linu
內核源碼,全中國都可能找不出幾個。
哪怕是極其優秀的資深工程師,也做不到。
這得是作業系統祖師爺才敢做的事。
顧校捫心自問。
他自然敢,但絕不會像現在顧川這樣雲淡風輕。
顧川這是無知者無畏,還是真的胸有成竹?
顧校傾向於後者。
一台sune4500雖然貴,但伺服器本身就有損耗,還在可以承受的範圍內。
他下定了決心。
「實踐是檢驗真理的唯一標準。」顧校輕聲說道,「去做。」
「我...」李旭喉嚨有點干。
「我來吧。」顧川拍了拍他的肩膀,「代碼是我寫的,責任也由我承擔,別怕。」
他看向顧校。
「可以。」顧校微微點了點頭,眼中滿滿的全是期待。
>
楊偉龍最後只是被宿管罵了一頓,也沒有真的被怎麼樣。
只是他看顧川的眼神,多少帶了點別的意味。
顧川壓根不在乎。
你爽不爽不要緊,我爽了就行。
他很忙,沒時間在這種小人物身上浪費太多的時間。
5173要管,專利和論文的事情也不能落下,這一周,顧川的生活很規律,上午是傳奇玩家們在線的低谷,他就去四牌樓做科研,下午回浦口校區,在小店裡繼續虧錢。
羅俊舟和楊健龍動用了一點小小的權力,把自己帶的研究生拉進了課題組,美其名曰是幫顧川幹活,實際上就是蹭一下論文。
顧川很識趣地沒有任何意見。
整個課題組算上顧校、羅俊舟和楊健龍,現在總人數達到了驚人的二十一個人。
三位青年教師,主要負責統籌。
四位博士生,負責攻克測試腳本里的難點。
剩下的碩士生全是科研牛馬,負責搭環境、插網線、跑數據和排版。
當然,還有買飯。
值得一提的是,原本沒有資格參加這個課題組的於墩德,也被顧川拉了過來。
「學弟啊,你看看這個數據。」李旭是羅俊舟的首席大弟子,現在雖然還是個講師職位,但是性格穩重,技術過硬,是羅俊舟門下,公認的最有可能衝擊副教授名頭的大師兄。
按道理,快三十歲的他完全可以叫顧川一句小顧,但顧川這些天展現出來的東西,讓他非常服氣。
在當下風氣還比較純粹的學術界,有能力,是真的能受到尊重的。
「我看看...」顧川在寫最底層的核心代碼,聞言把鍵盤推了回去接過了報告。
「按照你的理論,0(1)架構下的CPU應該很平滑,但剛才,只有一個新的網絡連接進來,服務端的CPU占用率卻瞬間飆升到了100%,」李旭指了指表格里的波峰,「是不是有什麼問題?」
「了解了。」顧川點頭,「我給你說一下吧。」
「你等等...」李旭這些天已經經歷了很多次這樣的事情,先抬手打斷了一下他的發言,朝身後喊了一句,「先把手上的活停一停,來聽一下!」
「哦哦!來了來了!」
「好嘞!」
房間內一陣嘈雜。
「小華人呢?」
「去買飯了...」
「我暈,這才幾點,就去買飯了?」
李旭在這裡資歷最老,能力最高,他都對顧川服氣,課題組自然沒有人再會挑戰顧川。
(由於緩存原因,請用戶直接瀏覽器訪問 看書首選 TW 看書網,𝓼𝓱𝓾.𝓽𝔀超給力 網站,觀看最快的章節更新)
「先別管小華了,」李旭擺擺手,看著端著板凳圍成一圈的眾人,「好好聽講。」
眾人立刻閉嘴,打開了本子,準備記錄。
顧川總覺得這個場面很熟悉,頗有種「皇上讓你們卸甲,就卸甲吧」的感覺。
他忍住笑,清了清嗓子,「其實這個問題很簡單,就是數學上的完美和底層作業系統的衝突。」
「是誰寫的多線程測試腳本?」
「呃,我寫的...」一個女生舉了舉手,「很奇怪,我檢查過算法公式,應該沒有問題,也檢查了代碼,沒發現內存泄露和死循環,但是每次都能復現。」
她叫喬姝,是課題組唯一一個女生,長得...很理科。
「這不怪你,」顧川調了一下代碼看了一眼,「這是Linu的問題。」
「你這麼寫的話,當一個客戶端的TCP連接到達網卡,Linu內核就會喚醒所有正在等待的線程。」
「這在作業系統里叫做上下文切換,極其消耗CPU資源。」
李旭皺眉聽完,這段分析有理有據,沒什麼問題,「那要怎麼做呢?」
總不能去改Linu的參數吧?
「我提供兩套思路。」顧川站起身,立刻有眼尖的學生把一塊白板推了過來。
「第一套叫驚群鎖,你們看啊。」他在白板上寫寫畫畫,「不要讓所有的線程都去直接監聽埠,而是先搶這把鎖,只有拿到這把鎖的唯一一個線程,才有資格去等待網絡請求。」
嗯,這個好像也能申請個專利。
顧川邊寫邊想。
實際上這個方案,就是後世大名鼎鼎的Ngin伺服器用來稱霸網際網路、解決驚群效應的經典底層邏輯。
「這個好哎。」喬姝感覺今天又學到了。
「是吧,」顧川微笑。
他挺喜歡給這群學生上課的。
要不然,以後弄個名譽教授的頭銜?
「當然,這只是應用層的代碼,大家都是研究生,我教大家一點更深的東西。」顧川看到人群里於墩德有些尷尬的撓了撓頭,笑意更濃了點,「既然是作業系統的問題,那就給作業系統動個小小的手術。」
「給...作業系統動手術?」李旭張了張嘴。
你還真準備給系統調參數?!
「你等等...我打個電話給羅導...」他慌慌張張摸出手機。
這也太嚇人了!
「行,」顧川放下筆,隨意說道,「正好也等等華哥。」
羅俊舟接到電話的那一刻,就知道顧川想要幹嘛,拉著顧校和楊健龍一起,三個人急匆匆的從辦公室趕了過來。
整個課題組刷的一下全都站了起來。
「都坐,都坐。」顧校笑著壓手,「我就是來聽聽,不要這麼大排場。」
「小顧啊。」他看向顧川,「你繼續。」
「哎,你們的飯菜來咯!」門口突然莽莽撞撞地跑過來一個男生,正是小華,結果看到顧校,臉色頓時一僵,「呃...」
「...還不趕快進來。」楊健龍黑著臉,覺得很丟人,「把飯放桌上,找個位置。」
顧川憋著笑,等小華入了座,才繼續往下說。
「其實我們剛剛的方法,雖然解決了CPU飆升的問題,但幾十個線程去搶一把鎖,本身還是會有損耗,跑出來的數據還是會比理論要高。」
「所以說,我們應該這樣...」
他在白板上寫下了一行代碼。
WQFLAGEXCLUSIVE。
「這是一個排他性喚醒標註,」顧川解釋道,「當加上這個標註後,內核在隊列里會按照順序,只叫醒排在第一個的線程,絕不打擾後面的。
「嘶...」李旭看向自家導師。
這玩意兒寫錯哪怕一個指針,一整台伺服器就會瞬間內核崩潰,直接藍屏死機。
E4500太貴了,他做不了這個主。
羅俊舟也沒想到剛來就聽到這種事情,躊躇了一下,看向了身旁的顧校。
全場都在看他。
顧校置若罔聞,目光灼灼地看著白板上這行簡單的C語言代碼。
他看的不是一行代碼,而是其背後所代表的東西。
能寫出優秀算法的人雖然少,但是名校里好歹還有幾個,但是,敢去動Linu
內核源碼,全中國都可能找不出幾個。
哪怕是極其優秀的資深工程師,也做不到。
這得是作業系統祖師爺才敢做的事。
顧校捫心自問。
他自然敢,但絕不會像現在顧川這樣雲淡風輕。
顧川這是無知者無畏,還是真的胸有成竹?
顧校傾向於後者。
一台sune4500雖然貴,但伺服器本身就有損耗,還在可以承受的範圍內。
他下定了決心。
「實踐是檢驗真理的唯一標準。」顧校輕聲說道,「去做。」
「我...」李旭喉嚨有點干。
「我來吧。」顧川拍了拍他的肩膀,「代碼是我寫的,責任也由我承擔,別怕。」
他看向顧校。
「可以。」顧校微微點了點頭,眼中滿滿的全是期待。
>