I need to force Terminal servers using Dynamic RAM to provide MORE RAM to my lean running .NET application and thus reduce .NET GC RAM pressure and increase performance.
For my large Microsoft .NET C# WinForms application compiled using X86 as the target, is there a Garbage collector or other .NET Framework setting available to allow my application to use more RAM to increase performance instead of letting the .NET Garbage collector try to keep RAM pressure under control so tightly?
I'm hoping for some .NET GC hint, setting or .NET framework function call to adjust how lean it runs.
Reason: My application is used by tens of thousands of users across thousands of terminal servers every workday for the duration of their business hours. Over a 15 year deployment period I've found the application will perform adequately when provided with about 1.85GB of RAM per instance.
We have done SIGNIFICANT development to ensure minimum RAM usage and memory leaks are kept under control. (IE: Using(){}, Calling Dispose on Every object possible among other things)
However this is a Huge application accomplishing nearly every task for client business operations including some graphics and much more and I expect large RAM usage.
I cannot change to 64-bit until we remove old 3rd party GUI controls which will take months of development and management will not let me scheduled that because it will not provide any direct end user upgrades. (Except overall better performance....)
The problem is convincing the client's IT companies which host the terminal servers to add the required RAM to maintain performance. Their typical argument is that the Virtual Machines do not report heavy RAM usage, which instantly means I need to spend days convincing them that is not the best metric to use in this case.
Also for servers where dynamic RAM is used and the application performance is reduced without growing the OS RAM properly.
My goal is to adjust some setting to allow more RAM usage (NOT using unneeded/fake Memory consumption) and push those servers to allocate more RAM as needed.