improve profiler