一种基于cpu+mic异构平台的高维数据流的处理方法

文档序号:10534620阅读:306来源:国知局
一种基于cpu+mic异构平台的高维数据流的处理方法
【专利摘要】本发明公开了一种基于CPU+MIC异构平台的高维数据流的处理方法,该处理方法通过一个载有MIC协处理器的高性能服务器系统实现,该系统节点采用CPU+MIC异构混合模式,一个节点内除CPU芯片外,还至少含有一个MIC协处理器;CPU是逻辑判断和控制的核心,并负责串行计算;MIC协处理器专注于高度线程化的并行处理任务,即计算密集和数据密集的部分转移到MIC协处理器上计算,优化数据流处理性能和分担数据处理。本发明的一种基于CPU+MIC异构平台的高维数据流的处理方法和现有技术相比,使用CPU和MIC协处理器协同进行处理,减轻了CPU的负担,使其更加专注于逻辑性强的事务处理和串行计算,加速高性能计算的速度,提高了数据流处理的吞吐能力和算法整体性能。
【专利说明】一种基于CPU+MIC异构平台的高维数据流的处理方法
[0001]
技术领域
[0002]本发明涉及数据流挖掘领域,具体地说是一种基于CPU+MIC异构平台的高维数据流的处理方法。
【背景技术】
[0003]高性能计算是信息领域的前沿高技术,在保障国家安全、推动国防科技进步、促进尖端武器发展方面具有直接推动作用,是衡量一个国家综合实力的重要标志之一。随着信息化社会的飞速发展,人类对信息处理能力的要求越来越高,不仅石油勘探、气象预报、航天国防、科学研究等需求高性能计算,而金融、政府信息化、教育、企业、网络游戏等更广泛的领域对高性能计算的需求迅猛增长。
[0004]数据流实际上就是连续移动的元素队伍,其中的元素是由相关数据的集合组成。令t表示任一时间戳,at表示在该时间戳到达的数据,流数据可以表示成
at+1区别于传统应用模型,流数据模型具有以下4点共性:(I)数据实时到达;(2)数据到达次序独立,不受应用系统所控制;(3)数据规模宏大且不能预知其最大值;(4)数据一经处理,除非特意保存,否则不能被再次取出处理,或者再次提取数据代价昂贵。
[0005]在数据流十字转门模型的基础上,定义适合高维数据流分析的滑动数据流窗口模式。高维数据流……可以定义为高维信号X到实数集上的一个映射:X[1…N] —,即将一条高维数据流的η个数据映射到一个列向量里。每个是对不同时刻的数据流中某一个属于值X[j]的更新值,=(j,)表示一个更新元组,其含义是,可能为正也可能为负,表示在时刻t的P维更新向量,完全符合十字转门模型。(Χ[1...Ν]其实是一个二维数组)向量只能读取一次,按照时间戳i的增加流入。高维数据流的滑动窗口模式定义为包含最近η项元素的序列…,将数据流可以视为矩阵,这里只是概念意义上的矩阵,不需要真正物化这个矩阵。令表示时间窗为η的具有P个属性的高维流矩阵,表示时间窗为η的具有q个属性的高维流矩阵(不失一般性设p〈=q),表示X中第t个时刻的第i个属性值;表示X的第i行;表示X的第t列。若在时刻t,如果对X和Y两个元组元组没有限制,那么两条数据流是异步的。若在时刻t,元组X有P个值,元组Y有q个值,每个值对应于一个属性值的流入,我们称这种情况下的X,Y是同步的。元组按时间t有序,如果高维数据流在某时刻未接收到元组,则以稀疏数据流矩阵代替即全O的元组代替。
[0006]在金融、互联网、电话通讯记录等应用领域中的数据流具有高流量的特点,对数据流处理算法和计算机硬件提出了新的挑战。例如股票趋势预测,高速网络故障诊断,天气预报等许多需要在线趋势分析的领域,需要处理的高维数据流,维数通常都很高,对其频繁地进行矩阵的乘、转置等计算是避免不了的。这无疑是非常耗时的。由于在实际应用中数据流量是连续庞大的,所以物化所有的流数据是不实际的,即对于用户实时地对高维数据流进行统计性的连续查询提出了更高的要求和挑战。因此研究和利用高速的硬件资源提高数据流处理吞吐量成为大数据以及互联网领域热点问题之一。
[0007]

【发明内容】

本发明的技术任务是提供一种基于CPU+MIC异构平台的高维数据流的处理方法。
[0008]本发明的技术任务是按以下方式实现的,该处理方法通过一个载有MIC协处理器的高性能服务器系统实现,该系统节点采用CPU+MIC异构混合模式,一个节点内除CPU芯片夕卜,还至少含有一个MIC协处理器;
CPU是逻辑判断和控制的核心,并负责串行计算;MIC协处理器专注于高度线程化的并行处理任务,即计算密集和数据密集的部分转移到MIC协处理器上计算,优化数据流处理性能和分担数据处理。
[0009]所述的MIC协处理器最多含有四个。
[0010]所述的CPU负责从流数据源端获取数据,对数据进行流速率调节,属性包装和数据过滤,进而进行缓冲,根据流速率调节后的情况,将负责负载平衡和决定何时启动MIC协处理器内核。
[0011 ]所述的MIC协处理器负责存储数据流的概要数据结构,并不断将数据流转换为概要数据结构,实时处理新流入的数据,过期的数据将在MIC协处理器内存上直接抛弃;当用户提出查询请求时,主机负责调用内核程序,在MIC协处理器内存中的概要数据结构上执行查询算法内核,并将查询结果返回主机;最后再由CPU主机将结果转换为用户可读的最终查询结果返回给用户。
[0012]所述的该处理方法分六层架构:时序数据处理层、数据映射层、数据缓冲层、滑动窗口层、概要矩阵抽取层以及查询分析处理层;
1)时序数据处理层:是符合非规则流的一些约束的含高维属性的元组,该层的任务是由CPU进行处理的:数据I/O和数据过滤;在这一层中,对原数据流分三次处理:流速率调节,属性包装和数据过滤;
流速率调节负责负载平衡和决定何时启动MIC协处理器,当数据流的流量达到一定规模时,启动MIC协处理器对数据流进行处理,作为一种提高数据流处理性能的手段;每次启动MIC协处理器协处理数据流,CPU以较大的分块将数据交换到MIC处理器,然后利用图形处理器密集的数据计算能力和高内存带宽的特性对数据流进行高速处理;
属性包装和数据过滤负责对数据流进行加工以改善数据流的质量,为流数据的连续查询和复杂分析打下基础,包括对流数据进行去噪、压缩编码、修正以减少存储空间和传输时间;在整个层中元组按时间t有序,如果任一高维数据流在时刻t未接收到元组,则以全O的元组代替,即允许稀疏数据流矩阵存在;
2)数据映射层:对于图像相关的数据流,将CPU数组结构映射为MIC纹理结构,事先建立对应表达式,通过数据属性和纹理数据属性建立映射关系,找出CPU和MIC两类数据的--
对象关系,利用通用计算数据结构对应纹理在MIC存放纹理各个属性的方式;
3)数据缓冲层:维护注册的查询计划缓冲、同步数据查询操作工作区、数据流历史概要缓冲、数据流缓冲四种性质的存储;
4)滑动窗口层:流矩阵以队列的方式实现,队列中存放流数据的高维属性,进入滑动窗口层;更新矩阵时,用新元组替换掉最旧的元组,实现同步高维数据流概要数据结构增量归一化; 5)概要矩阵抽取层:生成高维数据流的概要结构矩阵,存放概要数据矩阵的层次;
6)查询分析处理层:完成各种基本查询和复杂分析;基本查询处理操作完成一般的选择、连接、投影和聚集的查询请求;复杂分析处理操作则是在信息提取层生成的概要信息基础上,进一步研究数据流中各种因素的性质和相互之间的关系。
[0013]本发明的一种基于CPU+MIC异构平台的高维数据流的处理方法和现有技术相比,使用CPU和MIC协处理器协同进行处理,减轻了 CPU的负担,使其更加专注于逻辑性强的事务处理和串行计算,加速高性能计算的速度,提高了数据流处理的吞吐能力和算法整体性能。
【具体实施方式】
[0014]实施例1:
该基于CPU+MIC异构平台的高维数据流的处理方法通过一个载有MIC协处理器的高性能服务器系统实现,该系统节点采用CPU+MIC异构混合模式,一个节点内除CPU芯片外,还含有1-4个MIC协处理器;MIC协处理器构建在英特尔至强处理器的并行编程原则之上。通过集成众多低功耗内核,每一个处理器核具备一个512位的SMD处理单元和很多新的向量运算指令,MIC协处理器优化了每瓦性能。超过每秒一万亿次的计算能力,创造了在一个芯片上的超级计算机。MIC协处理器是在既定的工业标准以及编程习惯之下进行并行编程以及性能优化的,而且MIC协处理器是基于X86架构的,对于传统的处理数据流的经典方法,MIC协处理器可以很好地沿用,同时MIC协处理器集成了61个计算核心,每个核心可开启4个硬件线程,总计可开启244个线程用来进行多线程并行计算,同时MIC协处理继续沿用了易于理解的标准编程语言包括C,C++和Fortran,以及现存并行编程标准。
[0015]CPU是逻辑判断和控制的核心,并负责串行计算;CPU负责从流数据源端获取数据,对数据进行流速率调节,属性包装和数据过滤,进而进行缓冲,根据流速率调节后的情况,将负责负载平衡和决定何时启动MIC协处理器内核。
[0016]MIC协处理器专注于高度线程化的并行处理任务,即计算密集和数据密集的部分转移到MIC协处理器上计算,优化数据流处理性能和分担数据处理。MIC协处理器负责存储数据流的概要数据结构,并不断将数据流转换为概要数据结构,实时处理新流入的数据,过期的数据将在MIC协处理器内存上直接抛弃;当用户提出查询请求时,主机负责调用内核程序,在MIC协处理器内存中的概要数据结构上执行查询算法内核,并将查询结果返回主机;最后再由CPU主机将结果转换为用户可读的最终查询结果返回给用户。
[0017]所述的该处理方法分六层架构:时序数据处理层、数据映射层、数据缓冲层、滑动窗口层、概要矩阵抽取层以及查询分析处理层;
I)时序数据处理层:是符合非规则流的一些约束的含高维属性的元组,该层的任务是由CPU进行处理的:数据I/O和数据过滤;在这一层中,对原数据流分三次处理:流速率调节,属性包装和数据过滤;
流速率调节负责负载平衡和决定何时启动MIC协处理器,当数据流的流量达到一定规模时,启动MIC协处理器对数据流进行处理,作为一种提高数据流处理性能的手段;每次启动MIC协处理器协处理数据流,CPU以较大的分块将数据交换到MIC处理器,然后利用图形处理器密集的数据计算能力和高内存带宽的特性对数据流进行高速处理;
属性包装和数据过滤负责对数据流进行加工以改善数据流的质量,为流数据的连续查询和复杂分析打下基础,包括对流数据进行去噪、压缩编码、修正以减少存储空间和传输时间;在整个层中元组按时间t有序,如果任一高维数据流在时刻t未接收到元组,则以全O的元组代替,即允许稀疏数据流矩阵存在;
2)数据映射层:对于图像相关的数据流,将CPU数组结构映射为MIC纹理结构,事先建立对应表达式,通过数据属性和纹理数据属性建立映射关系,找出CPU和MIC两类数据的--
对象关系,利用通用计算数据结构对应纹理在MIC存放纹理各个属性的方式;
3)数据缓冲层:维护注册的查询计划缓冲、同步数据查询操作工作区、数据流历史概要缓冲、数据流缓冲四种性质的存储;
4)滑动窗口层:流矩阵以队列的方式实现,队列中存放流数据的高维属性,进入滑动窗口层;更新矩阵时,用新元组替换掉最旧的元组,实现同步高维数据流概要数据结构增量归一化;
5)概要矩阵抽取层:生成高维数据流的概要结构矩阵,存放概要数据矩阵的层次;
6)查询分析处理层:完成各种基本查询和复杂分析;基本查询处理操作完成一般的选择、连接、投影和聚集的查询请求;复杂分析处理操作则是在信息提取层生成的概要信息基础上,进一步研究数据流中各种因素的性质和相互之间的关系。
[0018]MIC(Many Integrated Cores),即MIC协处理器。
[0019]通过上面【具体实施方式】,所述技术领域的技术人员可容易的实现本发明。但是应当理解,本发明并不限于上述的几种【具体实施方式】。在公开的实施方式的基础上,所述技术领域的技术人员可任意组合不同的技术特征,从而实现不同的技术方案。
【主权项】
1.一种基于CPU+MIC异构平台的高维数据流的处理方法,其特征在于,该处理方法通过一个载有MIC协处理器的高性能服务器系统实现,该系统节点采用CPU+MIC异构混合模式,一个节点内除CPU芯片外,还至少含有一个MIC协处理器; CPU是逻辑判断和控制的核心,并负责串行计算;MIC协处理器专注于高度线程化的并行处理任务,即计算密集和数据密集的部分转移到MIC协处理器上计算,优化数据流处理性能和分担数据处理。2.根据权利要求1所述的一种基于CPU+MIC异构平台的高维数据流的处理方法,其特征在于,所述的MIC协处理器最多含有四个。3.根据权利要求1所述的一种基于CPU+MIC异构平台的高维数据流的处理方法,其特征在于,所述的CPU负责从流数据源端获取数据,对数据进行流速率调节,属性包装和数据过滤,进而进行缓冲,根据流速率调节后的情况,将负责负载平衡和决定何时启动MIC协处理器内核。4.根据权利要求1所述的一种基于CPU+MIC异构平台的高维数据流的处理方法,其特征在于,所述的MIC协处理器负责存储数据流的概要数据结构,并不断将数据流转换为概要数据结构,实时处理新流入的数据,过期的数据将在MIC协处理器内存上直接抛弃;当用户提出查询请求时,主机负责调用内核程序,在MIC协处理器内存中的概要数据结构上执行查询算法内核,并将查询结果返回主机;最后再由CPU主机将结果转换为用户可读的最终查询结果返回给用户。5.根据权利要求1所述的一种基于CPU+MIC异构平台的高维数据流的处理方法,其特征在于,所述的该处理方法分六层架构:时序数据处理层、数据映射层、数据缓冲层、滑动窗口层、概要矩阵抽取层以及查询分析处理层; 1)时序数据处理层:是符合非规则流的一些约束的含高维属性的元组,该层的任务是由CPU进行处理的:数据I/O和数据过滤;在这一层中,对原数据流分三次处理:流速率调节,属性包装和数据过滤; 流速率调节负责负载平衡和决定何时启动MIC协处理器,当数据流的流量达到一定规模时,启动MIC协处理器对数据流进行处理,作为一种提高数据流处理性能的手段;每次启动MIC协处理器协处理数据流,CPU以较大的分块将数据交换到MIC处理器,然后利用图形处理器密集的数据计算能力和高内存带宽的特性对数据流进行高速处理; 属性包装和数据过滤负责对数据流进行加工以改善数据流的质量,为流数据的连续查询和复杂分析打下基础,包括对流数据进行去噪、压缩编码、修正以减少存储空间和传输时间;在整个层中元组按时间t有序,如果任一高维数据流在时刻t未接收到元组,则以全O的元组代替,即允许稀疏数据流矩阵存在; 2)数据映射层:对于图像相关的数据流,将CPU数组结构映射为MIC纹理结构,事先建立对应表达式,通过数据属性和纹理数据属性建立映射关系,找出CPU和MIC两类数据的--对象关系,利用通用计算数据结构对应纹理在MIC存放纹理各个属性的方式; 3)数据缓冲层:维护注册的查询计划缓冲、同步数据查询操作工作区、数据流历史概要缓冲、数据流缓冲四种性质的存储; 4)滑动窗口层:流矩阵以队列的方式实现,队列中存放流数据的高维属性,进入滑动窗口层;更新矩阵时,用新元组替换掉最旧的元组,实现同步高维数据流概要数据结构增量归一化; 5)概要矩阵抽取层:生成高维数据流的概要结构矩阵,存放概要数据矩阵的层次; 6)查询分析处理层:完成各种基本查询和复杂分析;基本查询处理操作完成一般的选择、连接、投影和聚集的查询请求;复杂分析处理操作则是在信息提取层生成的概要信息基础上,进一步研究数据流中各种因素的性质和相互之间的关系。
【文档编号】G06F9/50GK105893151SQ201610198142
【公开日】2016年8月24日
【申请日】2016年4月1日
【发明人】卢晓伟, 张清, 周勇
【申请人】浪潮电子信息产业股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1