[发明专利]一种基于Kepler架构的CUDA运行时参数透明优化方法有效
申请号: | 201410341238.0 | 申请日: | 2014-07-18 |
公开(公告)号: | CN104102513A | 公开(公告)日: | 2014-10-15 |
发明(设计)人: | 杨刚;王严;杜三盛;张策 | 申请(专利权)人: | 西北工业大学 |
主分类号: | G06F9/445 | 分类号: | G06F9/445 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 710072 陕西省*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 kepler 架构 cuda 运行 参数 透明 优化 方法 | ||
技术领域
本发明涉及CUDA(Compute Unified Device Architecture,统一计算设备架构)编程技术领域,尤其涉及一种基于Kepler架构的CUDA运行时参数透明优化方法。
背景技术
目前CUDA核函数运行时参数的设置、选取是通过程序员根据自己的经验进行设置,并通过多次试验才能求得性能优化的配置结果,故获取CUDA程序性能优化时进行试配需要花费大量时间。
发明内容
本发明的实施例提供一种基于Kepler架构的CUDA核函数运行时参数透明优化方法,可以节省获得性能优化所需的配置参数时间。
为达到上述目的,本发明的实施例采用如下技术方案:
一种CUDA运行时参数透明优化选择方法,包括:
CUDA运行时截获端截获CUDA应用对运行时的调用请求,并将截获到的所述调用请求封装传递给后台服务端;
所述后台服务端解封所述截获端发送过来的封装后的调用请求,获得核函数的运行时参数信息;其中,所述核函数的运行时参数信息包括线程块个数、线程块大小、共享内存大小;
所述后台服务端根据Kepler架构GPU的硬件特点将总线程数按由少到多划分为4个线程数等级,并根据所述核函数的运行时参数信息计算出核函数所需线程总数,从而确定其所属线程数等级;
所述后台服务端根据所确定的线程数等级来修改线程块的大小,然后根据修改后的线程块的大小计算获得修改后的线程块数量和修改后的共享内存大小;
所述后端服务器将修改后的核函数运行时参数与核函数执行部分发送给后台服务端的CUDA运行时层进行执行,其中,所述修改后的核函数运行时参数包括修改后的线程块的大小、修改后的线程块数量和修改后的共享内存大小。
上述技术方案提供的基于Kepler架构的CUDA运行时参数透明优化方法,应用CUDA核函数运行时参数选取与底层GPU架构相结合来进行的方法,通过截获上层应用对核函数参数的设置,根据Kepler架构GPU的特点对参数进行对用户透明的重新设置从而实现程序性能的优化。使CUDA应用开发的运行时参数优化部分对开发人员变得透明,减少了对CUDA应用优化所需用时,减轻了开发者的负担。并在减少CUDA应用开发、优化耗时的同时,减少了开发所需能耗。
附图说明
图1为本发明实施例提供的一种基于Kepler架构的CUDA运行时参数透明优化选择方法流程示意图;
图2为具体实现的系统结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供了一种基于Kepler架构的CUDA核函数运行时参数透明优化方法,如图1和图2所示,所述方法包括以下步骤:
101、CUDA运行时截获端截获CUDA应用对运行时的调用请求,并将截获到的所述调用请求封装传递给后台服务端。
102、后台服务端解封所述截获端发送过来的封装后的调用请求,获得核函数的运行时参数信息。
所述核函数的运行时参数信息包括线程块个数、线程块大小、共享内存大小等信息。
根据所获核函数线程块个数和线程块大小两者相乘得到核函数所需线程总数;根据所获核函数线程块个数和共享内存大小,两者相乘获得核函数所需总共共享内存数。
103、所述后台服务端根据Kepler架构GPU的硬件特点,将总线程数按由少到多划分为4个数量等级,并根据所述核函数的运行时参数信息计算出核函数所需线程总数,从而确定其所属线程数等级。
所述Kepler(开普勒)架构GPU(Graphic Processing Unit,图形处理器)的硬件特点为:每个SM(Streaming Multiprocessor,多核流处理器)上最大可并行2048条线程、最多可并行16个线程块、每个线程块最多可设置1024条线程、SM以一个线程束(32条线程)作为调度执行单位。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西北工业大学,未经西北工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410341238.0/2.html,转载请声明来源钻瓜专利网。