cuda纹理内存简单操作 (2015年)

该博客介绍了CUDA中提升性能的纹理内存,包括纹理参考系API和仅在3.x计算能力设备上支持的纹理对象API,这两种方式在处理2维以上数组时的应用。
摘要由CSDN通过智能技术生成

总述

纹理内存是GPU上的一种内存,在某些场景下会比全局内存快,所以在某些场景下能够提高性能,对于cuda C提供了两种对于纹理内存的使用方式,在2维以上都需要借助cuda数组,一个是cuda纹理参考系方式,是一直都能使用的方式,另一种是cuda对象方式,只在计算能力为3.x的设备上支持。

Texture-Reference API (纹理参考系方式)

主要流程:
texture<DataType,Type,ReadMode >texRef
声明参考系要在全局之外,这里读模式在最上边声明的,而纹理对象则在纹理属性中声明
然后就是属性设置:
texRef.addressMode[0]=cudaAddressModeWrap;
texRef.addressMode[1]=cudaAddressModeWrap;
texRef.filterMode=cudaFilterModeLinear;
texRef.normalized=true;
之后是绑定操作:
cudaBindTextureToArray(texRef,cuArray,channelDesc);
这是简单的例子:
#include <stdio.h>
#include <stdlib.h>
#include <cuda.h>
#include <cuda_runtime.h>


texture<float,cudaTextureType2D,cudaReadModeElementType >texRef;
__global__ void transformK
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值