matlab中double 和single數據類型的差異

matlab中double 和single數據類型的差異

matlab中double 和single數據類型的差異

double數據類型佔用8個字節,single數據類型佔4個字節。因此用single會更快一些。(能夠這麼理解,就像你作8位數乘法跟作4位數乘法同樣~確定作4位數的運算更快一些嘛)html

 
[html]  view plain  copy
 
  1. a=randn(3,3)  
  2.   
  3. a =  
  4.   
  5.     0.8404   -0.5445    0.4900  
  6.    -0.8880    0.3035    0.7394  
  7.     0.1001   -0.6003    1.7119  
  8.   
  9. >b=single(a)  
  10.   
  11. b =  
  12.   
  13.     0.8404   -0.5445    0.4900  
  14.    -0.8880    0.3035    0.7394  
  15.     0.1001   -0.6003    1.7119  
  16.   
  17. >c=randn(3,3);  
  18. >> tic,a*c,toc;  
  19.   
  20. ans =  
  21.   
  22.     0.5899    2.1930   -1.6388  
  23.    -1.0974   -0.8179   -1.1239  
  24.    -0.1730    2.4243   -4.2069  
  25.   
  26. Elapsed time is 0.199251 seconds.  
  27. >> tic,b*c,toc;  
  28.   
  29. ans =  
  30.   
  31.     0.5899    2.1930   -1.6388  
  32.    -1.0974   -0.8179   -1.1239  
  33.    -0.1730    2.4243   -4.2069  
  34.   
  35. Elapsed time is 0.002739 seconds.  
  36. >> class(a)  
  37.   
  38. ans =  
  39.   
  40. double  
  41.   
  42. >> class(b)  
  43.   
  44. ans =  
  45.   
  46. single  

可見,single類型數據運算速度明顯比double型數據快不少。spa

相關文章
相關標籤/搜索