国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

云數(shù)據(jù)中心網(wǎng)絡多用戶多業(yè)務并發(fā)性算法

2021-12-02 08:19陳小龍
科學技術創(chuàng)新 2021年32期
關鍵詞:多用戶端口乘法

陳小龍

(銳捷網(wǎng)絡股份有限公司,福建 福州 350000)

1 概述

隨著Web2.0 時代的到來,基于互聯(lián)網(wǎng)的網(wǎng)上交易應用迅猛發(fā)展,尤其出現(xiàn)類似每年的“雙十一”等可以說是購物的狂歡節(jié),隨之而來的就是網(wǎng)絡數(shù)據(jù)量的爆炸式增長,為了保障數(shù)據(jù)服務的穩(wěn)定運行,在實現(xiàn)云數(shù)據(jù)中心運營平臺產品上線前的能模擬百億級別訪問量的情景再現(xiàn),設計基于RDMA 技術的云數(shù)據(jù)中心網(wǎng)絡多用戶多業(yè)務算法,模擬多用戶多條業(yè)務流,實現(xiàn)仿真多用戶多條業(yè)務流測目的,本文通過基于RDMA 技術的云數(shù)據(jù)中心網(wǎng)絡進行數(shù)據(jù)建模,設計Parallel Matrix Multiplication 算法實現(xiàn)RDMA Ib_write 源端口變化,解決了當前無法仿真多用戶多條業(yè)務流測試瓶頸,為應對百億級數(shù)量訪問量的數(shù)據(jù)中心的穩(wěn)定運行提供運營前的測試保障。

2 研究背景及相關工作

2.1 數(shù)據(jù)中心網(wǎng)絡拓撲結構

基于云的數(shù)據(jù)中心計算網(wǎng)絡集群常見有兩類架構。傳統(tǒng)情況下云計算網(wǎng)絡架構會分為三層:接入層、匯聚層和核心層。如圖1。

圖1

另外一種比較常見的云計算網(wǎng)絡集群架構,在Spine 節(jié)點和Leaf 節(jié)點之間可能會存在三層連接,而Spine 節(jié)點和Core 節(jié)點之間也可能會存在三層連接,這種網(wǎng)絡架構相比于前面提到的架構而言,其擴展粒度要更細,可以細化到一組或者多組進行接入(圖2)。

2.2 數(shù)據(jù)中心網(wǎng)內數(shù)據(jù)分派機制

無論選用那種數(shù)據(jù)中心網(wǎng)絡集群架構,海量的業(yè)務流數(shù)據(jù)在傳輸中往往會出現(xiàn)延遲、丟包等現(xiàn)象,但單用戶性能測試無法實現(xiàn)多用戶多業(yè)務流并發(fā)性的檢測,為了能實時了解數(shù)據(jù)中心網(wǎng)絡多用戶多業(yè)務并發(fā)性數(shù)據(jù)的傳輸過程,發(fā)現(xiàn)數(shù)據(jù)傳輸過程中影響帶寬、產生延遲、丟包現(xiàn)象的形成因素,解決了當前無法仿真多用戶多條業(yè)務流測試瓶頸,解決不需增設服務器的情況下多用戶并發(fā)性問題。

3 云數(shù)據(jù)中心多業(yè)務并發(fā)性算法

3.1 問題描述

當今時代存在數(shù)據(jù)大爆炸的特征。信息的高速增長要求領域技術和軟件工具處理大量的數(shù)據(jù)。為了應對云數(shù)據(jù)中心的多業(yè)務大數(shù)據(jù)挑戰(zhàn),一些分布式內存的并行執(zhí)行模型已經被提出:MapReduce, 迭代MapReduce,圖處理和數(shù)據(jù)流圖處理并行執(zhí)行模型。MapReduce 編程模型已經應用到很大范圍的計算應用,因為它能提供簡單的使用和處理大規(guī)模數(shù)據(jù)時的效率。但是MapReduce 有其局限性。比如MapReduce 處理多個相關的異構數(shù)據(jù)集合時的效率不高。MPI 是一個開放的通訊協(xié)議,用于編寫并行程序。MPI 的目標是高性能、大規(guī)模及可移植性。

3.2 MPI 計算架構

mpirun 是MPI 程序的啟動腳本程序,它提供簡化了并行程序的啟動,隱藏了底層的實現(xiàn)細節(jié),為用戶提供了一個通用的MPI 處理機。Mpirun 在執(zhí)行并行程序時,參數(shù)-np 指明了需要并行運行的進程個數(shù)。mpirun 首先在本地機器上啟動一個進程,然后根據(jù)machines 文件中所列出的主機,為每個主機啟動一個進程。一般會給每個節(jié)點分一個固定的標號,類似于身份ID,在消息通信中會用到。

3.3 多業(yè)務并發(fā)性算法

我們選擇并行矩陣乘法程序來評估多用戶多任務算法的性能,因為并行矩陣乘法有著良好的通信和計算開銷模式。

矩陣乘矩陣的性能模型已經被研究了好幾十年。并行矩陣乘法的計算復雜度以N 的立方增長,而它的內存開銷以N 的平方增長。并行矩陣乘法的工作量已經被分為許多同構的子任務并且被并行執(zhí)行。并行矩陣乘法良好的計算和通信模式使它成為研究多任務多用戶算法程序的良好應用。我們提出了一個精確的分析模型來分析MPI 并行矩陣乘法。我們的多用戶多任務的并行矩陣乘法的算法開銷為:

MPI 并行矩陣乘法算法代碼如下:int main(int argc, char* argv[]) {

4 討論

我們實現(xiàn)了支持多用戶用任務的MPI 并行矩陣乘法算法程序。使用分析模型精確的分析了這一算法程序的通信開銷和計算開銷。該分析模型使我們能夠實時了解數(shù)據(jù)中心網(wǎng)絡多用戶多業(yè)務并發(fā)性數(shù)據(jù)的傳輸過程,發(fā)現(xiàn)數(shù)據(jù)傳輸過程中影響帶寬、產生延遲、丟包現(xiàn)象的形成因素。

5 仿真實驗

5.1 實驗環(huán)境設計

5.2 實驗過程。

5.2.1 軟件工具

軟件方面,OEM 廠商Dell 將Mellanox 網(wǎng)卡固件程序升級至最新版本:Network_Firmware_TPTR3_LN_14.20.18.20_01.BIN;以確保支持RDMA 源端口變化等高級特性。此外MPI 驅動程序采用 的 是 Mellanox 原 廠 驅 動 :MLNX_MPI_LINUX-4.2-1.0.0.0-rhel7.4-x86_64。

(1)確認系統(tǒng)裝有網(wǎng)絡適配器(HCA/NIC),采用下面的命令可以顯示Mellanox HCA 的安裝信息:

5.2.2 硬件工具

測試使用的RDMA 和RoCE 協(xié)議中,以太網(wǎng)交換機需要支持PFC, ECN, ETS 功能;網(wǎng)卡需要支持RoCE 協(xié)議。網(wǎng)卡主要使用了Mellanox ConnectX-4 LX 系列雙25Gpbs 網(wǎng)口網(wǎng)卡。在測試中,主要測試了銳捷S6500-4C 交換機,在部分測試中也有使用到S6510 交換機。

5.2.3 測試過程

(1)以root 權限登陸到系統(tǒng)。

(2)運行安裝腳本 #./mlnxMPIinstall;運行前如果安裝過程中需要升級網(wǎng)絡適配器固件ConnectX-3/ConnectX-3 Pro - 重啟 驅 動、ConnectX-4/ConnectX-4 Lx - 重 啟 系 統(tǒng) 、ConnectX-5/ConnectX-5 Ex - 重啟系統(tǒng);否則重啟驅動#/etc/init.d/openibd restart。

(3)運行hca_self_test.MPI 實用程序來驗證InfiniBand 鏈接是否up。該實用程序還檢查和顯示額外的信息,例如:HCA 固件版本、內核體系結構、驅動程序版本、與它們的狀態(tài)一起活動的HCA 端口的數(shù)量、節(jié)點GUID 等信息。如需了解有關hca_self_test. MPI 的 更 多 細 節(jié) , 查 看 文 件 :docs/readme_and_user_manual/hca_self_test. readme。

(4)安裝完成后,運行命令/ etc/infiniband/ info 來獲取關于安裝的Mellanox 的信息,例如前綴、內核版本和安裝參數(shù),在啟動后自動加載的模塊列表可以在/ etc/infiniband/ openib. conf文件中找到。

(5)端口設置

創(chuàng)建一個包含信息(源端口、目的端口、源IP、目的IP、協(xié)議)的五元組,利用Parallel Matrix Multiplication 算法實現(xiàn)RDMA Ib_write 源端口變化,實現(xiàn)多用戶、多業(yè)務端口變化的目的,達成億級的用戶量和數(shù)據(jù)量。設置過程如下:

Step1:五元組信息(源端口、目的端口、源IP、目的IP、協(xié)議)初始化。

(1)源mac 無變化(24:8a:07:9a:28:83)目的mac 無變化(58:69:6c:14:ca:01)。

(2)源ip 無變化(10.10.10.177)目的ip 無變化(30.0.0.182)。

(3)源端口變化隨機,目的端口隨機。

(4)協(xié)議:RoCE。

(5)報文長度:1082。

Step 2:利用Parallel Matrix Multiplication 算法實現(xiàn)RDMA MPI 源端口變化,根據(jù)用戶五元組中的源端口的變化,確定業(yè)務服務數(shù)量;當業(yè)務服務數(shù)量小于預設閾值3000 時,不進行任何處理,當業(yè)務服務數(shù)量大于預設閾值3000 時,轉到Step 3 執(zhí)行。從而實現(xiàn)多用戶、多業(yè)務端口變化的目的,達成億級的用戶量和數(shù)據(jù)量。

Step 3:在MPI 業(yè)務下,從接收的用戶多類業(yè)務請求中獲取MPI 矩陣乘法鏈路帶寬等參數(shù)信息,根據(jù)這些信息給鏈路分配帶寬,實現(xiàn)鏈路負載均衡。當矩陣的行和列較大時,如行,列都大于1024,此時矩陣直接相乘會導致內存空間不夠,并出現(xiàn)多次讀取的問題。把整個矩陣乘法的動作,切割成很多局部小矩陣的乘法,這樣就可以把兩個小矩陣加載到共享內存中,小矩陣本身的乘法就不需要再加載其它數(shù)據(jù)到內存了。把大的整體矩陣A、B 分成小的局部矩陣時,矩陣C=A*B,A、B、C 分別為M*K、K*N、M*N 的矩陣,其中,M = wp,N =hq,K =kr。具體分割是將某些連續(xù)行和某些連續(xù)列的交叉部分劃分為一塊。確保每個元素都在唯一一個局部矩陣里。將矩陣A 和B 分割成A 和B的子矩陣。從而達到優(yōu)化程序,節(jié)約緩存的目的。具體為:

(1)定義MPI 矩陣行和列的數(shù)據(jù)結構,分別是MPI_Comm row_comm 和MPI_Comm col_comm;The BLAS matrix*matrix multiply 算法,當M>1024,N>1024 情況下,啟動Parallel Matrix Multiplication 算法(并行矩陣),并開啟多線程調用。

(2)從接收的用戶業(yè)務請求中獲取MPI 矩陣乘法的參數(shù)信息,將矩陣分成局部小矩陣,并給局部要相乘的矩陣分配內存,分配具體方法如下:

1 首先將矩陣分塊,將矩陣C 分解為p × q 的分塊矩陣Cij,每個Cij=(A × B)ij是一個w × h 的小矩陣,A 分解成為p × k 個分塊矩陣Aij,每個Aij是一個w × r 的局部矩陣,B 分解成為k × q 的分塊矩陣Bij,每個Bij是一個r × h 的局部矩陣。則分塊矩陣乘法的定義為:

2 mpi_bcast 行塊,本地矩陣塊乘法。

3 mpi_send_receive 列塊,mpi_bcast, mpi_send_receive, 使用mpi rdma ucx 通信庫,實現(xiàn)源端口變化發(fā)送和接受行和塊數(shù)據(jù)。

Step 4:根據(jù)矩陣BMR(broadcast-multiply-roll algorithm)算法結果,計算出運行時間,最終輸出用戶數(shù)量,線程數(shù)量,計算出網(wǎng)絡延遲和帶寬。

5.3 實驗結果

根據(jù)上文中所述的方案及實驗過程,經測試得到如下的實驗結果。圖4 是MPI 矩陣乘法并行開銷。MPI 矩陣乘法的并行開銷定義如下:

圖4 MPI 矩陣乘法并行開銷

6 結論

本論文設計了云數(shù)據(jù)中心網(wǎng)絡多用戶多業(yè)務并發(fā)性算法,并行矩陣乘法的加速比呈線性增長模式,解決了當前無法仿真多用戶多條業(yè)務流測試瓶頸,同時通過矩陣乘法解決業(yè)務性能仿真無法實現(xiàn)問題。

猜你喜歡
多用戶端口乘法
華為交換機端口Hybrid 模式的應用
一種有源二端口網(wǎng)絡參數(shù)計算方法
一種端口故障的解決方案
《整式的乘法與因式分解》鞏固練習
隔離型三端口變換器的H∞魯棒控制
把加法變成乘法
河北省南水北調中線受水區(qū)水資源統(tǒng)一調配方案研究
一種基于LBS的多用戶位置共享方法MULS
VBA實現(xiàn)SE的多用戶記錄
乘法豬
浦江县| 酒泉市| 麻城市| 白水县| 社会| 万源市| 永泰县| 桓仁| 屏山县| 东丰县| 长宁县| 万荣县| 卫辉市| 长顺县| 手机| 城步| 左云县| 曲周县| 宁化县| 沭阳县| 南京市| 巴林右旗| 南郑县| 云龙县| 绥宁县| 新乡市| 北安市| 南木林县| 乐昌市| 龙口市| 绥化市| 锦屏县| 新泰市| 辽宁省| 宁强县| 阜宁县| 扶风县| 民乐县| 二连浩特市| 郓城县| 紫金县|