cuda和结构体

这篇博客探讨了在CUDA中如何使用结构体,包括结构体在CUDA中的存储分配和reduce操作。同时,文章提到了CUDA6的统一寻址在处理链表问题上的应用,并分享了几个关于CUDA排序的实例。此外,还讨论了C++中的运算符重载,给出了何时选择成员函数和友元函数的指导原则。
摘要由CSDN通过智能技术生成

        在CUDA中使用结构体,比如这种形式:

       

struct saxpy_functor 
{ 
    const float a; 
    saxpy_functor(float _a) : a(_a) {}
    __host__ __device__ float operator()(const float& x, const float& y) const { return a * x + y; } 
}; 

        这样,结构体里就具有了cuda的存储类型的成员。

        cuda中还经常出现reduce操作。搜了一下,还是浙大的一个学姐写得详细:

        http://blog.csdn.net/abcjennifer/article/details/43528407

        下面还有一个cuda结构体分配存储空间的例子:

        http://blog.csdn.net/wang11234514/article/details/18664139

        ********

        如果涉及链表,则网上给出的解答是:

        每一个tick数据构成链表的一个node,node中有两列数组,把每个node加上这个偏移量的int,变成一个大node,所有的大node做一个数组传进去就行了。

        另外一篇海洋大学的文章则称,CUDA6的统一寻址提供了很好的解决

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值