- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I love IPS. Period. But the usefulness could be greatly improved.
Amplifier Locks-and-waits gives the option to break results by thread. This is super. I know my 4 or 8 worker threads I am interested in and the background or inactive workers I could not care less for.
Amplifier Hotspots has no by-thread option. This means I get 64 seconds in WaitForMultipleObjects and 0.452 seconds in the next function call. I know that this time is in a listener (actually several idle threads including RPC, sockets, COM and other stuff) that has nothing to do, and I know there are 4 threads that pegged the 4 CPUs at 100% during the test and I cannot see them in the results?
Am I doing something wrong? Or do I need by-thread breakdown of results like in Locks-and-waits?
Thanks,
Jurek Makowiecki
Amplifier Locks-and-waits gives the option to break results by thread. This is super. I know my 4 or 8 worker threads I am interested in and the background or inactive workers I could not care less for.
Amplifier Hotspots has no by-thread option. This means I get 64 seconds in WaitForMultipleObjects and 0.452 seconds in the next function call. I know that this time is in a listener (actually several idle threads including RPC, sockets, COM and other stuff) that has nothing to do, and I know there are 4 threads that pegged the 4 CPUs at 100% during the test and I cannot see them in the results?
Am I doing something wrong? Or do I need by-thread breakdown of results like in Locks-and-waits?
Thanks,
Jurek Makowiecki
Link Copied
1 Reply
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
Based on the description you have given - I have the following hypothesis.
The WaitForMultipleObjects - is "spinning waiting to be woke up" and is not telling the OS to put the thread to sleep (while it is waiting). While it is spinning - Perfomance Monitor will register that the CPU is busy doing something.
Hotspot technology in Intel Parallel Amplifier will register samples to the WaitForMultipleObjects API - and it will identify that the CPU has been busy in that function.
LocksandWaits technology in Intel Parallel Amplifier instruments WaitforMultipleObjects - and recognizes that the thread was "waiting".
This is a hypothesis in order for me to verify, understand, explain, or to troubleshoot further, I will need a test case. Can you send me a screenshot of what you are seeing and can you zip up and send me your test solution?
Also which version of Visual Studio, Windows and any Visual Studio or Windows Service packs are you using?
Regards,
Eric M
Based on the description you have given - I have the following hypothesis.
The WaitForMultipleObjects - is "spinning waiting to be woke up" and is not telling the OS to put the thread to sleep (while it is waiting). While it is spinning - Perfomance Monitor will register that the CPU is busy doing something.
Hotspot technology in Intel Parallel Amplifier will register samples to the WaitForMultipleObjects API - and it will identify that the CPU has been busy in that function.
LocksandWaits technology in Intel Parallel Amplifier instruments WaitforMultipleObjects - and recognizes that the thread was "waiting".
This is a hypothesis in order for me to verify, understand, explain, or to troubleshoot further, I will need a test case. Can you send me a screenshot of what you are seeing and can you zip up and send me your test solution?
Also which version of Visual Studio, Windows and any Visual Studio or Windows Service packs are you using?
Regards,
Eric M
Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page