[發明專利]數據傳輸的方法和系統在審
| 申請號: | 202011394704.3 | 申請日: | 2020-12-03 |
| 公開(公告)號: | CN114116595A | 公開(公告)日: | 2022-03-01 |
| 發明(設計)人: | 祝佳 | 申請(專利權)人: | 華為技術有限公司 |
| 主分類號: | G06F15/173 | 分類號: | G06F15/173;G06F9/54 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 518129 廣東*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 數據傳輸 方法 系統 | ||
本申請提供了一種實現數據傳輸的方法和系統,以提高數據傳輸時的效率。本申請提供的數據傳輸方法是多個通信子模塊通過并行方式通信時的一種實現方法。多個通信子模塊中的第二通信子模塊將需要發送給第一通信子模塊的數據,發送到硬件隊列中;所述第一通信子模塊在所述硬件隊列被寫入數據的狀態被觸發時,從所述硬件隊列獲取所述數據。所述硬件隊列可以是運行所述第一通信子模塊的第一處理器中的硬件隊列或運行所述第二通信子模塊的第二處理器中的硬件隊列。通過所述方法,所述第二子模塊不需要向所述第一子模塊發送通知消息以通知數據已發送,降低了所述第二子模塊與所述第一子模塊之間通信的時延,提高了通信的效率。
技術領域
本申請涉及信息技術領域,尤其涉及一種數據傳輸的方法和系統。
背景技術
消息傳遞接口標準(message-passing interface,MPI)是一個跨語言的通訊協議,支持點對點和集合通訊。MPI的目標是高性能,大規模性和可移植性,是當今高性能計算的主要通訊模型。通常情況下,在高性能計算(high-performance computing,HPC)的典型場景的應用中,MPI通信占比都比較高。例如,在Allreduce集合通訊中,是將每個進程的數據先進行匯聚并歸約然后再廣播至每個進程,最終每個進程得到相同的一份歸約后的數據。
在集合通信中,多個進程與一個進程通信,或一個進程與多個進程通信時,存在著通信效率低的問題。
發明內容
本申請提供了一種實現數據傳輸的方法和系統,以提高數據傳輸時的效率。
第一方面,本申請提供一種數據傳輸的方法,所述方法包括:
第二通信子模塊,將需要發送給第一通信子模塊的數據,發送到硬件隊列中,所述硬件隊列是運行所述第一通信子模塊的第一處理器中的硬件隊列或運行所述第二通信子模塊的第二處理器中的硬件隊列;
所述第一通信子模塊在所述硬件隊列被寫入數據的狀態被觸發時,從所述硬件隊列獲取所述數據;其中,所述第二通信子模塊是多個第二通信子模塊中的一個,所述多個第二通信子模塊通過并行的方式與所述第一通信子模塊通信;或所述第一通信子模塊是多個第一通信子模塊中的一個,所述多個第一通信子模塊通過并行的方式與所述第二通信子模塊通信。
上述方法中,所述第二子模塊通過硬件隊列向所述第一子模塊發送數據,這樣就不需要所述第二子模塊再向所述第一子模塊發送通知消息以通知所述第一子模塊數據已經發送,降低了所述第二子模塊與所述第一子模塊之間通信的時延,提高了通信的效率。并且,由于采用硬件隊列的形式接收數據,所述第一通信子模塊只需判斷硬件隊列的狀態是否達到預設的狀態,不需要通過計數的方式確認是否接收到所述第二通信子模塊發送的數據,減少了因計數帶來的資源占用,能夠在不改變通信正確性的前提下提升所述第二子模塊與所述第一子模塊之間通信的性能。
具體的,所述多個第二通信子模塊是多個不同的第二通信子模塊。所述多個不同的第二通信子模塊通過并行的方式與所述第一通信子模塊通信。在一種實現方式中,所述多個不同的第二通信子模塊并行向所述第一通信子模塊發送數據。在一種實現方式中,所述多個不同的第二通信子模塊是集合通信中多個不同的子模塊,所述第一通信子模塊是集合通信中的根模塊。
具體的,所述多個第一通信子模塊是多個不同的第一通信子模塊。所述多個第一通信子模塊通過并行的方式與所述第二通信子模塊通信。在一種實現方式中,所述多個不同的第一通信子模塊并行接收所述第二通信子模塊發送的數據。在一種實現方式中,所述多個不同的第一通信子模塊是集合通信中多個不同的子模塊,所述第二通信子模塊是集合通信中的根模塊。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于華為技術有限公司,未經華為技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011394704.3/2.html,轉載請聲明來源鉆瓜專利網。





