[Build 38 and Build 57 again] OutOfMemoryException

first i would say i'm glad that you opened the 7.0er EAP for VS 2010. Specially for VB there are many improvements which make my life more comfortable. Particularly the performance is much better than in 6.x.

But i also have problems with the build. I installed build 38 into VS 2010 and opened my 250.000 LOC solution. I got a bunch of OutOfMemoryExceptions while loading the solution and also as i start to edit the code. The startup problem i could solve by deleting all R# caches. But when i work some time on my solution the Exceptions occur again. In my case the exception was thrown by the Windows Forms desginer and not by R#. I had to restart VS to solve the problem.

Regards
Klaus

[Edit] Additionally i just noticed that the Visual Studio instance where the exception occured was still alive after i've closed it (i could see it in the process list).

9 comments
Comment actions Permalink

Hello Klaus
     How big are the Visual Studio memory footprint and the managed memory usage reported by ReSharper at the moment when OOM exception occurs? Is it possible for you to capture some memory snapshots (by following the instructions at http://confluence.jetbrains.net/display/ReSharper/ReSharper+Profiling+Instructions)? Thank you!

Andrey Serebryansky

Senior Support Engineer

JetBrains, Inc

http://www.jetbrains.com

"Develop with pleasure!"

0
Comment actions Permalink

the memory footprint was quite high but not at a dangerous level. Virtual Size of devenv.exe was around 1,5 GB and working set size was around 800 MB. I installed the current build 39 this morning but i didn't work on the solution where i had the problem. Because the problem occured at work and i'm at home now i can't check the build until monday. I will install the latest build then and tell you if the problem remains.

Regards
Klaus

0
Comment actions Permalink

i can reproduce the problem also in build 42. The symptoms are as follows:

I'm working on a VB source with around 4.800 lines of code (VS 2010). As soon as i start editing (just pressed the enter key somewhere in the code) the Managed Memory indicator jumps from around 90 MB to around 160 MB and devenv.exe starts permanently using 50 to 80 percent CPU time. I defined four public variables inside a structure and added some XML comments to them. Editing become slower and slower and Managed memory rises to about 350 MB and then R# reports OutOfMemoryException's. The whole thing took around two or three minutes. I've rported two issues (301970 and 301990, both meanwhile marked as duplicate of reopened 80754) via the Exception reporter for this.

I tried to take a memory snapshot following your instructions. It was not so easy because i can't install the memory profiler because i don't have admin rights on my computer at work and nmpcore crashed the first time i tried to take a snapshot (but mybe this was my fault because i did not perform a garbage collection before taking the snapshot). With the second try i could produce a snapshot (which belongs to isseu 301990). At work i'm not allowed to do ftp uploads, so i will do it at home this evening.

[Edit] Even if i try to execute a garbage collection via the managed memory indicator i get OutOfMemoryException's

Regards
Klaus

0
Comment actions Permalink

Additionally i tested build 42 at home on my laptop with Windows 7 Ultimate SP1 64-Bit (at work i have Windows XP SP3). Here i don't get OutOfMemoryExceptions, but Visual Studio 2010 uses nearly permanent 50 to 80 percent CPU. I've enabled the managed memory indicator too and it shows over 1 GB managed memory after a short time. Edit expierience is not good, but acceptable.

Visual Studio 2011 Beta seems to manage the memory much better. I have deleted my changes and retyped them. The managed memory indicator just shows around 600 MB, but the CPU load is the same as under VS 2010. Also edit expierience is better than in VS 2010 (not so much hangs, intellisense popup is shown much faster).

While writing this lines my ftp upload of the memory snapshot has finished. The filename is "luedi_OutOfMemory.7z". It contains two snapshots. The first, smaller one, i took just after starting Visual Studio and loading my solution. The second one i took after the OutOfMemoryException occured.

With the same solution i also have problems with R# 6.1. I have posted an issue (293666). Today Olga Lobacheva sent me a special build without consitency check which i will test tomorrow.

Regards
Klaus

0
Comment actions Permalink

Hello Klaus
     Thank you for this information! Please let me know how it goes with that build.

Andrey Serebryansky

Senior Support Engineer

JetBrains, Inc

http://www.jetbrains.com

"Develop with pleasure!"

0
Comment actions Permalink

i've tried the special build on my Windows XP desktop with Visual Studio 2010 at  work today. The performance was better than with the normal  EAP builds, but the build is a little bit unstable. I see a couple of  OOM exceptions in the exception reporter (around 20 .. 30 over  the day, but they didn't popped up, i just noticed them because of the  exception indicator in the status line) and when VS was idle  for a time it crashed two or three times. But overall i could work  better as with the last EAP builds. Specially the managed memory  shown in the managed memory indicator was much less than before (only  around 250 MB). My large file which causes R# to run out of  memory while editing i can now edit with minor problems (sometimes the  UI freezes for 20 to 30 seconds before showing intellisense  popup). CPU load don't differ much but rises down faster when i stop  editing.

Regards
Klaus

0
Comment actions Permalink

Hello Andrey,

the last EAP builds where quite good, but with build 56 the OOM exceptions where coming back. I had the same symptoms as with build 38, but now not only large files are affected. The exceptions occurs in code analysis. When i start R# in internal mode and cleanup PSI cache regularly the OOM exceptions don't occur.

[Edit] Even build 57 has memory problems. Here OOM exceptions started when i use "Find Usages" on a public property. I took a memory and a performance snapshot from this. As i'm unable to upload via FTP from work i will send the snapshots this afternoon from home.

Regards
Klaus

0
Comment actions Permalink

Hello Sergey,

i'm just uploading my snapshots. You will find them in Luedi_OOM_Build57.7z.

Regards
Klaus

0
Comment actions Permalink

Hello Klaus
     Thank you! We'll look at the snapshot and I'll get back with more info soon.

Andrey Serebryansky

Senior Support Engineer

JetBrains, Inc

http://www.jetbrains.com

"Develop with pleasure!"

0

Please sign in to leave a comment.