PCI Express 多播功能
如圖 1 所示,通過多播將相同的數(shù)據(jù)傳輸給多個接收人,能夠降低開銷,實現(xiàn)系統(tǒng)資源的優(yōu)化。在這個非常簡單的模型中,對比不支持多播的PCIe 交換器與支持多播的 PCIe 交換器。支持多播功能的系統(tǒng)或交換器可以利用一個由交換器管理的一個多播處理替代4個順序環(huán)路處理,從而使發(fā)起的 CPU 更方便地繼續(xù)其他任務(wù),實現(xiàn)更有效的資源利用率。這種效率可以使系統(tǒng)計算資源承擔額外任務(wù)而充分提升性能,或者憑借所需的較低性能或較少的計算資源而節(jié)省系統(tǒng)成本和功耗。
本文引用地址:http://m.butianyuan.cn/article/93477.htm除了系統(tǒng)資源優(yōu)化外,將環(huán)路單播處理轉(zhuǎn)換成一個多播處理器,可以縮短傳輸延遲,提高系統(tǒng)點與點之間的一致性。參照圖 1 中簡單的模型,假設(shè)數(shù)據(jù)的順序傳輸按編號發(fā)生,那么相對第一個端點而言,第四個端點是過時的,直到所有過程完成。在單主系統(tǒng)中,這樣的差距相對較小,因為大部分數(shù)據(jù)由一個主機傳輸,在進一步動作之前,將會完成四個處理描述。然而,在分布式智能和點對點流量系統(tǒng)中,這種由重復單播處理帶來的差距會產(chǎn)生潛在的數(shù)據(jù)排序問題,因為包可能在相對不同的時間傳輸?shù)矫總€端點,而非環(huán)路單播包的每個端點。假設(shè)通過環(huán)路發(fā)送至端點的信息是將路由表更新到通信系統(tǒng)包處理線卡的每四個網(wǎng)絡(luò)處理單元(NPU),那么每個端點路由表的更新都會基于順序傳輸和完成來增加延遲,隨之產(chǎn)生的差距允許線卡等待更新,路由根據(jù)此刻過時的表繼續(xù)接收包。
另外,多播數(shù)據(jù)可帶來整個系統(tǒng)較好的鏈路利用率,通常可以消除增強的性能所帶來的瓶頸,或?qū)崿F(xiàn)配置更小、更有效使用的鏈路,以節(jié)省功耗,降低電路板設(shè)計的復雜性?;谏鲜龆x的 PCIe 多播協(xié)議只有在分支被占用才會進行數(shù)據(jù)備份。圖2 描述了通過一對 PCIe 交換器可能擁有多個層級 PCIe 互連結(jié)構(gòu)。如圖左側(cè)所示,將相同的環(huán)路單播數(shù)據(jù)發(fā)送到端點 1、2、3 和 4,會導致同一數(shù)據(jù)多次通過鏈路 1 和 4。圖右側(cè)的系統(tǒng)利用 PCIe 多播功能,只需為每個需要邏輯復制數(shù)據(jù)的鏈路傳輸一次數(shù)據(jù)即可。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評論