asp.net - How gcTrimCommitOnLowMemory actually works? -
documentation gctrimcommitonlowmemory
says:
because garbage collector retains memory future allocations, committed space can more strictly needed. can reduce space accommodate times when there heavy load on system memory. reducing committed space improves performance , expands capacity host more sites.
when gctrimcommitonlowmemory setting enabled, garbage collector evaluates system memory load , enters trimming mode when load reaches 90%. maintains trimming mode until load drops under 85%.
when disable both gcserver
, gcconcurrent
. each web site (worker process) eats between 100 , 500 mb. when concurrent server gc enabled, web sites eats between 1500 , 2500 mb. since there more 100 such web sites memory load gets on 200 gb (physical memory full).
i thought enabling gctrimcommitonlowmemory
(while both gcserver
, gcconcurrent
enabled) causes web sites return unused memory gen 0 heap size
when server reaches 90 % memory load. however, seems not return (the server has 99 % memory load).
how gctrimcommitonlowmemory
works? following statement means?
when conditions permit, garbage collector can decide gctrimcommitonlowmemory setting not current application , ignore it.
Comments
Post a Comment