• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

MATLAB之single函数

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

 MATLAB之single函数

 

MATLAB之single函数:

一般来说,大矩阵计算,如果用single类型的数据能节省一半的内存空间,double数据类型占8个字节,single类型占4个字节,matlab在内部执行的时候是默认转换成double类型进行运算,据说可以从菜单里面改设置变成默认single 未尝试过,matlab里面有个命令可以转换数据格式,那就是:

single函数

可以执行以下语句看一下b是什么:

 

	b=1;
	whos b
	b=single(b);
	whos b
你可以看到b从默认的double变成了single
也可以尝试如下命令来测试运算读速度:
	a=rand(1,100);
	b=rand(1,100);
	c=rand(1,100);
	a1=single(a);
	b1=single(b);
	tic
	for i=1:100
  	 c=a.*b;
	end

	toc
	tic
	for i=1:100
    	 c=a1.*b1;
	end
	toc

结果:

 

Elapsed time is 0.081662 seconds.
Elapsed time is 0.002880 seconds.

 

说明single的运算速度的确是快很多,用时约为原来的1/5

 

 

 

此外 simulink里面有强制数据类型转换 也许可以提高simulink的速度(未测试)

Tips

1.    Matlab中如果我们使用循环的话,如果循环体内的程序不含有single等类型,而且使用的函数都是matlab的build-in function的话,matlab会自动帮助你优化for循环。

2.    使用ctrl + i 可以对选中的代码区域自动排版。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap