Timing and Profiling in IPython Timing and profiling code is all sorts of useful, and it’s also just good ol’ fashioned fun (and sometimes surprising!). In this post, I’ll introduce how to do the following through IPython magic functions: %time & %timeit: See how long a script takes to run (one time, or averaged over a bunch of runs). %prun: See how long it took each function in a script to run. %