Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

[Matlab] How to obtain the computation time of a function

  1. Jun 13, 2008 #1
    Hi, all.

    I have a function in Matlab. I'd like to calculate the computation time of the function. How can I obtain the time? I think Matlab must include related functions as its internal functions.

    Thanks in advance.
  2. jcsd
  3. Jun 13, 2008 #2
    Thanks, but "tic" and "toc" provide the elapsed time in seconds. Do you know a way that provides the elapsed time in milliseconds ?

    Thanks in advance.
  4. Jun 14, 2008 #3
    A quick and easy way to do this is to use "cputime" to calculate the elapsed time. For instance, suppose that you wanted to determine how long it takes for the matlab benchmark to run. Then you'd use the following:

    Code (Text):

    time1 = cputime;
    cputime - time1
    Obviously, you can substitute "bench" for your function to determine how long it takes to run. See "doc cputime" for more information.
  5. May 24, 2009 #4
    The tool in MATLAB built for this purpose is: "Profile".
    In the MATLAB search at: "http://www.mathworks.com/" [Broken]
    and typing "profile" will bring up the information.

    Main commands are turning it on:
    profile on
    and viewing the results (after some execution):
    profile viewer

    kind regards.
    Last edited by a moderator: May 4, 2017
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook