Framework for domain-specific run-time environment acceleration using virtualization technology
First Claim
1. A system comprising:
- a platform having virtualization capabilities;
at least one processor coupled to the platform, the at least one processor to run a general-purpose operating system (GPOS) in a first virtual machine (VM) on the platform; and
a domain specific run-time environment (DSRTE) partitioned into a plurality of portions, wherein a first portion comprises non-performance critical processes to run under the GPOS in the first VM, and wherein at least one additional portion comprises at least one performance critical process on the platform outside of the first VM running the GPOS,wherein the at least one additional portion comprises a second VM including a non-privileged VM, wherein a privileged virtual machine monitor (VMM) controls execution of each VM on the platform, wherein the privileged VMM comprises a privileged root domain comprising a virtual machine monitor (VMM), wherein the at least one performance critical process is to run in a second virtual machine, wherein at least one additional portion is customized to execute the at least one performance critical process, andwherein the at least one performance critical process is to run in the privileged root domain, wherein the privileged root domain operates in virtualization technology (VT) mode on the platform and is to be entered in response to a VM-EXIT event, and is to return control to a VM in response to a VM-ENTER event, and wherein initiating a performance critical task is to generate a VM-EXIT from the GPOS in the first VM, wherein the VT mode includes a VT-root mode to enable a VT-root execution of the performance critical process, wherein an unmodified GPOS is loaded and run in a non-VT-root mode.
0 Assignments
0 Petitions
Accused Products
Abstract
In some embodiments, the invention involves a framework for using virtualization technology to efficiently support a domain-specific run-time environment. In at least one embodiment, a framework is utilized to take advantage of virtualization technology (VT) to partition performance critical and non-performance critical tasks of the same domain-specific application. An embodiment of the invention utilizes a general-purpose operating system to execute non-performance critical aspects of a domain, and uses a privileged VT-root mode to execute performance critical aspects of the domain. Another embodiment uses one or more guest VMs to execute the performance critical aspects of the domain-specific run-time environment. Other embodiments are described and claimed.
15 Citations
19 Claims
-
1. A system comprising:
-
a platform having virtualization capabilities; at least one processor coupled to the platform, the at least one processor to run a general-purpose operating system (GPOS) in a first virtual machine (VM) on the platform; and a domain specific run-time environment (DSRTE) partitioned into a plurality of portions, wherein a first portion comprises non-performance critical processes to run under the GPOS in the first VM, and wherein at least one additional portion comprises at least one performance critical process on the platform outside of the first VM running the GPOS, wherein the at least one additional portion comprises a second VM including a non-privileged VM, wherein a privileged virtual machine monitor (VMM) controls execution of each VM on the platform, wherein the privileged VMM comprises a privileged root domain comprising a virtual machine monitor (VMM), wherein the at least one performance critical process is to run in a second virtual machine, wherein at least one additional portion is customized to execute the at least one performance critical process, and wherein the at least one performance critical process is to run in the privileged root domain, wherein the privileged root domain operates in virtualization technology (VT) mode on the platform and is to be entered in response to a VM-EXIT event, and is to return control to a VM in response to a VM-ENTER event, and wherein initiating a performance critical task is to generate a VM-EXIT from the GPOS in the first VM, wherein the VT mode includes a VT-root mode to enable a VT-root execution of the performance critical process, wherein an unmodified GPOS is loaded and run in a non-VT-root mode. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A computer implemented method comprising:
-
partitioning a domain specific run-time environment (DSRTE) customized as a network packet processing environment into a plurality of partitions, a first partition comprising non-performance critical tasks to run under a general-purpose operating system (GPOS) in a virtual machine (VM) and at least one additional partition comprising performance critical tasks, the DSRTE to reside on a platform having virtualization capabilities, wherein the at least one additional partition is performed outside of the VM running the GPOS; and executing the performance critical task in the at least one additional partition, wherein the performance critical task comprises a network communication task for sending or receiving network packets to or from an external network via at least one network interface device, wherein the at least one additional partition comprises a second VM including a non-privileged VM, wherein a privileged virtual machine monitor (VMM) controls execution of each VM on the platform, and wherein the at least one performance critical process is to run in the privileged root domain, wherein the privileged root domain operates in virtualization technology (VT) mode on the platform and is to be entered in response to a VM-EXIT event, and is to return control to a VM in response to a VM-ENTER event, and wherein initiating a performance critical task is to generate a VM-EXIT from the GPOS in the first VM, wherein the VT mode includes a VT-root mode to enable a VT-root execution of the performance critical process, wherein an unmodified GPOS is loaded and run in a non-VT-root mode. - View Dependent Claims (7, 8, 9)
-
-
10. A non-transitory machine readable medium having instructions that when executed on a machine cause the machine to:
-
execute a domain specific run-time environment (DSRTE) customized as a network packet processing environment having a plurality of partitions, wherein a first partition of the domain specific run-time environment (DSRTE) comprises non-performance critical tasks to run under a general-purpose operating system (GPOS) in a virtual machine (VM), and wherein at least one additional partition comprises performance critical tasks, and wherein the DSRTE is to reside on a platform having virtualization capabilities, wherein the at least one additional partition is performed outside of the VM running the GPOS; and execute the performance critical tasks in the at least one additional partition, wherein the performance critical task comprises a network communication task for sending or receiving network packets to or from an external network via at least one network interface device, wherein at least one additional portion comprises a second VM including a non-privileged VM, wherein a privileged virtual machine monitor (VMM) controls execution of each VM on the platform, and wherein the at least one performance critical process is to run in the privileged root domain, wherein the privileged root domain operates in virtualization technology (VT) mode on the platform and is to be entered in response to a VM-EXIT event, and is to return control to a VM in response to a VM-ENTER event, and wherein initiating a performance critical task is to generate a VM-EXIT from the GPOS in the first VM, wherein the VT mode includes a VT-root mode to enable a VT-root execution of the performance critical process, wherein an unmodified GPOS is loaded and run in a non-VT-root mode. - View Dependent Claims (11, 12, 13, 14)
-
-
15. A system comprising:
-
a platform having virtualization capabilities; at least one processor coupled to the platform, the at least one processor to run a general-purpose operating system (GPOS) in a first virtual machine (VM) on the platform; and a domain specific run-time environment (DSRTE) partitioned into a plurality of portions, wherein a first portion comprises non-performance critical processes to run under the GPOS in the first VM, and wherein at least one additional portion comprises at least one performance critical process on the platform outside of the first VM running the GPOS, wherein the at least one additional portion comprises a second VM including a non-privileged VM, wherein a privileged virtual machine monitor (VMM) controls execution of each VM on the platform, wherein the privileged VMM comprises a privileged root domain comprising a virtual machine monitor (VMM), wherein the at least one performance critical process is to run in a second virtual machine, wherein at least one additional portion is customized to execute the at least one performance critical process, and wherein the at least one performance critical process is to run in the privileged root domain, wherein the privileged root domain comprises a domain specific run-time environment customized to execute the at least one performance critical process, wherein the GPOS comprises a GPOS that is not customized to execute the at least one performance critical process. - View Dependent Claims (16, 17, 18, 19)
-
Specification