Answered VS 2011 DP Concurrency Visualizer

  • יום שלישי 06 דצמבר 2011 12:50
     
      קוד כלול
    I try to analyze a native application, and I always get:

    "The report cannot be displayed. The trace file may be corrupt. Try recollecting the trace. "
    Tried several times, without success. Unfortunately, this error message is a non-informative one, leaving me puzzled what could go wrong. Does anybody know possible reasons?
    System: Windows 7 in a VMWare client.

    Application to be analyzed: 32 bit native code, binary (built on a different PC)

    Christian
    • נערך על-ידי chksr יום שלישי 06 דצמבר 2011 12:56 formatting
    • נערך על-ידי chksr יום שלישי 06 דצמבר 2011 12:58
    • נערך על-ידי chksr יום שלישי 06 דצמבר 2011 12:59
    • נערך על-ידי chksr יום שלישי 06 דצמבר 2011 13:00
    •  

כל התגובות

  • יום שלישי 06 דצמבר 2011 22:05
     
     תשובה

    Hi Christian,

    The Concurrency Visualizer is not supported on VMs.  This may be causing the issue, but to be sure, we'll need more information.  If you'd like us to look into this, would you mind sending me the log file (created just after you attempt to collect a trace).  Just after attempting to collect a trace, navigate to the %temp% directory.  Sort the files by "Date modified" and the most recent file should start with "ConcurrencyVisualizer-CVAnalysisService".  This is the log file.

    You can send this to me at jarapp at microsoft dot com.  

    It's possible that we'll need additional information, but let's start by looking at this.  If we still can't figure out the issue, you can send us the trace files that were collected by the Concurrency Visualizer.  These are large files, stored by default under c:/users/<user name>/Visual Studio 11/Concurrency Visualizer.

    Thanks for bringing this to our attention!

    -James

    • הוצע כתשובה על-ידי Don McCradyOwner יום שני 12 דצמבר 2011 19:17
    • סומן כתשובה על-ידי chksr יום שלישי 13 דצמבר 2011 06:28
    •  
  • יום שלישי 13 דצמבר 2011 06:27
     
     
    Hi James, For an unknown reason, the mail telling me that you commented here just received me now (dec 13th!). We did solve the problem in the blog, and yes, Concurrency analyzation works in a VM, at least VMWare ;) About other problems I saw, I will post them when I have some spare time. Thank you! Christian
  • יום שלישי 27 מרץ 2012 12:48
     
     

    Hi James,

    the problem with the "broken" event files re-appeared... unfortunately, I don't know any more what I did to solve the problem months ago. What I see is that traces that do work (that just have little CV data) they have an entry in the "DataManagerSources" section in the CVTrace file. And I have 4 files, one CVTrace, one CVData, two ETW files.

    The traces that do NOT work do neither have a CVData file, nor a <DataManagerSource> entry in the <DataManagerSources> section.

    Could you think of any reason that could cause such a file to appear broken? Why the CVData file is not written, or - if that's an expected behaviour under certain circumstances - why I get the error message?

    Looking at the LOG file you mentioned I see

    120327.143208.0527: Context: ProfileContext added 'TimeUnitsPer100ns' = 0,3579545

    120327.143208.2959: Context: ProfileContext added 'TimeUnitsPer100ns' = 0,3579545

    120327.143211.1205: Error: Throwing exception: Negative/Zero time duration not allowed

    IS that the reason? How could I change that value?

    Christian




    • נערך על-ידי chksr יום שלישי 27 מרץ 2012 12:49
    • נערך על-ידי chksr יום שלישי 27 מרץ 2012 12:49
    • נערך על-ידי chksr יום שלישי 27 מרץ 2012 12:51
    •  
  • יום שישי 13 אפריל 2012 17:34
     
     

    Hi,

    Sorry for the delayed response.  Are you using the Markers Api, Dataflow, PLINQ, TPL, or PPL heavily?  We have recently been made aware of a similar issue on another thread and the symptoms seem to be the same.  See this post.  If you are still encountering this problem could you please email me to follow up, address is in the forum thread as well. 

    I believe the values you listed for TimeUnitsPer100ns represent the number of QPC Ticks needed to make a 100 nano-second tick on your machine. 

    Thanks,

    Drake


    • נערך על-ידי Drake Campbell יום שישי 13 אפריל 2012 17:39
    •  
  • יום שישי 19 אפריל 2013 11:38
     
     

    95 % of the times: it's OK now (VS2012, latest SP etc).

    A small fraction of traces is rejected as "The Trace file is corrupt". So I guess often enough, short spans are converted OK, but not all.