How to use line_profiler for detailed Python performance analysis