Patents by Inventor Yimin Deng
Yimin Deng has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 8477610Abstract: Computerized methods, systems, and computer-storage media for allowing virtual machines (VMs) residing on a common physical node to fairly share network bandwidth are provided. Restrictions on resource consumption are implemented to ameliorate stressing the network bandwidth or adversely affecting the quality of service (QoS) guaranteed to tenants of the physical node. The restrictions involves providing a scheduler that dynamically controls networking bandwidth allocated to each of the VMs as a function of QoS policies. These QoS policies are enforced by controlling a volume of traffic being sent from the VMs. Controlling traffic includes depositing tokens into token-bucket queues assigned to the VMs, respectively. The tokens are consumed as packets pass through the token-bucket queues. Upon consumption, packets are held until sufficient tokens are reloaded to the token-bucket queues.Type: GrantFiled: May 31, 2010Date of Patent: July 2, 2013Assignee: Microsoft CorporationInventors: Yue Zuo, HoYuen Chau, Hoi Huu Vo, Samer N. Arafeh, Vivek P. Divakara, Yimin Deng, Forrest Curtis Foltz, Vivek Bhanu
-
Publication number: 20130132057Abstract: Computerized methods, systems, and computer-storage media for throttling requests from virtual machines (VMs) to a hard-disk drive (HDD) are provided. When a request for disk I/O is received from a VM, a disk-drive model that simulates performance characteristics of the HDD is accessed. During access, the disk-drive model's estimation of HDD parameters and the disk-drive model's estimation of a current state of a disk head of the HDD are gathered. A projected execution time to carry out the request is computed as a function of the estimated HDD parameters and the estimated current state of the disk head. Also, an actual execution time to carry out the request is measured upon allowing the request to pass to the HDD. Using a comparison of the projected execution time and the actual execution time, the traffic of the requests from the VMs is throttled.Type: ApplicationFiled: November 17, 2011Publication date: May 23, 2013Applicant: MICROSOFT CORPORATIONInventors: YIMIN DENG, HO YUEN CHAU, YUE ZUO, FORREST CURTIS FOLTZ
-
Publication number: 20110307730Abstract: Techniques and apparatuses for providing power-aware thread scheduling and dynamic use of processors are disclosed. In some aspects, a multi-core system is monitored to determine core activity. The core activity may be compared to a power policy that balances a power savings plan with a performance plan. One or more of the cores may be parked in response to the comparison to reduce power consumption by the multi-core system. In additional aspects, the power-aware scheduling may be performed during a predetermined interval to dynamically park or unpark cores. Further aspects include adjusting the power state of unparked cores in response to the comparison of the core activity and power policy.Type: ApplicationFiled: August 22, 2011Publication date: December 15, 2011Applicant: Microsoft CorporationInventors: Allen Marshall, Yimin Deng, Nicholas S. Judge, Arun U. Kishan, Andrew J. Ritz
-
Publication number: 20110292792Abstract: Computerized methods, systems, and computer-storage media for allowing virtual machines (VMs) residing on a common physical node to fairly share network bandwidth are provided. Restrictions on resource consumption are implemented to ameliorate stressing the network bandwidth or adversely affecting the quality of service (QoS) guaranteed to tenants of the physical node. The restrictions involves providing a scheduler that dynamically controls networking bandwidth allocated to each of the VMs as a function of QoS policies. These QoS policies are enforced by controlling a volume of traffic being sent from the VMs. Controlling traffic includes depositing tokens into token-bucket queues assigned to the VMs, respectively. The tokens are consumed as packets pass through the token-bucket queues. Upon consumption, packets are held until sufficient tokens are reloaded to the token-bucket queues.Type: ApplicationFiled: May 31, 2010Publication date: December 1, 2011Applicant: MICROSOFT CORPORATIONInventors: Yue Zuo, HoYuen Chau, Hoi Huu Vo, Samer N. Arafeh, Vivek P. Divakara, Yimin Deng, Forrest Curtis Foltz, Vivek Bhanu
-
Publication number: 20110225458Abstract: Cloud computing platforms having computer-readable media that perform methods to generate debuggable dump files are provided. The cloud computing platform includes server devices running operating system kernels. Optionally, the server may include a hypervisor. The operating system kernel receives a command to generate a debuggable dump file. In response, the operating system estimates memory requires to store the requested memory pages, allocates an appropriately sized buffer, and freezes computation. A hypervisor is present and if its memory pages are requested, the hypervisor freezes its computation. The hypervisor stores its memory pages in the buffer and resumes computation. The operating system kernel stores its pages to the buffer in priority order and resumes its computation. The contents of the buffer are written out as a debuggable dump file.Type: ApplicationFiled: March 9, 2010Publication date: September 15, 2011Applicant: MICROSOFT CORPORATIONInventors: YUE ZUO, FRANCIS MANOJ DAVID, YIMIN DENG, HO-YUEN CHAU, FORREST CURTIS FOLTZ
-
Publication number: 20110225459Abstract: Cloud computing platforms having computer-readable media that perform methods to generate debuggable dump files are provided. The cloud computing platform includes at least one server having a host virtual machine, guest virtual machine, and hypervisor. The host virtual machine receives a command to generate the debuggable dump file. In response, it suspends all virtual processors executing on the guest virtual machine. The memory pages of the suspended virtual machine are written into a debuggable dump file, and the suspended processors are resumed at an appropriate time.Type: ApplicationFiled: March 9, 2010Publication date: September 15, 2011Applicant: MICROSOFT CORPORATIONInventors: THOMAS FAHRIG, YUE ZUO, FRANCIS MANOJ DAVID, YIMIN DENG, HO-YUEN CHAU, FORREST CURTIS FOLTZ
-
Patent number: 8010822Abstract: Techniques and apparatuses for providing power-aware thread scheduling and dynamic use of processors are disclosed. In some aspects, a multi-core system is monitored to determine core activity. The core activity may be compared to a power policy that balances a power savings plan with a performance plan. One or more of the cores may be parked in response to the comparison to reduce power consumption by the multi-core system. In additional aspects, the power-aware scheduling may be performed during a predetermined interval to dynamically park or unpark cores. Further aspects include adjusting the power state of unparked cores in response to the comparison of the core activity and power policy.Type: GrantFiled: March 28, 2008Date of Patent: August 30, 2011Assignee: Microsoft CorporationInventors: Allen Marshall, Yimin Deng, Nicholas S. Judge, Arun U. Kishan, Andrew J. Ritz
-
Publication number: 20110161729Abstract: Techniques for transparently replacing a processor, that receives interrupts in a partitioned computing device, with a replacement processor, are disclosed. In at least some embodiments, methods are discussed for directing the interrupts to an unchangeable identifier mapped to the processor's identifier and replacing the processor with the replacement processor. An intermediary, such as an I/O APIC, is used for storing the unchangeable identifier. The mapping may use logical mode delivery, physical mode delivery, or interrupt mapping.Type: ApplicationFiled: March 9, 2011Publication date: June 30, 2011Applicant: Microsoft CorporationInventors: Andrew J. Ritz, Ellsworth D. Walker, Yimin Deng, Christopher Ahna
-
Patent number: 7934121Abstract: A method and apparatus for transparently replacing a processor, that receives interrupts in a partitioned computing device, with a replacement processor, is disclosed. The method comprises directing the interrupts to an unchangeable identifier mapped to the processor's identifier and replacing the processor with the replacement processor. An intermediary, such as an I/O APIC, is used for storing the unchangeable identifier. The mapping may use logical mode delivery, physical mode delivery, or interrupt mapping.Type: GrantFiled: February 15, 2007Date of Patent: April 26, 2011Assignee: Microsoft CorporationInventors: Andrew J. Ritz, Ellsworth D. Walker, Yimin Deng, Christopher Ahna
-
Publication number: 20090249094Abstract: Techniques and apparatuses for providing power-aware thread scheduling and dynamic use of processors are disclosed. In some aspects, a multi-core system is monitored to determine core activity. The core activity may be compared to a power policy that balances a power savings plan with a performance plan. One or more of the cores may be parked in response to the comparison to reduce power consumption by the multi-core system. In additional aspects, the power-aware scheduling may be performed during a predetermined interval to dynamically park or unpark cores. Further aspects include adjusting the power state of unparked cores in response to the comparison of the core activity and power policy.Type: ApplicationFiled: March 28, 2008Publication date: October 1, 2009Applicant: MICROSOFT CORPORATIONInventors: Allen Marshall, Yimin Deng, Nicholas S. Judge, Arun U. Kishan, Andrew J. Ritz
-
Publication number: 20080120515Abstract: A method and apparatus for transparently replacing a processor, that receives interrupts in a partitioned computing device, with a replacement processor, is disclosed. The method comprises directing the interrupts to an unchangeable identifier mapped to the processor's identifier and replacing the processor with the replacement processor. An intermediary, such as an I/O APIC, is used for storing the unchangeable identifier. The mapping may use logical mode delivery, physical mode delivery, or interrupt mapping.Type: ApplicationFiled: February 15, 2007Publication date: May 22, 2008Applicant: MICROSOFT CORPORATIONInventors: Andrew J. Ritz, Ellsworth D. Walker, Yimin Deng, Christopher Ahna