Very slow ORM after upgrade to VS 2010

9 posts, 0 answers
  1. Craig A
    Craig  A avatar
    15 posts
    Member since:
    Sep 2009

    Posted 20 Apr 2011 Link to this post

    We migrated our project from Visual Studio 2008 to 2010. Suddenly all our ORM-heavy pages were taking a super long time to load on our dev boxes while debugging. We figured out that each underlying query was taking 30ms to execute, whereas before it was 0-1 ms. After trying a number of things we finally determined it was the Intellitrace feature of Visual Studio 2010, which is on by default. Switching that off caused ORM performance to go back to what it was in VS 2008.  I didn't find any mention of this in the forums, so maybe this can help someone else.
  2. N Mackay
    N Mackay avatar
    228 posts
    Member since:
    Dec 2010

    Posted 21 Apr 2011 Link to this post

    Craig,

    Out of interest, is this with VS2010 SP1 installed ?

  3. DevCraft banner
  4. Craig A
    Craig  A avatar
    15 posts
    Member since:
    Sep 2009

    Posted 21 Apr 2011 Link to this post

    Yes it is 2010 SP1:

    Microsoft Visual Studio 2010
    Version 10.0.40219.1 SP1Rel
    Microsoft .NET Framework
    Version 4.0.30319 SP1Rel
    Installed Version: Ultimate
  5. Zoran
    Admin
    Zoran avatar
    534 posts

    Posted 22 Apr 2011 Link to this post

    Hello Craig A,

     With Q1 2011 release, OpenAccess has integration with the Intellitrace debugging mechanism of Visual Studio 2010. It is expected to have lowered performance when this feature is turned on(only in Debug mode though) and here is the help article that shows you how to fully utilize Intellitrace into debugging OpenAccess based applications.

    Greetings,
    Zoran
    the Telerik team
    Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
  6. Craig A
    Craig  A avatar
    15 posts
    Member since:
    Sep 2009

    Posted 25 Apr 2011 Link to this post

    Thanks for the link Zoran. I do have a couple comments/suggestions after reading the article and your comments.

    From the documentation article:
    >> Using the default settings, IntelliTrace has little effect on performance.

    and then you added in your reply:
    >> It is expected to have lowered performance when this feature is turned on

    In our experience we saw our ORM slowed down by a factor of 30X, so a page that previously spent .5 seconds in ORM queries was taking 15+ seconds afterwards.  I don't think this can be characterized as "little effect on performance". For example, I would restate the documentation to say, "Using the default settings, Intellitrace can have a dramatic effect on performance, in some cases slowing down queries so they take 20X-30X longer to execute."

    In addition, I would suggest that you have the ORM intellitrace integration disabled by default. I would assert the majority of users will not use Intellitrace most of the time. Those that are troubleshooting performance issues could easily go enable it when they need it.

    In addition this could have negative consequences for Telerik, since if OpenAccess is being evaluated/compared side-by-side with other ORMs and the slowdown is observed, OpenAccess would be unfairly eliminated due to slow performance.
  7. Zoran
    Admin
    Zoran avatar
    534 posts

    Posted 26 Apr 2011 Link to this post

    Hello Craig A,

     Actually, the sentence is there in the documentation because the default settings are to have the intellitrace integration disabled. I am not sure what was the reason that you had it otherwise on your side, are you sure that it was turned on by default when you just installed OpenAccess. If this is true than this means that there is a problem on our side, maybe with the default settings that we install with the product. However this is an issue we have not observed yet, while testing the product on our side.

    Greetings,
    Zoran
    the Telerik team
    Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
  8. Craig A
    Craig  A avatar
    15 posts
    Member since:
    Sep 2009

    Posted 26 Apr 2011 Link to this post

    Aha, thanks for that information about the default settings. We don't actually install OpenAccess on our machines, we just reference the DLL from where it is checked into the source tree.  However I think the issue is not OpenAccess Intellitrace after all, but instead the ADO.NET Intellitrace events (which Microsoft does enable by default).  If I uncheck ADO.NET in Intellitrace, then the delay goes away.  So Telerik is absolved! Might be worth a mention in the Telerik article though, for others who get into my situation.

    Thanks
  9. Mike
    Mike avatar
    7 posts
    Member since:
    Sep 2015

    Posted 17 Sep 2015 in reply to Zoran Link to this post

    This problem with IntelliTrace and ORM queries being REAL SLOW has returned with Q2 2015 Data Access.  If IntelliTrace is on while debugging queries against the DB take an order of magnitude longer to execute.  If I have IntelliTrace off or I am not debugging, the queries are fast again.

    Help!

  10. Thomas
    Admin
    Thomas avatar
    590 posts

    Posted 21 Sep 2015 Link to this post

    Please check the amount of trace events that get produced, and also which category they belong to.
    Also, consider restricting the types of events that get traced to limit the performance impact.

    Regards,
    Thomas
    Telerik
     
    Check out the latest announcement about Telerik Data Access vNext as a powerful framework able to solve core development problems.
Back to Top
DevCraft banner