Performance, Stability and Oddities - ReSharper 9.x with VS 2015

I just upgraded to VS2015 from VS2013 as ReSharper 9 from 8. I'm experiencing a couple annoyances and oddities. It seems like VS and ReSharper might be fighting each other a bit.

Most of the problems I've identified are totally throwing off my normal cadence.

  • Code completion and Intellisense are slow
    • Intellisense is taking longer than expected to discover and display completion lists
    • Intellisense is intefering with normal typing, even when I'm not trying to invoke auto-complete
    • As a result, attempting to quickly type the first quarter or third of an in scope method, for example, then tab to complete is causing 'unexpected' results
  • 'Brace Completion' is slow
    • This might be a VS thing... i'm still trying to sort who is handling what now
    • When typing a method, after the first curly brace, the closing brace appears, as expected. The caret, however, is immediately placed after the closing brace. If given 400-600 ms, the caret will be adjusted to within the method body.
    • This results in a very uncomfortable, and common, scenario of declaring the signature, opening a brace, pressing enter almost immediately, and finding myself with an empty method body which my caret is outside of.


There are some other things, I will edit this post to update, but these two have the most impact on my normal activites, and I have to get back to work.



General Development Environment Specs
Core i5 3470
8GB
Win 7 64 bit
Samsung 840 EVO 250GB SSD (OS, Software, commonly accessed data, such as active project source)
Seagate Barrucda 250GB HD (everything else)


Snapshot of Typical State
Running Applications
VS2015
Chrome (3-15 tabs)
Spotify
SQL Server Management Studio
Excel (1-3 workbooks)
Outlook
Skype
Notepad++

Resource Allocations (estimated, and highly dependent on activities, obviously)
0.0 - 0.5 GB 'Free' +
1.0 - 2.5 GB 'Standby' =
1.0 - 3 GB RAM available for new allocation

5 comments
Comment actions Permalink

Hello Michael,

  Please try installing ReSharper 9.2 RC https://confluence.jetbrains.com/display/ReSharper/ReSharper+9.2+EAP and check mentioned issues once again.

  If you still notice any problems with performance, could you please help us to determine the cause of the issue by profiling Visual Studio for us - please follow the instructions described in the item 7 here http://resharper-support.jetbrains.com/entries/24083148-Visual-Studio-with-ReSharper-is-slow to collect a snapshot and send it to us.

Thanks!

0
Comment actions Permalink

Just so you know, I download 9.2 RC and ReSharper still has issues with correct new line options.

0
Comment actions Permalink

Hi Alexander,

Thank you for your response. I submitted a profile {RSRP-446837}, hopefully you can discover it with that ID.

0
Comment actions Permalink

Hello Michael,

According to the snapshot that you've submitted, you can tweak the following settings to make ReSharper's code completion faster:
1. Change 'Smart behavior in basic completion' to 'None'
2. Turn off 'Show import items in basic completion' option

you can find those options under ReSharper | Options | IntelliSense | Completion Behavior

Kind regards,
Andrey Serebryanskiy

0
Comment actions Permalink

Hello Andrey,

I tried the suggested fix, and all issues are still present.

Additionally, I have tested issues under 'ideal' scenario:

  • All superflous applications shut-down
  • Single instance of VS
  • Solution contains one class-library project: 'MyProject'
  • Project contains one file 'MyClass'
  • References trimmed to bare minimum


Again, the performance issues are present.

You know, a lot of these issues are tough to nail down specifically. There is a definite sense of 'sluggishness' throughout, but its sometimes difficult to say exactly what's wrong beyond 'it feels bad.' However, I've managed to identify a couple more specifics, which I'll update my original post with.

Also, as a side-note, turning off smart behavior for basic completion felt pretty whacky. Even if that fixed the performance issues, the root issue, that of my code-writing cadence, would have worsened. I would have wound up with a lot of:

private Foo _bar;

void FooBar()
{
     _bar = new string();
}

0

Please sign in to leave a comment.