【技术实现步骤摘要】
一种基于Kepler架构的CUDA运行时参数透明优化方法
本专利技术涉及CUDA(ComputeUnifiedDeviceArchitecture,统一计算设备架构)编程
,尤其涉及一种基于Kepler架构的CUDA运行时参数透明优化方法。
技术介绍
目前CUDA核函数运行时参数的设置、选取是通过程序员根据自己的经验进行设置,并通过多次试验才能求得性能优化的配置结果,故获取CUDA程序性能优化时进行试配需要花费大量时间。
技术实现思路
本专利技术的实施例提供一种基于Kepler架构的CUDA核函数运行时参数透明优化方法,可以节省获得性能优化所需的配置参数时间。为达到上述目的,本专利技术的实施例采用如下技术方案:一种CUDA运行时参数透明优化选择方法,包括:CUDA运行时截获端截获CUDA应用对运行时的调用请求,并将截获到的所述调用请求封装传递给后台服务端;所述后台服务端解封所述截获端发送过来的封装后的调用请求,获得核函数的运行时参数信息;其中,所述核函数的运行时参数信息包括线程块个数、线程块大小、共享内存大小;所述后台服务端根据Kepler架构GPU的硬件特点将 ...
【技术保护点】
一种基于Kepler架构的CUDA运行时参数透明优化方法,其特征在于,包括:CUDA运行时截获端截获CUDA应用对运行时的调用请求,并将截获到的所述调用请求封装传递给后台服务端;所述后台服务端解封所述截获端发送过来的封装后的调用请求,获得核函数的运行时参数信息;其中,所述核函数的运行时参数信息包括线程块个数、线程块大小、共享内存大小;所述后台服务端根据Kepler架构GPU的硬件特点将总线程数按由少到多划分为4个线程数等级,并根据所述核函数的运行时参数信息计算出核函数所需线程总数,从而确定其所属线程数等级;所述后台服务端根据所确定的线程数等级来修改线程块的大小,然后根据修改 ...
【技术特征摘要】
1.一种基于Kepler架构的CUDA运行时参数透明优化方法,其特征在于,包括:CUDA运行时截获端截获CUDA应用对运行时的调用请求,并将截获到的所述调用请求封装传递给后台服务端;所述后台服务端解封所述截获端发送过来的封装后的调用请求,获得核函数的运行时参数信息;其中,所述核函数的运行时参数信息包括线程块个数、线程块大小、共享内存大小;所述后台服务端根据Kepler架构GPU的硬件特点将总线程数按由少到多划分为4个线程数等级,并根据所述核函数的运行时参数信息计算出核函数所需线程总数,从而确定其所属线程数等级;所述后台服务端根据所确定的线程数等级来修改线程块的大小,然后根据修改后的线程块的大小计算获得修改后的线程块数量和修改后的共享内存大小;所述后台服务端将修改后的核函数运行时参数与核函数执行部分发送给后台服务端的CUDA运行时层进行执行,其中,所述修改后的核函数运行时参数包括修改后的线程块的大小、修改后的线程块数量和修改后的共享内存大小。2.根据权利要求1所述的方法,其特征在于,所述后台服务端根据Kepler架构GPU的硬件特点将总线程数按由少到多划...
【专利技术属性】
技术研发人员:杨刚,王严,杜三盛,张策,
申请(专利权)人:西北工业大学,
类型:发明
国别省市:陕西;61
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。