[发明专利]一种基于CUDA与OpenMP的三维Kriging算法协同加速方法有效
申请号: | 202110438321.X | 申请日: | 2021-04-22 |
公开(公告)号: | CN113360187B | 公开(公告)日: | 2022-11-04 |
发明(设计)人: | 周贵云 | 申请(专利权)人: | 电子科技大学 |
主分类号: | G06F9/38 | 分类号: | G06F9/38 |
代理公司: | 成都华复知识产权代理有限公司 51298 | 代理人: | 王洪霞 |
地址: | 610000 四川省成*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 cuda openmp 三维 kriging 算法 协同 加速 方法 | ||
1.一种基于CUDA与OpenMP的三维Kriging算法协同加速方法,在CPU端通过OpenMP并行计算,与在GPU上通过CUDA并发流进行计算,其特征在于:OpenMP并行计算KD树进行近邻搜索,获取待插值点的近邻点信息,CUDA并发流求解用于Kriging方程的构造与系数求解;其适用于OpenMP编程范式,且能在KD树搜索流程中实现椭球空间领域搜索,所述OpenMP并行计算KD树进行近邻搜索的计算流程包括:
步骤1:产生多个待插值点坐标与索引;
步骤2:将产生的带插值点坐标与索引分发给多个OpenMP线程进行椭球空间下的近邻搜索;
步骤3:选取搜索到的前k个最近近邻点与套合结构信息来构造方程右边向量,并根据索引将其存储到CPU内存上;
使用CUDA并发流进行CPU与GPU之间的数据传输,且能完成在GPU上对Kriging方程的构造与最终插值结果的求解,其计算流程包括:
步骤1:拷贝近邻点数据信息与套合结构信息到GPU内存;
步骤2:在GPU中的每个线程通过套合计算实现所对应的系数矩阵上三角部分构造,且方程元素按照SOA的格式存储;
步骤3:在GPU中的每个线程进行针对对称矩阵的高斯消元法求解;
步骤4:计算最终的插值结果并传回CPU内存;
CPU计算部分与GPU计算部分可异步执行,互不干扰,包括以下步骤:
步骤1:将插值区域分为多个子区域,分批次进行处理;
步骤2:本次CPU计算完毕后,同步设备,使用CUDA流异步拷贝数据至GPU,并进行下一批次CPU上的处理;
步骤3:启动一个CPU线程保存计算结果至磁盘。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于电子科技大学,未经电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110438321.X/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种工业物联网的控制终端
- 下一篇:一种企业数据治理成效评估模型及其方法