本发明涉及数据存储和计算技术领域,特别涉及一种基于rdma技术的分布式高性能计算方法。
背景技术:
互联网的飞速发展,带来了大数据时代,从而出现了各种各样的云计算服务。现有的云计算和虚拟化技术,最大化的利用了计算资源(计算,存储,网络)的效率,但是没有最大化的利用计算资源的性能,尤其是分布在各个计算设备上的空闲资源。
远程直接内存访问(remotedirectmemoryaccess,rdma)是指在没有双方主机操作系统直接参与下,直接访问远端内存,从而提供高带宽、低延迟的特性。
本发明提出一种基于rdma技术的分布式高性能计算方法,最大化的利用计算资源的性能,为热点计算/存储/网络资源,提供了最大化的弹性空间,防止因为热点而出现严重的拥堵或者数据爆炸。
技术实现要素:
本发明的主要目的在于提供一种基于rdma技术的分布式高性能计算方法,可以有效解决背景技术中的问题。
为实现上述目的,本发明提供如下技术方案:一种基于rdma技术的分布式高性能计算方法,包括如下方法步骤:
步骤s1:通过支持rdma的网络接口卡,向同样采用这类支持rdma操作的网络接口设备终端,发出构建基于rdma技术的分布式高性能计算方法的广播请求,在收到的响应中,依托计算需求,遴选出符合要求的规定节点数目;
步骤s2:向被采纳的节点发放电子合约,被采纳的节点接受合约后,依据合约需求,锁定相应的内存空间,存储空间,以及计算资源,供系统使用;
步骤s3:依据安全性要求,考虑是否构建内存共享资源池,内存共享是最高效的通信方式,同时也是更高效率的并行计算模式;
步骤s4:内存共享的一致性采用目录控制,每个节点(虚拟机)设定一个编号,比如0,1,……n,其中n为整数,高两位定义为目录状态,目录状态包括:无副本(nc)、共享读(sh)、脏(d)以及共享脏(sd)四种状态,每次修改目录后,都要写回到本地。
优选的,所述步骤s4中,目录状态具体管理步骤包括:主机开机后,会实现一次内存写零操作,防止计算机执行过程中,出现读无效数据,写零后,任何存储单元的对应目录状态都是无副本;任何状态,遇到写内存操作,都会将下一目录状态置为脏(d,指cache中内的内容与主存本地值不相等);nc、sh,遇到读内存操作,都会将下一目录状态置为共享读(sh);d、sd,遇到读内存操作,都会将下一目录状态置为共享脏(sd,指所有有副本的cache中内的内容与主存本地值均不相等)。
优选的,所述步骤s4中,目录内容除目录状态外,还包括共享状态的副本存在标志位/或者脏目标id。
优选的,所述步骤s1中,网络接口卡采用支持rdma功能的智能网络接口芯片。
优选的,所述步骤s1中,遴选符合要求的规定节点数目时,以算力大小、存储空间大小、cache大小、网络带宽作为遴选条件。
优选的,所述步骤s1中,发出构建基于rdma技术的分布式高性能计算方法的设备发射端和接收设备终端均安装可信计算卡,或者在主板上设置加解密芯片。
优选的,所述步骤s2中,定义1-n个节点(虚拟机),被采纳的节点接受合约后,虚拟出符合算法所需的算力、空间、cache、网络,供系统使用。
优选的,所述步骤s2中,电子合约中涉及到的报酬,拟采用虚拟数字币或者其他交易双方可接纳的交易媒介。
优选的,所述步骤s3中,通过网卡和交换机实现内存共享,内存统一编址。
与现有技术相比,本发明具有如下有益效果:通过建立rdma链接并建立分布式计算系统,配合可信计算芯片,同时采用多cache共享内存一致性的目录状态管理模式,具有如下优点:
1)、有效利用/整合社会中的闲置计算资源(计算,存储,网络带宽);
2)、最大化的利用计算资源的性能;
3)、为热点计算/存储/网络资源,提供了最大化的弹性空间,防止因为热点而出现严重的拥堵或者数据爆炸;
4)、为用户提供高可靠高可信的计算/存储/网络资源。
附图说明
图1为本发明所述一种基于rdma技术的分布式高性能计算方法的目录状态管理流程图;
图2为本发明所述一种基于rdma技术的分布式高性能计算方法的rdma链接建立过程以及分布式计算系统建立的流程图。
具体实施方式
为使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合具体实施方式,进一步阐述本发明。
实施例1
如图1-2所示,一种基于rdma技术的分布式高性能计算方法,包括如下方法步骤:
步骤s1:通过支持rdma的网络接口卡,向同样采用这类支持rdma操作的网络接口设备终端,发出构建基于rdma技术的分布式高性能计算方法的广播请求,在收到的响应中,依托计算需求,遴选出符合要求的规定节点数目;
步骤s2:向被采纳的节点发放电子合约,被采纳的节点接受合约后,依据合约需求,锁定相应的内存空间,存储空间,以及计算资源,供系统使用;
步骤s3:依据安全性要求,考虑是否构建内存共享资源池,内存共享是最高效的通信方式,同时也是更高效率的并行计算模式;
步骤s4:内存共享的一致性采用目录控制,每个节点(虚拟机)设定一个编号,比如0,1,……n,其中n为整数,高两位定义为目录状态,目录状态包括:无副本(nc)、共享读(sh)、脏(d)以及共享脏(sd)四种状态,每次修改目录后,都要写回到本地。
步骤s4中,目录状态具体管理步骤包括:主机开机后,会实现一次内存写零操作,防止计算机执行过程中,出现读无效数据,写零后,任何存储单元的对应目录状态都是无副本;任何状态,遇到写内存操作,都会将下一目录状态置为脏(d,指cache中内的内容与主存本地值不相等);nc、sh,遇到读内存操作,都会将下一目录状态置为共享读(sh);d、sd,遇到读内存操作,都会将下一目录状态置为共享脏(sd,指所有有副本的cache中内的内容与主存本地值均不相等)。
步骤s4中,目录内容除目录状态外,还包括共享状态的副本存在标志位/或者脏目标id。
步骤s1中,网络接口卡采用支持rdma功能的智能网络接口芯片。
步骤s1中,遴选符合要求的规定节点数目时,以算力大小、存储空间大小、cache大小、网络带宽作为遴选条件。
步骤s1中,发出构建基于rdma技术的分布式高性能计算方法的设备发射端和接收设备终端均安装可信计算卡,或者在主板上设置加解密芯片。
步骤s2中,定义1-n个节点(虚拟机),被采纳的节点接受合约后,虚拟出符合算法所需的算力、空间、cache、网络,供系统使用。
步骤s2中,电子合约中涉及到的报酬,拟采用虚拟数字币或者其他交易双方可接纳的交易媒介。
步骤s3中,通过网卡和交换机实现内存共享,内存统一编址。
通过采用上述技术方案,在采纳的节点接受合约后,建立rdma链接并建立分布式计算系统,同时采用无副本(nc)、共享读(sh)、脏(d)以及共享脏(sd)四种目录状态,实现多cache共享内存一致性的目录状态管理,从而有效利用/整合社会中的闲置计算资源(计算,存储,网络带宽);最大化的利用计算资源的性能;为热点计算/存储/网络资源,提供了最大化的弹性空间,防止因为热点而出现严重的拥堵或者数据爆炸;配合可信计算芯片,为用户提供高可靠高可信的计算/存储/网络资源。
以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。