1. A method for managing computer memory, the method comprising: initializing, within a computing system, a memory allocator, the memory allocator being configured to utilize at least one of a plurality of memory allocation methods of different types, to allocate memory for the computing system; monitoring, with an intelligent memory manager, a set of memory requests made by the computing system; and dynamically selecting, with the intelligent memory manager, at least one memory allocation method from the plurality of memory allocation methods, and configuring the memory allocator to use the selected at least one memory allocation method, in response to the set of memory requests that has been monitored, the dynamically selecting and configuring improving at least one of performance and memory utilization of the computing system.