加入星計劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴散
  • 作品版權(quán)保護
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長期合作伙伴
立即加入
  • 正文
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請入駐 產(chǎn)業(yè)圖譜

Auto-Scale這支仙女棒如何大幅提升Virtuoso仿真效率?

2022/06/01
728
閱讀需 14 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

本期的主角是——Virtuoso。

半導(dǎo)體行業(yè)中使用范圍最廣的EDA應(yīng)用之一。

1991年Virtuoso技術(shù)正式發(fā)布,最初作為掩模設(shè)計師的版圖工具,是Opus平臺的一部分,主要功能包括電路設(shè)計與仿真、版圖設(shè)計、設(shè)計驗證,以及模擬/數(shù)字混合設(shè)計等。

近30年來,Virtuoso產(chǎn)品已和最初有很大不同,但其核心仍然是版圖編輯器。

應(yīng)用工具層面。Cadence一直致力于優(yōu)化EDA應(yīng)用算法和性能,提高自動化水平,將Virtuoso逐漸升級和擴展為集合多項新技術(shù)的系統(tǒng)設(shè)計平臺。

而從應(yīng)用到云資源層,就由我們來發(fā)揮了。

我們針對EDA應(yīng)用云原生適配,為IC研發(fā)設(shè)計人員提供一整套即開即用,快速上手的IC研發(fā)設(shè)計環(huán)境,系統(tǒng)性大幅提升研發(fā)效率。

我們到底是怎么做到的?

研發(fā)效率具體提高在哪些方面?

什么是即開即用的IC研發(fā)設(shè)計環(huán)境?好用嗎?改變原來習(xí)慣嗎?

以下是今天的正文:

用戶需求

芯片設(shè)計公司做數(shù)模混合芯片,經(jīng)常使用Virtuoso調(diào)用Spectre完成仿真任務(wù),需要趕MPW shuttle,即將面臨多項目同時進行、項目關(guān)鍵時間節(jié)點相同的困境。但公司CEO并不想單純靠增加本地機器來解決目前問題,一方面考慮到會對企業(yè)造成比較大的現(xiàn)金流壓力,另一方面公司并沒有專門的IT和CAD團隊。他對能不能用云解決現(xiàn)有問題十分重視,也直接和云廠商交流過,對我們的云上自動化和Auto-Scale功能很感興趣。

實證目標

1、fastone平臺是否支持在云端使用Virtuoso運行仿真任務(wù)?

2、通過平臺使用Virtuoso和本地差別大嗎?

3、Auto-Scale自動化伸縮具體怎么實現(xiàn)的?

4、Slurm調(diào)度器行不行?

實證參數(shù)

平臺:fastone企業(yè)版產(chǎn)品

應(yīng)用:Cadence Virtuoso

適用場景:數(shù)模混合電路設(shè)計及仿真

云端硬件配置:Spectre仿真主要需要的是計算密集型CPU,所以平臺推薦的是計算優(yōu)化型云端實例

調(diào)度器:Slurm(關(guān)于調(diào)度器,下文會詳細講解)

技術(shù)架構(gòu)圖:

一整套即開即用的IC研發(fā)設(shè)計環(huán)境,操作像吃了德芙般順滑

用戶對于在本地單機使用Virtuoso運行仿真任務(wù),已經(jīng)非常熟悉。而對于在云上跑,用戶依然有以下疑問:什么叫一整套?從哪一步到哪一步?云上使用Virtuoso,操作方式會改變嗎?會不會很麻煩?

我們?yōu)橛脩籼峁┑漠a(chǎn)品,從登錄桌面、打開應(yīng)用、配置仿真、提交任務(wù)、自動上云開機運行任務(wù)并自動關(guān)機、查看結(jié)果進行調(diào)試……用戶所需要的操作與本地幾乎完全一致,每一步只需在平臺上使用鼠標簡單點選即可完成。

我們說的“一整套”,就是這個意思。 至于操作方式會不會改變?拿訪問集群舉例。用戶訪問集群,既可以通過命令行,也可以通過WebVNC圖形界面方式直接訪問。

手動模式訪問集群,一共有五步,往往還需要請IT先配置環(huán)境 :1、在云端開一臺機器;2、在云端安裝VNC服務(wù)并進行配置,有幾個用戶使用就需要配置幾個賬號;3、在本地安裝VNC服務(wù)并進行配置;4、在云端開啟VNC服務(wù);5、用戶使用各自賬號登錄客戶端VNC訪問云端。

我們?yōu)樗杏脩裘赓M提供WebVNC功能,自動化創(chuàng)建到訪問集群:1、通過Web瀏覽器登錄fastone平臺;2、在Web界面新建集群、配置資源;3、在已創(chuàng)建的集群點擊WebVNC遠程桌面圖標(同時提供WebSSH遠程命令行功能);4、跳轉(zhuǎn)到虛擬桌面,可在該桌面中操作Virtuoso。

我們還提供了統(tǒng)一的用戶認證,不同用戶可以直接訪問VNC,無需重新配置。這種操作方式給用戶提供了熟悉的操作環(huán)境,使其能夠快速地遠程自動化訪問集群,避免了大量的手動部署,使用體驗更好。 在數(shù)據(jù)傳輸上,我們同樣為用戶提供了不改變操作習(xí)慣的DM工具,用戶無需在多套認證系統(tǒng)之間切換,使用統(tǒng)一的身份認證即可傳輸數(shù)據(jù),并自動關(guān)聯(lián)云端集群進行計算,具體看這里《CAE云實證Vol.8:LS-DYNA求解效率深度測評 │ 六種規(guī)模,本地VS云端5種不同硬件配置》

當然,好處遠遠不止這些。 

Auto-Scale自動伸縮就像仙女棒變大變小變漂亮

fastone通過Auto-Scale功能實現(xiàn)自動化創(chuàng)建集群的過程,可以實現(xiàn)自動監(jiān)控用戶提交的任務(wù)數(shù)量和資源的需求,動態(tài)按需地開啟所需算力資源,在提升效率的同時有效降低成本。 怎么讓仙女棒發(fā)揮作用? 先來設(shè)置一下:

下圖就是開啟Auto-Scale功能后,用戶某項目一周之內(nèi)所調(diào)用云端計算資源的動態(tài)情況。其中橙色曲線為OD實例的使用狀況,紅色曲線為SPOT的使用狀況。OD:On-Demand,按需實例。針對短期彈性需求,按小時計費,但價格比較高。SPOT:可被搶占實例,又稱競價實例。價格最低可達到按需實例價格的10%,相當于秒殺,手快有手慢無,隨時可能被搶占中斷,需要有一定的技術(shù)實力才能使用。

兩個重點:

第一、從圖中可以看到整個階段算力波峰為約3500核,而波谷只有650核左右。用戶使用資源是存在明顯的波峰波谷周期的。Auto-Scale功能可以根據(jù)任務(wù)運算情況動態(tài)開啟云端資源,并在波峰過去后自動關(guān)閉,讓資源的使用隨著用戶的需求自動擴張及縮小,最大程度匹配任務(wù)需求。當然,用戶也可以選擇自己對最大最小值進行設(shè)置,加以限制。

這一方面節(jié)約了用戶成本,不需要時刻保持最高峰使用資源;另一方面也最大限度保證了任務(wù)最大效率運行。比如跑100個corner的仿真,以前只能同時跑10個,要花10天,現(xiàn)在可以同時跑100個,只要1天就可以完成。這兩種方式成本相同,為用戶節(jié)約出了顯著的時間差,大大縮短了任務(wù)運行周期,提升了研發(fā)效率。

第二、我們的Auto-Scale功能支持對不同計費模式(OD、SPOT)實例進行自動伸縮,OD按需實例價格通常為SPOT實例的3-10倍。

Auto-Scale功能可以根據(jù)不同的用戶策略,比如成本最優(yōu)還是時間優(yōu)先,自動化跨區(qū)、跨類型為用戶調(diào)度云資源,完成計算任務(wù)。

至于不同策略具體怎么落地執(zhí)行?相比時間優(yōu)先策略,成本優(yōu)先怎么做到降低成本最多達67%-90%?在這篇實證《生信云實證Vol.3:提速2920倍!用AutoDockVina對接2800萬個分子》里體現(xiàn)得十分明顯。

不僅限于運行任務(wù)期間,其實早在創(chuàng)建集群的時候,自動化Auto-Scale過程就已經(jīng)開始了。在這篇Bladed實證里,fastone平臺在任務(wù)的不同階段采取不同的策略應(yīng)對,除任務(wù)運行時間內(nèi)全部云資源滿負荷運作以外,在數(shù)據(jù)處理和結(jié)果數(shù)據(jù)上傳階段均只開啟了1-2臺機器,而其他準備過程不需要開啟機器。

習(xí)慣了LSF/SGESlurm調(diào)度器到底行不行?

為什么選擇Slurm調(diào)度器?

Virtuoso應(yīng)用原生支持的調(diào)度器有LSF和SGE。LSF作為商業(yè)軟件,由IBM提供商業(yè)支持,是半導(dǎo)體行業(yè)最常用的調(diào)度器軟件。曾經(jīng)衍生出的開源版Openlava在2016后IBM發(fā)起的版權(quán)訴訟之后,2018年正式被禁用。SGE商業(yè)版在去年已經(jīng)隨Univa被Altair收購。類似的,免費開源版已經(jīng)長期無維護和更新,也存在版權(quán)風(fēng)險。

LSF和SGE均按核時收費,價格不菲,如果在云端大規(guī)模使用,價格驚人,而且都需要購買單獨的Resource Connector或Navops Launch產(chǎn)品才能支持在云上使用。

而Slurm作為調(diào)度器四大流派里唯一的純開源派,就不受規(guī)模和費用的限制了。而且Slurm擁有容錯率高、支持異構(gòu)資源、高度可擴展等優(yōu)點,每秒可提交超過1000個任務(wù),且由于是開放框架,高度可配置,擁有超過100種插件,因此適用性相當強。所以我們優(yōu)先選擇Slurm。

關(guān)于這四家主流調(diào)度器:LSF/SGE/Slurm/PBS以及它們的9個演化版本,可以看這篇文章《億萬打工人的夢:16萬個CPU隨你用》,我們進行了整體梳理和盤點,尤其是對云的支持方面劃了重點。

我們是怎么實現(xiàn)的?答案是:SGE Wrapper。

Wrapper是什么呢?可以看看下圖,可以看到同樣的命令在不同的調(diào)度器之間有不同的實現(xiàn)方式:

而Wrapper就像不同調(diào)度器命令語言中的翻譯器,我們相當于通過這個翻譯器,把Slurm語言翻譯成了Virtuoso聽得懂的SGE語言,于是應(yīng)用就能正常運行啦。

關(guān)于不同調(diào)度器的使用效果。我們曾經(jīng)在Proteus™ OPC實證場景四中分別使用SGE和Slurm在云端和本地分別調(diào)度2000核/5000核運行相同OPC任務(wù)。

結(jié)論是:對于計算結(jié)果無影響。 

關(guān)于調(diào)度器如何在多機器多任務(wù)的情況下提升資源利用率,并進行自動化管理,可以看這篇《EDA云實證Vol.7:揭秘20000個VCS任務(wù)背后的“搬桌子”系列故事》 

任務(wù)監(jiān)控還能搞出省錢大招?

根據(jù)我們對整個任務(wù)消耗資源狀態(tài)的監(jiān)控,發(fā)現(xiàn)運算該組任務(wù)所使用的內(nèi)存大部分時間在5G以下,但會有極短的一段時間(不超過半小時)達到17.5G。

從上圖中可以看到,Swap剩余量在短時間內(nèi)從8.6G跌到了7.1G,隨后很快回升到了8.38G,也就是說如果沒有Swap,運行內(nèi)存的瞬時缺口約為1.5G,勢必造成任務(wù)失敗。

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

如果配置16G的內(nèi)存,任務(wù)最后會因此失敗。但如果選擇配置32G內(nèi)存,著實有點浪費,畢竟也就超了一點點。而同等CPU資源下,配備32G內(nèi)存的價格普遍要比16G貴1.4-1.9倍。

正是由于完備的監(jiān)控和任務(wù)性能評估機制,我們建議用戶在云端運算時配備16G內(nèi)存,同時使用Swap功能渡過這段內(nèi)存波峰,以達到最高的性價比。

實證小結(jié)

1、fastone平臺支持在云端使用Virtuoso調(diào)用Spectre運行仿真任務(wù);

2、用戶使用這套研發(fā)設(shè)計環(huán)境能閉環(huán)完成Virtuoso運行任務(wù),且基本不改變用戶習(xí)慣;

3、fastone平臺的云上自動化模式和Auto-Scale功能能有效幫用戶縮短研發(fā)周期,同時降低使用成本;

4、Slurm調(diào)度器不會影響計算結(jié)果,是更具性價比及擴展性的選擇;

5、fastone平臺擁有完備的監(jiān)控及任務(wù)性能評估機制。

本次EDA實證系列Vol.10就到這里了。下一期我們聊HFSS。

相關(guān)推薦

電子產(chǎn)業(yè)圖譜

微信公眾號“老石談芯”主理人,博士畢業(yè)于倫敦帝國理工大學(xué)電子工程系,現(xiàn)任某知名半導(dǎo)體公司高級FPGA研發(fā)工程師,從事基于FPGA的數(shù)據(jù)中心網(wǎng)絡(luò)加速、網(wǎng)絡(luò)功能虛擬化、高速有線網(wǎng)絡(luò)通信等領(lǐng)域的研發(fā)和創(chuàng)新工作。曾經(jīng)針對FPGA、高性能與可重構(gòu)計算等技術(shù)在學(xué)術(shù)界頂級會議和期刊上發(fā)表過多篇研究論文。