发明名称 Optimizing memory management of an application running on a virtual machine
摘要 A method, system and computer program product for optimizing memory usage of an application running on a virtual machine. A virtual machine memory block is pre-allocated and the average memory usage of the virtual machine is periodically computed using statistics collected from the virtual machine through an API. If the memory usage average becomes higher than a maximum threshold, then a recovery mode is entered by releasing the virtual machine memory block and forcing the running application to reduce its processing activity; optionally, a garbage collector cycle can be forced. If the computed memory usage average becomes lower than a minimum threshold value, which is lower than the maximum threshold value, then a normal mode is entered by re-allocating the virtual machine memory block and forcing the running application to resumes its normal processing activity. Optionally, when the virtual machine is idle, a deep garbage collection is forced.
申请公布号 US8886866(B2) 申请公布日期 2014.11.11
申请号 US201113290461 申请日期 2011.11.07
申请人 International Business Machines Corporation 发明人 Arcese Mauro;Sidoti Stefano
分类号 G06F12/00;G06F9/50 主分类号 G06F12/00
代理机构 Winstead, P.C. 代理人 Winstead, P.C.
主权项 1. A method for optimizing memory usage of an application running on a virtual machine, said virtual machine providing a monitoring application programming interface (API) to communicate with said virtual machine and said virtual machine including a garbage collector, the method comprising: self-allocating a virtual machine memory block; periodically collecting and storing virtual machine memory usage statistics; periodically computing an average virtual machine memory usage from the memory usage statistics in a time window; entering into a recovery mode by releasing the virtual machine memory block and forcing the running application to reduce its processing activity in response to the computed virtual machine memory usage average becoming higher than a first threshold; and entering, by a processor, into a normal mode by re-self-allocating the virtual machine memory block and forcing the running application to resume its normal processing activity in response to the computed memory usage average becoming lower than a second threshold.
地址 Armonk NY US