c# - Generation 1 Heap Consuming Gigs of Memory as Free Space -
we've had long term issue 1 of our products consuming gbs of memory when in production. low memory warnings on server, , today had chance sit down memory profiler , see memory going. in development, same database , config, application's private working set 450mb. on production server, amount of memory allocated process 3.7gb.
using ants memory profiler, determined 2.906gb of memory being allocated generation 1 heap:
this amount of memory utilised on application start load lot of data database generate caches. however, gets cleaned up, can see fact of data in graph above allocated, not used. here's complete overview:
as can see, loh pretty empty , not fragmented. know loh doesn't compacted, unless set compactonce applicable gcsettings enum. under impression generation 0-2 heaps compacted , should free space released? or clr assume because memory consumed once, application should keep addressing memory in case needs again?
to me, our app should consuming 600-700mb (most of clr). so:
- does know why free space remaining allocated , on production server , not on development laptops?
- is there way manually release free memory gen 1 heap?
Comments
Post a Comment