[发明专利]基于GPU平台实现数据处理的方法和装置有效
申请号: | 201510041981.9 | 申请日: | 2015-01-27 |
公开(公告)号: | CN104615583B | 公开(公告)日: | 2017-11-28 |
发明(设计)人: | 万天敏;周婧劼 | 申请(专利权)人: | 上海联影医疗科技有限公司 |
主分类号: | G06F17/15 | 分类号: | G06F17/15 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 201807 上海市*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 gpu 平台 实现 数据处理 方法 装置 | ||
技术领域
本发明涉及计算处理领域,尤其涉及一种基于GPU平台实现数据处理的方法和装置。
背景技术
可编程图形处理单元(Graphic Processing Unit,GPU)已经发展成为一种高度并行化、多线程以及多核的处理器。由于其在浮点运算、并行计算等方面的优异性能,GPU的应用早已不再局限于图像处理,将GPU平台用于处理大规模数据运算的通用计算技术也得到了重大发展。目前,基于现有的通用计算平台,并结合GPU平台加速数据处理已成为如医疗、探测等多领域中广泛应用的业务解决方案。
然而,由于算法复杂,参数众多以及数据耦合度大等原因,在通过GPU平台进行数据处理和函数计算的过程中,每一个步骤或者任何一个参数出错都会导致计算结果错误。并且,由于GPU本身的多线程调试相对困难,当存在错误而又没有进行正确性检测时,还会导致后续调试的难度进一步增大。这些问题都会影响到GPU平台对数据处理的计算性能,进而影响开发效率。
发明内容
本发明实施例解决的问题是如何提高GPU平台的数据处理效率。
为解决上述问题,本发明实施例提供一种基于GPU平台实现数据处理的方法,包括:从通用计算平台的函数体中提取进行函数计算时所需的参数;将所述通用计算平台中数据结构类型为变长数组的每个参数建立单独的参数;将所述通用计算平台中数据结构类型为非变长数组的所有参数建立一个结构体,形成一个结构体型参数;完成所述通用平台到所述GPU平台间的空间地址转换;根据所述GPU平台上所建立的参数的数据结构类型,对应修改所述函数体中的参数申明和参数引用点;在所述GPU平台上运行经过参数申明和参数引用点修改的函数;将函数运行后的计算结果的地址从所述GPU平台的地址空间转换为所述通用计算平台的地址空间。
可选的,所述完成所述通用平台到所述GPU平台间的空间地址转换包括:为所述函数体中的输入型参数在所述GPU平台上的地址空间分配第一空间,并将所述输入型参数的数据复制到所述第一空间中;为所述函数体中的输出型参数在所述GPU平台上的地址空间分配第二空间。
可选的,所述为所述函数体中的输入型参数在所述GPU平台上的地址空间分配第一空间,并将所述输入型参数的数据复制到所述第一空间中包括:当所述输入型参数为变长数组型参数时,在所述第一空间中将所述输入型参数复制为指向所述变长数组在所述通用平台中地址的数据。
可选的,所述在所述GPU平台上运行经过参数申明和参数引用点修改的函数包括:根据自定义设置,在所述GPU平台上启动运行所述函数的线程的维度。
可选的,所述通用计算平台为CPU平台。
可选的,所述基于GPU平台实现数据处理的方法适用于对剂量的计算。
可选的,所述进行函数计算时所需的参数包括:计算剂量的点坐标,等效密度表,等效长度表,源皮距表,通量图表,卷积核表,离轴数据,CT密度表数据,电子矫正表数据。
为了解决上述的技术问题,本发明实施例还公开了一种基于GPU平台实现数据处理的装置,包括:提取单元,适于从通用计算平台的函数体中提取需要进行函数计算时所需的参数;建立单元,适于将所述通用计算平台中数据结构类型为变长数组的每个参数建立单独的参数;将所述通用计算平台中数据结构类型为非变长数组的所有参数建立一个结构体,形成一个结构体型参数;第一转换单元,适于完成所述通用平台到所述GPU平台间的空间地址转换;修改单元,适于根据所述GPU平台上所建立的参数的数据结构类型,对应修改所述函数体中的参数申明和参数引用点;运行单元,适于在所述GPU平台上运行经过参数申明和参数引用点修改的函数;第二转换单元,适于将函数运行后的计算结果的地址从所述GPU平台的地址空间转换为所述通用计算平台的地址空间。
可选的,所述第一转换单元包括:第一分配子单元,适于为所述函数体中的输入型参数在所述GPU平台上的地址空间分配第一空间,并将所述输入型参数的数据复制到所述第一空间中;第二分配子单元,适于为所述函数体中的输出型参数在所述GPU平台上的地址空间分配第二空间。
可选的,所述第一分配子单元包括:复制模块,适于当所述输入型参数为变长数组型参数时,在所述第一空间中将所述输入型参数复制为指向所述变长数组在所述通用平台中地址的数据。
可选的,所述运行单元包括:启动子单元,适于根据自定义设置,在所述GPU平台上启动运行所述函数的线程的维度。
可选的,所述通用计算平台为CPU平台。
与现有技术相比,本发明实施例的技术方案具有以下优点:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海联影医疗科技有限公司,未经上海联影医疗科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510041981.9/2.html,转载请声明来源钻瓜专利网。