国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

關于matlab程序運行時間計算方法的思考

發布時間:2015-10-27 11:04    發布者:designapp
關鍵詞: matlab
  簡介:在matlab中,為了驗證比較兩個算法直接的效率,我們常常需要計算某段程序的運行時間,而常用的也就是三種方法:
  1、tic和toc命令對;格式如下面一段程序。
  tic;
  a=0;
  for i1=1:100000
  for j1=1:10000
  a=a+1;
  end
  end
  toc;
  tic命令表示開啟一個matlab的計時器,toc則表示停止之前與之對應的tic開啟的計時器,并得到最后的計時結果,上一段程序結果如下:
  Elapsed time is 3.720372 seconds.
  2、clock加etime函數;程序結構如下面一段。
  t1=clock;
  b=0;
  for i2=1:100000
  for j2=1:10000
  b=b+1;
  end
  end
  t2=clock;
  etime(t2,t1)
  其中,clock命令是獲取系統的時間矢量,而etime函數則是計算兩個時間矢量之間的差并以秒單位形式表示。clock作為時間矢量包含了年月日時分秒六個參數,如在matlab單獨執行這一命令可得到:
  >> clock
  ans =
  1.0e+003 *
  2.0120 0.0080 0.0180 0.0140 0.0180 0.0507
  3、cputime命令計算運行時間;
  m1=cputime;
  c=0;
  for i3=1:100000
  for j3=1:10000
  c=c+1;
  end
  end
  m2=cputime;
  m=m2-m1
  cputime命令是獲取matlab自啟動后所占用cpu的運行時間,這里需要詳細介紹下,cputime不是代表matlab的運行時間,而是指matlab占用cpu的時間。大家知道,window系統的多進程管理類似于我們所說的時分復用概念,即cpu完成多進程是通過時間劃分來實現的,這一時刻運行的是進程一,下一時刻運行的是進程二,由于速度非常快,所以對于用戶來說看起來就是同時運行的。我們可以做個試驗,在一打開matlab的時候,執行cputime命令得到:
  >> cputime
  ans =
  13.1197
  說明我們matlab打開用了13秒多的時間,大家可以自我感覺下是不是這個時間。
  既然大概的原理我們知道了就可以來比較比較這三者的區別。首先,tic和toc的方法是最優的,這也是matlab幫助中提倡的一種。從精度上來說,第一種方法精度最高,由于是matlab自身的計時器,精度上要比后兩者高,其次是cputime,最低的是clock只有毫秒級的精度。再者,從最接近實際電路運行時間上來說,也是第一種方法最為接近,這點我們仔細分析下。
  我們知道,想得到某段程序在matlab中運行的時間,目的是在于對該程序所實現的算法在實際電路中處理的時間有個大概的估計與比較,所以我們最想要的是它在cpu運行的時間。這一點第二種方法則不太適合了,因為它采用的是系統時間作為計算參數,在這個時間內肯定還有著別的后臺運行程序等。而對于第三種方法,cputime所對應的測量對象是matlab整個程序,而并不是對于我們所測量的這段程序而言(matlab也可以看做是一個編譯器,對我們編寫的m代碼進行編譯,所以它還需要進行著別的操作)。再看看我們的第一種matlab推薦的方法,tic是啟動一個matlab內部的計時器,所以說它也是一種基于cpu時間的計時,而且更重要的是,計時開始的時間是我們設定在代碼前的,可以說tic和toc中間對于matlab來說,大部分時間就是運行這段代碼,所以時間上是最接近實際在電路中運行的時間的。
  關于上面的比較,個人閑來無事做了個實驗:同樣的代碼,將matlab在任務管理器中的進程優先級進行改動,我們可以明顯看到運行時間上的變化。
                               
本文地址:http://m.qingdxww.cn/thread-154704-1-1.html     【打印本頁】

本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區
  • Dev Tool Bits——使用MPLAB® Discover瀏覽資源
  • Dev Tool Bits——使用條件軟件斷點宏來節省時間和空間
  • Dev Tool Bits——使用DVRT協議查看項目中的數據
  • Dev Tool Bits——使用MPLAB® Data Visualizer進行功率監視
  • 貿澤電子(Mouser)專區
關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美a∨ | 国产在线观看99 | 久久优| 国产91网站在线观看 | 婷婷激情久久 | 韩国精品一区二区 | 日日摸夜夜欧美一区二区 | 香蕉网站狼人久久五月亭亭 | 久久亚洲国产中v天仙www | 久久精品国产亚洲综合色 | 欧美日本一二三区 | 久久精品一区二区三区不卡 | 欧洲三级在线观看 | 91精品婷婷国产综合久久8 | 色婷婷综合和线在线 | 诱惑网综合 | 一区二区三区在线免费看 | 日本免费播放 | 国模啪啪一区二区三区 | 色综合久久综精品 | 国产精品七七在线播放 | 亚洲免费黄色 | 精品一区二区三区高清免费不卡 | 精品一区二区三区的国产在线观看 | 成人观看免费大片在线观看 | 香蕉久久久 | 老司机精品福利视频 | 色爽交视频 | 欧美日韩小视频 | 一区二区三区午夜 | 亚洲特一级毛片 | 激情六月婷婷 | 青青草国产免费国产是公开 | 久久久久久久国产视频 | 国产小视频在线观看免费 | 精品国产亚一区二区三区 | 欧美日韩不卡视频一区二区三区 | 欧美精品v日韩精品v国产精品 | 成人看片黄a在线观看 | 国产欧美在线观看 | 午夜在线视频一区二区三区 |