1簡(jiǎn)介
冗長(zhǎng)的編譯和仿真,對(duì)于稍大的工程,編譯加上仿真可能需要1個(gè)小時(shí)以上并且占用大量?jī)?nèi)存,而跑回歸更是消耗大量的時(shí)間以及內(nèi)存資源,本文主要給大家?guī)鞻CS使用技巧,DPO,DPO全稱是Dynamic Performance Optimizer,主要用于優(yōu)化編譯和仿真(時(shí)間/內(nèi)存),減少資源的使用,屬于VCS的高級(jí)功能。僅需要很少的命令即可引入當(dāng)前工程,體驗(yàn)來看,優(yōu)化基本都在30%以上(數(shù)據(jù)來自亦安自己的測(cè)試,具體以實(shí)際為準(zhǔn))。
2DPO的特性
接入工程簡(jiǎn)單,只需要簡(jiǎn)單的命令
深度優(yōu)化編譯和仿真,包含時(shí)間和內(nèi)存的優(yōu)化
3該怎么使用DPO
目前該功能可能需要較高版本VCS DPO才比較完善。
使用邏輯非常簡(jiǎn)單:第一步,學(xué)習(xí)(learn)以及合并(merge)。第二步,應(yīng)用(apply)。例如有500個(gè)case,我們先在learn模式跑完case,然后merge,之后便可以在應(yīng)用(apply)模式下跑項(xiàng)目。最終會(huì)有比較好的編譯和仿真優(yōu)化,一般情況下,工程沒有巨大改變,不需要重新learn。
我們打開VCS_HOME目錄下,doc/examples/dpo/dpo_use_model,官方給了一個(gè)demo,Makefile如下(部分),主要涉及參考,學(xué)習(xí),合并,獲得建議,應(yīng)用,報(bào)告。涉及的命令非常的簡(jiǎn)單,如果想更深入了解請(qǐng)參閱手冊(cè)。該目錄下執(zhí)行make即可跑demo。
dpo_reference: vcs-sverilog-full64-ntb_optsuvm-1.2ubus_tb_top-debug_access+all-lca-lcomp_ref.log-dpo-dpo_optsapps=vcsgd+user_tag=reference ./simv+UVM_NO_RELNOTES+UVM_TESTNAME=test_2m_4s-lsimv_ref.log dpo_learn: rm-rfsimvsimv.daidircsrcvc_hdrs.h*.keyvcs.cfg vcs-sverilog-full64-ntb_optsuvm-1.2ubus_tb_top-debug_access+all-lca-lcomp_learn.log-dpo-dpo_optsmode=learn+apps=default,lint,upfopt,pgates+user_tag=learn+dbdir=dpo_learndb-dpo_optscfg=cfg ./simv+UVM_NO_RELNOTES+UVM_TESTNAME=test_2m_4s-lsimv_learn.log merge_db: dporgmerge-ddpo_learndb dump_reco: dporgdump-ddpo_learndb echo"#####EnablingallrecommendationsdumpedbyDPOfromdpo_reco.csv#####" sed-i"s/^N,/Y,/g"dpo_reco.csv dpo_apply: rm-rfsimvsimv.daidircsrcvc_hdrs.h*.keyvcs.cfg vcs-sverilog-full64-ntb_optsuvm-1.2ubus_tb_top-debug_access+all-lca-lcomp_apply.log-dpo-dpo_optsreco_file=dpo_reco.csv+apps=default,fgp,lint,upfopt,pgates+user_tag=apply+learn_dbdir=dpo_learndb+cfg=cfg ./simv+UVM_NO_RELNOTES+UVM_TESTNAME=test_2m_4s-lsimv_apply.log dpo_report: dporgreport-ddpo_dbdir
4查看DPO報(bào)告
dporgReport目錄下用瀏覽器打開即可,可以打開相關(guān)的報(bào)告??梢钥吹较嚓P(guān)的優(yōu)化比率,CT(Compile Time),RT(Run Time),RM(Memory)。
5DPO設(shè)置的權(quán)衡
任何事情的選擇很難是各個(gè)方面都會(huì)帶來優(yōu)勢(shì),所以需要結(jié)合自己的項(xiàng)目去權(quán)衡應(yīng)該優(yōu)化那些方面,哪里是關(guān)鍵的設(shè)計(jì),那么選擇優(yōu)化該方向。相關(guān)建議可以在文件dpo_reco.csv打開查看。
審核編輯:黃飛
-
內(nèi)存
+關(guān)注
關(guān)注
8文章
2966瀏覽量
73815 -
VCS
+關(guān)注
關(guān)注
0文章
78瀏覽量
9581
原文標(biāo)題:如何讓你的仿真編譯性能優(yōu)化?(VCS 高級(jí)特性)
文章出處:【微信號(hào):處芯積律,微信公眾號(hào):處芯積律】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論