Linqpad Intellisense very slow

Linqpad intellisense on my Win 10 laptop has been extremely slow for me recently. I just installed the latest beta v5.33.09 (AnyCPU) in the hopes that it would resolve the issue, but to no avail.

I mostly use LinqPad as a scratchpad to test small pieces of code or expressions. There are no database connections being made. I'm simply running the "C# Program" profile. When I write "var" to start my first line of code, the intellisense kicks off and just hangs there for a few seconds. It's making this product quite unusable.

Any recommendations as to what I should do to help resolve this? I've never encountered this in previous iterations.

Comments

  • I've just uploaded a new beta (5.33.10) with an embedded profiler.

    Go to Help | About and click "Start internal profiling". Then create a query, type "var" or whatever causes it to hang, go back to Help | About, and click the link again to stop profiling and display the file containing the results. Could you please send me the file (support at linq pad dot net).

    Thanks!
  • Thank you for the quick turnaround. I've sent the perf file.
  • Thanks for the file. Does this slowdown happen right after starting LINQPad, or a few hours or so later?

    And can you reproduce it on another machine?
  • The slowdown happens right after starting. I am not able to reproduce this on another machine, but I'm at a loss as to what is causing it on my development laptop.
  • Hi, I'm also experiencing this thing but I think I have some additional information.

    I'm using a MS Surface Pro 4, Core i7-6650U model with Surface Hub into which I connect an HD monitor and a 4k monitor (running at 150% scale).

    I first started experiencing graphical weirdness after one of the larger recent windows updates, a few months ago, roughly when Meltdown and Spectre were in the news.

    The problem in LINQPad is as described by cabraham except I type "Dim x" (which takes >10sec). I've also experienced similar weirdness in Excel and Tortoise SVN.

    Here's the weird part. As soon as I disconnect my 4k monitor all the problems disappear, I don't even have to restart my LINQPad. As soon as I reconnect it the problem begins. It doesn't seem to matter which screen LINQPad is running on.

    This is clearly a windows problem, probably GDI or DWM. I'll send perf logs in a moment.
  • edited September 11
    Your logs indicate as similar stack trace as cabraham - It's getting stuck on the GDI+ DrawRectangle function.

    I've dug through the syntax editor source code and have identified a bug in not disposing a GDI+ pen. There's a small chance that it's related to this - if so, you'll find it fixed in the 5.33.11 beta. It's worth a try; otherwise as you say, it will be something inside Windows which will be hard to track down.
  • Thanks for the speedy effort!

    The version I tried earlier when I sent the perf logs was also 5.33.11 - did you update it but kept the version the same? Anyway, I redownloaded 5.33.11 AnyCpu, unfortunately the problem persists. For now I'm working around the problem by switching off "Show completion list after typing a letter" and using Ctrl+Space when I need it. Hopefully one of the coming windows updates will resolve this.

    PS: LinqPad is my bread and butter and I insist that everyone I work with install it, thank you for this little gem.
  • Any progress on this? I was having the issue infrequently, but today it appears to be happening even immediately after I restart LINQPad.
  • edited October 17
    No further progress. I've looked carefully through the code and logs and am fairly confident that LINQPad is doing nothing wrong and that the problem is related to the operating system or hardware.
  • I have experienced the same issue.

    I have LinqPad installed on my Dell XPS 15 9570.

    I have 2 external displays.

    1x 1080p HDMI
    1x 2k USB-C to DisplayPort

    When I use LinqPad without any external displays everything works fine.
    When I plug in only the 1080p screen, everything works fine.
    When I plug in only the 2k screen, everything works fine.

    But... when I plug in both the 1080p screen and 2k screen I experience the massive autocomplete lagginess to the point where LinqPad isn't really usable anymore.

    I'm not saying this is an issue with LinqPad - I just wanted to report the details I've found in trying to diagnose this issue.

    I hope this is helpful to someone. For now I think i'll unplug my 1080p screen when I want to use LinqPad.
  • edited November 7
    I've now uploaded a beta (v5.36.2) which includes a potential workaround - it eliminates most of the calls to GDI's DrawRectangle function, which is where the problem seems to lie. Let me know if this fixes it for you.

    https://www.linqpad.net/download.aspx#beta
Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!