【技术实现步骤摘要】
本专利技术涉及处理器间消息交换的领域,更具体地,涉及一种由基于先进先出(FIFO)系统的远程直接访问内存辅助的低延迟远程消息交换。
技术介绍
随着计算加速的到来,要求两个不同的软件线程或处理器内核之间的数据交换是快速,高效的。一般,现有的基于典型的TCP/IP方案的远程消息交换方法具有发送和接收消息时CPU使用率高的缺点。在所述消息TCP/IP模式中,一个软件线程不会和其希望通信的另一个软件线程分享任何公用内存空间。相反,发送消息到另一个软件线程或者从另一个软件线程接收消息需要分别使用套接字send O (发送O)和套接字recv()(接收())系统调用。 通过典型的TCP/IP方案的这方面的通信涉及很多软件指令,所述软件指令由所述发送和远程主机上的CPU内核执行。此外,每次执行SendO系统调用,都有从用户级到系统级的上下文的改变,这相当于高CPU开销。在接收端的所述接收系统调用的情况也是如此。由于在两个不同的软件线程之间应交换的数据量已增多,两个处理器内核之间的所述消息先进先出(FIFO)需要低延迟,使所述处理器内核不会因频繁的通信而减慢速度。使用TCP/I ...
【技术保护点】
一种用于在至少两个节点上运行的至少两个进程之间的进程间通信中的无锁的远程消息交换的系统,所述远程消息交换由支持RDMA的网络接口卡实现,所述网络接口卡配置成,同步位于各所述节点上的内存映射文件,所述系统包括:a.发送主机节点与接收主机节点,所述发送主机节点与所述接收主机节点相互通信地耦合,用于分别通过计算网络发送和接收消息;b.支持RDMA的网络接口卡,其被配备在所述发送主机节点与所述接收主机节点中的每个上,用于执行RDMA指令;c.存储器,其位于所述发送主机节点与所述接收主机节点中的每个上,且适用于存储进程间消息,所述进程间消息被所述相互通信地耦合的所述发送主机节点与所述 ...
【技术特征摘要】
2011.06.15 IN 1745/MUM/20111.一种用于在至少两个节点上运行的至少两个进程之间的进程间通信中的无锁的远程消息交换的系统,所述远程消息交换由支持RDMA的网络接口卡实现,所述网络接口卡配置成,同步位于各所述节点上的内存映射文件,所述系统包括 a.发送主机节点与接收主机节点,所述发送主机节点与所述接收主机节点相互通信地耦合,用于分别通过计算网络发送和接收消息; b.支持RDMA的网络接口卡,其被配备在所述发送主机节点与所述接收主机节点中的每个上,用于执行RDMA指令; c.存储器,其位于所述发送主机节点与所述接收主机节点中的每个上,且适用于存储进程间消息,所述进程间消息被所述相互通信地耦合的所述发送主机节点与所述接收主机节点中的任何一个所调用; d.第一内存映射文件,其位于所述发送主机节点,且配置成,将消息的静态循环队列同步到位于所述接收主机节点的第二内存映射文件,且所述第二内存映射文件配置成将消息的静态循环队列同步到所述第一内存映射文件;及 e.至少一个远程发送方进程,其在所述发送主机节点上运行,且构成至少一个消息批量,并且异步发送所述批量和相应的RDMA工作请求,其中,所述消息批量的构成包括所述发送主机节点的操作状态和集合变量之间的协调,以确定所述批量中的消息的数量,其中,在所述批量中的额外的消息的列入由预设的aclat参数进一步确定。2.如权利要求I所述的系统,其中,在使用互联网的广域RDMA协议的以太网上或无限带宽网络上支持所述RDMA,以连接所述发送主机节点和所述接收主机节点。3.如权利要求I所述的系统,其中,所述支持RDMA的网络接口卡提供用于在接收或远程主机节点上的直接内存访问的直接接口。4.如权利要求I所述的系统,其中,所述内存映射文件包括所述发送主机节点和所述接收主机节点之间的消息的静态循环队列。5.如权利要求I所述的系统,其中,所述内存映射文件包括有效载荷节的序列,其中各有效载荷间歇性地由相应的节点计数器元素跟随,以构成连续的内存区域,并且所述有效载荷与相应的公用队列数据和连续设置的标头耦合;RDMA自由指向元素,其指向消息缓冲区,在所述消息缓冲区中所述发送主机节点插入新的消息;RDMA插入计数器,其计数远程发送方进程插入的消息的数量;最后发送的消息节点指向元素,其指向从所述远程发送方进程发送到所述接收主机节点的最后一条消息;及最后接收的消息节点指向元素,其指向所述接收主机节点接收的最后一条消息。6.如权利要求I所述的系统,其中,所述公用队列数据包括数据指向元素,其适用于指向待由所述接收主机节点接收的下一条消息;自由指向元素,其适用于指向在所述发送主机节点上运行的所述远程发送方进程所写的消息;插入计数器,其用于计数所述发送主机节点发送的消息的数量;删除计数器,其用于计数从队列创建起所述接收主机节点读取的消息的数量;最后发送的消息节点指向元素;及最后接收的消息节点指向元素。7.如权利要求I所述的系统,其中,所述内存映射文件的布局优化成,形成连续的内存区域,所述连续的内存区域适用于批处理多条消息并且组合所述构成元素,从而将RDMA工作请求的数量减少至一个。8.如权利要求I所述的系统,其中,位于所述发送主机节点上的所述远程发送方进程,更新用于在所述循环队列中插入额外消息的所述节点计数器元素,使所述接收主机节点能够对其进行访问。9.如权利要求I所述的系统,其中,所述发送主机节点的操作状态是指二进制状态,其中所述二进制状态对应于对一条或多条消息进行列队的繁忙状态或空闲状态,所述二进制状态由称为与入的变量指标进一步指不。10.如权利要求I所述的系统,其中,所述发送主机节点的所述繁忙操作状态触发所述集合变量指示所述远程发送方进程等待下一条消息列入所述构成的批量中。11.如权利要求I所述的系统,其中,所述发送主机节点的所述空闲操作状态触发所述集合变量指示所述远程发送方进程为待列入所述构成的批量中的下一条消息等待预设的aclat参数。12.—种由计算机可执行指令可操作的内存映射结构,其中所述内存映射结构配置成,同步至少一个发送主机节点和接收主机节点之间的消息的静态循环队列,所述结构包括 a.多条消息,其捆绑在一起形成至少一个消息批量,各消息批量包括一系列有效载荷节,其中,各有效载荷节间歇性地由相应的节点计数器结构跟随,以构成连续的内存区域,其中,所述有效载荷节进一步与公用队列数据和连续设置的标头耦合; b.RDMA自由指向元素,其适用于指向消息缓冲区,在所述消息缓冲区中所述发送主机节点插入新的消息; c.RDMA插入计数器,其用于计数所述发送主机节点插入的消息的数量; d.接收节点计数器结构元素,其响...
【专利技术属性】
技术研发人员:M·K·南比亚尔,N·阿格拉沃尔,
申请(专利权)人:塔塔咨询服务有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。