cuda日记-20140929
来源:互联网 发布:网络暴力的英语作文 编辑:程序博客网 时间:2024/06/01 12:32
1、在kernel函数中,循环体的末尾(循环内)一定要有一次线程同步,保证所有线程处于同一次循环之中。
2、规约算法,转载
//求32*128矩阵的每行之和
//kernel
__global__ void RowSum(float* A, float* B){
int bid = blockIdx.x;
int tid = threadIdx.x;
__shared__ s_data[128];
//read data to shared memory
s_data[tid] = A[bid*128 + tid];
__synctheads(); //sync
for(int i=64; i>0; i/=2){
if(tid<i)
s_data[tid] = s_data[tid] + s_data[tid+i] ;
__synctheads();
}
if(tid==0)
B[bid] = s_data[0];
}
int main(){
RowSum<<<32,128>>>(A,B);
}
规约算法(reduction)用来求连加、连乘、最值等,应用广泛。每次循环参加运算的线程减少一半
0 0
- cuda日记-20140929
- Cuda日记
- cuda日记-20140924
- cuda日记-20140928
- CUDA学习日记1
- CUDA学习日记2
- CUDA学习日记3
- CUDA学习日记4
- CUDA学习日记5
- CUDA学习日记6
- CUDA学习日记7
- CUDA学习日记8
- CUDA学习日记9
- CUDA学习日记10
- cuda安装日记
- cuda日记2-20140921-cuda与mfc
- GPU(CUDA)学习日记(九)------ CUDA存储器模型
- GPU(CUDA)学习日记(十三)------ CUDA内存简介
- 设计四个线程,其中共两个线程每次对j增加1,另外两个线程每次对j减少1。循环100次,写出程序。
- 银行家算法
- 【转】MYSQL安装失败的原因及解决办法
- Android中如何做到自定义的广播只能有指定的app接收
- 基于GMSL在汽车电子控制单元中的应用分析
- cuda日记-20140929
- 百度推送实例1--登录挤掉,下线通知
- Hibernate各种主键生成策略与配置详解
- linux下mysql不能被远程连接的解决方法
- 进程总结
- 关于eclipse下载activiti报错问题
- LCD 驱动过程详解
- HTML制作表格
- iOS-在SAE使用Apple Push Notification Service实现消息推送