Can the Etch Call Graph Profiler be used with multithreaded applications?
Yes. The Etch Call Graph Profiler correctly maintains time for multithreaded applications. Profile time is only credited to one thread at a time. More precisely, if one application thread is suspended while another thread in the same application is running, only the running thread will accumulate profile time. Put another way, for a uniprocessor, the sum of the profile time for all the threads should be equal to the total execution time of the application. The Etch Call Graph Profiler combines activity for multiple threads when reporting results. If you would be interested in per-thread profile reports, or selective combining of thread profiles, please send feeback to etch-support@etch.cs.washington.
Yes. The Etch Call Graph Profiler correctly maintains time for multithreaded applications. Profile time is only credited to one thread at a time. More precisely, if one application thread is suspended while another thread in the same application is running, only the running thread will accumulate profile time. Put another way, for a uniprocessor, the sum of the profile time for all the threads should be equal to the total execution time of the application. The Etch Call Graph Profiler combines activity for multiple threads when reporting results.