Charting options disabled, cpu graph disapper after a minute

MikiWattsMikiWatts Posts: 13 Bronze 1
I'm running the profiler on Windows Embedded for POS, as that's the hardware we're using for our POS application.

I'm having a problem where when starting profiling, the charting options are disabled, and the cpu graph disappers after about a minute, and doesn't progress anymore.

The strange thing is that I ran the trial version of the profiler, and version 5, and they worked just fine.

I've tried it on XP SP3, and while the charting options were also disabled there, the cpu graph moved along just fine.

When I bought and activated version 6, about an hour ago, I ran into those problems.

I'm profiling a .net 2.0 application.

Edit: I think I just realized my mistake, I bought the Standard edition, which indeed in the feature list doesn't have saving profiling results... but I would have expect it to profile more than one minute...

Edit: bought the professional version, and it was indeed the issue. I'll open a seperate thread about the profiling for one minute problem

Edit: never mind about the one minute thing, apparently it took a bit of time to update the screen.

Comments

  • MikiWattsMikiWatts Posts: 13 Bronze 1
    edited August 15, 2011 3:17PM
    I've been playing with the profiler a bit, since even when the cpu graph is missing, the application being profiled is still running, and I can select a region on the empty cpu graph.

    After pressing Stop Profiling, the option to save the profiler results under the file menu is also disabled.

    I looked in the log folder, and I see in the most recent log file has this content:
    15 Aug 2011 21:31:03.843 [1] INFO  RedGate.Profiler.Logging.LogService - Starting new ANTS Performance Profiler 6 session
    15 Aug 2011 21:31:03.890 [1] INFO  RedGate.Profiler.Logging.LogService - Assembly version: 6.3.0.147
    15 Aug 2011 21:31:25.343 [1] WARN  RedGate.Profiler.OS.Local.LocalWindowsVersionInspector - Detected Windows version: Windows XP Professional (5.1 32-bit)
    15 Aug 2011 21:31:25.343 [1] WARN  RedGate.Profiler.IISSupport.Local.LocalIisInspector - IIS is supported on installed OS version
    15 Aug 2011 21:31:25.406 [1] WARN  RedGate.Profiler.IISSupport.Local.LocalIisInspector - Result of check to see if inetinfo.exe running: True
    15 Aug 2011 21:31:25.406 [1] WARN  RedGate.Profiler.IISSupport.Local.LocalIisInspector - Checks confirm that IIS is running.
    15 Aug 2011 21:31:25.406 [1] WARN  RedGate.Profiler.IISSupport.Local.LocalIisInspector - Checks confirm that IIS is enabled.
    15 Aug 2011 21:31:25.421 [1] WARN  RedGate.Profiler.IISSupport.Local.LocalIisInspector - Successfully detected IIS installation: IIS 5.1 (Auto-detected)
    15 Aug 2011 21:31:25.421 [1] WARN  RedGate.Profiler.IISSupport.Local.LocalIisInspector - Checks confirm that IIS is installed.
    15 Aug 2011 21:30:04.562 [Profiler pipe monitor] WARN  RedGate.Profiler.Engine.Startup.Basic.PipeConnection - Pipe has been closed; most likely the process being profiled has terminated.
    15 Aug 2011 21:30:04.578 [19] WARN  RedGate.Profiler.Engine.Startup.Counters.WindowsPerfCounter - Error while trying to read performance counter data
    System.InvalidOperationException: Instance 'PrioriPOSGUI' does not exist in the specified Category.
       at System.Diagnostics.CounterDefinitionSample.GetInstanceValue(String instanceName)
       at System.Diagnostics.PerformanceCounter.NextSample()
       at (Object )
       at ?Ž?.œŽ?.NextSample()
    

    (I see the same thing in the version 5 logs, so I guess it's not related... though the logs in version 5 have a lot more content in them)

    could it be related to the fact that I'm using the version 5 profiler dll to raise custom events ? I'll try using the version 6 dll and see if that makes a difference.
  • MikiWattsMikiWatts Posts: 13 Bronze 1
    Nope, no such luck, replaced the dll and recompiled, but no difference. If I let the application run, after stopping the profiler, I can still see the results for the functions and the cpu graph also updates the results when I select regions on it, up to that minute or so of time displayed.
  • Brian DonahueBrian Donahue Posts: 6,590 Bronze 1
    Sorry the results from Profiler are so confusing. All we know from the miniscule information in the log is that the process 'PrioryPOSGUI' is not running, or the windows performance subsystem can't generate counter data for it. Is it running in Task Manager?

    If ANTS Performance Profiler is starting the program and then making it crash, you can try using the "methods only" profiling mode and see if that keeps it going. There have been problems with the Microsoft symbol reader libraries causing crashes so switching off line-level timings may make it work and if so we can go through a debugging process to try to find the offening symbols.
  • MikiWattsMikiWatts Posts: 13 Bronze 1
    Ok, I thought the cpu graph was ok, but it's still not working right...

    The graph is running ok, until about 1:30 minutes, when it fills the screen, and then it just disappers, and the time ticks don't progress any further. When I save the results, and try to view them, it shows the cpu graph, but it looks messed and has overlapping lines.

    Here's what it looks like:

    KYlCM.png

    ANQTk.png

    If I wait long enough, to about 2:30, without touching the application, it suddenly starts working again, but you can still see the mixed up cpu lines at the start:

    dRmqr.png

    Edit: OK, something is just not working right here... even if I leave the profiler running for 2 minutes, then perform a few actions with my application, and then try to view the results, I only see results from operations that run in background threads and not from the UI thread itself.

    Edit: now the version 5 started doing it ! It worked just fine before:

    s5NZX.png
  • Brian DonahueBrian Donahue Posts: 6,590 Bronze 1
    Did you check Task Manager and see if the process is not running? The graph is indicating something yes, but not the root cause of the problem. It's either not running or it's disconnected from performancve counters. Sorry to say when there is a problem Profiler can just stop cold like this and not feed back any status about the process.
  • MikiWattsMikiWatts Posts: 13 Bronze 1
    My application definitely continues running, the graphs I've shown are while it was still running and responding just fine.
  • Brian DonahueBrian Donahue Posts: 6,590 Bronze 1
    What's PrioryPOSGui? Is it an unmanaged application started by your managed application?
  • MikiWattsMikiWatts Posts: 13 Bronze 1
    I tried doing the same on a different POS machine, which had the version 5 profile without the version 6 installed, and used the same application version that I used with the first POS machine. It worked just fine there.
  • MikiWattsMikiWatts Posts: 13 Bronze 1
    PrioriPOSGUI is my main .Net application, it's pure .net
  • MikiWattsMikiWatts Posts: 13 Bronze 1
    OK, I found the culprit... my application adjusts the local machine time, to make it match the server time, relative to time zones. Apparently, doing this while running the profiler, really throws it into a loop...

    So, problem solved. I'd suggest maybe adding some check for a change in the computer time, if the effects are so severe ?
  • Brian DonahueBrian Donahue Posts: 6,590 Bronze 1
    Thanks for tracking that down. If we can reproduce it, then yes, we'll try to prevent it or at least make people aware of it.
Sign In or Register to comment.