[发明专利]一种调度GPU进行批量运算的方法及装置在审
申请号: | 201510673433.8 | 申请日: | 2015-10-19 |
公开(公告)号: | CN105224410A | 公开(公告)日: | 2016-01-06 |
发明(设计)人: | 吴庆国 | 申请(专利权)人: | 成都卫士通信息产业股份有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F9/48 |
代理公司: | 成都九鼎天元知识产权代理有限公司 51214 | 代理人: | 徐静 |
地址: | 610041 四*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 调度 gpu 进行 批量 运算 方法 装置 | ||
1.一种调度GPU进行批量运算的方法,其特征在于包括:
步骤1:GPU调度模块与API应用模块通过进程间通讯机制进行通信;
步骤2:API应用模块向GPU调度模块发送运算任务,GPU调度模块将一个周期收到的计算任务在缓存中存储;当GPU处理完成上一批次计算任务后,GPU调度模块将缓存的计算任务批量提交给GPU,然后API应用模块采用同步模式或者异步模式完成计算任务的后续操作。
2.根据权利要求1的一种调度GPU进行批量运算的方法,其特征在于所述步骤2中计算任务在缓存中存储时,分别将类型相同的计算任务存在同一组中,每组缓存中的计算任务独立提交给GPU进行批量运算。
3.根据权利要求2的一种调度GPU进行批量运算的方法,其特征在于所述每组缓存均为双缓存,即在用缓存和备用缓存;备用缓存用于存放新接收到的计算任务,GPU运算完成后,将运算结果放入在用缓存,将计算结果发给API应用模块,随即将备用缓存中的数据批量交给GPU执行,备用缓存变为在用缓存,原来的在用缓存变为备用缓存,用于新接收到任务。
4.根据权利要求2的一种调度GPU进行批量运算的方法,其特征在于所述在用缓存和备用缓存都为不同参数建立对应的缓存区,使每个相同参数都存放在连续的地址空间中。
5.根据权利要求2的一种调度GPU进行批量运算的方法,其特征在于所述步骤2同步模式指的是API应用模块向GPU调度模块发送运算任务后,等待GPU调度模块执行完运算任务后向API应用模块返回计算结果;异步模式是API应用模块向GPU调度模块发送运算任务后,不等待运算完成直接返回,当GPU调度模块运算完成并返回运算结果后,API应用模块以回调的方式完成运算结果的处理。
6.一种调度GPU进行批量运算的装置,其特征在于包括:
API应用模块,用于向GPU调度模块发送运算任务;
GPU调度模块,用于当API应用模块向GPU调度模块发送运算任务时,GPU调度模块将一个周期收到的计算任务在缓存中存储;当GPU处理完成上一批次计算任务后,GPU调度模块将缓存的计算任务批量提交给GPU,然后API应用模块采用同步模式或者异步模式完成计算任务的后续操作;其中GPU调度模块与API应用模块通过进程间通讯机制进行通信。
7.根据权利要求5所述的一种调度GPU进行批量运算的装置,其特征在于所述计算任务在缓存中存储时,分别将类型相同的计算任务存在同一组中,每组缓存中的计算任务独立提交给GPU进行批量运算。
8.根据权利要求6所述的一种调度GPU进行批量运算的装置,其特征在于所述每组缓存均为双缓存,即在用缓存和备用缓存;备用缓存用于存放新接收到的计算任务,GPU运算完成后,将运算结果放入在用缓存,将计算结果发给API应用模块,随即将备用缓存中的数据批量交给GPU执行,备用缓存变为在用缓存,原来的在用缓存变为备用缓存,用于新接收到任务。
9.根据权利要求7所述的一种调度GPU进行批量运算的装置,其特征在于所述用缓存和备用缓存都为不同参数建立对应的缓存区,使每个相同参数都存放在连续的地址空间中。
10.根据权利要求6至9之一所述的一种调度GPU进行批量运算的装置,其特征在于所述同步模式指的是API应用模块向GPU调度模块发送运算任务后,等待GPU调度模块执行完运算任务后向API应用模块返回计算结果;异步模式是API应用模块向GPU调度模块发送运算任务后,不等待运算完成直接返回,当GPU调度模块运算完成并返回运算结果后,API应用模块以回调的方式完成运算结果的处理。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于成都卫士通信息产业股份有限公司,未经成都卫士通信息产业股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510673433.8/1.html,转载请声明来源钻瓜专利网。