- 博客(4)
- 收藏
- 关注
原创 CUDA学习之路3 核函数调用参数问题
当我们调用核函数时,需要将参数传入核函数。若参数是在Device端申请的数组,直接像C++函数那样传入指针名就行,但是如果是在Host端动态申请的变量,不能把指针作为参数传递进去,而是应该直接将值传递到核函数。下面以一个小例子解释。//核函数1定义__global__ kernel1(int *h_a,int h_b,int *d_c,int *d_d){ ...........
2019-04-17 11:49:30
3868
5
原创 CUDA学习之路2 共享内存的使用
这两天在写一个对任意长度数组进行扫描的cuda代码,由于对共享内存的理解不清楚,浪费了好多时间,写篇博客记录一下,避免下次再犯。正文:当我们使用共享内存时,要谨记,但凡涉及到共享内存的操作,一定要记得使用线程同步__syncthread();否则必然会造成数据的计算出错。因为共享内存在块内对所有线程都是可见的,是大家一起使用的。如果你在每次使用之后不同步一下,那么当运算的快的线程运算完成后...
2018-12-19 16:15:10
1517
1
原创 基于Auto.js的蚂蚁森林能量收集脚本
最近支付宝把“查看更多好友”和“没有更多了”,这两个键改成图片格式了,不能识别文字,导致了无法正常的进入更多好友的界面及收集完无法正常退出。更新内容(已修改下面代码):1.“查看更多好友”修改较为简单,直接点击固定坐标即可(我设置的是坐标点是(500,980));2.“没有更多了”稍微麻烦点,一般在“没有更多了”上面,会有几个邀请好友的图标,可以利用检测小手的办法,检测绿色的“邀请”图...
2018-11-24 15:17:57
25347
26
原创 CUDA学习之路1 在块内给变量赋值的问题
在cuda的__global__函数中使用原子操作时,切记不要将要被改变的变量赋初值。下面是求一个整型数组中比变量b小的数的数量的函数。就像前面说的,这段代码在开头将*n赋了一个初值0。由于cuda中的代码每个block并不是完全并行的,而是分批的,所以当新的block运行代码时,就会将之前统计的*n给重新赋值,导致不能得到一个正确的结果,并且每次运行得到的结果都不一样。__global__...
2018-08-09 21:34:22
1473
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人