1. A method for dynamic memory resource management, comprising: collecting memory activity information for a memory allocation of a virtual machine, the memory allocation having a predetermined size; determining a dynamic priority for the virtual machine based on a specified priority for the virtual machine; and dynamically changing the size of the memory allocation of the virtual machine, as needed, based on the collected memory activity information for the memory allocation of the virtual machine and the determined dynamic priority for the virtual machine, wherein dynamically changing the size of the memory allocation of the virtual machine further comprises: analyzing the collected memory activity information for a memory allocation of the virtual machine, to determine memory usage of the virtual machine; and performing one or more of the following: increasing the size of the memory allocation of the virtual machine, if it is determined that the memory usage of the virtual machine is equal to or higher than the allocated memory of the virtual machine; or decreasing the size of the memory allocation of the virtual machine, if it is determined that the memory usage of the virtual machine is substantially lower than the allocated memory of the virtual machine.