title: How much overhead do decorators add to Python function calls
body: <p>I've been playing around with a timing decorator for my pylons app to provide on the fly timing info for specific functions. I've done this by creating a decorator &amp; simply attaching it to any function in the controller I want timed.</p>
  
  <p>It's been pointed out however that decorators could add a fair amount of overhead to the call, and that they run 2-3x slower than an undecorated function.</p>
  
  <p>Firstly, I would expect that executing a decorated function would take a smite longer than an undecorated one, but I would expect that overhead to be in the thousandths of seconds &amp; be negligible compared to a SQL insert call. The decorator itself does simple simple timing calculations using time.time() &amp; some very simple aggregation.</p>
  
  <p>Do decorators add significant overhead to a system? I can't find anything to back that up.</p>