在线免费观看成年人视频-在线免费观看国产-在线免费观看国产精品-在线免费观看黄网站-在线免费观看精品

產(chǎn)品分類

當(dāng)前位置: 首頁 > 工業(yè)電氣產(chǎn)品 > 端子與連接器 > 線路板連接器 > FFC連接器

類型分類:
科普知識
數(shù)據(jù)分類:
FFC連接器

NVIDIA BlueField DPU應(yīng)用程序的不同編譯方法

發(fā)布日期:2022-04-25 點(diǎn)擊率:43

隨著我們進(jìn)入 NVIDIA BlueField DPU 應(yīng)用程序開發(fā)的新世界,高效地設(shè)置構(gòu)建步驟非常重要,以便您能夠無縫地{code =》 compile =》 unit-test}。在本文中,我介紹了為 DPU 編譯應(yīng)用程序的不同方法。

DOCA 數(shù)據(jù)平面插件的自由范圍路由

在 DPU 應(yīng)用開發(fā) 在系列文章中,我談到了在中創(chuàng)建 DOCA 數(shù)據(jù)平面插件 FRR 用于卸載策略。 FRR 的代碼計(jì)數(shù)接近 100 萬行( 789678 SLOC ),這使得它成為測量構(gòu)建時(shí)間的最佳候選。

直接在 BlueField DPU 上開發(fā)

DPU 具有 Arm64 體系結(jié)構(gòu),一種快速啟動 DPU 應(yīng)用程序的方法是直接在 DPU 上開發(fā)。本測試使用的是 NVIDIA BlueField2 ,帶有 8G RAM 和 8xCortex-A72 CPU

我安裝了 BlueField 啟動文件( BFB ),它為 DPU 提供 Ubuntu 20.04.3 操作系統(tǒng)映像。它還包括 DOCA-1.2 和 DPDK-20.11.3 的庫。為了使用 DOCA 庫構(gòu)建應(yīng)用程序,我將 DPDK pkgconfig位置添加到PKG_CONFIG路徑。

root@dpu-arm:~# export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/opt/mellanox/dpdk/lib/aarch64-linux-gnu/pkgconfig

接下來,通過克隆 FRR 并切換到 DOCA 數(shù)據(jù)平面插件分支,我在 DPU 上設(shè)置了我的代碼工作區(qū)。

root@dpu-arm:~/code# git clone  https://github.com/AnuradhaKaruppiah/frr.git  
root@dpu-arm:~/code# cd frr root@dpu-arm:~/code/frr# git checkout dp-doca

FRR 需要一系列不斷發(fā)展的先決條件,這些先決條件在FRR 社區(qū)文檔安裝了這些依賴項(xiàng)后,我將 FRR 配置為包括 DPDK 和 DOCA 數(shù)據(jù)平面插件。

root@dpu-arm:~/code/frr# ./bootstrap.sh root@dpu-arm:~/code/frr# ./configure --build=aarch64-linux-gnu --prefix=/usr --includedir=${prefix}/include --mandir=${prefix}/share/man --infodir=${prefix}/share/info --sysconfdir=/etc --localstatedir=/var --disable-silent-rules --libdir=${prefix}/lib/aarch64-linux-gnu --libexecdir=${prefix}/lib/aarch64-linux-gnu --disable-maintainer-mode --disable-dependency-tracking --enable-exampledir=/usr/share/doc/frr/examples/ --localstatedir=/var/run/frr --sbindir=/usr/lib/frr --sysconfdir=/etc/frr --with-vtysh-pager=/usr/bin/pager --libdir=/usr/lib/aarch64-linux-gnu/frr --with-moduledir=/usr/lib/aarch64-linux-gnu/frr/modules "LIBTOOLFLAGS=-rpath /usr/lib/aarch64-linux-gnu/frr" --disable-dependency-tracking --disable-dev-build --enable-systemd=yes --enable-rpki --with-libpam --enable-doc --enable-doc-html --enable-snmp --enable-fpm --disable-zeromq --enable-ospfapi --disable-bgp-vnc --enable-multipath=128 --enable-user=root --enable-group=root --enable-vty-group=root --enable-configfile-mask=0640 --enable-logfile-mask=0640 --disable-address-sanitizer --enable-cumulus=yes --enable-datacenter=yes --enable-bfdd=no --enable-sharpd=yes --enable-dp-doca=yes --enable-dp-dpdk=yes

因?yàn)槲矣?DPU 作為 my 開發(fā)環(huán)境Roment ,我構(gòu)建并安裝了 FRR 二進(jìn)制文件:

root@dpu-arm:~/code# make –j12 all; make install

以下是構(gòu)建時(shí)間的進(jìn)展。我用多種方法來衡量:

是時(shí)候使用make -j12 all和make install構(gòu)建和安裝二進(jìn)制文件了

是時(shí)候構(gòu)建相同的二進(jìn)制文件了,但也可以使用dpkg-buildpackage –j12 –uc –us將它們組裝到 Debian 軟件包中

第一種方法用于編碼和單元測試。第二種生成 DEB 的方法需要與其他外部開發(fā)環(huán)境上的構(gòu)建時(shí)間進(jìn)行比較。


時(shí)間上的差異是意料之中的。生成一個(gè)包需要幾個(gè)額外的步驟。

使用 DPU 作為開發(fā)環(huán)境有一些明顯的優(yōu)勢。

您可以在不離開工作區(qū)的情況下進(jìn)行編碼、構(gòu)建和安裝,然后進(jìn)行單元測試。

您可以為增量代碼更改優(yōu)化構(gòu)建。

最后一種選擇通常是與完整構(gòu)建相比,大幅縮短構(gòu)建時(shí)間。例如,我在 FRR 中修改了 DOCA 數(shù)據(jù)平面代碼,并用以下結(jié)果重建:

root@dpu-arm:~/code/frr# time make –j12 >>>>>>>>>>>>> snipped make output >>>>>>>>>>>> real 0m3.119s user 0m2.794s sys 0m0.479s

雖然這可能會讓事情變得更簡單,但它需要無限期地為每個(gè)開發(fā)人員保留 DPU 的許可證,僅用于應(yīng)用程序開發(fā)或維護(hù)。您的開發(fā)環(huán)境可能還需要更多的內(nèi)存和馬力,因此長期來看,這是一個(gè)不太可行的選擇。

在 x86 服務(wù)器上開發(fā)

我的 Bluefield2 DPU 由一臺 x86-64 Ubuntu 20.04 服務(wù)器托管,我在開發(fā)環(huán)境中使用了這臺服務(wù)器。

root@server1-x86:~# lscpu |grep "CPU(s):|Model name" CPU(s): 32 Model name: Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz root@server1-x86:~# grep MemTotal /proc/meminfo MemTotal: 131906300 kB

在本例中,構(gòu)建機(jī)器是 x86 ,應(yīng)用程序?qū)⑦\(yùn)行的主機(jī)是 DPU-Arm64 。有幾種方法可以做到這一點(diǎn):

在 x86 構(gòu)建機(jī)器上使用 Arm 仿真。 A 。 DOCA 開發(fā)容器 作為 DOCA 軟件包的一部分提供。

使用交叉編譯工具鏈。

在這個(gè)測試中,我使用了第一個(gè)選項(xiàng),因?yàn)樗亲詈唵蔚摹5诙€(gè)選項(xiàng)可以提供不同的性能,但創(chuàng)建該工具鏈有其挑戰(zhàn) 。

我在 x86 服務(wù)器上下載并加載了bfb_builder_doca_ubuntu_20.04容器,并啟動了它。

root@server1-x86:~# sudo docker load -i bfb_builder_doca_ubuntu_20.04-mlnx-5.4.tar root@server1-x86:~# docker run -v ~/code:/code --privileged -it -e container=dock er doca_v1.11_bluefield_os_ubuntu_20.04-mlnx-5.4:latest

DOCA 和 DPDK 庫預(yù)先安裝在這個(gè)容器中,我只需要將它們添加到PKG_CONFIG路徑。

root@86b87b0ab0c2:/code # export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/opt/mellanox/dpdk/lib/aarch64-linux-gnu/pkgconfig

我在容器中設(shè)置了工作區(qū)和 FRR 先決條件,與前面的選項(xiàng)相同。

root@86b87b0ab0c2:/code # git clone  https://github.com/AnuradhaKaruppiah/frr.git  
root@86b87b0ab0c2:/code # cd frr root@86b87b0ab0c2:/code/frr # git checkout dp-doca

我可以在這個(gè) DOCA 容器中構(gòu)建我的應(yīng)用程序,但我無法對其進(jìn)行測試。因此,必須將 FRR 二進(jìn)制文件構(gòu)建并打包到 DEB 中,然后將其復(fù)制到 BlueField DPU 進(jìn)行測試。我設(shè)置了 FRR Debian 規(guī)則,以匹配前面選項(xiàng)中使用的 FRR 構(gòu)建配置,并生成了包:

root@86b87b0ab0c2:/code/frr # dpkg-buildpackage –j12 –uc -us

表 2 顯示了構(gòu)建時(shí)間與以前方法的比較。


表 2 。 DPU Arm 和 X86 構(gòu)建時(shí)間

構(gòu)建時(shí)間的巨大飛躍讓我感到驚訝,因?yàn)槲矣幸慌_庫存充足的 x86 服務(wù)器,而且沒有 Docker 限制。因此,將 CPU 和 RAM 扔到一個(gè)問題上似乎并不總是有幫助!這種性能下降是因?yàn)榭珞w系結(jié)構(gòu),正如您在下一個(gè)選項(xiàng)中看到的那樣。

在 AWS 引力子實(shí)例中開發(fā)

接下來,我嘗試在 Arm 上構(gòu)建我的應(yīng)用程序,但這次是在一臺馬力更大的外部服務(wù)器上。為此,我使用了 Amazon EC2 Graviton 實(shí)例,其規(guī)格與我的 x86 服務(wù)器相當(dāng)。

Arm64 arch , Ubuntu 20.04 操作系統(tǒng)

128G 內(nèi)存

32 伏 CPU

root@ip-172-31-28-243:~# lscpu |grep "CPU(s):|Model name" CPU(s): 32 Model name: Neoverse-N1 root@ip-172-31-28-243:~# grep MemTotal /proc/meminfo MemTotal: 129051172 kB

為了在本例中設(shè)置 DOCA 和 DPDK 庫,我安裝了DOCA SDK 回購元包.

root@ip-172-31-28-243:~# dpkg -i doca-repo-aarch64-ubuntu2004-local_1.1.1-1.5.4.2.4.1.3.bf.3.7.1.11866_arm64.deb root@ip-172-31-28-243:~#  apt update root@ip-172-31-28-243:~# apt install doca-sdk

克隆和構(gòu)建 FRR Debian 包的其余步驟與前面的選項(xiàng)相同。

表 3 顯示了構(gòu)建在 AWS Arm 實(shí)例上的運(yùn)行情況。


表 3 。 DPU Arm 、 X86 和 AWS Arm 的構(gòu)建時(shí)間

這是一個(gè)明顯的贏家,不需要咖啡。

圖 1 顯示了這些環(huán)境中的編譯時(shí)間。

圖 1 。具有不同選項(xiàng)的 FRR 構(gòu)建時(shí)間

總結(jié)

在本文中,我討論了 DPU 應(yīng)用程序的幾個(gè)開發(fā)環(huán)境:

BlueField 增值稅

x86 服務(wù)器上的 DOCA 開發(fā)容器

AWS 引力計(jì)算實(shí)例

你可以直接在 DPU 上制作應(yīng)用程序原型,在 x86 DOCA 開發(fā)容器中進(jìn)行開發(fā)實(shí)驗(yàn),然后用 DOCA 抓取一個(gè) AWS Graviton 實(shí)例,使其進(jìn)入 hyperspeed !

關(guān)于作者

Anuradha Karuppiah 是 NVIDIA 網(wǎng)絡(luò)的首席軟件工程師。 Anuradha 使用 FRR (自由范圍路由軟件套件)設(shè)計(jì)和實(shí)現(xiàn) EVPN 解決方案。

審核編輯:郭婷

 

下一篇: PLC、DCS、FCS三大控

上一篇: 歐菲光8P鏡頭項(xiàng)目已研

推薦產(chǎn)品

更多
国产VA在线观看免费| 久久精品国产99国产精品澳门| 国产精品原创AV片国产日韩| 黑人大雞巴ⅩⅩⅩ高潮| 农村风流大炕作爱| 天天看高清影视在线观看| 亚洲人成无码WWW久久久| 4D肉蒲团之性奴大战奶水| 粉嫩AV一区二区夜夜嗨| 精品一卡2卡3卡4卡新区在线| 男女做AJ视频免费的网站| 天美传媒MV免费观看完整| 亚洲乱码无人区卡1卡2卡3| CHINA中国人妻VIDEO| 国产午夜福利100集发布| 女人张开腿让男人添| 性XXXXX欧美极品少妇| 在线亚洲人成电影网站色WWW| 成人无码H免费动漫在线观看| 黑人狂桶女人高潮嗷嗷叫小说| 女人收缩时男人舒服吗| 雯雅婷在工地被民工玩| 中文字幕日本人妻久久久免费| 国产成人精品999在线观看| 理论片在线播放网站观看| 铜铜铜铜铜铜铜铜铜好多深| 中国凸偷窥XXXX自由视频| 国产情侣一区二区| 人人妻人人澡人人爽不卡视频| 亚洲精品一线二线三线无人区| 插花弄玉小说荔枝很甜作者卿凌| 久久久久99精品国产片| 太平公主秘史在线观看免费| 中文字幕乱码亚洲无线码三区| 国产老熟女狂叫对白| 欧美日韩不卡高清在线看| 亚洲AV无码AV制服另类专区| 差差差很疼30分钟的视频大全| 两个男人吮她的花蒂和奶水视频| 性色AV一区二区三区夜夜嗨| 非洲黑人吊巨大VS亚洲女| 欧美黑人巨大最猛性XXXXX| 亚洲熟妇AV一区二区三区漫画| 国产成人午夜福利在线小电影| 人妻丰满熟妇AV无码区APP| 正在播放东北夫妻内射| 久久精品无码一区二区APP | 你下水好多下水道BD| 亚洲区激情区无码区| 国产午夜无码片免费| 下面饿了想吃大香肠| 国产成网站18禁止久久影院 | 免费无码又爽又刺激高潮| 亚洲AV优女天堂熟女| 黑人巨大跨种族VIDEO| 亚洲国产婷婷香蕉久久久久久| 精品无人区麻豆乱码1区2区| 一区二区精品视频日本| 妺妺坐在我腿上勃起弄了视频| 97久久人人超碰国产精品| 人妻中出受孕 中文字幕在线| 丰满熟妇乱子又伦| 亚洲av成人一区| 经典国产乱子伦精品视频| 又湿又紧又大又爽A视频国产| 欧美精品黑人成人另类视频| 方辰苏婉儿是哪本小说的主角 | 少妇人妻AV毛片在线看| 国产人妻麻豆蜜桃色精品电影| 亚洲一区二区三区无码国产| 女人被弄到高潮叫床免| 真实差差差无掩盖视频30分钟| 精品无码黑人又粗又大又长| 一本色道久久HEZYO无码 | 成人无码视频在线观看| 欧美午夜性春猛交XXX| 成人H视频在线观看| 日本公与丰满熄的| 99精品人妻无码专区在线视频区| 日本人妻人人人澡人人爽| 亚洲AV片无码久久尤物| 精品无码国产一区二区三区麻豆| 影音先锋手机AV资源站| 欧美人与性动交Α欧美精品| 成熟丰满熟妇高潮XXXXX91| 午夜亚洲福利在线老司机| 久久九九精品99国产精品| 999精品国产人妻无码系列| 日韩精品无码一区二区三区AV| 国产AV高清无亚洲| 亚洲精品无码MⅤ在线观看| 女儿国免费观看完整版在线| 丁香五月缴情网站| 亚洲成色WWW成人网站| 久久精品国产久精国产| 在线观看国产精品乱码APP| 欧美人妻AⅤ中文字幕| 国产精品久久久久无码AV| 伊人久久精品无码AV一区| 人妻少妇出轨中文字幕| 韩国三级在线观看| 孕妇奶水仑乱A级毛片免费看| 少妇ASS浓PICSXXXXB| 国产一区二区女内射| AVTT天堂网AV无码| 天天做天天爱夜夜爽毛片毛片| 久久久久国产一区二区| 大学生被内谢粉嫩无套| 亚洲性爱一区二区| 人妻精品无码一区二区三区| 国产又黄又潮娇喘视频在线观看| 亚洲熟妇久久国内精品| 深夜成人毛片天堂| 久久久久久久精品妇女99| 国产69精品久久久久久人妻精品 | 日本适合十八岁以上人群的护肤品| 国语对白做受XXXXX在线| 在线中文新版最新版在线| 僧侣と交わる色欲の夜に | 国语自产偷拍精品视频偷| 啊灬啊灬啊灬快灬深视频无遮掩 | 被公侵犯肉体中文字幕电影| 亚洲日韩国产精品无码AV| 日本爆乳丰满熟妇XXXX| 久久久久精品无码专区| 国产精品未满十八禁止观看| JAPANESE日本护士XXX| 野花高清视频免费观看完整版中文| 少妇高清一区二区免费看| 女被啪到深处喷水GIF动态视频| 国产精品成人亚洲777| 被CAO的奶水直喷高H| 中国人妻XXXXX免费看| 亚洲精品国产AV现线| 无码人妻精品一区二区三区下载| 麻豆一二三区AV精品传媒| 娇妻呻吟黑人又粗又大视频| 成在人线AV无码免观看麻豆 | 中文字幕精品亚洲无线码一区| 亚洲成AV人在线观看网站| 玩丰满少妇ⅩXX性人妖| 欧美熟妇精品一区二区蜜桃视频| 老子午夜理论影院理论| 久久WWW免费人成_看片中文| 好紧好骚好诱人好软| 国产凸凹视频一区二区| 纯肉高H爽文粗大| 成人午夜精品久久久久久久| ZPS无套内射视频免费播放| av在线一区二区三区| 伊人久久大香线蕉AV网禁呦| 亚洲一区二区三区自拍公司| 亚洲裸男GAY自慰网站| 我当着我老公面给人C| 投诉12345最狠的办法| 忘忧草日本在线播放WWW| 图片区小说区偷拍区日韩| 人人妻人人澡人人爽| 色婷婷五月综合亚洲小说| 少妇被粗大的猛烈的进出69影院| 色欲色香天天天综合网站免费| 日韩免费无码人妻波多野| 色欲av无码一区二区人妻精油 | 久久久无码一区二区三区| 国内精品国产成人国产三级 | YOUJIZZ丰满熟妇| 成人综合伊人五月婷久久| 东北老女人高潮大叫对白| 成片在线看一区二区草莓 | 亚洲熟女AV综合网五月| 中国老太婆XXXXX| FREE嫩白18SEⅩ性HD处| 666西方大但人文艺术| 帮妺妺洗澡忍不住C了她作文| YASEE在线2021| 国产成人精品午夜二三区波多野| 高潮久久久久久久久不卡| 国产免费久久精品99久久| 教官在我腿间疯狂驰聘视频| 狠狠色噜噜狠狠狠777米奇小说| 久久国产加勒比精品无码| 欧美A级毛欧美1级A大片式放| 日韩一区二区三区射精| 小雪被老汉各种姿势玩弄 | 性色a∨精品高清在线观看| 亚洲欧洲无卡二区视頻| 97精品人妻系列无码人妻| 二三四五六七无产乱码| 国产在线无码一区二区三区| 久久久久国产亚洲AⅤ麻豆| 欧美性受XXXX人人本视频| 挽起裙子跨开双腿坐下去| 亚洲日本一线产区和二线产| 4444亚洲人成无码网在线观看| 丰满少妇熟女高潮流白浆| 精品少妇av无码美人妻| 日本牲交大片免费观看| 亚洲欧美精品SUV| 92午夜少妇极品福利无码电影| 丰满的继牳3中文字幕系列免费|