Welcome Guest! To enable all features please Login or Register.

Notification

Icon
Error

Console tool, limit memory usage of NCrunch.exe?
GreenMoose
#1 Posted : Monday, June 18, 2018 10:58:34 AM(UTC)
Rank: Advanced Member

Groups: Registered
Joined: 6/17/2012(UTC)
Posts: 503

Thanks: 142 times
Was thanked: 66 time(s) in 64 post(s)
Is there a way to limit the memory usage of NCrunch.exe ? I guess NCrunch.exe itself is not anything that can be tweaked via configuration settings?

Bakground
A build agent with 8GB RAM seems to be insufficient since building NCrunch on that agent, with weird delays in loading times like below, and also fails db tests with timeouts of 1 minute (not failing on 10GB machine).
Code:

10GB agent:

[11:44:54] :     [Step 5/7] [InitialisationQueueTask-17] Loading project: X:\Infrastructure\XXX.Infrastructure.csproj
[11:44:54] :     [Step 5/7] [InitialisationQueueTask-16] Loading project: X:\Domain\XXX.Domain.ModelFactories\XXX.Domain.ModelFactories.csproj
[11:44:54] :     [Step 5/7] [InitialisationQueueTask-19] Loading project: X:\Presentation\XXX.Web\XXX.Web.csproj
[11:45:15] :     [Step 5/7] [InitialisationQueueTask-11] Loading project: X:\Tests\NUnitTests\NUnitTests.csproj

8GB agent:

[12:24:38] :     [Step 5/7] [InitialisationQueueTask-18] Loading project: X:\Presentation\XXX.Web\XXX.Web.csproj
[12:24:38] :     [Step 5/7] [InitialisationQueueTask-16] Loading project: X:\Infrastructure\XXX.Infrastructure.csproj
[12:24:38] :     [Step 5/7] [InitialisationQueueTask-15] Loading project: X:\Domain\XXX.Domain.ModelFactories\XXX.Domain.ModelFactories.csproj
[12:26:16] :     [Step 5/7] [InitialisationQueueTask-12] Loading project: X:\Tests\NUnitTests\NUnitTests.csproj


(10GB on another agent seems to work better)
MemoryUsage

Thanks.
Remco
#2 Posted : Tuesday, June 19, 2018 1:11:48 AM(UTC)
Rank: NCrunch Developer

Groups: Administrators
Joined: 4/16/2011(UTC)
Posts: 6,974

Thanks: 929 times
Was thanked: 1256 time(s) in 1169 post(s)
Is this being used in the context of a large solution with high code coverage density?

Such a scenario can make NCrunch especially hungry. The bulk of the engine's memory consumption comes from its code coverage indexing. We need to individually track and efficiently index every line covered by every test, in such a way that allows code coverage to be rapidly merged, updated and reported. We haven't found any way to do this yet without a reasonably high amount of memory consumption. It may well be that using NCrunch on a solution of this scale is simply going to require more memory than the machine has available. Sadly there are no quick wins for us to reduce memory consumption in this area :(
1 user thanked Remco for this useful post.
GreenMoose on 6/19/2018(UTC)
Users browsing this topic
Guest
Forum Jump  
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.

YAF | YAF © 2003-2011, Yet Another Forum.NET
This page was generated in 0.025 seconds.
Trial NCrunch
Take NCrunch for a spin
Do your fingers a favour and supercharge your testing workflow
Free Download