【技术实现步骤摘要】
一种数据处理方法及装置
本专利技术涉及深度学习异构加速
,更具体地说,涉及一种数据处理方法及装置。
技术介绍
大数据和高性能计算平台的发展极大的推进了深度学习的步伐,在深度学习中,当数据集和参数模型非常大时,培养大型模型便需要借助分布式计算框架。ApacheSpark有着非常卓越的内存计算和可扩展的分布式计算性能,能够有效的提高深度学习中的超参数调优及大规模模型部署。在深度学习的两个关键活动:分类和卷积中,需要很高的内在并行度、大量的浮点计算能力以及矩阵计算。GPU及FPGA凭借其出色的异构加速计算和浮点计算能力,极大的提高了深度学习的速度和性能,相对CPU处理有所需服务器更少、功耗更低的特点。Spark对于可变长度的数据,通过解析元数据后,在内存中存储了一个相对偏移量和长度,利用UnsafeRow实例充当指向以此长度存储的行数据的指针,在处理一行数据时,才把数据读取到内存中;而FPGA在加速数据处理时,只能暂时读入这一行数据。专利技术人发现,这种数据读取方式对于FPGA加速Spark计算明显没有充分利用到FPGA的可并行性,使得FPGA的数据读取速度较慢, ...
【技术保护点】
一种数据处理方法,其特征在于,包括:将分布式计算平台中存储的待处理数据转换成按列存储的Parquet格式;利用Spark将所述Parquet格式的待处理数据按行组加载入内存中,并在内存中对所述待处理数据进行解压和反序列化后发送至FPGA异构计算装置进行对应计算。
【技术特征摘要】
1.一种数据处理方法,其特征在于,包括:将分布式计算平台中存储的待处理数据转换成按列存储的Parquet格式;利用Spark将所述Parquet格式的待处理数据按行组加载入内存中,并在内存中对所述待处理数据进行解压和反序列化后发送至FPGA异构计算装置进行对应计算。2.根据权利要求1所述的方法,其特征在于,将待处理数据转换成按列存储的Parquet格式,包括:生成包含有全部待处理数据的Parquet文件,并在该文件中将全部待处理数据切分成行组,其中每个所述行组中包含所有待处理数据的列的列块,且任一列块均存储有对应列中对应部分的待处理数据。3.根据权利要求2所述的方法,其特征在于,在所述Parquet文件中将全部待处理数据切分成行组,包括:在所述Parquet文件中将全部待处理数据切分成行组,其中每个所述行组的大小与所述分布式计算平台中数据块的大小相同。4.根据权利要求3所述的方法,其特征在于,利用Spark将所述Parquet格式的待处理数据按行组加载入内存中,包括:利用Spark中预先利用c语言设置的函数将所述Parquet格式的待处理数据按行组加载入内存中。5.根据权利要求4所述的方法,其特征在于,将在内存中进行解压和反序列化后的待处理数据至FPGA异构计算装置之后,还包括:获取所述FPGA异构计算装置返回的计算结果并将该计算结果返回给所述Spark,所述计算结果为所述FPGA异构计算装置利用接收到的待处理数据进...
【专利技术属性】
技术研发人员:丁良奎,
申请(专利权)人:广东浪潮大数据研究有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。