《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 業界動態 > Myrinet系統軟件GM分析

Myrinet系統軟件GM分析

2009-04-27
作者:麥聯叨 戴梅萼

  摘? 要: GM是Myrinet專用的系統軟件,由于采用了用戶層通信、在LANai上運行MCP等機制,故具有占用系統開銷小、延遲短、帶寬大等優點,在國外已廣泛應用于并行計算領域。

  關鍵詞: Myrinet? GM? 用戶層通信? LANai

?

1 GM簡述

  GM是美國MyriCom公司為其高性能網絡產品Myrinet而推出的系統軟件,專門用于網絡并行計算,在國外已廣泛應用于大規模并行計算領域。

  GM的設計思想就是要實現一種高帶寬低延遲,主機開銷極少的通信方式。GM的高效率,除了采用用戶層通信機制等以外,關鍵在于充分配合Myrinet在硬件架構上的特性。GM在Myrinet網卡的LANai芯片上運行MCP,承擔了大部分的通信處理工作,大大減輕了主機的通信開銷??偟膩碚f,GM具有如下特性:

  ·支持超過1000個節點;

  ·可在不可靠網絡環境中提供可靠、有序的數據傳輸服務;

  ·低開銷,每個數據包只耗費主機大約1μs的處理時間;

  ·通過提供高低兩個優先級,可實現高效的防死鎖算法;

  · 對多個用戶層程序直接訪問網絡接口提供存儲保護;

  · 理論上支持的消息長度可達231-1字節,實際則受限于主機DMA內存大小;

  · 自動對Myrinet進行映射,解決路由問題。

  GM的不足之處在于編程模式不靈活和不支持多線程。

2 GM的結構

  GM由MCP,DRIVER,LIBGM三部分構成。這三部分之間的關系可以用圖1來描述。

  LIBGM為用戶程序提供編程接口,其中最重要的是發送和接收函數。此外,還提供一整套通用函數,如初始化、DMA內存管理、令牌管理、哈希管理、CRC校驗等。

  LIBGM 所實現的功能可分成三類:第一類是通用函數,如哈希管理;第二類是通過DRIVER實現的功能,如內存映射功能;第三類是和MCP協同完成的功能,如發送和接收操作。其中第三類是完成數據通信功能的核心。為提高整個系統的性能,LIBGM和MCP之間的交互都繞開了操作系統,避免了包括在用戶態和核心態之間的切換,從用戶空間到核心空間數據拷貝等在內的各種開銷。因此,從發送和接收操作的路徑上看,GM采用的是用戶層通信。

  DRIVER是GM中的一個重要部分。其最主要的功能是完成MCP的初始化,其次是提供一些輔助性的功能。以Linux + x86平臺為例,DRIVER以Module的形式實現,當被加載到內核的時候,DRIVER同時完成一系列初始化工作,包括:查找并自動配置PCI網卡設備,把MCP從主機加載到LANai的EPROM上,并且對LANai進行初始化,對LANai發出reset指令,驅動MCP運行。LIBGM通過調用DRIVER的ioctl功能來完成各種輔助功能。

  MCP 是GM最關鍵的部分,GM的其他功能都是在MCP的基礎上構架起來的。MCP運行在Myrinet的網卡的LANai芯片上,它由DRIVER加載到LANai上。MCP借助LANai上的CPU和SRAM承擔了大部分的通信處理工作,包括:在主機內存和LANai SRAM之間的數據DMA傳送、數據包的拆分和組裝、CRC校驗、通信的應答管理、端口和令牌資源的分配、調度管理等。因此,主機方面的通信開銷幾乎為零。

  網卡上的SRAM主要用作發送和接收數據的緩沖。MCP采取端口(port)、優先級(Priority)和發送/接收令牌(Token)等手段來實現資源的控制、分配和利用。對用戶程序而言,網卡上只有固定數目的端口,每個端口有高低兩個優先級,而每個端口有固定數目的發送和接收令牌。在發送或接收前,必須首先要打開端口,并申請發送或接收令牌,然后才能以某個優先級發送或者接收數據。與此機制相適應,采用了MCP的如圖2所示的數據結構方式。

?

  如圖2,MCP的數據是以多級鏈表的方式組織的。第一級是表示各個主機之間的互連關系的雙向鏈表;在該雙向鏈表的每個節點處掛上一條表示通過該連接進行傳輸的第二級子端口雙向鏈表SP;而在子端口雙向鏈表的每個節點處,還掛接一條要通過該子端口進行數據發送的第三級發送令牌ST鏈表。用戶程序發送數據時,只需要在這個多級鏈表結構中掛上發送令牌,因此開銷很小,大概只需要1μs的處理時間。

3 GM的工作原理和編程模型

  下面介紹GM的數據發送和接收的工作過程。實際程序中,通信前需要進行一系列預備工作:

  · 選定一個通信端口,調用gm_open()打開該端口。gm_open()進行初始化工作,主要是打開設備文件(在Linux下一個GM端口對應一個設備文件),將LANai上的EPPROM和SRAM映射到主機的內存中去,以便用戶程序的訪問。

  · 申請DMA存儲區。GM使用LANai上的DMA引擎來實現主機內存與LANai SRAM之間的數據傳輸,所以主機方面的數據必須存放在DMA存儲區中。

  · 申請發送令牌。令牌是LANai的資源管理手段,每個端口都只有有限數量的發送令牌和接收令牌。獲得令牌是使用LANai資源的保證,因此發送操作完成后,須馬上釋放令牌以保證后面的發送操作可以獲得必要的LANai資源。

  現在假設上述預備工作已經完成,一臺主機調用gm_send()發送數據。gm_send()僅僅根據發送參數填寫Send Token數據結構,并將其掛接到MCP的多級鏈表上。

  MCP以輪詢的方式不斷檢測多級鏈表,當發現有發送請求,就啟動發送事件處理句柄來完成實際的發送操作。這個過程包括數據從主機到LANai SRAM的數據DMA傳送、數據拆分、組包、CRC校驗、發送到網絡上。當一個發送請求被處理后,就會被轉到另外的一個鏈表中,該鏈表維護所有已經處理但是尚未收到對方應答的發送請求。只有收到了對方的應答后,數據發送才算真正完成。

  在接收方,當網卡采集到數據以后,會啟動處理句柄對其處理,包括數據校驗、重組、數據應答等,然后存放在SRAM緩存中等待以DMA的方式傳送到主機內存中。這需要主機方面預先準備DMA內存和接收令牌,如果主機長時間不提供接收資源,那么這些數據將被丟棄。

4 GM的編程模型和API

  GM用戶程序一般都是用輪詢的方式執行的。程序在進行了打開端口、申請內存等預備工作以后,就進入一個循環,在這個循環里,通過不斷地調用gm_receive()來獲取當前發生的事件,比如發送完成、有數據到達、系統出錯等來決定相應的動作。下面是GM用戶程序的通用模式:

  ?

  事實上這種編程模式不太靈活,這也是GM的高性能運作模式所決定的。

  LIBGM為GM用戶程序提供了一整套的API接口。這套API提供了以下的功能:

  · 系統初始化和釋構;

  · 數據發送,接收;

  · DMA內存的申請,釋放,映射;

  · Token管理;

  · 哈希存儲管理;

  · 獲取和定制系統參數,比如獲取節點ID,設定可接收數據包的最少長度。

?

參考文獻

1 GM-1.1.3 source code,http://www.myri.com/

2 Nanette J.Boden,et al,. Myrinet: a gigabit-per-second?local area network.[J]1999,29~36.

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          欧美国产精品日韩| 91久久在线| 亚洲欧美乱综合| 久久久久**毛片大全| 欧美伦理a级免费电影| 亚洲黄色在线观看| 午夜精品久久久久久久99水蜜桃| 亚洲精品一二区| 国产精品另类一区| 亚洲一区制服诱惑| 欧美阿v一级看视频| 国产精品亚洲综合一区在线观看| 一区二区在线看| 国产精品日韩欧美一区| 校园春色国产精品| 欧美精品成人在线| 欧美精品三级日韩久久| 亚洲高清三级视频| 国产精品久久久久久久午夜| 久久都是精品| 一区二区91| 欧美性淫爽ww久久久久无| 黄色国产精品一区二区三区| 欧美视频一区二区在线观看| 久久久亚洲国产天美传媒修理工| 欧美在线视频二区| 久久不射网站| 久久精品人人做人人综合| 国产欧美一区二区精品忘忧草| 久久久久久精| 欧美三级在线视频| 国产一区二区日韩精品欧美精品| 老**午夜毛片一区二区三区| 欧美另类高清视频在线| 欧美99久久| 欧美老女人xx| 久久久久九九九九| 极品日韩av| 狠狠色丁香婷综合久久| 亚洲第一网站| 欧美一区二粉嫩精品国产一线天| 日韩特黄影片| 欧美理论电影在线播放| 国内精品久久久久影院色| 久久不见久久见免费视频1| 久久国产精品亚洲va麻豆| 国产精品国产三级国产专播精品人| 欧美日韩精品一二三区| 亚洲精品国产精品乱码不99按摩| 亚洲调教视频在线观看| 亚洲国产乱码最新视频| 一区二区三区精品久久久| 在线精品亚洲一区二区| 欧美一区二区免费视频| 亚洲人成久久| 亚洲欧美另类在线| 精品不卡在线| 亚洲一区二区三区免费视频| 一区二区三区高清视频在线观看| 欧美一区二区黄色| 欧美日韩国产影院| 久久久久久久综合日本| 亚洲乱码精品一二三四区日韩在线| 亚洲国产成人精品久久久国产成人一区| 欧美日韩精品福利| 9久re热视频在线精品| 亚洲一区二区精品在线观看| 久久久无码精品亚洲日韩按摩| 一本色道久久综合亚洲精品高清| 国内精品久久久久伊人av| 国产精品久久久久影院亚瑟| 欧美日本一区二区视频在线观看| 久久蜜臀精品av| 亚洲欧美日韩精品一区二区| 宅男噜噜噜66国产日韩在线观看| 国产精品久久久久久久午夜| 亚洲女人天堂成人av在线| 国产区在线观看成人精品| 狠狠狠色丁香婷婷综合久久五月| 久久亚洲视频| 激情欧美一区二区三区在线观看| 国产亚洲一区在线| 在线午夜精品| 久久久久久亚洲精品中文字幕| 亚洲欧美日韩一区二区| 欧美96在线丨欧| 国产精品一区二区久激情瑜伽| 亚洲日韩欧美一区二区在线| 欧美黄色免费网站| 一区二区三区四区精品| 99在线精品视频| 91久久精品美女高潮| 久久精视频免费在线久久完整在线看| 伊人久久av导航| 亚洲精品久久久久久久久久久| 国产精品网曝门| 欧美丝袜一区二区| 国产精品极品美女粉嫩高清在线| 欧美视频中文字幕| 一区二区三区四区国产| 亚洲国产精品www| 欧美日韩一视频区二区| 一本色道久久综合亚洲91| 欧美成人视屏| 激情小说另类小说亚洲欧美| 亚洲男女自偷自拍图片另类| 欧美日本不卡视频| 国产精品亚洲综合天堂夜夜| 国产午夜精品美女视频明星a级| 欧美一区国产一区| 午夜精品福利一区二区三区av| 篠田优中文在线播放第一区| 精品91免费| 国产精品久久一卡二卡| 久久久久久久波多野高潮日日| 亚洲欧美在线磁力| 激情久久中文字幕| 欧美在线观看网址综合| 亚洲欧美国产视频| 毛片精品免费在线观看| 欧美日韩国产小视频在线观看| 国产精品久久午夜夜伦鲁鲁| 午夜性色一区二区三区免费视频| 亚洲精品在线观看视频| 欧美日韩国产一区| 欧美国产高清| 一区二区免费在线播放| 9l国产精品久久久久麻豆| 噜噜噜躁狠狠躁狠狠精品视频| 亚洲欧洲一区二区三区久久| 国产农村妇女精品一二区| 久热精品视频在线免费观看| 欧美一区免费视频| 午夜激情久久久| 欧美诱惑福利视频| 亚洲美女中文字幕| 亚洲激情视频| 夜夜爽夜夜爽精品视频| 亚洲高清视频在线| 99国产精品久久久| 国产精品色在线| 国产精品video| 亚洲一区二区免费在线| 久久国产精品网站| 国产精品一区2区| 国产精品久久久久一区二区三区| 国产精品xnxxcom| 国产精品久久久久77777| 樱桃成人精品视频在线播放| 在线免费观看一区二区三区| 在线看欧美视频| 欧美特黄一级大片| 巨胸喷奶水www久久久免费动漫| 国产精品免费网站在线观看| 一区二区高清视频| 欧美视频不卡| 久久精品国产亚洲高清剧情介绍| 久久成人久久爱| 99综合在线| 最新热久久免费视频| 欧美巨乳波霸| 欧美激情第五页| 亚洲影院污污.| 亚洲精品在线视频| 国产一区在线观看视频| 午夜精品久久久久久久99热浪潮| 韩国一区二区三区在线观看| 国产精品护士白丝一区av| 中文成人激情娱乐网| 在线精品视频一区二区三四| 久久夜色精品国产欧美乱极品| 亚洲性感激情| 亚洲视频狠狠| 在线一区二区三区四区| 欧美特黄视频| 国产精品久久久久久久久久直播| 久久视频国产精品免费视频在线| 亚洲欧洲精品一区| 一本色道久久综合亚洲精品高清| 欧美系列一区| 久久久国产精品亚洲一区| 在线日本成人| 国产精品一区二区三区久久久| 亚洲亚洲精品三区日韩精品在线视频| 国产在线精品成人一区二区三区| 欧美成人在线免费视频| 亚洲欧美日韩在线一区| 影音先锋另类| 久久精品日产第一区二区三区| 韩国精品主播一区二区在线观看| 一区二区三欧美| 亚洲深夜av| 欧美日韩18| 久久婷婷国产综合国色天香| 亚洲动漫精品| 欧美jjzz| 欧美视频免费看| 国产日韩欧美在线播放不卡| 亚洲夫妻自拍| 欧美视频二区36p| 欧美日韩国产在线| 亚洲精品久久久蜜桃| 免费观看一区| 欧美 亚欧 日韩视频在线| 亚洲综合第一页| 国模叶桐国产精品一区| 国产精品美女久久久久久久| 亚洲精品123区| 香蕉国产精品偷在线观看不卡| 国产精品午夜久久| 日韩视频免费在线观看| 国产精品福利在线观看网址| 韩国v欧美v日本v亚洲v| 禁断一区二区三区在线| 久久精品人人| 美女主播精品视频一二三四| 欧美精品久久一区| 亚洲国产精品专区久久| 欧美巨乳在线观看| 亚洲色图在线视频| 国产曰批免费观看久久久| 一区二区高清| 欧美黄色精品| 欧美电影免费观看高清完整版| 99视频+国产日韩欧美| 国产一区二区三区丝袜| 免费观看成人www动漫视频| 亚洲视频一区在线观看| 欧美成人亚洲成人| 亚洲女同同性videoxma| 欧美日韩第一区| 亚洲观看高清完整版在线观看| 亚洲欧美日韩中文在线制服| 嫩草伊人久久精品少妇av杨幂| 一区二区三区国产在线观看| 国产精品国产自产拍高清av王其| 卡一卡二国产精品| 国产精品一区视频网站| 亚洲小说欧美另类婷婷| 午夜精品999| 亚洲国产美女| 国产精品福利久久久| 亚洲欧美日韩一区二区在线| 国产精品免费aⅴ片在线观看| 亚洲高清视频的网址| 欧美伊人久久久久久久久影院| 亚洲一区二区三区欧美| 国产日韩在线视频| 亚洲免费影院| 国产在线精品成人一区二区三区| 亚洲一区二区四区| 国产伦精品一区二区| 久久精品日产第一区二区三区| 怡红院精品视频| 国产日韩一区二区| 欧美精品一区二区三区在线看午夜| 激情五月综合色婷婷一区二区| 在线视频精品| 欧美成人黑人xx视频免费观看| 亚洲欧洲一区二区在线观看| 欧美激情一区二区三区在线视频观看| 亚洲自拍偷拍麻豆| 先锋亚洲精品| 午夜免费久久久久| 欧美成人在线免费视频| 你懂的视频欧美| 国产精品久久综合| 国产一区二区久久久| 欧美日韩国产a| 亚洲影院色在线观看免费| 亚洲欧美国产另类| 亚洲欧美日韩精品综合在线观看| 久久福利资源站| 国产精品毛片在线看| 欧美精品二区三区四区免费看视频| 国产精品国产自产拍高清av王其| 久久久久国产精品一区二区| 欧美午夜久久久| 亚洲精品孕妇| 欧美视频在线观看一区二区| 性欧美大战久久久久久久久| 香蕉久久久久久久av网站| 亚洲第一福利社区| 国产欧美日韩视频一区二区| 欧美国产日韩精品| 欧美国产日产韩国视频| 午夜久久资源| 欧美日本高清一区| 国产欧美丝祙| 亚洲欧美日韩国产中文在线| 久久久精品日韩欧美| 一本色道久久88亚洲综合88| 蜜乳av另类精品一区二区| 亚洲无线视频| 久久久精品动漫| 在线日本欧美| 欧美日韩综合另类| 一本久道综合久久精品| 欧美一级久久久久久久大片| 久久久免费精品视频| 欧美日韩综合一区| 亚洲成在线观看| 香蕉久久国产| 一区二区三区精品视频| 99精品福利视频| 国产欧美日韩伦理| 91久久综合| 欧美日韩日本视频| 狠狠色狠狠色综合系列| 欧美激情一区二区三区四区| 午夜国产精品视频免费体验区| 免费在线欧美视频| 亚洲成人在线观看视频| 欧美视频专区一二在线观看| 亚洲制服少妇| 在线成人中文字幕| 日韩亚洲欧美精品| 国产亚洲福利一区| 欧美亚洲视频在线观看| 久久网站热最新地址| 老牛嫩草一区二区三区日本| 亚洲激情影院| 一本久道久久综合婷婷鲸鱼| 一区在线电影| 最新国产成人av网站网址麻豆| 亚洲一二三区在线| 亚洲国产一区二区a毛片| 亚洲视频1区|