Hypervisor-Based Core Sequestration for Parallel Execution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Multi-core computer systems often fail to utilize all processor cores efficiently, with operating systems typically accessing and controlling only a limited number of CPU cores, leaving others idle.
Innovation Solution
The method involves executing an operating system on a subset of cores as a guest under a virtual machine monitor, sequestering additional cores to function as independent computing accelerators, and using a hypervisor to manage and schedule work on these hidden cores, allowing them to operate outside the direct control of the main operating system.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If an operating system is executed on multiple processor cores, then the operating system can control more cores, but the number of cores available for independent application execution decreases
Solution Approach 1:
The patent segments the processor cores into two distinct groups: cores accessible by the operating system and sequestered cores dedicated to application execution. This segmentation allows the operating system to maintain control over a subset of cores while dedicated application cores operate independently, resolving the contradiction between OS adaptability and application productivity.
Solution Approach 2:
The patent introduces a hypervisor as an intermediary layer between the operating system and the sequestered cores. The hypervisor manages the sequestered cores independently from the operating system, enabling application execution on dedicated cores without requiring operating system control, thus resolving the contradiction.
2Productivity
If processor cores are sequestered from the operating system, then computational efficiency improves through independent execution, but the operating system's access to computing resources decreases
Solution Approach 1:
The patent segments processor cores into OS-accessible cores and sequestered cores, allowing computational efficiency to improve on sequestered cores while the operating system retains access to other cores for its operations, thus resolving the contradiction between productivity and resource quantity.
Solution Approach 2:
The patent creates a system where the hypervisor provides universal management capabilities for both OS-accessible cores and sequestered cores. The hypervisor can schedule work on sequestered cores independently while still allowing the operating system to utilize its allocated cores, maintaining overall system resource availability.
3Productivity
If a virtual machine monitor is introduced to manage sequestered cores, then resource management improves, but system complexity increases
Solution Approach 1:
The patent introduces a hypervisor as an intermediary management layer that handles sequestered core resource allocation and scheduling. While this adds a system component, it provides automated resource management that improves productivity without requiring complex manual configuration, as the hypervisor operates independently with predefined rules.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Techniques for utilizing processor cores include sequestering processor cores for use independently from an operating system. In at least one embodiment of the invention, a method includes executing an operating system on a first subset of cores including one or more cores of a plurality of cores of a computer system. The operating system executes as a guest under control of a virtual machine monitor. The method includes executing work for an application on a second subset of cores including one or more cores of the plurality of cores. The first and second subsets of cores are mutually exclusive and the second subset of cores is not visible to the operating system. In at least one embodiment, the method includes sequestering the second subset of cores from the operating system.