[发明专利]一种基于共享内存实现多进程共享GPU的方法有效
申请号: | 201110262389.3 | 申请日: | 2011-09-06 |
公开(公告)号: | CN102323917A | 公开(公告)日: | 2012-01-18 |
发明(设计)人: | 杜云飞;杨灿群;易会战;王锋;黄春;赵克佳;陈娟;李春江;左克;彭林 | 申请(专利权)人: | 中国人民解放军国防科学技术大学 |
主分类号: | G06F15/167 | 分类号: | G06F15/167;G06F9/50 |
代理公司: | 国防科技大学专利服务中心 43202 | 代理人: | 郭敏 |
地址: | 410073 湖*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于共享内存实现多进程共享GPU的方法,目的是解决单个异构计算结点上SPMD程序的多个进程之间不能共享使用GPU的问题。技术方案是启动GPU服务端,GPU服务端等待GPU客户端请求信号的到来。启动GPU客户端,在需要GPU加速时,GPU客户端发送请求信号给GPU服务端,GPU服务端响应最先接收到的请求信号,使用GPU进行加速计算,同时GPU客户端执行CPU的计算过程。GPU计算过程中,来自GPU客户端的请求信号进入操作系统的信号队列排队。GPU计算完成后,GPU服务端响应信号队列中的其它请求信号。在只包含一个GPU的单个异构计算结点上,采用本发明可以使SPMD程序的多个需要GPU加速的进程在运行时不会出现运行故障,GPU可以被多个进程共享使用。 | ||
搜索关键词: | 一种 基于 共享 内存 实现 进程 gpu 方法 | ||
【主权项】:
一种基于共享内存实现多进程共享GPU的方法,其特征在于包括以下步骤:第一步、启动GPU服务端,GPU服务端使用系统调用sigaction为每个用户信号设置不同的信号处理函数,用户信号指GPU客户端请求GPU加速计算的信号,信号处理函数是SPMD即单程序多数据程序中的GPU计算过程,即利用GPU进行加速的计算过程;第二步、GPU服务端定义一个信号集合sigusrset,清空sigusrset集合,将设置了信号处理函数的用户信号添加到sigusrset信号集合中;第三步、GPU服务端检查操作系统的信号队列中有是否存在未处理的用户信号,如果不存在,GPU服务端执行第四步,否则GPU服务端执行第八步;第四步、GPU服务端等待从GPU客户端发来的sigusrset信号集合中的用户信号,如果没有用户信号到来,GPU服务端一直等待;否则,GPU服务端执行第八步;第五步、启动所有的GPU客户端,每个GPU客户端在计算结点的内存中分配一块共享内存空间,共享内存空间的标识是GPU客户端的进程号pid,并使用系统调用shmat将共享内存空间关联到GPU客户端的地址空间,使GPU客户端可以访问共享内存;第六步、GPU客户端执行其计算任务,当所有的GPU客户端进入利用GPU加速的计算过程时,将计算过程的数据写入共享内存空间,设置共享内存空间中的计算完成标识finished为0;第七步、所有的GPU客户端发送用户信号,请求GPU服务端的GPU加速过程,发送的用户信号中包含GPU客户端进程号pid信息,GPU客户端跳转到第十一步;第八步、GPU服务端被首先到达的用户信号唤醒,GPU服务端将标识为pid的共享内存空间关联到GPU服务端的地址空间,使GPU服务端可以访问这块内存空间的数据;第九步、GPU服务端调用到达用户信号的信号处理函数,执行GPU加速计算过程,未被响应的其它GPU客户端的用户信号在操作系统的信号队列中排队;第十步,GPU服务端将计算结果写回标识为pid的共享内存空间,设置这个共享内存空间中的计算完成标识finished为1,并释放对此共享内存空间的关联,GPU服务端跳转到第三步;第十一步,每个GPU客户端判断自己的共享内存空间中的计算完成标识finished是否为1,如果不为1,表明GPU加速过程未结束,GPU客户端等待GPU服务端将finished设置为1,同时,GPU客户端执行其CPU的计算任务;若为1,表明GPU加速过程已结束,GPU客户端执行第十二步;第十二步,每个GPU客户端继续运行其计算任务,如其计算任务已完成,则GPU客户端删除自己的共享内存空间,结束运行;否则,GPU客户端跳转到第六步。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科学技术大学,未经中国人民解放军国防科学技术大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201110262389.3/,转载请声明来源钻瓜专利网。
- 上一篇:用于有效分配访问授权信息的方案
- 下一篇:使用社交信息对用户会话进行认证