matlab中double 和single数据类型的差别

matlab中double 和single数据类型的差别

double数据类型占用8个字节,single数据类型占4个字节。所以用single会更快一些。(可以这么理解,就像你做8位数乘法跟做4位数乘法一样~肯定做4位数的运算更快一些嘛)


a=randn(3,3)

a =

    0.8404   -0.5445    0.4900
   -0.8880    0.3035    0.7394
    0.1001   -0.6003    1.7119

>> b=single(a)

b =

    0.8404   -0.5445    0.4900
   -0.8880    0.3035    0.7394
    0.1001   -0.6003    1.7119

>> c=randn(3,3);
>> tic,a*c,toc;

ans =

    0.5899    2.1930   -1.6388
   -1.0974   -0.8179   -1.1239
   -0.1730    2.4243   -4.2069

Elapsed time is 0.199251 seconds.
>> tic,b*c,toc;

ans =

    0.5899    2.1930   -1.6388
   -1.0974   -0.8179   -1.1239
   -0.1730    2.4243   -4.2069

Elapsed time is 0.002739 seconds.
>> class(a)

ans =

double

>> class(b)

ans =

single

可见,single类型数据运算速度明显比double型数据快很多。



  • 4
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值