CN104156332A - 基于外部pci-e连接的高性能并行计算方法 - Google Patents

基于外部pci-e连接的高性能并行计算方法 Download PDF

Info

Publication number
CN104156332A
CN104156332A CN201410391533.7A CN201410391533A CN104156332A CN 104156332 A CN104156332 A CN 104156332A CN 201410391533 A CN201410391533 A CN 201410391533A CN 104156332 A CN104156332 A CN 104156332A
Authority
CN
China
Prior art keywords
computer equipment
virtual memory
parallel computation
pci
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201410391533.7A
Other languages
English (en)
Other versions
CN104156332B (zh
Inventor
韩林
况天宝
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Han Lin
Original Assignee
JINAN MAXCLOUD INFORMATION TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by JINAN MAXCLOUD INFORMATION TECHNOLOGY Co Ltd filed Critical JINAN MAXCLOUD INFORMATION TECHNOLOGY Co Ltd
Priority to CN201410391533.7A priority Critical patent/CN104156332B/zh
Publication of CN104156332A publication Critical patent/CN104156332A/zh
Application granted granted Critical
Publication of CN104156332B publication Critical patent/CN104156332B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Multi Processors (AREA)

Abstract

本发明的基于外部PCI-E连接的高性能并行计算方法,包括:a)将所有计算机设备通过PCI-E总线;b)运行并行计算程序;c)构建虚拟内存寻址表;d)发送虚拟内存信息;e)接收虚拟内存信息;f)判断接收信息的正确性;g)判断虚拟内存地址是否构建完毕;h)分配计算任务;i)执行计算任务;j)取结果,并提供给用户。本发明的并行计算方法,提高了并行计算过程中处理器之间数据传输速度,通过改进并行计算算法,减少了系统CPU拷贝数据量,大大提高了并行计算运算的效率,有效的将多个并行计算资源进行连接通信,并高速传输数据。

Description

基于外部PCI-E连接的高性能并行计算方法
技术领域
本发明涉及一种并行计算方法,更具体的说,尤其涉及一种基于外部PCI-E连接的高性能并行计算方法。 
背景技术
并行计算是指使用多个计算资源解决计算问题的过程,可以提高计算机系统计算速度和处理能力,一般采用多个处理器共同协作计算求解同一问题,将问题分解成多个若干部分,每个部分由单独的处理器来并行计算,多个处理器采用某种连接方式形成集群计算资源,集群计算资源完成数据处理后,将计算结果反馈给用户。
目前大多数并行结算的多个处理器连接方式是采用网络连接方式进行的,即通过采用计算机网卡连接网络设备交换机,多个处理器计算资源之间形成局域网络,通过网卡与交换机作为介质进行数据传输,这样的方式,数据传输的速度依赖于网卡与交换机的性能,对于千兆网卡来说,传输速率很难达到1 Gbps。因为以太网控制器会把传输内容拆成小的数据包,同时还会强制加上确认信号。这类数据传输由于增加了数据包的解析和强制中断,从而降低了传输通道的效率。
并行计算系统在多个处理器之间,计算程序本机只能访问本机的内存,无法实现访问远程计算设备的内存数据,进行数据交换的方式是通过TCP连接方式进行,这种方式下,本机并行计算程序只能访问、更新当前设备内存中的计算数据和计算结果,然后计算设备之间将各自的计算数据或结果通过TCP进行数据交换,这种数据交换方式速度受限于网络传输速度,同时TCP方式接收数据时的拷贝量占用CPU的大量计算周期,普通网卡的工作过程如下: 把收到的数据包缓存到系统上,数据包经过处理后,相应数据被分配到一个TCP 连接;然后,接收系统再把主动提供的TCP 数据同相应的应用程序联系起来,并将数据从系统缓冲区拷贝到目标存储地址。这就造成了系统间的信息延迟以及主机CPU中不必要的频繁数据传输。 
发明内容
本发明为了克服上述技术问题的缺点,提供了一种基于外部PCI-E连接的高性能并行计算方法。
本发明的基于外部PCI-E连接的高性能并行计算方法,其特别之处在于,设参与平行计算的计算机设备的数量为t台,其编号分别为A、B、…、N,所述并行计算方法通过以下步骤来实现:a).连接计算机设备,首先在t台计算机设备的主板PCI-E扩展槽内分别插入PCI-E扩展卡,然后用PCI-E X16数据线将每台计算机设备上的PCI-E扩展卡与PCI-E交换机相连接,以使所有计算机设备通过PCI-E总线相通讯;b).运行并行计算程序,在t台计算机设备上分别运行并行计算程序,A编号、B编号、…、N编号计算机设备上并行计算程序的启动参数分别为-nt-s0、-nt-s1、…、-nt-s(t-1),其中-n后的数字为参与计算的计算机设备的数量,-s后的数字为本计算机设备所执行计算的序号;c).构建虚拟内存寻址表,每台计算机设备上的并行计算程序在本机注册构建共享虚拟内存寻址表,共享虚拟内存寻址表的大小可对t台计算机设备的内存进行寻址;每台计算机设备将自身的起始虚拟地址、内存大小和内存区域的类型值构建到寻址表中,并对虚拟内存进行编号,计算机设备在寻址表中的虚拟内存序号与其所执行计算的序号相一致;d).发送虚拟内存信息,对于每台计算机设备来说,均向其余的t-1台计算机设备发送本机上并行计算程序的启动参数、本机共享虚拟内存寻址表中的信息、虚拟内存序号;e).接收虚拟内存信息,计算机设备等待并随时接收其余的t-1台计算机设备发送的信息;f).判断接收信息的正确性,每台计算机设备接收到信息后,首先判断接收数据的正确性,如果正确,则将接收的有关共享虚拟内存寻址表中的信息构建到本机的寻址表中,形成统一虚拟内存地址,执行步骤g);如果不正确,则重新接收数据,执行步骤e);g).判断所有计算机设备的虚拟内存地址是否均已构建完毕,如果构建完毕,则执行步骤h);如果没有构建完毕,则执行步骤e);h).分配计算任务,对于待计算的任务,将其分为t等份,并按照每台计算机设备所执行计算的序号依次分配给相应的并行计算程序;i).执行计算任务,每台计算机设备上的并行计算程序接收到计算任务后,利用本计算机设备所具有的计算资源对计算任务进行处理,并将计算结果存储到统一虚拟内存地址中;j).取结果,当所有的计算机设备均完成计算后,每一台计算机设备均可从统一虚拟内存地址中取得计算结果,并将计算结果提供给用户,并行计算任务结束。
步骤c)中,所述的寻址表即为共享虚拟内存寻址表;对于执行计算序号为0、1、2、…、t-1的计算机设备来说,其在内存寻址表中的虚拟内存序号也依次为0、1、2、…、t-1。步骤d)中,所述的本机共享虚拟内存寻址表中的信息,即为步骤c)中所述的起始虚拟地址、内存大小和内存区域的类型值。步骤f)中,对于所有的计算机设备来说,最终构建的统一虚拟内存地址是相同的。
本发明的基于外部PCI-E连接的高性能并行计算方法,步骤f)中所述的判断接收数据的正确性通过以下步骤来实现:f-1).判断计算机设备的数量,判断接收的启动参数-n后的数字与本机的启动参数-n后的数字是否相等,如果相等,则执行步骤f-2);如果不相等,则认为接收的数据不正确;f-2).判断执行计算的序号,判断接收到的启动参数中-s后的数字小于等于t-1是否成立,如果成立,则执行步骤f-3);如果不成立,则认为接收的数据不正确;f-3).判断虚拟内存信息,判断接收到的虚拟内存序号是否满足“小于等于t-1、且与本计算机设备的内存不相同”,如果满足,则认为接收的数据正确;如果不满足,则认为接收的数据不正确。
本发明的有益效果是:本发明的高性能并行计算方法,参与并行计算的计算机设备通过PCI-E扩展卡和PCI-E交换机相通讯,改变了以往网络连接的形式,对于PCI-E 3.0可支持每传输通道单向每秒8Gb的数据传输率,对于一个16通道的PCI-E X16来说,可达到双向32Gb/s的传输速度,形成高速交换连接系统,提高了并行计算的效率。
在并行计算的过程中,首先在每台计算机设备上注册构建共享虚拟内存寻址表,并通过共享的方式在每台计算机设备上形成统一虚拟内存地址;对于待计算的任务分为t等份后由每个并行计算程序同时进行计算,并将计算结果保存至统一虚拟内存地址中,以便于每台计算机设备将计算结果取出,并提供给用户。本发明的基于外部PCI-E连接的高性能并行计算方法,提高了并行计算过程中处理器之间数据传输速度,通过改进并行计算算法,减少了系统CPU拷贝数据量,大大提高了并行计算运算的效率,有效的将多个并行计算资源进行连接通信,并高速传输数据。
附图说明
图1为本发明的基于外部PCI-E连接的高性能并行计算系统的原理图;
图2为本发明的高性能并行计算系统中各个计算机设备的内存示意图;
图3为本发明的并行计算系统所形成的统一虚拟内存地址的示意图;
图4为本发明的基于外部PCI-E连接的高性能并行计算方法的流程图。
具体实施方式
下面结合附图与实施例对本发明作进一步说明。
如图1所示,给出了本发明的基于外部PCI-E连接的高性能并行计算系统的原理图,其包括:计算机设备A;计算机设备B;计算机设备N; PCI-E扩展卡A; CI-E扩展卡B;PCI-E扩展卡N; PCI-E X16数据连接线;PCI-E交换机。PCI-E扩展卡A、B、N分别插入计算机设备A、B、N的主板PCI-E扩展槽内,PCI-E X16数据连接线两端分别连接PCI-E扩展卡A、B、N及PCI-E交换机上,使计算机设备A、B、N  使用PCI-E扩展卡通过PCI-E交换机进行连接。 
图2 和图3所示,分别给出了各个计算机设备的内存以及形成的统一虚拟内存地址的示意图,通过共享虚拟内存寻址表,建立映射关系,将多个计算设备的内存访问统一起来。
图4给出了本发明的方法流程图,其按照以下步骤实现:
(1)、将PCI-E扩展卡A、B、N,分别插入计算机设备A、B、N中,用PCI-E连接线,将PCI-E扩展卡A、B、N连接到PCI-E交换机中,形成连接。
(2)、分别运行计算机设备A、B、N上的并行计算程序A、B、N,程序A启动参数为:-n 3 -s 0 ,程序B启动参数为:-n 3 -s 1, 程序N启动参数为:-n 3 -s 2,其中-n后面的数字表示参与计算的计算机设备资源总数, -s后面的数字表示本机执行计算的序号;在本实施例中,参与计算的计算机设备资源总数为3,执行计算的序号分别为0、1、2;
(3)、并行计算程序A、B、N分别在本机注册构建统一虚拟内存地址,将起始虚拟地址、内存大小和该内存区域的类型值构建到共享虚拟内存寻址表中,并得到本机在寻址表中的虚拟内存序号。
(4)、并行计算程序A向程序B、程序N发送程序A的启动参数、本机共享虚拟内存寻址表中的信息、虚拟内存序号,并等待接收程序B、程序N发送过来的启动参数、本机共享虚拟内存寻址表中的信息、虚拟内存序号。
(5)、并行计算程序A收到程序B、程序N发来的初始计算参数信息,检查接收到的参数-n 后的数字与本机的是否一致,如果不一致,则接收的信息不正确;检查-s后的数字是否超出2的值,如果超出,则接收的信息不正确;并检查虚拟内存相关信息正确性;在接收的信息正确的条件下,将程序B、程序N发来的有关共享虚拟内存寻址表中的信息,构建到本机的寻址表中,形成统一虚拟内存地址。完成后,并行计算程序A开始本机计算任务,计算结果保存在统一虚拟内存地址中。
(6)、并行计算程序A完成计算后,向程序B、程序N发送完成计算消息,并等待程序B、程序N发来的完成计算消息,当收到程序B、程序N的完成计算消息后,从统一虚拟内存地址中取得计算结果,返回计算结果给用户,程序退出。
本发明的高性能并行计算方法,通过使用PCI-E扩展卡,X16 连接线,PCI-E交换机连接多台计算机计算设备,并行计算程序在计算过程中,通过构建统一虚拟内存地址,保存起始虚拟地址、内存大小、内存类型值等信息到共享虚拟内存寻址表中,实现了多个计算机设备的内存统一寻址,数据的快速访问及传输,提高了并行计算的效率,PCI-E连接方式的数据传输速度可达到双向32GB/s,实现了并行计算资源之间的高速数据传输。 

Claims (2)

1.一种基于外部PCI-E连接的高性能并行计算方法,其特征在于,设参与平行计算的计算机设备的数量为t台,其编号分别为A、B、…、N,所述并行计算方法通过以下步骤来实现:
a).连接计算机设备,首先在t台计算机设备的主板PCI-E扩展槽内分别插入PCI-E扩展卡,然后用PCI-E X16数据线将每台计算机设备上的PCI-E扩展卡与PCI-E交换机相连接,以使所有计算机设备通过PCI-E总线相通讯;
b).运行并行计算程序,在t台计算机设备上分别运行并行计算程序,A编号、B编号、…、N编号计算机设备上并行计算程序的启动参数分别为-nt-s0、-nt-s1、…、-nt-s(t-1),其中-n后的数字为参与计算的计算机设备的数量,-s后的数字为本计算机设备所执行计算的序号;
c).构建虚拟内存寻址表,每台计算机设备上的并行计算程序在本机注册构建共享虚拟内存寻址表,共享虚拟内存寻址表的大小可对t台计算机设备的内存进行寻址;每台计算机设备将自身的起始虚拟地址、内存大小和内存区域的类型值构建到寻址表中,并对虚拟内存进行编号,计算机设备在寻址表中的虚拟内存序号与其所执行计算的序号相一致;
d).发送虚拟内存信息,对于每台计算机设备来说,均向其余的t-1台计算机设备发送本机上并行计算程序的启动参数、本机共享虚拟内存寻址表中的信息、虚拟内存序号;
e).接收虚拟内存信息,计算机设备等待并随时接收其余的t-1台计算机设备发送的信息;
f).判断接收信息的正确性,每台计算机设备接收到信息后,首先判断接收数据的正确性,如果正确,则将接收的有关共享虚拟内存寻址表中的信息构建到本机的寻址表中,形成统一虚拟内存地址,执行步骤g);如果不正确,则重新接收数据,执行步骤e);
g).判断所有计算机设备的虚拟内存地址是否均已构建完毕,如果构建完毕,则执行步骤h);如果没有构建完毕,则执行步骤e);
h).分配计算任务,对于待计算的任务,将其分为t等份,并按照每台计算机设备所执行计算的序号依次分配给相应的并行计算程序;
i).执行计算任务,每台计算机设备上的并行计算程序接收到计算任务后,利用本计算机设备所具有的计算资源对计算任务进行处理,并将计算结果存储到统一虚拟内存地址中;
j).取结果,当所有的计算机设备均完成计算后,每一台计算机设备均可从统一虚拟内存地址中取得计算结果,并将计算结果提供给用户,并行计算任务结束。
2.根据权利要求1所述的基于外部PCI-E连接的高性能并行计算方法,其特征在于:步骤f)中所述的判断接收数据的正确性通过以下步骤来实现:
f-1).判断计算机设备的数量,判断接收的启动参数-n后的数字与本机的启动参数-n后的数字是否相等,如果相等,则执行步骤f-2);如果不相等,则认为接收的数据不正确;
f-2).判断执行计算的序号,判断接收到的启动参数中-s后的数字小于等于t-1是否成立,如果成立,则执行步骤f-3);如果不成立,则认为接收的数据不正确;
f-3).判断虚拟内存信息,判断接收到的虚拟内存序号是否满足“小于等于t-1、且与本计算机设备的内存不相同”,如果满足,则认为接收的数据正确;如果不满足,则认为接收的数据不正确。
CN201410391533.7A 2014-08-11 2014-08-11 基于外部pci‑e连接的高性能并行计算方法 Active CN104156332B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410391533.7A CN104156332B (zh) 2014-08-11 2014-08-11 基于外部pci‑e连接的高性能并行计算方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410391533.7A CN104156332B (zh) 2014-08-11 2014-08-11 基于外部pci‑e连接的高性能并行计算方法

Publications (2)

Publication Number Publication Date
CN104156332A true CN104156332A (zh) 2014-11-19
CN104156332B CN104156332B (zh) 2017-02-15

Family

ID=51881837

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410391533.7A Active CN104156332B (zh) 2014-08-11 2014-08-11 基于外部pci‑e连接的高性能并行计算方法

Country Status (1)

Country Link
CN (1) CN104156332B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107168810A (zh) * 2017-05-10 2017-09-15 郑州云海信息技术有限公司 一种计算节点内存共享系统及读、写操作内存共享方法
CN109542824A (zh) * 2018-11-20 2019-03-29 北京锐安科技有限公司 设备间信息转发中介装置以及信息交换系统
CN115267757A (zh) * 2022-06-23 2022-11-01 斯凯瑞利(北京)科技有限公司 一种雷达系统、雷达基带结构及配置方法
CN115686870A (zh) * 2022-12-29 2023-02-03 深圳开鸿数字产业发展有限公司 并行计算方法、终端及计算机可读存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020121555A1 (en) * 2001-02-24 2002-09-05 International Business Machines Corporation Smart fan modules and system
CN1928839A (zh) * 2005-09-09 2007-03-14 中国科学院计算技术研究所 一种远程内存服务器及其实现方法
CN101110032A (zh) * 2007-08-24 2008-01-23 张建中 创建多维操作系统的方法和装置
CN101110780A (zh) * 2007-08-24 2008-01-23 张建中 一种传输控制数据流的方法和装置以及系统
CN101216814A (zh) * 2007-12-26 2008-07-09 杭州华三通信技术有限公司 一种多核多操作系统之间的通信方法及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020121555A1 (en) * 2001-02-24 2002-09-05 International Business Machines Corporation Smart fan modules and system
CN1928839A (zh) * 2005-09-09 2007-03-14 中国科学院计算技术研究所 一种远程内存服务器及其实现方法
CN101110032A (zh) * 2007-08-24 2008-01-23 张建中 创建多维操作系统的方法和装置
CN101110780A (zh) * 2007-08-24 2008-01-23 张建中 一种传输控制数据流的方法和装置以及系统
CN101216814A (zh) * 2007-12-26 2008-07-09 杭州华三通信技术有限公司 一种多核多操作系统之间的通信方法及系统

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107168810A (zh) * 2017-05-10 2017-09-15 郑州云海信息技术有限公司 一种计算节点内存共享系统及读、写操作内存共享方法
CN109542824A (zh) * 2018-11-20 2019-03-29 北京锐安科技有限公司 设备间信息转发中介装置以及信息交换系统
CN115267757A (zh) * 2022-06-23 2022-11-01 斯凯瑞利(北京)科技有限公司 一种雷达系统、雷达基带结构及配置方法
CN115686870A (zh) * 2022-12-29 2023-02-03 深圳开鸿数字产业发展有限公司 并行计算方法、终端及计算机可读存储介质
CN115686870B (zh) * 2022-12-29 2023-05-16 深圳开鸿数字产业发展有限公司 并行计算方法、终端及计算机可读存储介质

Also Published As

Publication number Publication date
CN104156332B (zh) 2017-02-15

Similar Documents

Publication Publication Date Title
US7830882B2 (en) Switch scaling for virtualized network interface controllers
CN102648455B (zh) 服务器和流控制程序
CN108268328B (zh) 数据处理装置及计算机
JP5475069B2 (ja) 統一コネクタアーキテクチャ
US20170324609A1 (en) Virtual Machine Fault Tolerance Method, Apparatus, and System
US20180225254A1 (en) Network communications using pooled memory in rack-scale architecture
CN101957808B (zh) 多cpu间的通信方法、系统及cpu
CN112346833B (zh) 用于隐私计算的任务处理方法、处理器及异构处理系统
CN104156332A (zh) 基于外部pci-e连接的高性能并行计算方法
CN114647602B (zh) 一种跨芯片访问控制的方法、装置、设备及介质
WO2023040197A1 (zh) 一种跨节点通信方法、装置、设备及可读存储介质
US20240205170A1 (en) Communication method based on user-mode protocol stack, and corresponding apparatus
Sun et al. Republic: Data multicast meets hybrid rack-level interconnections in data center
US10353857B2 (en) Parallel processing apparatus and method for controlling communication
CN105607940A (zh) 一种arm平台中bdk向uefi bios传递信息的方法
CN103092676A (zh) 虚拟机集群的模拟输入输出方法、装置及系统
CN112867998B (zh) 运算加速器、交换器、任务调度方法及处理系统
US10366006B2 (en) Computing apparatus, node device, and server
WO2014101502A1 (zh) 基于内存芯片互连的内存访问处理方法、内存芯片及系统
CN103299298A (zh) 处理业务的方法和系统
US20230153153A1 (en) Task processing method and apparatus
CN109308210B (zh) 一种在多核服务器上优化nfv转发服务链性能的方法
CN113961489A (zh) 数据访问的方法、装置、设备及存储介质
CN208999998U (zh) 数据处理装置
US20190199544A1 (en) NETWORK COMMUNICATION METHOD, SYSTEM AND CONTROLLER OF PCIe AND ETHERNET HYBRID NETWORKS

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20190719

Address after: Room 704, J1 Building, Jinan Hi-tech Wanda Plaza, No. 57 Industrial South Road, Jinan Hi-tech District, Shandong Province, 250101

Patentee after: Jinan Chain Creation Information Technology Co., Ltd.

Address before: Room 111, 1st floor, Qilu Software Park Building, Nanshou, Xinyu Road, Jinan High-tech Zone, Shandong Province

Patentee before: JINAN MAXCLOUD INFORMATION TECHNOLOGY CO., LTD.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20200723

Address after: Room 2627, floor 26, building 3, Aosheng building, 1166 Xinluo street, high tech Zone, Jinan City, Shandong Province

Patentee after: Jinan Zhishu Information Technology Co.,Ltd.

Address before: Room 704, J1 Building, Jinan Hi-tech Wanda Plaza, No. 57 Industrial South Road, Jinan Hi-tech District, Shandong Province, 250101

Patentee before: Jinan Chain Creation Information Technology Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20210512

Address after: NO.201, unit 2, building 3, No.13 Jinzhou Road, Jiaozhou City, Qingdao City, Shandong Province, 266300

Patentee after: Han Lin

Address before: Room 2627, 26 / F, building 3, Aosheng building, 1166 Xinluo street, hi tech Zone, Jinan City, Shandong Province

Patentee before: Jinan Zhishu Information Technology Co.,Ltd.