Siemens的Calibre是業(yè)內(nèi)權(quán)威的版圖驗(yàn)證軟件,被各大Foundry廠廣泛認(rèn)可。用戶可以直接在Virtuoso界面集成Calibre接口,調(diào)用版圖驗(yàn)證結(jié)果數(shù)據(jù),使用起來(lái)極為方便。
今天,我們就來(lái)聊聊這款軟件。
版圖驗(yàn)證是芯片設(shè)計(jì)中非常重要的一環(huán),一共包括三個(gè)環(huán)節(jié)。
DRC(Design Rule Check):檢查版圖是否符合Foundry廠的制造工藝規(guī)則,確保芯片能被正確生產(chǎn)出來(lái);
LVS(Layout Versus Schematic):版圖工程師需要將畫(huà)好的版圖與原理圖對(duì)比,確保兩者所有連接保持一致;
寄生參數(shù)提?。≒arasitic Extraction):將版圖中的寄生參數(shù)提取出來(lái),在Virtuoso中反饋結(jié)果,前端工程師會(huì)進(jìn)行后仿驗(yàn)證,重新評(píng)估電路特性并進(jìn)行修改,保證流片正確。
這三個(gè)環(huán)節(jié)分別由Calibre的DRC、LVS、PEX三種工具來(lái)完成。
Calibre任務(wù)典型特性
重內(nèi)存,可拆分,適合暴力堆機(jī)器
Calibre任務(wù)有兩大特性:
1、重內(nèi)存需求,2T或4T的超大型內(nèi)存機(jī)器都有可能登場(chǎng)
版圖文件很大,需要處理的數(shù)據(jù)量非常大,但本身的邏輯判斷并不復(fù)雜,所以通常不剛需高主頻機(jī)型,但要求多核、大內(nèi)存的機(jī)器。CPU與內(nèi)存的比例通常能達(dá)到1:4或1:8,極端情況下這個(gè)比例會(huì)更高,2T或4T的超大型內(nèi)存機(jī)器都有可能登場(chǎng)。
2、可拆分,無(wú)關(guān)聯(lián),適合暴力堆機(jī)器
我們?cè)?strong>模擬這篇文里寫(xiě)過(guò)版圖驗(yàn)證就像是一個(gè)“大家來(lái)找茬“的游戲。
在運(yùn)行任務(wù)的時(shí)候,Calibre會(huì)把版圖切分成相互沒(méi)有邏輯關(guān)系的塊狀分區(qū),這些分區(qū)之間彼此沒(méi)有相關(guān)性,互不干擾,所以可以同時(shí)進(jìn)行。
切得越細(xì),同時(shí)檢查的人更多,效率就越高。
三體里的切法大家還記得吧,一字橫切。
而芯片只能豎著切,可以十字切法。橫切會(huì)影響到芯片層與層之間的連接關(guān)系。
暴力堆機(jī)器也是有技術(shù)含量的
1、 首先,要有光,你得有大內(nèi)存的機(jī)器
我們的全球資源池可以根據(jù)用戶需求在全球范圍內(nèi)調(diào)度海量云端異構(gòu)資源。GPU、TPU、FPGA,要啥都有。
其中,FCC-B產(chǎn)品提供準(zhǔn)動(dòng)態(tài)資源池,擁有行業(yè)特需的大內(nèi)存機(jī)型,具有較低的整體擁有成本。而且,可以擴(kuò)展到FCC-E使用彈性資源。
總之,大內(nèi)存的機(jī)器,沒(méi)有問(wèn)題。
那么,萬(wàn)一不是一直不夠,是偶爾不夠怎么辦呢?
我們有一個(gè)小技巧,專門應(yīng)用這種內(nèi)存峰值場(chǎng)景。
Swap,交換分區(qū),就是在內(nèi)存不夠的情況下,操作系統(tǒng)先把內(nèi)存中暫時(shí)不用的數(shù)據(jù),存到硬盤(pán)的交換空間,騰出內(nèi)存來(lái)讓別的程序運(yùn)行。
比如跑一組Calibre任務(wù)需要10小時(shí),其中9個(gè)小時(shí)的內(nèi)存使用量都在200G左右,只有1個(gè)小時(shí)達(dá)到了260G。
如果選擇256G內(nèi)存的機(jī)型配置,任務(wù)必崩無(wú)疑。
但要是為了這1小時(shí)不到10G的內(nèi)存溢出而全程使用512G的配置,成本翻倍,未免有點(diǎn)太不劃算了。
使用Swap交換分區(qū)就可以無(wú)縫填補(bǔ)這一空缺,非常匹配這種內(nèi)存峰值場(chǎng)景。
Swap的具體使用案例,戳這篇:Auto-Scale這支仙女棒如何大幅提升Virtuoso仿真效率?
注意:此方法不適合長(zhǎng)期使用,磁盤(pán)的速度和內(nèi)存相比慢了好幾個(gè)數(shù)量級(jí),如果不停讀寫(xiě) Swap,對(duì)系統(tǒng)整體性能有影響。
2、 怎么把這些機(jī)器組隊(duì)管理起來(lái)?
有了機(jī)器,下一步當(dāng)然是要把它們利用起來(lái)。
Calibre默認(rèn)支持單機(jī)多核并行跑任務(wù),這意味著只要機(jī)器足夠大,就可以同時(shí)處理很多任務(wù)。
但是,當(dāng)你的大機(jī)器不夠多,或者根本拿不到大機(jī)器的時(shí)候,就很苦惱了。
我們的方法是:將所有機(jī)器組成一個(gè)集群——多機(jī)多核的方式同時(shí)跑多個(gè)任務(wù)。
關(guān)于單機(jī)、單核、單任務(wù)、多任務(wù)、集群化、并行化進(jìn)一步的定義與區(qū)別,可以看這篇:揭秘20000個(gè)VCS任務(wù)背后的“搬桌子”系列故事
集群自動(dòng)化管理,少量大機(jī)器需要,大量小機(jī)器就更需要了。
為啥?
理由一,能方便地自動(dòng)化運(yùn)維整個(gè)集群
比如軟件安裝配置、資源監(jiān)控、集群管理等工作,是需要IT一臺(tái)臺(tái)機(jī)器去逐一手動(dòng)操作,還是鼠標(biāo)點(diǎn)幾下就可以完成?
理由二,能快速方便地分配業(yè)務(wù),提高資源利用率
比如,臨時(shí)需要將一批機(jī)器從團(tuán)隊(duì)A劃撥給團(tuán)隊(duì)B使用,有沒(méi)有什么辦法可以讓IT快速方便地進(jìn)行配置?
比如,因?yàn)橘Y源使用的不透明和缺乏有序管理,會(huì)出現(xiàn)不同人對(duì)同一資源的爭(zhēng)搶,任務(wù)排隊(duì)等現(xiàn)象。同時(shí),你會(huì)發(fā)現(xiàn)資源利用率還是不高。
3、怎么讓機(jī)器自動(dòng)化干活,不用人操心?
自動(dòng)化干活可太有必要了。
否則,那么多任務(wù),那么多機(jī)器,需要多少雙手和眼睛才能忙得過(guò)來(lái)?
來(lái),我們給你“手”和“眼睛”。
首先是我們的“手”——Auto-Scale功能。
來(lái)看一下本地手動(dòng)跑任務(wù)與Auto-Scale自動(dòng)化跑任務(wù)的區(qū)別:
基于我們自主研發(fā)的調(diào)度器——Fsched,Auto-Scale自動(dòng)伸縮功能自動(dòng)化創(chuàng)建集群,自動(dòng)監(jiān)控用戶提交的任務(wù)數(shù)量和資源需求,動(dòng)態(tài)按需地開(kāi)啟與關(guān)閉所需算力資源,做到分鐘級(jí)彈性伸縮,在提升效率的同時(shí)有效降低成本。
更多療效,戳這篇:Auto-Scale這支仙女棒如何大幅提升Virtuoso仿真效率?
有了“手”干活,還得有“眼睛”盯著防止出錯(cuò)。
我們能多維度監(jiān)控任務(wù)狀態(tài),提供基于EDA任務(wù)層的監(jiān)控、告警、數(shù)據(jù)統(tǒng)計(jì)分析功能與服務(wù)。
如果沒(méi)有這雙“眼睛”,可能出現(xiàn)哪些問(wèn)題?戳這篇:【案例】95后占半壁江山的浙桂,如何在百家爭(zhēng)鳴中快人一步
未來(lái)我們還會(huì)有一篇文章專門討論EDA領(lǐng)域基于業(yè)務(wù)的監(jiān)控功能,敬請(qǐng)期待哦~
你看,不僅可以自動(dòng)化跑任務(wù),還能時(shí)刻幫你盯著任務(wù)是否出錯(cuò)。
來(lái),我們小暴力一下
先說(shuō)結(jié)論:
我們?cè)?strong>單臺(tái)大機(jī)器和多臺(tái)小機(jī)器組合場(chǎng)景下分別跑了同一組Calibre任務(wù)。
單臺(tái)大機(jī)器場(chǎng)景下,隨著核數(shù)的增加,任務(wù)耗時(shí)呈現(xiàn)明顯的線性下降關(guān)系,整體性能曲線非常貼近基準(zhǔn)線(單機(jī)核數(shù)有上限,本次實(shí)證中,我們使用的最大單機(jī)為128核,并根據(jù)32核、64核、128核的耗時(shí)規(guī)律預(yù)估了256核單機(jī)的耗時(shí)數(shù)據(jù),僅供參考)。
多臺(tái)小機(jī)器組合場(chǎng)景下,隨著機(jī)器數(shù)量的翻倍,任務(wù)耗時(shí)同樣線性下降,但在后期倍數(shù)關(guān)系上有所損耗,多機(jī)性能曲線略低于基準(zhǔn)線和單機(jī)性能曲線。
實(shí)證過(guò)程:
1、使用fastone云平臺(tái)調(diào)度32核、64核、128核單機(jī)分別運(yùn)行一組Calibre任務(wù),耗時(shí)分別為14小時(shí)57分49秒、7小時(shí)30分28秒、3小時(shí)50分11秒;
2、按上條實(shí)證數(shù)據(jù),預(yù)估使用fastone云平臺(tái)調(diào)度256核單機(jī)運(yùn)行一組Calibre任務(wù)的耗時(shí)為1小時(shí)58分6秒;
3、使用fastone云平臺(tái)調(diào)度2、4、8臺(tái)32核機(jī)器分別運(yùn)行一組Calibre任務(wù),耗時(shí)分別7小時(shí)43分51秒、4小時(shí)6分14秒、2小時(shí)15分34秒。
還有大家關(guān)心的Intel第四代機(jī)器
我們也搞來(lái)跑了一下
在上一節(jié)中,我們使用的均為第三代英特爾至強(qiáng)可擴(kuò)展處理器,而在2023年1月11日,英特爾正式推出了第四代至強(qiáng)可擴(kuò)展處理器。
我們立馬搞來(lái)跑了一遍,為了對(duì)比參照,我們還拉上了第二代和第三代,并且把核數(shù)都按比例換算為48核。
實(shí)證過(guò)程:
1、使用fastone云平臺(tái)調(diào)度48核第二代英特爾處理器運(yùn)行一組Calibre任務(wù),耗時(shí)10小時(shí)46分26秒;
2、使用fastone云平臺(tái)調(diào)度48核第三代英特爾處理器運(yùn)行一組Calibre任務(wù),耗時(shí)9小時(shí)56分13秒,相比第二代提升7.77%;
3、使用fastone云平臺(tái)調(diào)度48核第四代英特爾處理器運(yùn)行一組Calibre任務(wù),耗時(shí)8小時(shí)18分43秒,相比第三代提升16.35%,比第二代提升22.85%。
可以看到每一代都有提升,且型號(hào)越新,提升幅度越大,三代比二代提升了7.77%,四代比三代提升了16.35%。
而在價(jià)格上,目前四代和三代的類似機(jī)型換算一下,幾乎是相同的。
實(shí)證小結(jié)
1、Calibre DRC/LVS/PEX不剛需高主頻機(jī)型,但要求多核、大內(nèi)存的機(jī)器,任務(wù)可拆分,適合暴力堆機(jī)器;
2、fastone云平臺(tái)的全球動(dòng)態(tài)資源池、集群自動(dòng)化管理能力、自動(dòng)化跑任務(wù)并監(jiān)控告警的功能可完美匹配Calibre的需求;
3、隨著計(jì)算資源的提升,Calibre的任務(wù)耗時(shí)呈現(xiàn)明顯的線性關(guān)系,其中單機(jī)整體性能曲線非常貼近基準(zhǔn)線,多機(jī)效果后期會(huì)略有折損;
4、最新型號(hào)的處理器可以大幅提升Calibre的效率,可根據(jù)項(xiàng)目周期與實(shí)際預(yù)算綜合考量機(jī)型配置。
本次EDA云實(shí)證系列Vol.13就到這里了。
-
芯片設(shè)計(jì)
+關(guān)注
關(guān)注
15文章
993瀏覽量
54772 -
仿真器
+關(guān)注
關(guān)注
14文章
1014瀏覽量
83591 -
SWAP
+關(guān)注
關(guān)注
0文章
51瀏覽量
12776 -
DRC
+關(guān)注
關(guān)注
2文章
148瀏覽量
36090 -
FPGA開(kāi)發(fā)板
+關(guān)注
關(guān)注
10文章
120瀏覽量
31467
原文標(biāo)題:大內(nèi)存、多核、自動(dòng)化,到底誰(shuí)能提升Calibre的效率?
文章出處:【微信號(hào):ZYNQ,微信公眾號(hào):ZYNQ】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論