Time (%) field in source code window
RichWildUK
Posts: 4
Hi,
I wonder if anyone can clarify for me what the column "Time (%)" actually signifies in the source code window when looking at the results?
There's some informatin on this page: http://www.red-gate.com/supportcenter/C ... 789215.htm
...which says something like "...line-level timings are shown for each line of code (as well as average time and hit count).", but I'm not sure what the means preceisly.
What are the line level percentages actually a percentage of? I would have thought it would be either:
- percentage of time spent on that line compared to total time spent in the entire program (selected part only, of course); or
- percentage of time spent on that line compared to the total time spent in that function.
Only, if you add the percentages in that column up for the particular function I've selected, it comes to well over 100%, which confuses me.
The other thought I had was that this is a multi-threaded application and I'm running it on a dual-core system - could this mean my total percentages for the entire program should add up to 200%, not 100%, and explain the above? (I have been running it based on processor timings rather than clock timings, because I'm running it on my own pc and multitasking with other stuff.) Help!
Many thanks
(P.S. I'm using verion 5.2 which I bought last month on a 'no updates' basis, but I couldn't see the version 5 forum!)
I wonder if anyone can clarify for me what the column "Time (%)" actually signifies in the source code window when looking at the results?
There's some informatin on this page: http://www.red-gate.com/supportcenter/C ... 789215.htm
...which says something like "...line-level timings are shown for each line of code (as well as average time and hit count).", but I'm not sure what the means preceisly.
What are the line level percentages actually a percentage of? I would have thought it would be either:
- percentage of time spent on that line compared to total time spent in the entire program (selected part only, of course); or
- percentage of time spent on that line compared to the total time spent in that function.
Only, if you add the percentages in that column up for the particular function I've selected, it comes to well over 100%, which confuses me.
The other thought I had was that this is a multi-threaded application and I'm running it on a dual-core system - could this mean my total percentages for the entire program should add up to 200%, not 100%, and explain the above? (I have been running it based on processor timings rather than clock timings, because I'm running it on my own pc and multitasking with other stuff.) Help!
Many thanks
(P.S. I'm using verion 5.2 which I bought last month on a 'no updates' basis, but I couldn't see the version 5 forum!)
Comments
You get 100% per core.
Does that help you to see the consistency in the results you are getting?
Happy profiling
Just to make sure that the 100% doesn't mean that its 100 of a core since its running on a single thread, I put this together,
which ran on all cores without profiler attached, but when I attached a profiler it started using a single core and each loop showed 24% cpu time,
I am completely lost on what these numbers actually mean, and why does it start running on a single core when profiler is attached!!!
I wonder, when you first created the profile, what did you select under "default timing display": "CPU" or "Wall Clock"?
I think if you select "Wall Clock" you'll get results out of 100% no matter how many cpus you're using, and I believe it defaults to Wall Clock unless you change it.
rich.
Actually I tried to change it to wall-clock, and the numbers changed like this:
Loops: 4*17%
Console.ReadLine(): 17%