# Measuring time complexity of a method

I use

NMinimize[someFunction, Method -> {"RandomSearch", Method ->{"InteriorPoint"},"SearchPoints" -> 2n, "RandomSeed" -> RandomInteger[{0, 100}], "PostProcess" -> {FindMinimum, Method -> "QuasiNewton"}}, MaxIterations -> 1000 n, PrecisionGoal -> 10, AccuracyGoal -> 10]


where someFunction is a function of n variables.

How could I measure the time complexity of this method?

• all you can do without acess to the details of the code is emperically evaluate for various n using timing and look at the trend – george2079 Aug 12 '14 at 15:14

There is a nice function BenchmarkPlot

The usage is something like this

Needs["GeneralUtilities"]
BenchmarkPlot[{f1,f2}, # &, PowerRange[1, 1000], "IncludeFits" -> True]


Typical output:

There are already many examples on MMA.SE.