[发明专利]一种基于多GPU卡的图像并发处理方法、装置及系统在审
申请号: | 201811296754.0 | 申请日: | 2018-11-01 |
公开(公告)号: | CN109388496A | 公开(公告)日: | 2019-02-26 |
发明(设计)人: | 安玉山 | 申请(专利权)人: | 北京视甄智能科技有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06N3/063;G06N3/08 |
代理公司: | 北京知呱呱知识产权代理有限公司 11577 | 代理人: | 武媛;吕学文 |
地址: | 100039 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 线程 线程池 匹配 装置及系统 并发处理 内存 图像 图形处理器 计算能力 接收用户 任务队列 任务配置 吞吐能力 线程执行 服务器 占用 配置 保证 | ||
1.一种基于多GPU卡的图像并发处理方法,其特征在于,所述方法包括:
接收用户提交的任务,其中所述任务为用户根据待处理的对象和处理需求建立的任务;
将所述任务加入到任务队列,并为所述任务配置与之对应的任务线程,设定任务线程编号;
将配置好的任务线程按序加入到线程池中,所述线程池中包含至少两个任务线程;
根据所述任务线程的编号,从多个图形处理器GPU卡中匹配执行所述任务线程的GPU卡;
根据第一GPU卡的内存和与之匹配的每一个任务线程执行时占用的内存,合理的从所述线程池中选取一个或多个任务线程提交至所述第一GPU卡,以便所述第一GPU卡对一个或多个任务线程并行处理,其中,所述一个或多个任务线程与所述第一GPU卡相匹配,所述第一GPU卡为所述多个GPU卡中的任一个GPU卡。
2.根据权利要求1所述的方法,其特征在于,所述根据所述任务线程的编号,从多个图形处理器GPU卡中匹配执行所述任务线程的GPU卡,具体包括:
为所述多个GPU卡中每一个GPU卡设定ID号;
根据所述多个GPU卡的数量、每一个GPU卡设定的ID号以及所述任务线程的编号,从所述多个GPU卡中匹配执行所述任务线程的GPU卡。
3.根据权利要求2所述的方法,其特征在于,所述根据所述GPU卡的数量、每一个GPU卡设定的ID号以及所述任务线程的编号,从所述多个GPU卡中匹配执行所述任务线程的GPU卡,由下式表示:
IDGPU=IDthreadmodNgpu
其中,IDGPU为GPU卡的ID号,IDthread为任务线程的编号,Ngpu为GPU卡的数量。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述根据第一GPU卡的内存和与之匹配的每一个任务线程执行时占用的内存,合理的从所述线程池中选取一个或多个任务线程提交至所述第一GPU卡之前,所述方法还包括:当确定所述一个或多个任务线程中第一任务线程存在前向依赖任务线程时,检测所述前向依赖线程是否执行完毕;
若所述前向依赖线程未执行完毕时,将所述第一任务线程加入到所述线程池的尾部排队,直至确定所述前向依赖任务线程执行完毕后,再按序将所述第一任务线程提交至所述第一GPU卡;
并且,重新从所述线程池中按序再次选取一个与所述第一GPU卡匹配的任务线程提交至所述第一GPU卡,所述第一任务线程为所述一个或多个任务线程中任一个任务线程。
5.根据权利要求1所述的方法,其特征在于,所述根据第一GPU卡的内存和与之匹配的每一个任务线程执行时占用的内存,合理的从所述线程池中选取一个或多个任务线程提交至所述第一GPU卡之后,所述方法还包括:
接收所述第一GPU卡反馈的分别与所述一个或多个任务线程中每一个任务线程对应的响应信息,以便根据所述响应信息查询所述第一GPU卡处理所述一个或多个任务线程的进度。
6.根据权利要求5所述的方法,其特征在于,当根据所述响应信息确定所述第一GPU卡对所述一个或多个任务线程中的第一任务线程处理完成时,从所述第一GPU卡中读取处理结果,并删除与所述第一任务线程对应的任务,其中,所述第一任务线程为所述一个或多个任务线程中的任一个任务线程。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京视甄智能科技有限公司,未经北京视甄智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811296754.0/1.html,转载请声明来源钻瓜专利网。