一种基于MIC架构处理器的数据传输优化方法技术

技术编号:20796954 阅读:20 留言:0更新日期:2019-04-06 10:33
本发明专利技术公开了一种基于MIC架构处理器的数据传输优化方法。通过对目标应用程序进行数据传输优化可行性分析,构建数据传输模型,在MIC处理器与CPU处理器进行数据通信时,采用保持数据/空间、异步传输、利用SCIF接口构建MIC协处理器间直接数据传输等方法,进行数据传输优化。本发明专利技术提供的方法适用于大规模基于MIC架构处理器的集群,通过降低并行程序在集群上的通信成本有效地缩短并行程序的执行时间,提高并行程序的运行效率。

A Data Transfer Optimization Method Based on MIC Architecture Processor

The invention discloses a data transmission optimization method based on MIC architecture processor. Through the feasibility analysis of data transmission optimization for target application program, the data transmission model is constructed. When MIC processor communicates with CPU processor, data transmission optimization is carried out by means of data/space preservation, asynchronous transmission and direct data transmission between MIC coprocessors using SCIF interface. The method provided by the invention is suitable for large-scale cluster based on MIC architecture processor, and can effectively shorten the execution time of parallel programs and improve the running efficiency of parallel programs by reducing the communication cost of parallel programs on the cluster.

【技术实现步骤摘要】
一种基于MIC架构处理器的数据传输优化方法
本专利技术涉及数据传输领域,更具体地,涉及一种基于MIC架构处理器的数据传输优化方法。
技术介绍
在高性能计算集成众核架构MIC应用程序并行执行过程中,数据传输是个通信的过程。数据传输对并行计算的性能有很大的影响。频繁进行的发送/接收操作将大大降低并行程序的执行性能,巨大的通信开销对并行效率的影响是致命的。处理器之间的通信是并行程序执行时重要的时间开销来源。作为并行计算额外开销的主要组成部分,降低通信成本可以有效地缩短并行程序的执行时间。MIC应用程序执行时,CPU与MIC之间是通过PCI-E总线进行数据通信的,而通过PCI-E的数据传输速度较慢,因此,我们需要尽量减少CPU与MIC之间的数据通信,但有时候CPU与MIC之间进行频繁的小数据通信或者在内核计算完后,MIC与MIC或MIC与CPU之间需要小数据通信等情况是避免不了的。
技术实现思路
本专利技术为克服上述现有技术所述的至少一种缺陷,提供一种基于MIC架构处理器的数据传输优化方法。本专利技术旨在至少在一定程度上解决上述技术问题。本专利技术的首要目的是优化CPU和MIC处理器之间以及MIC处理器和MIC处理器之间的数据传输效率。本专利技术的进一步目的是提高运行在MIC架构的程序的运行效率。本专利技术的第三个目的是提高协处理器计算速度。为解决上述技术问题,本专利技术的技术方案如下:一种基于MIC架构处理器的数据传输优化方法,包括以下步骤:S1:对目标应用程序进行数据传输优化可行性分析;S2:构建数据传输模型;S3:应用程序数据传输优化;优选地,步骤S1中对目标应用程序进行数据传输优化可行性分析的具体步骤为:排除无依赖关系数据,并确定存在依赖的相关数据以及相关数据的传递模式,从而得到待传输优化数据的传输关系。优选地,步骤S2中的构建数据传输模型具体为:对于迭代过程需要重复使用的数据或空间,保持变量不再释放,下一迭代直接使用;对于同时调用却无依赖关系的数据,构建数据异步传输模型,即不等待上一数据计算的返回,同步进行传输;MIC之间需要通信交换的数据,利用SCIF数据传输接口构造MIC与CPU、MIC与MIC之间数据传输通信模型。优选地,步骤S3应用程序数据传输优化具体为:对于迭代过程需要重复使用的数据或空间,采用nocopy的模式减少CPU与MIC的数据通讯传输次数,即程序仅在第一次调用MIC时申请分配的数据存储空间,并且不释放该数据;对于构建数据异步传输模型的数据,采用流水线的方式执行数据传输和计算;对于MIC之间需要通信交换的数据,利用SCIF数据传输接口优化MIC与CPU、MIC与MIC之间数据传输通信。优选地,所述采用流水线的方式执行数据传输和计算的具体过程为:程序开辟n个数据空间,其中n>1,在开辟第1个数据空间并传输到MIC完毕后,使用第1个数据空间进行计算,同时开辟其他n-1个数据空间并将其他n-1个数据空间传输到到MIC;当开辟第2个数据空间完成,且第1个数据空间的计算完成时,开始第2个数据空间的计算,并且继续开辟其他n-2个数据空间并传输其他n-2个数据空间到MIC,同时传输第1个空间的数据返回CPU;如此迭代,直到全部传输和计算完成。优选地,所述利用SCIF数据传输接口优化MIC与CPU、MIC与MIC之间的数据传输通信的具体过程为:生成通信信道;绑定本端地址到通信信道;添加通信信道到监听队列,该通信信道即可监听专属其绑定地址的连接请求,也可建立出站请求;发送端发送连接请求,接收端取得连接请求,并建立两个MIC核心之间的连接;当连接建立之后,发送请求端就可以向监听端进行数据传输操作。与现有技术相比,本专利技术技术方案的有益效果是:本专利技术通过对基于MIC架构的程序的数据传输进行合理的传输优化,缩短了CPU与MIC之间、MIC与MIC之间的数据传输时间,提高了基于MIC架构的应用程序的并行计算效率。附图说明图1为本专利技术流程图。图2为本专利技术异步数据传输模型。图3为SCIF数据通信模型。图4为SCIF建立MIC之间直接通信流程。具体实施方式附图仅用于示例性说明,不能理解为对本专利的限制;对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。下面结合附图和实施例对本专利技术的技术方案做进一步的说明。实施例1如图1所示为本专利技术流程图,其具体步骤如下:S1:对目标应用程序进行数据传输优化可行性分析;排除无依赖关系数据,并确定存在依赖的相关数据以及相关数据的传递模式,从而得到待传输优化数据的传输关系。S2:构建数据传输模型;对于迭代过程需要重复使用的数据或空间,保持变量不再释放,下一迭代直接使用;对于同时调用却无依赖关系的数据,构建数据异步传输模型,即不等待上一数据计算的返回,同步进行传输;MIC之间需要通信交换的数据,利用SCIF数据传输接口构造MIC与CPU、MIC与MIC之间数据传输通信模型。其中采用流水线的方式执行数据传输和计算的具体过程如图2所示。在具体实施例中,假设开辟了两个数据空间在等待使用第1个数据空间进行计算时,同时传输第2个数据空间的数据,当第2个数据空间数据传输完成,且第1个数据空间的计算完成时,开始第2个数据空间的计算,并且传输第1个数据空间的数据,循环往复,直到全部计算完成。即在循环变量为奇数时,传输第2个空间数据,并等待第1个空间的数据计算完成,循环变量为偶数时反之利用SCIF数据传输接口优化MIC与CPU、MIC与MIC之间的数据传输通信的具体过程如图3所示。在具体实施例中,首先生成一个信道,再绑定本端地址到通信信道,添加通信信道到监听队列,该通信信道即可监听专属其绑定地址的连接请求,也可建立出站请求;发送端发送连接请求,接收端取得连接请求,并建立两个MIC核心之间的连接;当连接建立之后,发送请求端就可以向监听端进行数据传输操作。S3:应用程序数据传输优化;对于迭代过程需要重复使用的数据或空间,采用nocopy的模式减少CPU与MIC的数据通讯传输次数,即程序仅在第一次调用MIC时申请分配的数据存储空间,并且不释放该数据;对于构建数据异步传输模型的数据,采用流水线的方式执行数据传输和计算;对于MIC之间需要通信交换的数据,利用SCIF数据传输接口优化MIC与CPU、MIC与MIC之间数据传输通信。显然,本专利技术的上述实施例仅仅是为清楚地说明本专利技术所作的举例,而并非是对本专利技术的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本专利技术的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本专利技术权利要求的保护范围之内。本文档来自技高网...

【技术保护点】
1.一种基于MIC架构处理器的数据传输优化方法,其特征在于:包括以下步骤:S1:对目标应用程序进行数据传输优化可行性分析;S2:构建数据传输模型;S3:应用程序数据传输优化。

【技术特征摘要】
1.一种基于MIC架构处理器的数据传输优化方法,其特征在于:包括以下步骤:S1:对目标应用程序进行数据传输优化可行性分析;S2:构建数据传输模型;S3:应用程序数据传输优化。2.根据权利要求1所述的一种基于MIC架构处理器的数据传输优化方法,其特征在于:步骤S1中,对目标应用程序进行数据传输优化可行性分析的具体步骤为:排除无依赖关系数据,并确定存在依赖的相关数据以及相关数据的传递模式,从而得到待传输优化数据的传输关系。3.根据权利要求1所述的一种基于MIC架构处理器的数据传输优化方法,其特征在于:步骤S2中,构建数据传输模型具体为:对于迭代过程需要重复使用的数据或空间,保持变量不再释放,下一迭代直接使用;对于同时调用却无依赖关系的数据,构建数据异步传输模型,即不等待上一数据计算的返回,同步进行传输;MIC之间需要通信交换的数据,利用SCIF数据传输接口构造MIC与CPU、MIC与MIC之间数据传输通信模型。4.根据权利要求1所述的一种基于MIC架构处理器的数据传输优化方法,其特征在于:步骤S3中,应用程序数据传输优化具体为:对于迭代过程需要重复使用的数据或空间,采用nocopy的模式减少CPU与MIC的数据通讯传输次数,即程序仅在第一次调用MIC...

【专利技术属性】
技术研发人员:王卓薇陈渊程良伦
申请(专利权)人:广东工业大学
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1