- 积分
- 23
- 注册时间
- 2010-11-7
- 仿真币
-
- 最后登录
- 1970-1-1
|
如果硬件(显卡,一定是NVIDIA显卡)较新的话 就可以在matlab2011中实现GPU数值计算了,据说(NVIDIA说的)浮点数计算速度是CPU数十上百倍。很遗憾本人显卡所限(GF9300 GE),不能直接使用matlab GPU 计算功能。
于是下载安装jacket 虚拟机GPU计算平台来小试牛刀,效果还行
以下是几个案例:
案例1 圆周率计算:
- tic
- NSET = 10000000;
- X = grand( 1, NSET );
- Y = grand( 1, NSET );
- distance_from_zero = sqrt( X.*X + Y.*Y );
- inside_circle = (distance_from_zero <= 1);
- pi = 4 * sum(inside_circle) / NSET
- toc
复制代码 GPU计算时间:- Elapsed time is 0.316980 seconds.
复制代码- tic
- NSET = 10000000;
- X = rand( 1, NSET );
- Y = rand( 1, NSET );
- distance_from_zero = sqrt( X.*X + Y.*Y );
- inside_circle = (distance_from_zero <= 1);
- pi = 4 * sum(inside_circle) / NSET
- toc
复制代码 CPU计算时间:- Elapsed time is 0.685731 seconds.
复制代码 看看第二个案例:什么叫茶具- %GPU calculate
- tic
- gfor i=1:10000
- A=grand(400);
- gend
- toc
复制代码 GPU计算结果:- Elapsed time is 0.008953 seconds.
复制代码- %CPU calculate
- tic
- for i=1:10000
- A=rand(400);
- end
- toc
复制代码 CPU计算计算结果:- Elapsed time is 36.617145 seconds.
复制代码 |
评分
-
2
查看全部评分
-
|