2015-08-08 95 views
3

有沒有什麼辦法可以計算一個可執行文件的準確執行時間?如何計算可執行文件的運行時間?

具體而言,我正在尋找一種方法,可以用來計算使用Matlab編譯的可執行文件的時間。我不是指tic,toc

+1

沒有!我沒有詢問MATLAB函數的運行時間,它可以使用MATLAB中的profiler或者tic-toc函數來計算。我在問如何計算使用MATLAB(或任何可執行文件)製作的可執行文件的運行時間。 – Mavie

+0

你想要在MATLAB中執行一個外部文件,或者當一個MATLAB生成的可執行文件被OS執行時? – CaringDev

+0

@AKSINGH:我回答了你的問題嗎? – barceloco

回答

3

你總是可以包括

tic 

的可執行文件的開頭,然後

disp(toc) 

末。

1

tic-toc測量matlab中的執行時間。如果你希望你的可執行文件能夠提供這些信息,你可以提供一個輸入參數來指示你的程序在一個tic-toc對之間運行所有的程序。

tic; 
%process 
toc; 

或者,如果您要從外部測量它,則會根據操作系統有不同的選項。例如在Linux中存在的命令時

+0

如何在Windows中進行測量。 – Mavie

+1

http://superuser.com/questions/228056/windows-equivalent-to-unix-time-command – CaringDev

+0

在Windows PowerShell中有命令Measure-Command {} https://technet.microsoft.com/en-us /library/ee176899.aspx –

3

由於您在詢問有關的可執行文件的執行時間,我假定您正在使用命令行環境。

Linux的的Unix的Mac OS X,等等,你可以使用命令行程序time測量運行時間。假設你的可執行文件被稱爲exefile.x,你會進入

time ./exefile.x 

你會得到的輸出看起來像

real 0m0.419s 
user 0m0.112s 
sys  0m0.174s 

的Windows,有工具,如timeit衡量運行時間。有關更多信息,請參閱How to measure execution time of command in windows command line?

希望這會有所幫助。

PS:爲realusersys的說明,請參閱What do 'real', 'user' and 'sys' mean in the output of time(1)?

+0

對不起!我無法正確使用timeit。我用另外一種方法來計算時間來測試我的EXE執行時間。 echo%time%MyApp.exe echo%time%將這些命令保存在bat文件中並在命令提示符下運行批處理文件。 – Mavie

+0

是的,這也應該起作用。我用一個非常棒的'.bat'文件找到了一篇優秀的文章,它向您展示了運行時。你可以在http://stackoverflow.com/a/4992271/2453904找到這篇文章。希望這可以幫助 – barceloco