0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

重內(nèi)存、可拆分,暴力堆機器……Calibre技術(shù)向攻略

陌上風騎驢看IC ? 來源:陌上風騎驢看IC ? 2023-08-16 16:19 ? 次閱讀

Siemens的Calibre是業(yè)內(nèi)權(quán)威的版圖驗證軟件,被各大Foundry廠廣泛認可。用戶可以直接在Virtuoso界面集成Calibre接口,調(diào)用版圖驗證結(jié)果數(shù)據(jù),使用起來極為方便。

今天,我們就來聊聊這款軟件。

版圖驗證是芯片設計中非常重要的一環(huán),一共包括三個環(huán)節(jié)。

DRC(Design Rule Check):檢查版圖是否符合Foundry廠的制造工藝規(guī)則,確保芯片能被正確生產(chǎn)出來;

LVS(Layout Versus Schematic):版圖工程師需要將畫好的版圖與原理圖對比,確保兩者所有連接保持一致;

寄生參數(shù)提?。≒arasitic Extraction):將版圖中的寄生參數(shù)提取出來,在Virtuoso中反饋結(jié)果,前端工程師會進行后仿驗證,重新評估電路特性并進行修改,保證流片正確。

97aa0536-3bca-11ee-9e74-dac502259ad0.jpg

這三個環(huán)節(jié)分別由Calibre的DRC、LVS、PEX三種工具來完成。

Calibre任務典型特性

重內(nèi)存,可拆分,適合暴力堆機器

Calibre任務有兩大特性:

1、重內(nèi)存需求,2T或4T的超大型內(nèi)存機器都有可能登場

版圖文件很大,需要處理的數(shù)據(jù)量非常大,但本身的邏輯判斷并不復雜,所以通常不剛需高主頻機型,但要求多核、大內(nèi)存的機器。CPU與內(nèi)存的比例通常能達到1:4或1:8,極端情況下這個比例會更高,2T或4T的超大型內(nèi)存機器都有可能登場。

2、可拆分,無關聯(lián),適合暴力堆機器

我們在模擬這篇文里寫過版圖驗證就像是一個“大家來找茬“的游戲。

在運行任務的時候,Calibre會把版圖切分成相互沒有邏輯關系的塊狀分區(qū),這些分區(qū)之間彼此沒有相關性,互不干擾,所以可以同時進行。

切得越細,同時檢查的人更多,效率就越高。

97cb7eb4-3bca-11ee-9e74-dac502259ad0.png

三體里的切法大家還記得吧,一字橫切。

而芯片只能豎著切,可以十字切法。橫切會影響到芯片層與層之間的連接關系。

97b34d3a-3bca-11ee-9e74-dac502259ad0.png

暴力堆機器也是有技術(shù)含量的

97c2186a-3bca-11ee-9e74-dac502259ad0.png

1、 首先,要有光,你得有大內(nèi)存的機器

我們的全球資源池可以根據(jù)用戶需求在全球范圍內(nèi)調(diào)度海量云端異構(gòu)資源。GPU、TPU、FPGA,要啥都有。

980afb34-3bca-11ee-9e74-dac502259ad0.jpg

其中,F(xiàn)CC-B產(chǎn)品提供準動態(tài)資源池,擁有行業(yè)特需的大內(nèi)存機型,具有較低的整體擁有成本。而且,可以擴展到FCC-E使用彈性資源。

總之,大內(nèi)存的機器,沒有問題。

那么,萬一不是一直不夠,是偶爾不夠怎么辦呢?

我們有一個小技巧,專門應用這種內(nèi)存峰值場景。

Swap,交換分區(qū),就是在內(nèi)存不夠的情況下,操作系統(tǒng)先把內(nèi)存中暫時不用的數(shù)據(jù),存到硬盤的交換空間,騰出內(nèi)存來讓別的程序運行。

比如跑一組Calibre任務需要10小時,其中9個小時的內(nèi)存使用量都在200G左右,只有1個小時達到了260G。

9815d87e-3bca-11ee-9e74-dac502259ad0.png

如果選擇256G內(nèi)存的機型配置,任務必崩無疑。

但要是為了這1小時不到10G的內(nèi)存溢出而全程使用512G的配置,成本翻倍,未免有點太不劃算了。

使用Swap交換分區(qū)就可以無縫填補這一空缺,非常匹配這種內(nèi)存峰值場景。

2、 怎么把這些機器組隊管理起來?

有了機器,下一步當然是要把它們利用起來。

Calibre默認支持單機多核并行跑任務,這意味著只要機器足夠大,就可以同時處理很多任務。

但是,當你的大機器不夠多,或者根本拿不到大機器的時候,就很苦惱了。

我們的方法是:將所有機器組成一個集群——多機多核的方式同時跑多個任務。

集群自動化管理,少量大機器需要,大量小機器就更需要了。

為啥?

理由一,能方便地自動化運維整個集群

比如軟件安裝配置、資源監(jiān)控、集群管理等工作,是需要IT一臺臺機器去逐一手動操作,還是鼠標點幾下就可以完成?

理由二,能快速方便地分配業(yè)務,提高資源利用率

比如,臨時需要將一批機器從團隊A劃撥給團隊B使用,有沒有什么辦法可以讓IT快速方便地進行配置?

比如,因為資源使用的不透明和缺乏有序管理,會出現(xiàn)不同人對同一資源的爭搶,任務排隊等現(xiàn)象。同時,你會發(fā)現(xiàn)資源利用率還是不高。

3、怎么讓機器自動化干活,不用人操心?

自動化干活可太有必要了。

否則,那么多任務,那么多機器,需要多少雙手和眼睛才能忙得過來?

來,我們給你“手”和“眼睛”。

首先是我們的“手”——Auto-Scale功能。

來看一下本地手動跑任務與Auto-Scale自動化跑任務的區(qū)別:

985316a8-3bca-11ee-9e74-dac502259ad0.png

基于我們自主研發(fā)的調(diào)度器——Fsched,Auto-Scale自動伸縮功能自動化創(chuàng)建集群,自動監(jiān)控用戶提交的任務數(shù)量和資源需求,動態(tài)按需地開啟與關閉所需算力資源,做到分鐘級彈性伸縮,在提升效率的同時有效降低成本。

有了“手”干活,還得有“眼睛”盯著防止出錯。

我們能多維度監(jiān)控任務狀態(tài),提供基于EDA任務層的監(jiān)控、告警、數(shù)據(jù)統(tǒng)計分析功能與服務。

9885fb68-3bca-11ee-9e74-dac502259ad0.jpg

你看,不僅可以自動化跑任務,還能時刻幫你盯著任務是否出錯。

來,我們小暴力一下

先說結(jié)論:

我們在單臺大機器和多臺小機器組合場景下分別跑了同一組Calibre任務。

單臺大機器場景下,隨著核數(shù)的增加,任務耗時呈現(xiàn)明顯的線性下降關系,整體性能曲線非常貼近基準線(單機核數(shù)有上限,本次實證中,我們使用的最大單機為128核,并根據(jù)32核、64核、128核的耗時規(guī)律預估了256核單機的耗時數(shù)據(jù),僅供參考)。

多臺小機器組合場景下,隨著機器數(shù)量的翻倍,任務耗時同樣線性下降,但在后期倍數(shù)關系上有所損耗,多機性能曲線略低于基準線和單機性能曲線。

98a0ea7c-3bca-11ee-9e74-dac502259ad0.png

實證過程:

1、使用fastone云平臺調(diào)度32核、64核、128核單機分別運行一組Calibre任務,耗時分別為14小時57分49秒、7小時30分28秒、3小時50分11秒;

2、按上條實證數(shù)據(jù),預估使用fastone云平臺調(diào)度256核單機運行一組Calibre任務的耗時為1小時58分6秒;

3、使用fastone云平臺調(diào)度2、4、8臺32核機器分別運行一組Calibre任務,耗時分別7小時43分51秒、4小時6分14秒、2小時15分34秒。

還有大家關心的Intel第四代機器

我們也搞來跑了一下

在上一節(jié)中,我們使用的均為第三代英特爾至強可擴展處理器,而在2023年1月11日,英特爾正式推出了第四代至強可擴展處理器。

我們立馬搞來跑了一遍,為了對比參照,我們還拉上了第二代和第三代,并且把核數(shù)都按比例換算為48核。

實證過程:

1、使用fastone云平臺調(diào)度48核第二代英特爾處理器運行一組Calibre任務,耗時10小時46分26秒;

2、使用fastone云平臺調(diào)度48核第三代英特爾處理器運行一組Calibre任務,耗時9小時56分13秒,相比第二代提升7.77%;

3、使用fastone云平臺調(diào)度48核第四代英特爾處理器運行一組Calibre任務,耗時8小時18分43秒,相比第三代提升16.35%,比第二代提升22.85%。

9929123a-3bca-11ee-9e74-dac502259ad0.png

可以看到每一代都有提升,且型號越新,提升幅度越大,三代比二代提升了7.77%,四代比三代提升了16.35%。

而在價格上,目前四代和三代的類似機型換算一下,幾乎是相同的。

實證小結(jié)

1、Calibre DRC/LVS/PEX不剛需高主頻機型,但要求多核、大內(nèi)存的機器,任務可拆分,適合暴力堆機器;

2、fastone云平臺的全球動態(tài)資源池、集群自動化管理能力、自動化跑任務并監(jiān)控告警的功能可完美匹配Calibre的需求;

3、隨著計算資源的提升,Calibre的任務耗時呈現(xiàn)明顯的線性關系,其中單機整體性能曲線非常貼近基準線,多機效果后期會略有折損;

4、最新型號的處理器可以大幅提升Calibre的效率,可根據(jù)項目周期與實際預算綜合考量機型配置。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • cpu
    cpu
    +關注

    關注

    68

    文章

    11038

    瀏覽量

    216033
  • Calibre
    +關注

    關注

    0

    文章

    18

    瀏覽量

    9905
  • 寄生參數(shù)

    關注

    0

    文章

    16

    瀏覽量

    2171

原文標題:重內(nèi)存、可拆分,暴力堆機器……Calibre技術(shù)向攻略

文章出處:【微信號:MoShangFengQiLv,微信公眾號:陌上風騎驢看IC】歡迎添加關注!文章轉(zhuǎn)載請注明出處。

收藏 0人收藏

    評論

    相關推薦
    熱點推薦

    堆棧內(nèi)存內(nèi)存之間的區(qū)別

    編寫有效的代碼需要了解堆棧和內(nèi)存,這使其成為學習編程的重要組成部分。不僅如此,新程序員或職場老手都應該完全熟悉堆棧內(nèi)存內(nèi)存之間的區(qū)別,
    發(fā)表于 08-07 12:23 ?889次閱讀
    堆棧<b class='flag-5'>內(nèi)存</b>和<b class='flag-5'>堆</b><b class='flag-5'>內(nèi)存</b>之間的區(qū)別

    內(nèi)存管理(中)

    內(nèi)存管理(中) 歡迎研究ZigBee的朋友和我交流。。。
    發(fā)表于 08-11 19:16

    Mentor工具簡介Calibre物理驗證系列

    DRC-H  作為Calibre DRC的選項,Calibre DRC-H確保層次化的DRC成為可能,層次化設計規(guī)則檢查維持數(shù)據(jù)庫的層次化結(jié)構(gòu),并且充分利用設計數(shù)據(jù)的層次化關系減少數(shù)據(jù)處理時間、內(nèi)存
    發(fā)表于 08-28 11:58

    【原創(chuàng)】內(nèi)存的那些事

    作者:蔡琰老師(張飛實戰(zhàn)電子高級工程師)上一篇我們分享了棧內(nèi)存的概念,現(xiàn)在我們分享下內(nèi)存的概念。在一般的編譯系統(tǒng)中,內(nèi)存的分配方向和棧
    發(fā)表于 07-12 09:48

    和棧的區(qū)別是什么

    在回答完進程的虛擬地址空間布局之后(上一篇),面試官可能抓住和棧深入展開。和棧的區(qū)別①管理方式:棧由編譯器自動管理;由程序員控制,使用方便,但易產(chǎn)生內(nèi)存泄露。②生長方向:棧
    發(fā)表于 12-22 07:26

    Laker & Calibre Bandgap 實例教程

    ;Calibre_Layout.pdfcalibre/drc : drc rule文件以及運行目錄calibre/lvs : lvs rule文件以及運行目錄calibre/gds
    發(fā)表于 07-10 14:36 ?97次下載

    Java開發(fā)者必須了解的內(nèi)存技術(shù)

    先來看一個 Demo:在 Demo 中分配內(nèi)存用的是 allocateDirect 方法,但其內(nèi)部調(diào)用的是 DirectByteBuffer,換言之,DirectByteBuffer 才是實際操作
    發(fā)表于 07-01 10:19 ?3876次閱讀
    Java開發(fā)者必須了解的<b class='flag-5'>堆</b>外<b class='flag-5'>內(nèi)存</b><b class='flag-5'>技術(shù)</b>

    嵌入式操作系統(tǒng)FreeRTOS內(nèi)存如何管理和

    嵌入式操作系統(tǒng)FreeRTOS內(nèi)存管理和
    的頭像 發(fā)表于 01-10 15:17 ?5184次閱讀
    嵌入式操作系統(tǒng)FreeRTOS<b class='flag-5'>內(nèi)存</b>如何管理和<b class='flag-5'>堆</b>

    什么是內(nèi)存內(nèi)存是如何分配的?

    在一般的編譯系統(tǒng)中,內(nèi)存的分配方向和棧內(nèi)存是相反的。當棧內(nèi)存從高地址低地址增長的時候,
    的頭像 發(fā)表于 07-05 17:58 ?1w次閱讀

    什么是內(nèi)存?存儲方式是什么樣的?

    只有在內(nèi)存里面才會發(fā)生內(nèi)存泄漏的問題,在棧內(nèi)存中不會發(fā)生內(nèi)存泄漏。因為棧內(nèi)存在自動分配空間之后
    的頭像 發(fā)表于 06-22 10:29 ?1420次閱讀
    什么是<b class='flag-5'>堆</b><b class='flag-5'>內(nèi)存</b>?存儲方式是什么樣的?

    Calibre加冕暴力機器之王!秘密都在這個平臺

    版圖文件很大,需要處理的數(shù)據(jù)量非常大,但本身的邏輯判斷并不復雜,所以通常不剛需高主頻機型,但要求多核、大內(nèi)存機器。CPU與內(nèi)存的比例通常能達到1:4或1:8,極端情況下這個比例會更高,2T或4T的超大型
    的頭像 發(fā)表于 07-06 11:26 ?876次閱讀
    <b class='flag-5'>Calibre</b>加冕<b class='flag-5'>暴力</b><b class='flag-5'>堆</b><b class='flag-5'>機器</b>之王!秘密都在這個平臺

    實戰(zhàn)演練:Calibre如何成為暴力機器之王

    版圖文件很大,需要處理的數(shù)據(jù)量非常大,但本身的邏輯判斷并不復雜,所以通常不剛需高主頻機型,但要求多核、大內(nèi)存機器。CPU與內(nèi)存的比例通常能達到1:4或1:8,極端情況下這個比例會更高,2T或4T的超大型
    的頭像 發(fā)表于 07-17 15:25 ?975次閱讀
    實戰(zhàn)演練:<b class='flag-5'>Calibre</b>如何成為<b class='flag-5'>暴力</b><b class='flag-5'>堆</b><b class='flag-5'>機器</b>之王

    EDA云實證Vol.13:暴力機器之王——Calibre

    Siemens的Calibre是業(yè)內(nèi)權(quán)威的版圖驗證軟件,被各大Foundry廠廣泛認可。用戶可以直接在Virtuoso界面集成Calibre接口,調(diào)用版圖驗證結(jié)果數(shù)據(jù),使用起來極為方便。 今天,我們
    的頭像 發(fā)表于 07-17 16:20 ?822次閱讀
    EDA云實證Vol.13:<b class='flag-5'>暴力</b><b class='flag-5'>堆</b><b class='flag-5'>機器</b>之王——<b class='flag-5'>Calibre</b>

    內(nèi)存Calibre使用秘訣:大內(nèi)存+Swap交換分區(qū)

    版圖文件很大,需要處理的數(shù)據(jù)量非常大,但本身的邏輯判斷并不復雜,所以通常不剛需高主頻機型,但要求多核、大內(nèi)存機器。CPU與內(nèi)存的比例通常能達到1:4或1:8,極端情況下這個比例會更高,2T或4T的超大型
    的頭像 發(fā)表于 08-02 15:22 ?1125次閱讀
    <b class='flag-5'>內(nèi)存</b><b class='flag-5'>向</b><b class='flag-5'>Calibre</b>使用秘訣:大<b class='flag-5'>內(nèi)存</b>+Swap交換分區(qū)

    jvm配置內(nèi)存初始值參數(shù)

    JVM(Java Virtual Machine)是Java語言的運行環(huán)境,它通過解釋字節(jié)碼并執(zhí)行相應的指令來運行Java程序。在JVM中,(Heap)是用于存儲對象實例的內(nèi)存區(qū)域。而在Java
    的頭像 發(fā)表于 12-05 14:17 ?988次閱讀

    電子發(fā)燒友

    中國電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會員交流學習
    • 獲取您個性化的科技前沿技術(shù)信息
    • 參加活動獲取豐厚的禮品