The short answer is that this is because the JIT collects information on (by default only) the first run and after this does its optimizations. If you want plenty of detail, I can offer a blog post on what happens when you call a JIT function and one on optimization in particular.
Best regards
Thomas