2015-08-08 66 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