Re: [ADVANCED-DOTNET] Large object heap fragmentation

2003-07-08 Thread Arun Bhalla
Here's another idea: Use unmanaged memory and manage the memory yourself. See http://www.codeproject.com/dotnet/pointers.asp and especially pay attention to the unmanaged Memory class (in C#). Arun Hugh Williams writes: > When you allocate large objects they go on the Large Object Heap. > (Asi

Re: [ADVANCED-DOTNET] Large object heap fragmentation

2003-07-08 Thread Chris Anderson
If you don't use them that often, you could spawn them off in another appdomain, then unload the appdomain when finished. (IIRC appdomains get their own heaps, so the large objects should be reclaimed when the appdomain is shutdown) (Disclaimer: This is a total "OTTOMH" idea, and not something I

Re: [ADVANCED-DOTNET] Large object heap fragmentation

2003-07-07 Thread Arun Bhalla
Hugh, You could retool your objects to have "micro-object" components of under 85K. For instance, if you have a 1MB image, you could break it down into 85K chunks or tiles. Arun Hugh Williams writes: > When you allocate large objects they go on the Large Object Heap. > (Aside: the predominant li

[ADVANCED-DOTNET] Large object heap fragmentation

2003-07-07 Thread Hugh Williams
When you allocate large objects they go on the Large Object Heap. (Aside: the predominant literature says a "large object" is defined as over 85,000 bytes; some sources say 20,000 but my empirical testing says 85k. Could this be a server/workstation difference?) This heap gets collected much less