237
一覺醒來,日上三竿,孫董和楊婷早已坐在電腦面前開始整理論文。我躺在沙發上,美美的伸了一個懶腰,從沙發上坐起來,揉了揉惺忪睡眼。
“神童起來了?”孫董關心的問我,“昨天是不是很晚才睡!”
“是呀,模型改到三點鐘才改好,”我走到我的電腦面前,敲了一個鍵,去掉屏保,看了看電腦屏幕,高興的說:“嗯,好不錯了,模型已經優化完了!”
“真的!YEAH!”楊婷興奮的叫了一聲,“接下來是不是可以開始運算了?”
“嗯,先去比賽的服務器上看看到底有多少數據需要運算!”我一邊說,一邊登錄到比賽組織方的數據服務器上。
“靠!居然有50個G的數據量,瘋了!”我吃驚的看着舉辦方提供的數據文件,立刻從半夢半醒的狀態清醒過來,“用我們這三臺破PC,估計一星期都算不出來!”
楊婷和孫董也跑過來,吃驚的看着電腦屏幕上顯示的文件大小,“難怪舉辦方竟然會提供專用的運算服務器,看來是有備而來!”
“孫董,你把數據導到運算服務器上,並加載到運算服務器的數據庫裡面,楊婷,你負責把我們的模型程序也遷移到運算服務器上,我先研究一下服務器的硬件配置!”我一邊對孫董,楊婷下達命令,一邊登錄到運算服務器上,飛快的敲入了一堆命令。
“stafenie和葉蓮娜果然又搶在我們前面了!”我指着屏幕上幾個用戶名是usa和russia的進程對孫董,楊婷說。
“好像就她們兩個隊,其他隊都沒有上來,看來我們還算靠前的!”楊婷有點得意的說。
“大小姐,你有點追求好不好,我們這次來參加比賽就是要爭取冠軍的,對我們威脅最大的兩個對手都趕在我們前面了,有什麼好得意的!”我不滿的對楊婷說。
楊婷一臉悶悶不樂,轉身回座位上開始遷移程序。
“神童,你過來看stafenie在數據庫上建的表好奇怪,她沒有把整個數據表放在一起,而是分了四塊,放在四個不同的地方!”孫董奇怪的對我說。
我側着身子過去看了一眼孫董的電腦屏幕,沉思了一會兒,然後又回到我的電腦面前,霹靂啪嗒敲了幾個指令。
“stafenie果然是厲害,知道通過分片的方式來加快數據處理,”我嘖嘖讚歎的對孫董說,“一般我們建模用的數據表都很小,所以數據放在一起對的處理速度並不會產生什麼影響,但是對於50G大數據量的處理,CPU、內存固然是瓶頸,但是更大的瓶頸是硬盤的IO,我看了一下,這臺服務器一共有四個硬盤通道,每個通道的平均處理速度應該在五十兆每秒左右,如果數據全部放在一個通道上,硬盤IO的速度也就五十兆每秒,如果像stafenie那樣,把數據分散在四個通道上,可以獲得兩百兆每秒的IO速度,整整提高了四倍……”
我一口氣把情況給孫董分析了一下,孫董似懂非懂的點了點頭,對我的崇敬之情油然而生,“神童,你太牛了,接着我們該怎麼辦?”
“你學satfenie,把數據表分成四塊,不過stafenie是隨機分塊的,你待會兒按照我給你的規則對數據進行分塊!”我用毋庸置疑的口吻對孫董說,孫董雖然不明白其中的原因,但這時候她唯一能做的就是無條件的照辦。
我把數據分塊的條件給孫董,孫董按照我的要求寫SQL語言,把50G的數據分塊的存放到數據表中。
楊婷很快把程序遷移到運算服務器上,對我說:“神童,我開始運行模型了!?”
“等一下,”我跑到楊婷的電腦面前,仔細的檢查了一邊楊婷的程序,搖搖頭說,“這樣的程序肯定不行!”
“爲什麼?”楊婷被我潑了一頭冷水,有點泄氣的說,“以前我都是這樣寫的!”
“這先看這段代碼,對數據做排序的操作,你沒有加內存參數,缺省是用系統的配置的最大內存,”
“這樣有問題嗎,內存越多不是跑的越快嗎?”楊婷歪着頭看着我,覺得不可思議。
“如果是你獨佔這臺服務器,你說的就沒錯,但是現在stafenie和葉蓮娜的程序都在上面跑,可用的內存不到百分之三十,如果你不限制內存,進程就會按照系統的最大內存去申請,那會出什麼結果?”我問楊婷。
“那就申請不到這麼多內存了!”
“聰明,申請不到這麼多內存,又怎麼辦呢?”我接着問。
楊婷撓了撓頭,“這就不知道了!”
“申請不到,進程就會使用虛擬內存,虛擬內存其實是運算服務器的硬盤空間,硬盤的IO速度其實遠小於真正的內存的,所以程序就會不停的在硬盤和內存這件換入換出數據,反而使程序運行的速度大大變低,因此根據目前的狀況,你現在將內存參數設置爲百分之三十,絕對比你設置爲百分之百要快的多!”
楊婷聽了我這番大道理,吐了吐舌頭說:“沒想到計算機這麼複雜,我以前怎麼從來沒聽三石說過這些!”
“哎,這些東西書本上是沒有的!”我嘆了一口氣說,心想,要是靠書本那點過時的知識,畢業肯定失業。
孫董終於把數據導完了,楊婷在我的協助下也把程序修改完畢,程序在服務器上瘋狂的跑起來,和stafenie,葉蓮娜的程序開始競爭硬盤IO,內存資源。我仔細研究了一下stafenie和葉蓮娜的程序,不由的感嘆這兩位天才果然心思縝密,想得非常周到。
吃完午飯,程序還在繼續運行未出結果,我走到走廊上去遠眺大海,恰好stafenie也在外面“放風”。
“看來你改的很快呀!”stafenie微笑着對我說。
“還是落後你們倆一點!”我也笑了笑說。
“你居然想到把你們程序從用戶態調到系統態,這樣可以獲得更高的運算優先級!而且按規則對數據進行分散,大大提高了處理速度,這個我都沒想到,你真是厲害!”stafenie笑着稱讚我說。
“呵呵,沒辦法,誰叫我已經落後了,不這樣怎麼能趕的上你們呢!”我回答說,“而且你和葉蓮娜也太絕了,用分區的方式每人獨佔了四個CPU,留四個CPU讓我和剩下的那些隊伍去共享,真是把我們逼上了絕路!”
“呵呵,這隻能怪組委會沒有把規則制定好,所以我們沒違規,照現在的狀況,估計只有我們三個隊能得到最終結果,”stafenie有點得意的說。
“就我瞭解,其他隊可能還沒開始模型優化,所以最後的勝利者只會在我們三者之間產生!”
“吳己一先生,你比我想象的厲害,之前我雖然認可你,但是沒有把你真正的當作我的對手,但是現在我知道了,除了我和葉蓮娜,你也可能奪冠,這次比賽越來越好玩了!”
“謝謝你的誇獎,我想你也應該看過葉蓮娜在服務器上運行的程序了,有什麼感受?”我問stafenie。
在運算服務器上每個用戶的權限都是受限制,不能看別的組的程序,但是我通過矢量平移的方式獲得了超級用戶的權限,已經瀏覽過了stafenie和葉蓮娜的程序了,目的不是爲了抄襲,而是爲了知己知彼。
後來,我才發現不只我有這樣的想法,stafenie和葉蓮娜也用同樣的手段看過別的隊的程序,包括我們的程序。
“完美的無懈可擊!”stafenie淡定自若的說,“不過,到目前爲止大家都不分高下,看來目前還不能分出輸贏!不過我堅信我能笑到最後!”
“嗯,那就拭目以待!”我也充滿自信的笑着說。跳至