翻譯|實(shí)施案例|編輯:陳津勇|2019-12-04 14:55:26.820|閱讀 189 次
概述:如本文分享這個(gè)實(shí)施案例所將,IncrediBuild無(wú)縫集成到Visual Studio?開(kāi)發(fā)環(huán)境,并且有很強(qiáng)的命令行界面,大大增強(qiáng)了Microsoft Visual Studio開(kāi)發(fā)環(huán)境,能極大程度地加快項(xiàng)目開(kāi)發(fā)周期、減輕開(kāi)發(fā)人員工作負(fù)荷。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門(mén)軟控件火熱銷(xiāo)售中 >>
編譯速度慢向來(lái)是C++/C程序語(yǔ)言最大的弱點(diǎn)。開(kāi)發(fā)者花費(fèi)幾個(gè)小時(shí)在工作站上等待整個(gè)產(chǎn)品的創(chuàng)建,或一天花幾十分鐘等待不斷增加的編譯的完成——工作效率很低而且浪費(fèi)時(shí)間.
IncrediBuild對(duì)此首次提供了獨(dú)特有效的解決方案:通過(guò)使用Xoreax分布式編譯(多線(xiàn)程處理)技術(shù) 大大提高Visual Studio project的編譯速度,而且不必改變項(xiàng)目文件代碼。
IncrediBuild無(wú)縫集成到Visual Studio開(kāi)發(fā)環(huán)境,并且有很強(qiáng)的命令行界面,大大增強(qiáng)了Microsoft Visual Studio開(kāi)發(fā)環(huán)境,能極大程度地加快項(xiàng)目開(kāi)發(fā)周期、減輕開(kāi)發(fā)人員工作負(fù)荷。如本文分享的MEDIAPRO使用IncrediBuild將C++和CUDA項(xiàng)目提速85%實(shí)施案例。
免費(fèi)下載IncrediBuild 免費(fèi)下載Visual Studio
關(guān)于MEDIAPRO
MEDIAPRO集團(tuán)是視聽(tīng)行業(yè)的領(lǐng)先技術(shù)服務(wù)供應(yīng)商。其產(chǎn)品AutomaticTV是用于體育賽事的一項(xiàng)革命性視頻制作人工智能技術(shù)。為了滿(mǎn)足不一定有實(shí)際制作團(tuán)隊(duì)預(yù)算的體育賽事組織者,AutomoaticTV通過(guò)其自身基于人工智能技術(shù)的決策,可取代傳統(tǒng)的戶(hù)外轉(zhuǎn)播車(chē)、攝影師、制片人、電視工程師和導(dǎo)演,制作出經(jīng)過(guò)專(zhuān)業(yè)編輯的賽事轉(zhuǎn)播。
困難
MediaPro的CUDA主任工程師Oscar Amoros說(shuō)到:“AutomaticTV采用C++、CUDA、少量OpenGL以及許多其他庫(kù)進(jìn)行構(gòu)建。我們有開(kāi)發(fā)人員專(zhuān)門(mén)負(fù)責(zé)計(jì)算機(jī)視覺(jué)算法,包括我在內(nèi)的其他人負(fù)責(zé)CUDA優(yōu)化,還有一部分人負(fù)責(zé)針對(duì)用戶(hù)界面的QT和OpenGL優(yōu)化。最終形成了龐大的代碼,有大量可以進(jìn)行并行編譯的獨(dú)立組件。我們會(huì)進(jìn)行變更、編譯和測(cè)試。但盡管我們努力減少了許多代碼依賴(lài)項(xiàng),這個(gè)過(guò)程有時(shí)仍然需要大量時(shí)間。”
在不斷地進(jìn)行上下文切換的情況下,難以集中精神的問(wèn)題同樣也困擾著MediaPro的開(kāi)發(fā)人員。Amoros回憶道:“由于編譯時(shí)間太長(zhǎng),我們必須同時(shí)開(kāi)展項(xiàng)目多個(gè)分支方面的工作,當(dāng)一個(gè)分支進(jìn)行編譯時(shí),我們就得開(kāi)展另一個(gè)分支的工作。問(wèn)題在于,當(dāng)你致力于一個(gè)技術(shù)性非常強(qiáng)的分支時(shí),例如優(yōu)化CUDA主機(jī)代碼(CPU和GPU交互),大腦必須100%地專(zhuān)注于工作。這樣一來(lái),你就沒(méi)法簡(jiǎn)單地從一個(gè)分支切換到另一個(gè)分支,需要花幾個(gè)小時(shí)集中精力處理單個(gè)任務(wù),但又需要編譯好幾次。”
IncrediBuild的應(yīng)對(duì)之道
IncrediBuild與NVIDIA建立了深厚的技術(shù)合作,使其成為了加速計(jì)算密集型CUDA編譯的理想工具。NVIDIA GPU計(jì)算軟件總經(jīng)理Ian Buck告訴我們:“憑借IncrediBuild技術(shù),CUDA開(kāi)發(fā)人員可以輕松利用IncrediBuild大幅縮短開(kāi)發(fā)GPU加速應(yīng)用所花費(fèi)的時(shí)間。”
由于IncrediBuild可以加速API和集成測(cè)試、單元測(cè)試、可用性測(cè)試、壓力測(cè)試等等各類(lèi)測(cè)試,MediaPro的開(kāi)發(fā)人員還找到了解決其測(cè)試難題的辦法。
Amoros 稱(chēng):“我們?cè)陂_(kāi)發(fā)人員用于開(kāi)發(fā)C++/CUDA應(yīng)用程序的機(jī)器上安裝了Incredibuild。” 通過(guò)這種方式,IncrediBuild立即掌控了所有安裝機(jī)器上未充分利用的CPU周期,并在它們之間分配相關(guān)任務(wù),從而將編譯時(shí)間縮短了85%,并大幅增加了MediaPro每天的提交和構(gòu)建數(shù)量。“過(guò)去,編譯整個(gè)Visual Studio項(xiàng)目(包括測(cè)試在內(nèi))需要1小時(shí)15分鐘。但現(xiàn)在包括編譯測(cè)試在內(nèi),只需要12分鐘。”
加速這一過(guò)程,消除了在等待當(dāng)前分支進(jìn)行漫長(zhǎng)的編譯時(shí)開(kāi)展另一分支工作的需求,從而對(duì)生產(chǎn)效率產(chǎn)生了深遠(yuǎn)的影響。正如Amoros告訴我們的那樣,“IncrediBuild大大降低了開(kāi)發(fā)人員的挫折感,因?yàn)樗麄兡軌蚋杏X(jué)到更加高產(chǎn),而且專(zhuān)注。如果沒(méi)有IncrediBuild,我們會(huì)覺(jué)得無(wú)法工作了。”
結(jié)果概要
采用IncrediBuild前 | 采用IncrediBuild后 | |
不間斷 C++/CUDA 項(xiàng)目+測(cè)試 | 75分鐘 | 12分鐘 |
想要獲取IncrediBuild、Visual Studio更多資源或正版授權(quán)的伙伴,請(qǐng)聯(lián)系領(lǐng)取
12月,慶圣誕、迎元旦,軟件商城專(zhuān)屬優(yōu)惠價(jià),領(lǐng)優(yōu)惠券再享折上折>>>
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@ke049m.cn
文章轉(zhuǎn)載自: