黃金屋中文-免費小說,文字版,txt下載

 
  黃金屋首頁(yè)| 總點(diǎn)擊排行| 周點(diǎn)擊排行| 月點(diǎn)擊排行 | 總搜藏排行 繁體中文版| 收藏黃金屋| 設(shè)為首頁(yè)
 
黃金屋中文,黃金書(shū)屋 黃金屋中文,黃金書(shū)屋
首 頁(yè) 手機(jī)版 最新章節(jié) 玄幻·奇幻 武俠·仙俠 都市·言情 歷史·軍事 游戲·競(jìng)技 科幻·靈異 全本·全部 移動(dòng)版 書(shū)架  
  文章查詢:         熱門(mén)關(guān)鍵字: 道君 大王饒命  神話紀(jì)元  飛劍問(wèn)道  重生似水青春  
黃金屋中文 >> 高人竟在我身邊  >>  目錄 >> 第九十九章 101號(hào)選手已經(jīng)走遠(yuǎn)

第九十九章 101號(hào)選手已經(jīng)走遠(yuǎn)

作者:晨星LL  分類: 科幻 | 超級(jí)科技 | 晨星LL | 高人竟在我身邊 | 更多標(biāo)簽...
 
請(qǐng)記住本站域名: 黃金屋

高人竟在我身邊 第九十九章 101號(hào)選手已經(jīng)走遠(yuǎn)

老實(shí)說(shuō),這道題還真把郝云給難住了。

看了半天題目,他愣是一行代碼都沒(méi)敲出來(lái)。

針對(duì)“冰川引擎”的代碼進(jìn)行優(yōu)化?

提升引擎運(yùn)行效率百分之十?

話說(shuō)這款引擎的底層代碼長(zhǎng)啥樣他都還沒(méi)看過(guò)呢……

與此同時(shí),比賽現(xiàn)場(chǎng)的后臺(tái)。

工作人員在詹永樞院士的要求下,調(diào)出了101號(hào)選手的屏幕。

看著出現(xiàn)在屏幕中的第四道題目,站在詹院士旁邊的張存浩教授笑著搖了搖頭,語(yǔ)氣頗為遺憾卻又毫不意外地說(shuō)道。

“沒(méi)想到他居然選的是第四題,看來(lái)徹底沒(méi)戲了。”

“哦?”詹永樞院士饒有興趣地抬了下眉毛。

“老師您該不會(huì)忘了,我在回水木大學(xué)教書(shū)之前,就是在龍威集團(tuán)軟件研發(fā)部門(mén)的一線崗位工作的吧?”張存浩教授開(kāi)了句玩笑說(shuō)道。

“我倒是還沒(méi)看題目的具體內(nèi)容,這個(gè)冰川引擎也是你們部門(mén)的產(chǎn)品嗎?”

“那倒不是,這個(gè)產(chǎn)品本身是一個(gè)收購(gòu)過(guò)來(lái)的研發(fā)團(tuán)隊(duì)開(kāi)發(fā)的,不過(guò)我們軟件研發(fā)部門(mén)給這個(gè)產(chǎn)品做過(guò)優(yōu)化,現(xiàn)在的冰川3.0,就是經(jīng)過(guò)我們二次優(yōu)化之后的產(chǎn)品。現(xiàn)在主流的大型3D動(dòng)作游戲,尤其是第三人稱這個(gè)大類里面,基本上都是用這臺(tái)引擎制作的!”張存浩教授說(shuō)著,臉上不禁掛起了一抹自豪。

不過(guò),他也確實(shí)有自豪的資本。

龍威集團(tuán)是夏國(guó)電子工業(yè)領(lǐng)域里的巨頭,而其旗下龐大的軟件研發(fā)團(tuán)隊(duì),正是奠定這一基礎(chǔ)的因素之一。即便電子游戲是新歷之后才出現(xiàn)的新鮮玩意兒,但也沒(méi)有任何一名軟件工程師因此而輕視它。

張存浩教授的意思很明確。

和另外三道沒(méi)有限定成果驗(yàn)收標(biāo)準(zhǔn)的題目來(lái)比,這道對(duì)性能提升有明確要求的題目是絕對(duì)不可能完成的!

因?yàn)檫@是無(wú)數(shù)軟件工程師心血的結(jié)晶!

因?yàn)檫@就是無(wú)數(shù)次優(yōu)化之后的產(chǎn)物!

因?yàn)檫@就是最簡(jiǎn)練的代碼!

它就像是一件藝術(shù)品,沒(méi)有一個(gè)字母是多余的!

別說(shuō)是坐在這里的學(xué)生了,就算是站在這里的主試委員會(huì),想用短短三天時(shí)間解決這個(gè)第四道題,也是幾乎不可能做到的。

當(dāng)然,時(shí)間再長(zhǎng)一點(diǎn)的會(huì)還是有可能做到的。

“說(shuō)實(shí)話,這種連你都覺(jué)得束手無(wú)策的題目,出現(xiàn)在這種面向大學(xué)生的比賽上……是不是有些不太妥當(dāng)?”詹永樞院士看了張存浩教授一眼說(shuō)道。

張存浩教授訕訕一笑說(shuō):“往屆大賽四道題中設(shè)置一道陷阱題不是慣例嗎?這也是考察選手們對(duì)自己客觀情況的認(rèn)真。我相信只要稍微動(dòng)一動(dòng)腦子就能想到,對(duì)這種商業(yè)化應(yīng)用已經(jīng)成熟的軟件進(jìn)行優(yōu)化,是沒(méi)什么機(jī)會(huì)的。”

詹永樞院士呵呵笑了笑,沒(méi)有說(shuō)話。

他大概能猜到一點(diǎn),用這種題目作為陷阱題的原因。

其一自然是像張存浩教授說(shuō)的那樣,四道題中塞一道用來(lái)埋人的送命題是希望杯大賽的慣例。至于其二,恐怕也和龍威集團(tuán)給了不少費(fèi)有關(guān)。

畢竟像希望杯這樣受到無(wú)數(shù)大學(xué)生和專業(yè)人士關(guān)注的全國(guó)性賽事,最后一道大題無(wú)人做出,這本身就是一個(gè)不得了的噱頭。

用這個(gè)噱頭來(lái)做推廣,比任何硬廣都要具有話題性。

想到這場(chǎng)比賽的整套考試系統(tǒng)都是由龍威集團(tuán)免費(fèi)給主辦方的,詹永樞院士也沒(méi)說(shuō)什么,只是對(duì)屏幕中的那名選手也不報(bào)太大希望了。

畢竟哪怕他自己來(lái),也未必能在三天的時(shí)間里將這個(gè)冰川3.0引擎提升百分之十的性能。換個(gè)角度來(lái)想,如果有這么容易就能做到的方法,冰川引擎的開(kāi)發(fā)團(tuán)隊(duì)和負(fù)責(zé)幫引擎做優(yōu)化的軟件工程師們,也一定早都想到了。

選擇自己擅長(zhǎng)的課題研究,避開(kāi)那些明顯只會(huì)浪費(fèi)時(shí)間和精力的題目,同樣是一名程序設(shè)計(jì)師必備的素質(zhì)。

如果做不到這點(diǎn)……

這場(chǎng)比賽,101號(hào)選手已經(jīng)走遠(yuǎn)了!

……

郝云并不知道,自己只不過(guò)是讀題的這么一回兒功夫,站在不遠(yuǎn)處考場(chǎng)后臺(tái)的幾位業(yè)內(nèi)大佬,已經(jīng)連他的結(jié)局都預(yù)見(jiàn)了。

真的到此為止了嗎?

一開(kāi)始郝云也曾這么悲觀的想過(guò)。

畢竟當(dāng)他把整個(gè)冰川引擎的代碼快速過(guò)了一遍之后,光是看懂便花了不少力氣了。

“首先得冷靜……”

“然后,得搞清楚這款引擎運(yùn)行的邏輯。”

讓圖形數(shù)據(jù)輸出的速度更快,質(zhì)量更高是一款好引擎的重要評(píng)判標(biāo)準(zhǔn)。想必在讓這款引擎上線之前,冰川引擎的開(kāi)發(fā)人員就已經(jīng)絞盡腦汁地優(yōu)化過(guò)它的代碼了。

想在前人的努力上更進(jìn)一步不是完全沒(méi)有可能,但指望憑一個(gè)人的力量在短短三天時(shí)間內(nèi)做到,恐怕自己的系統(tǒng)外掛還得加強(qiáng)。

如此說(shuō)來(lái)……

想對(duì)引擎本身的代碼進(jìn)行優(yōu)化是幾乎不可能實(shí)現(xiàn)的。

自己唯一的希望,恐怕只有在引擎本身代碼之外的地方。

比如,那些被頻繁調(diào)用的底層函數(shù)?

不管是3D引擎還是2D的引擎,不管是國(guó)內(nèi)流行的“冰川”還是國(guó)外比較流行的“荒原”,一切游戲引擎歸根結(jié)底都需要對(duì)底層函數(shù)頻繁的調(diào)用,越底層的函數(shù)被調(diào)用的也就越頻繁。

尤其是3D圖形渲染這一塊!

有時(shí)候玩家碰到大場(chǎng)景出現(xiàn)卡頓,甚至角色懸空、穿墻,其實(shí)很大程度的原因就是圖形算法的速度跟不上。

如果能優(yōu)化底層函數(shù)……

搞不好自己還真有希望搞定這道題?

一瞬間,郝云被自己瘋狂的念頭給嚇了一跳。

臥槽?

他仔細(xì)在心中合計(jì)了一下,這特么好像比優(yōu)化冰川引擎還難啊!

畢竟冰川引擎好歹還算是新歷元年之后的產(chǎn)物,但冰川引擎調(diào)用的那些底層函數(shù),可是在人聯(lián)時(shí)代之前就已經(jīng)被開(kāi)發(fā)出來(lái)了。

但……

萬(wàn)一能行呢?

咽了口唾沫,郝云抱著試一試的想法,找到了冰川引擎目錄下code文件夾中的math.c文件,翻開(kāi)了里面存儲(chǔ)著的大量被調(diào)用函數(shù)。

將這些代碼從頭到尾全看一遍顯然是不現(xiàn)實(shí)的,不過(guò)郝云也沒(méi)打算干這么蠢的事兒。

他只需要找到這款引擎在運(yùn)行時(shí)被調(diào)用次數(shù)最多,每一次加載游戲場(chǎng)景時(shí)幾乎都會(huì)被調(diào)用、并且足以影響到引擎運(yùn)行效率的函數(shù),然后再去里面尋找改進(jìn)的機(jī)會(huì)便可。

很快,郝云鎖定了一條被命名為Q_Sqrt的函數(shù)。

這個(gè)函數(shù)表面上看著平平無(wú)奇,只不過(guò)是一個(gè)運(yùn)用了牛頓迭代法的求平方根倒數(shù)的算法。

然而有意思的是,在這款引擎的運(yùn)行過(guò)程中,需要求平方根倒數(shù)的情形多到了令人發(fā)指的程度。

因此換個(gè)角度來(lái)想,該函數(shù)的運(yùn)算速度,已經(jīng)足以影響到引擎本身的效率。

這就好像航天火箭上的一顆螺絲釘,表面上看火箭的速度并不取決于這顆螺絲釘本身,而是取決于火箭引擎的設(shè)計(jì)和關(guān)鍵的燃料等等,但當(dāng)火箭引擎的設(shè)計(jì)和燃料技術(shù)都發(fā)展到了瓶頸,想要進(jìn)一步提升火箭的效率,就只有從根本的材料上著手研究了。

郝云此時(shí)此刻正在做的,便是類似的事情。

然而……

雖然思路已經(jīng)找到,但想要走通這條路卻并不容易。

到這為止都沒(méi)有任何值得深挖的地方,畢竟牛頓迭代法,本身已經(jīng)是一種非常優(yōu)秀的求平方根倒數(shù)的數(shù)學(xué)方法了。

再想創(chuàng)新?

數(shù)學(xué)方法上改進(jìn)幾乎不可能!

如果想比這更快,恐怕就只有對(duì)輸入值和輸出值建立一個(gè)龐大的數(shù)據(jù)庫(kù)才能實(shí)現(xiàn)了。

然而為區(qū)區(qū)一個(gè)函數(shù)建庫(kù),似乎又顯得本末倒置……

時(shí)間一分一秒過(guò)去,郝云的電腦上,還是一行代碼都沒(méi)有敲下。

在后臺(tái)看著的詹永樞院士輕輕嘆了口氣,眼中浮起了一絲失望的表情。

很明顯,這位101號(hào)選手,已經(jīng)陷入了鉆牛角尖的境地。如果不能立刻改變策略,換一道題目的話,他的進(jìn)度將會(huì)被其他選手遠(yuǎn)遠(yuǎn)甩開(kāi)!

至少他們見(jiàn)到的,已經(jīng)有三名種子選手,分別將其他三道題的進(jìn)度推進(jìn)到四分之一了。

“雖然勇氣可嘉,但這樣下去是不會(huì)有結(jié)果的,”張存浩教授笑了笑說(shuō),“我剛剛看了一圈,好像就他還在研究第四道題。”

“這種題目出現(xiàn)在比賽中就很有問(wèn)題,”詹永樞院士搖了搖頭,“下次比賽可不能這么胡來(lái)了。”

張存浩教授尷尬笑了笑,輕咳了聲:“下次一定。”

然而就在兩人都認(rèn)為,101號(hào)選手已經(jīng)沒(méi)有任何希望了的時(shí)候,坐在電腦桌前的郝云忽然動(dòng)了。

只不過(guò),他的操作好像有些詭異?

只見(jiàn)他沒(méi)有著急去寫(xiě)什么代碼,而是將math.c文件中關(guān)于Q_Sqrt函數(shù)的那一段代碼直接刪掉了。

“他想干什么?”

看著郝云屏幕上的操作,張存浩被這位選手謎一樣的動(dòng)作給驚訝到了。

他大概能猜到這位選手打算干什么,無(wú)非是想重新定義“反平方倒數(shù)”的算法,然而這個(gè)世界上有可能存在比牛頓迭代還要簡(jiǎn)便的算法嗎?

話說(shuō)這已經(jīng)不是程序的范疇,而是數(shù)學(xué)的領(lǐng)域了吧?

詹永樞院長(zhǎng)也被驚訝到了,一時(shí)間沒(méi)有看明白郝云打算干什么。直到他看見(jiàn)一行i=0x5f375a86-(i1)出現(xiàn)在屏幕上時(shí),才微微收縮了瞳孔。

“我可能知道他想干什么了。”

“……?”

張存浩有一臉的懵逼,看向了自己的老師,試圖尋求答案。

然而,詹永樞院士卻絲毫沒(méi)有解答他困惑的打算,只顧自己在那兒摸著下巴的胡渣,看著屏幕上的那段代碼贊許點(diǎn)頭。

“妙啊……”

“實(shí)在是妙!”

請(qǐng)記住本站域名: 黃金屋

快捷鍵: 上一章("←"或者"P")    下一章("→"或者"N")    回車鍵:返回書(shū)頁(yè)
上一章  |  高人竟在我身邊目錄  |  下一章
高人竟在我身邊 手機(jī)網(wǎng)頁(yè)版
瀏覽記錄

字母索引: A |  B |  C |  D |  E |  F |  G |  H |  J |  K |  L |  M |  N |  P |  Q |  R |  S |  T |  W |  X |  Y |  Z


頁(yè)面執(zhí)行時(shí)間: 0.037771
主站蜘蛛池模板: 广丰县| 岳池县| 仁寿县| 蒙城县| 商洛市| 昆明市| 光山县| 朔州市| 华池县| 华安县| 宽甸| 渑池县| 阳泉市| 抚州市| 隆化县| 宜良县| 南开区| 平湖市| 田东县| 辰溪县| 高雄县| 秭归县| 融水| 黑龙江省| 吉安县| 阜南县| 灵璧县| 保德县| 准格尔旗| 伊金霍洛旗| 咸丰县| 新乡市| 德清县| 岫岩| 秦安县| 泌阳县| 四子王旗| 轮台县| 加查县| 那曲县| 遂川县|