matlab的double和single类型

原创 2013年09月04日 17:31:23

        看到博客(这里)中说,在matlab中, 当数据比较大时,运算起来就困难了,有时候还会out of memory。原因是默认情况下matlab用double存储数据。而double数据类型占8个字节,single类型占4个字节。把数据类型从double类型转换成single类型可以节省一半的空间。(如果怀疑可以用whos指令查看)。本来很有道理的,但是看到有人说(比如这里):The format function affects only how numbers are displayed, not how MATLAB computes or saves them. 不过从图上来看,似乎是能节省一半的存储空间的。

 

        至于从double到single能否提高运算速度。从上面这句话来看,应该也不能提高速度。但是从这里得到提示,自己试了试看,确实速度提高了不少,如下所示:

 

        但是又神奇地从这里看到一句话:matlab会对double类型做运算的时候做加速,应尽量避免使用single。

       天呐,我彻底崩溃了,到底哪句是真的?至少从实验结果来看,single要比double快。而int类型没法用tic toc统计时间,我也没实验,理论上应该会更快。

        那到底这句红色的英文是啥意思啊?求指教。

        ------写完此文发现,人家那句话指的是format命令.......用上面的强转,就没这个事了吧。哎,阅读水平真烂.....

 

Tips

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

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


 

MATLAB之single函数

MATLAB之single函数: 一般来说,大矩阵计算,如果用single类型的数据能节省一半的内存空间,matlab在内部执行的时候是默认转换成double类型进行运算,据说可以从菜单里面改设置变成...

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

matlab中double 和single数据类型的差别 double数据类型占用8个字节,single数据类型占4个字节。所以用single会更快一些。(可以这么理解,就像你做8位数乘法跟做4...

【matlab】double和single类型

看到博客(这里)中说,在matlab中, 当数据比较大时,运算起来就困难了,有时候还会out of memory。原因是默认情况下matlab用double存储数据。而double数据类型占8个字节,...

Matlab显示图像问题,double处理后,图像变白

在matlab中,我们常使用imshow()函数来显示图像,而此时的图像矩阵可能经过了某种运算。在matlab中,为了保证精度,经过了运算的图像矩阵I其数据类型会从unit8型变成double型。如果...

Matlab基本函数-format函数

1、format函数:控制输出、显示格式 2、用法说明      format 缺省格式,同short。Matlab中常用的显示格式有: (1)format short表示5位近似定点数 (2)for...

Incremental Learning for Robust Visual Tracking学习笔记二之warpimg

论文@http://download.csdn.net/detail/u011339825/9250417 代码@http://download.csdn.net/detail/u011339825/...

Pycuda 学习笔记(二)gpuarray学习

本博客参照学习文档https://documen.tician.de/pycuda/array.html 通过GPUArray 矩阵类可以将numpy中的数组和矩阵直接转换成cuda可处理类型,该...

matlab中用imshow()显示double类型图像中出现的问题

在matlab中,我们常使用imshow()函数来显示图像,而此时的图像矩阵可能经过了某种运算。在matlab中,为了保证精度,经过了运算的图像矩阵I其数据类型会从unit8型变成double型。如果...

matlab编程中涉及到图象矩阵数据类型uint8\double matlab中用imshow()显示图像与图像矩阵的数据类型

记得当时用 imshow 显示灰度图有一些问题 进行double转化后解决 这个问题是在刚开始接触使用Matlab处理图像时经常会遇见的困惑。         网上有这么一种说...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:matlab的double和single类型
举报原因:
原因补充:

(最多只允许输入30个字)