Legal claims defining the scope of protection. Each claim is shown in both the original legal language and a plain English translation.
1. An apparatus comprising: a multi-core platform having a single socket processor comprising a plurality of processing cores, one or more of the plurality of cores capable of being partitioned into at least one of a plurality of client environments for simultaneous use by multiple clients; an embedded partition having a reallocation agent to generate reallocation instructions to be communicated to a manageability engine; and the manageability engine to be communicatively coupled to the plurality of processing cores and comprise out-of-band capabilities to receive the reallocation instructions, the reallocation instructions comprising configuration information defining the plurality of client environments, wherein the configuration information for a client environment comprises identification of one or more of the plurality of processing cores and other resources to be allocated to the client environment, wherein the manageability engine to configure the plurality of processing cores' route table and a source decoder to process message stored by a mailbox, wherein configuration of the route table and the source decoder by the manageability engine is facilitated by a super privileged platform firmware without having assistance from or access to an operating system on a core, wherein each processing core comprises the route table to identify to which other resources the core is connected, a source address table identifying which memory is accessible to the core, and the mailbox to store the messages received from the manageability engine, wherein the manageability engine is further to facilitate, for a time limit, one or more clients to have access to the client environment having allocated the one or more of the plurality processing cores and the other resources.
This invention relates to a multi-core processor system designed to enable secure, simultaneous use by multiple clients through dynamic resource partitioning. The system addresses the challenge of efficiently allocating and managing processor cores and other resources in a shared computing environment while maintaining isolation between client environments. The apparatus includes a single-socket multi-core processor platform where one or more cores can be partitioned into distinct client environments. Each environment is allocated specific cores and resources based on configuration information generated by a reallocation agent within an embedded partition. This agent communicates reallocation instructions to a manageability engine, which operates out-of-band, meaning it functions independently of the operating systems running on the cores. The manageability engine configures the processor cores' route tables and source decoders to define resource access and communication paths. The route table specifies which resources each core can access, while the source address table determines memory accessibility. Messages from the manageability engine are stored in a mailbox for processing. Configuration changes are handled by super-privileged platform firmware, ensuring no reliance on or exposure to the operating systems of the client environments. Additionally, the manageability engine enforces time-limited access to client environments, allowing temporary allocation of cores and resources to clients. This dynamic partitioning ensures efficient resource utilization while maintaining security and isolation between different client environments.
2. The apparatus of claim 1 , wherein the configuration information further comprises the time limit for allowing the client environment to remain accessible to the one or more clients, wherein the mailbox to further store the messages received from the manageability engine on the platform providing configuration details for the core to configure the route table and source address table, wherein a mailbox message includes a web services message.
This invention relates to a system for managing client access and configuration in a computing environment. The system addresses the challenge of securely controlling client access to a platform while dynamically configuring network routing and address management. The apparatus includes a mailbox that stores messages from a manageability engine, which provides configuration details for a core component. These details are used to configure a route table and a source address table, enabling proper network traffic routing and address resolution. The mailbox can also store web services messages, allowing for flexible communication between system components. Additionally, the configuration information includes a time limit that restricts how long a client environment remains accessible to one or more clients, ensuring controlled and secure access. The system ensures that client access is time-bound and that network configurations are dynamically updated based on received messages, improving security and operational efficiency. The use of web services messages in the mailbox supports interoperability with various management systems, enhancing adaptability.
3. The apparatus of claim 2 , wherein the embedded partition is isolated from other partitions on a platform via hardware constructs, the reallocation agent communicating the reallocation instructions via the mailbox messages and having an authorization code to ensure the one or more clients are authorized access to the one or more of the plurality of processing cores and the other resources at the client environment, wherein the reallocation agent is embedded within a virtual machine monitor (VMM) that controls one or more guest virtual machines (VMs) and one or more guest operating systems (OS's) at the platform.
This invention relates to a secure and isolated computing environment within a platform, specifically addressing the need for controlled resource reallocation while maintaining strict isolation between partitions. The apparatus includes a reallocation agent embedded within a virtual machine monitor (VMM) that manages one or more guest virtual machines (VMs) and their associated operating systems. The VMM ensures that the embedded partition is isolated from other partitions on the platform using hardware constructs, preventing unauthorized access or interference. The reallocation agent communicates reallocation instructions to clients via mailbox messages, which are secure communication channels. To ensure authorized access, the reallocation agent uses an authorization code, verifying that clients are permitted to access specific processing cores and other resources within the client environment. This system enables dynamic resource allocation while maintaining strict security and isolation, ensuring that only authorized entities can modify or access partitioned resources. The hardware-based isolation and authorization mechanisms provide a robust solution for secure multi-tenant or multi-partition computing environments.
4. The apparatus of claim 1 , wherein the manageability engine is further to: reclaim the plurality of processing cores and the other resources assigned to the client environment when the time limit for allowing the client environment to remain accessible to the one or more clients is exhausted, wherein the client environment is subsequently deleted; generate a system management interrupt within a system management mode to effect reprogramming of the plurality of processing cores; reallocate idle resources to a new client environment; and reallocate resources assigned to an existing client environment to the new client environment.
This invention relates to resource management in computing systems, specifically for dynamically allocating and reclaiming processing cores and other resources in a multi-tenant environment. The problem addressed is the efficient utilization of hardware resources in systems where multiple client environments share a common pool of processing cores and other resources, such as memory or storage. The invention provides a manageability engine that monitors and controls resource allocation to ensure optimal performance and security. The manageability engine assigns a plurality of processing cores and other resources to a client environment for a defined time limit, allowing the client environment to remain accessible to one or more clients. When the time limit expires, the engine reclaims the assigned resources, deletes the client environment, and generates a system management interrupt (SMI) in system management mode to reprogram the processing cores. This reprogramming ensures that the cores are reset and ready for reallocation. The engine then reallocates idle resources to a new client environment and can also transfer resources from an existing client environment to the new one, improving resource utilization and reducing downtime. This dynamic reallocation ensures that resources are efficiently managed, minimizing waste and enhancing system performance.
5. The apparatus of claim 1 , wherein the platform comprises a multi-socket peer to peer interconnect architecture, wherein a platform agent is to isolate and combine different pools of computing resources by reprogramming interconnections among the plurality of processing cores and the other resources on the platform.
This invention relates to a computing platform with a multi-socket peer-to-peer interconnect architecture designed to dynamically manage and allocate computing resources. The platform includes multiple processing cores and other resources, such as memory and accelerators, connected through a peer-to-peer interconnect. A platform agent within the system is responsible for isolating and combining different pools of these resources by reprogramming the interconnections between the cores and other components. This allows the platform to create custom resource groupings tailored to specific workloads or security requirements. By dynamically reconfiguring the interconnect architecture, the system can optimize performance, improve security through isolation, and enhance resource utilization. The platform agent enables flexible partitioning of resources, ensuring efficient allocation and reducing overhead in multi-socket environments. This approach is particularly useful in high-performance computing, cloud computing, and secure multi-tenant systems where dynamic resource management is critical. The invention addresses the challenge of efficiently managing heterogeneous computing resources in complex, multi-core environments while maintaining performance and security.
6. The apparatus of claim 3 , wherein a first client of the one or more clients is to connect to a first client environment on the platform via a first, input/output device assigned and allocated to the first client environment; and wherein a second client of the one or more clients is to connect to a second client environment on the platform via a second input/output device assigned and allocated to the second client environment, and wherein the first and second clients have no access to resources that are allocated to each other's client environments.
This invention relates to a platform for managing client environments with isolated input/output (I/O) devices. The system addresses the challenge of securely allocating and managing I/O devices for multiple clients while ensuring strict isolation between their respective environments. Each client connects to their dedicated environment through an assigned I/O device, such as a keyboard, display, or other peripheral, which is exclusively allocated to that environment. The platform enforces strict access controls, preventing any client from accessing resources, including I/O devices, allocated to another client's environment. This isolation ensures data and operational security, particularly in multi-tenant or shared computing environments where multiple users or systems must operate independently without interference. The system dynamically assigns and manages I/O devices to maintain this isolation, ensuring that each client interacts only with their designated environment. This approach is useful in cloud computing, virtualized environments, or any system requiring secure, isolated access to computing resources.
7. A method comprising: generating, via a reallocation agent of an embedded partition, reallocation instructions to be communicated to a manageability engine; and receiving, at a manageability engine communicatively coupled to a multi-core platform having a plurality of processing cores in a single socket processor, the reallocation instructions, via a message, requesting a new client environment sent by a remote administrative console, one or more of the plurality of cores capable of being partitioned into the new client environment, the reallocation instructions comprising configuration information defining the plurality of client environments for simultaneous use by multiple clients, wherein the configuration information for the new client environment comprises identification of one or more of the plurality of processing cores and other resources to be allocated to the client environment; configuring, by the manageability engine, the plurality of processing cores' route table and a source decoder to process message stored by a mailbox, wherein configuration of the route table and the source decoder by the manageability engine is facilitated by a super privileged platform firmware without having assistance from or access to an operating system on a core, wherein each processing core comprises the route table to identify to which other resources the core is connected, a source address table identifying which memory is accessible to the core, and the mailbox to store the messages received from the manageability engine; and facilitating, for a time limit, one or more clients to have access to the client environment having allocated the one or more of the plurality processing cores and the other resources.
This invention relates to dynamic resource allocation in multi-core processors for secure, partitioned client environments. The problem addressed is the need for efficient, OS-independent partitioning of processing cores and resources in a single-socket multi-core platform to support multiple isolated client environments simultaneously. The solution involves a reallocation agent in an embedded partition generating reallocation instructions for a manageability engine, which configures core partitioning without OS intervention. The manageability engine receives configuration requests from a remote administrative console, specifying core and resource allocation for new client environments. Each core includes a route table, source address table, and mailbox for message handling. The manageability engine configures these components via super-privileged firmware, enabling secure, temporary access to partitioned resources for multiple clients. The system ensures isolation and controlled access to processing cores and other resources, facilitating multi-client usage without OS involvement. The approach improves security and flexibility in resource management for multi-core platforms.
8. The method of claim 7 , wherein the configuration information further comprises the time limit for allowing the client environment to remain accessible to the one or more clients, wherein the mailbox further to store the messages received from the manageability engine on the platform providing configuration details for the core to configure the route table and source address table, wherein a mailbox message includes a web services message.
This invention relates to a system for managing client access and configuration in a computing environment. The system addresses the challenge of securely controlling client access to a platform while dynamically configuring network routing and addressing. The method involves a manageability engine that sends configuration details to a core component via a mailbox mechanism. The configuration information includes a time limit for restricting client access to the platform, ensuring that clients can only interact with the system for a predefined duration. The mailbox also stores messages from the manageability engine, which provide routing and source address table configuration details for the core. These messages can include web services messages, enabling flexible communication between components. The core uses this information to update its route table and source address table, dynamically adjusting network connectivity and addressing based on the received configuration. This approach enhances security by enforcing access time limits and allows for dynamic network management through centralized configuration updates. The system ensures that client environments are properly isolated and configured while maintaining secure and controlled access.
9. The method of claim 8 , wherein the embedded partition is isolated from other partitions on a platform via hardware constructs, the reallocation agent communicating the reallocation instructions via the mailbox messages and having an authorization code to ensure the one or more clients are authorized access to the one or more of the plurality of processing cores and the other resources at the client environment, wherein the reallocation agent is embedded within a virtual machine monitor (VMM) that controls one or more guest virtual machines (VMs) and one or more guest operating systems (OS's) at the platform.
This invention relates to secure resource management in computing platforms, specifically addressing the challenge of isolating and reallocating processing cores and other resources between different clients while ensuring authorized access. The system includes a reallocation agent embedded within a virtual machine monitor (VMM) that manages one or more guest virtual machines (VMs) and their operating systems. The VMM controls resource allocation across the platform, including processing cores and other hardware resources. The reallocation agent communicates reallocation instructions to the embedded partition via mailbox messages, which are isolated from other partitions on the platform through hardware constructs. This isolation ensures that the embedded partition operates independently of other partitions, enhancing security and preventing unauthorized access. The reallocation agent also verifies authorization using an authorization code, ensuring that only authorized clients can access the allocated resources. This method enables dynamic and secure reallocation of processing cores and other resources within a client environment, improving flexibility and security in multi-tenant or shared computing environments.
10. The method of claim 7 , further comprising: determining whether the one or more of the plurality of processing cores and the other resources are available on the platform to achieve the requested new client environment; generating, via the manageability engine, commands to effect dynamic reprogramming of the one or more of the processing cores on the platform, according to the request for the new client environment, when the one or more of the plurality of processing cores and the other resources are available, wherein the commands comprise the optional time limit for allowing the new client environment to remain accessible to the one or more clients; queuing the request for the new client environment, when the one or more of the plurality of processing cores and the other resources are not available; and reprogramming the one or more of the plurality of processing cores on the platform, according to the commands, to effect the request for the new client environment, via platform firmware access and without core operating system assistance or access.
This invention relates to dynamic resource management in computing platforms, specifically for creating and managing client environments on demand. The problem addressed is the need to efficiently allocate and reprogram processing cores and other platform resources to support new client environments without relying on the core operating system, ensuring flexibility and security. The method involves determining whether available processing cores and other resources can fulfill a request for a new client environment. If resources are available, a manageability engine generates commands to dynamically reprogram the cores according to the request, including an optional time limit for the environment's accessibility. If resources are unavailable, the request is queued for later processing. The reprogramming is executed via platform firmware, bypassing the core operating system to maintain isolation and security. This approach allows for on-demand configuration of client environments while ensuring efficient resource utilization and minimizing interference with existing system operations. The solution is particularly useful in multi-tenant or virtualized environments where dynamic allocation of resources is critical.
11. The method of claim 10 , wherein determining further comprises: generating, via the manageability engine, a system management interrupt comprising a command to request information about unallocated processing cores and resources, and wherein generating the commands further comprises generating a system management interrupt event into a register to write into a route table and source address decoder of a processing core.
A method for managing processing cores and resources in a computing system involves dynamically allocating and deallocating hardware resources to optimize performance and efficiency. The method addresses the challenge of efficiently utilizing available processing cores and resources in a computing system, particularly in scenarios where workload demands fluctuate. By dynamically adjusting resource allocation, the system can improve performance, reduce power consumption, and enhance overall efficiency. The method includes generating a system management interrupt (SMI) to request information about unallocated processing cores and resources. The SMI is a hardware-level interrupt that allows the system to query and manage low-level hardware components. The SMI includes a command to retrieve details about available processing cores and other system resources that are currently not in use. This information is then used to determine optimal resource allocation strategies. The SMI event is written into a register, which updates a route table and a source address decoder of a processing core. The route table directs data and commands to the appropriate processing cores, while the source address decoder identifies the source of incoming data. By updating these components, the system ensures that the SMI is properly routed and processed, enabling accurate and efficient resource management. This approach allows the system to dynamically adapt to changing workloads, improving overall performance and resource utilization.
12. The method of claim 10 , wherein queuing further comprises: determining whether the plurality of processing cores and the other resources can be allocated from idle client environments or from active client environments; and reallocating the processing cores and the other resources among at least one of an active client environment, an idle client environment, and the unassigned processing cores and resources, to the new client environment; sending a message to stop all processing on the allocated processing cores from the manageability engine to the platform chipset before the reallocating of the plurality of processing cores and the other resources; and migrating execution states among the at least one of an active client environment, an idle client environment and unassigned cores and resources, to provide newly reallocated client environments with a transactional-safe execution state.
This invention relates to resource management in computing systems, specifically for dynamically allocating processing cores and other resources among client environments to optimize performance and efficiency. The problem addressed is the inefficient use of computing resources in multi-core systems where some cores may be idle while others are overloaded, leading to suboptimal performance and wasted computational capacity. The method involves queuing requests for new client environments by determining whether processing cores and other resources can be allocated from idle client environments or active ones. If resources are available in idle environments, they are reallocated to the new client environment. If not, resources are reallocated from active environments, ensuring minimal disruption. Before reallocation, a message is sent from the manageability engine to the platform chipset to halt processing on the allocated cores. Execution states are then migrated from active, idle, or unassigned cores to the newly reallocated client environments, ensuring a transactional-safe state. This approach allows for dynamic resource redistribution without data loss or corruption, improving system efficiency and responsiveness. The method supports seamless transitions between different client environments, enhancing overall system performance.
13. The method of claim 12 , wherein the migrating further comprises: saving the execution state of the at least one active client environment to a protected area of a memory store coupled to the manageability engine; and restoring the execution state of the at least one active client environment after the reallocation of cores and resources to the new client environment.
This invention relates to managing and migrating active client environments in a computing system, particularly in systems with a manageability engine that handles core and resource reallocation. The problem addressed is the disruption caused when reallocating processing cores and resources between client environments, which can lead to data loss or service interruptions. The solution involves preserving the execution state of active client environments during reallocation to ensure seamless transitions. The method includes saving the execution state of at least one active client environment to a protected area of a memory store coupled to the manageability engine. This protected area ensures the state data remains secure and intact during the reallocation process. After reallocating cores and resources to a new client environment, the execution state of the original active client environment is restored, allowing it to resume operation without data loss or downtime. The protected memory store prevents unauthorized access or corruption of the saved state, ensuring reliability. This approach enables dynamic resource management while maintaining the integrity and continuity of active client environments.
14. At least one non-transitory machine-readable medium having thereon instructions which when executed by a processing device, cause the processing device to perform one or more operations comprising: generating, via a reallocation agent of an embedded partition, reallocation instructions to be communicated to a manageability engine; and receiving, at a manageability engine communicatively coupled to a multi-core platform having a plurality of processing cores in a single socket processor, the reallocation instructions, via a message, requesting a new client environment sent by a remote administrative console, one or more of the plurality of cores capable of being partitioned into the new client environment, the reallocation instructions comprising configuration information defining the plurality of client environments for simultaneous use by multiple clients, wherein the configuration information for the new client environment comprises identification of one or more of the plurality of processing cores and other resources to be allocated to the client environment; configuring, by the manageability engine, the plurality of processing cores' route table and a source decoder to process message stored by a mailbox, wherein configuration of the route table and the source decoder by the manageability engine is facilitated by a super privileged platform firmware without having assistance from or access to an operating system on a core, wherein each processing core comprises the route table to identify to which other resources the core is connected, a source address table identifying which memory is accessible to the core, and the mailbox to store the messages received from the manageability engine; and facilitating, for a time limit, one or more clients to have access to the client environment having allocated the one or more of the plurality processing cores and the other resources.
This invention relates to resource management in multi-core computing systems, specifically for dynamically allocating processing cores and other resources to multiple client environments. The problem addressed is the need for efficient, secure, and flexible partitioning of a multi-core processor's resources to support simultaneous, isolated client environments without relying on the host operating system. The solution involves a manageability engine that receives reallocation instructions from a remote administrative console via a reallocation agent in an embedded partition. These instructions define configuration information for a new client environment, including the specific processing cores and other resources to be allocated. The manageability engine configures the route tables and source decoders of the processing cores, which determine resource connectivity and memory access, using super-privileged platform firmware. Each core includes a mailbox for receiving messages from the manageability engine. The system allows multiple clients to access their respective environments for a defined time limit, ensuring secure and isolated resource allocation. The approach avoids dependency on the host OS, enhancing security and manageability in multi-core platforms.
15. The non-transitory machine-readable medium of claim 14 , wherein the configuration information further comprises the time limit for allowing the client environment to remain accessible to the one or more clients, wherein the mailbox further to store the messages received from the manageability engine on the platform providing configuration details for the core to configure the route table and source address table, wherein a mailbox message includes a web services message.
A system and method for managing client access and configuration in a computing environment involves a non-transitory machine-readable medium storing configuration information that includes a time limit for restricting client access to a client environment. The system includes a mailbox that stores messages received from a manageability engine on a platform, where these messages provide configuration details for a core component. The core component uses these details to configure a route table and a source address table. The mailbox messages may include web services messages, enabling communication between different system components. The configuration information ensures that client access is time-limited, enhancing security and resource management. The system dynamically updates routing and addressing information based on received configuration details, allowing flexible and secure communication within the computing environment. This approach improves manageability and security by controlling access duration and dynamically adjusting network configurations.
16. The non-transitory machine-readable medium of claim 15 , wherein the embedded partition is isolated from other partitions on a platform via hardware constructs, the reallocation agent communicating the reallocation instructions via the mailbox messages and having an authorization code to ensure the one or more clients are authorized access to the one or more of the plurality of processing cores and the other resources at the client environment, wherein the reallocation agent is embedded within a virtual machine monitor (VMM) that controls one or more guest virtual machines (VMs) and one or more guest operating systems (OS's) at the platform.
This invention relates to secure resource management in computing platforms, particularly for isolating and reallocating processing cores and other resources in a controlled manner. The system involves a non-transitory machine-readable medium storing instructions for a reallocation agent that manages resource distribution across multiple partitions on a computing platform. The embedded partition, where the reallocation agent operates, is isolated from other partitions using hardware constructs to ensure security and prevent unauthorized access. The reallocation agent communicates reallocation instructions to other partitions via mailbox messages, which are secure inter-partition communication mechanisms. The agent also verifies authorization codes to ensure that clients requesting access to processing cores or other resources are properly authorized. The reallocation agent is integrated within a virtual machine monitor (VMM), which oversees one or more guest virtual machines (VMs) and their respective operating systems (OSs) on the platform. This setup allows dynamic and secure reallocation of resources while maintaining isolation between partitions, enhancing both performance and security in multi-tenant or multi-application environments.
17. The non-transitory machine-readable medium of claim 14 , wherein the one or more operations further comprise: determining whether the one or more of the plurality of processing cores and the other resources are available on the platform to achieve the requested new client environment; generating, via the manageability engine, commands to effect dynamic reprogramming of the one or more of the processing cores on the platform, according to the request for the new client environment, when the one or more of the plurality of processing cores and the other resources are available, wherein the commands comprise the optional time limit for allowing the new client environment to remain accessible to the one or more clients; queuing the request for the new client environment, when the one or more of the plurality of processing cores and the other resources are not available; and reprogramming the one or more of the plurality of processing cores on the platform, according to the commands, to effect the request for the new client environment, via platform firmware access and without core operating system assistance or access.
This invention relates to dynamic resource allocation in computing platforms, specifically for managing processing cores and other resources to create new client environments on demand. The problem addressed is the need for flexible, efficient resource utilization in shared computing environments where multiple clients may request access to processing cores and other hardware resources. The solution involves a system that dynamically reprograms available processing cores to create new client environments based on incoming requests, while ensuring that resource availability is checked before allocation. If resources are available, the system generates commands to reprogram the cores via platform firmware, without requiring assistance from the core operating system. These commands include an optional time limit to control how long the new client environment remains accessible. If resources are not immediately available, the request is queued for later processing. The system operates through a manageability engine that handles the dynamic reprogramming and resource management, ensuring efficient use of platform resources while maintaining isolation between different client environments. This approach allows for rapid deployment of new client environments without disrupting existing operations, improving resource utilization and responsiveness in shared computing environments.
18. The non-transitory machine-readable medium of claim 17 , wherein the one or more operations further comprise: generating, via the manageability engine, a system management interrupt comprising a command to request information about unallocated processing cores and resources, and wherein generating the commands further comprises generating a system management interrupt event into a register to write into a route table and source address decoder of a processing core.
This invention relates to computer system management, specifically to a method for managing and allocating processing cores and resources in a computing system. The problem addressed is the need for efficient and secure management of system resources, particularly unallocated processing cores, to optimize performance and resource utilization. The invention involves a non-transitory machine-readable medium storing instructions that, when executed, perform operations to manage system resources. These operations include generating a system management interrupt (SMI) via a manageability engine. The SMI contains a command to request information about unallocated processing cores and other system resources. The SMI event is then written into a register, which updates a route table and a source address decoder of a processing core. This allows the system to dynamically identify and allocate available resources, improving system efficiency and responsiveness. The manageability engine acts as a secure interface for handling system management tasks, ensuring that resource allocation is performed in a controlled and secure manner. The route table and source address decoder are updated to reflect the current state of the system, enabling the system to route commands and data appropriately. This approach ensures that unallocated resources are accurately tracked and can be efficiently utilized when needed. The invention enhances system performance by dynamically managing processing cores and other resources, reducing idle time and improving overall system efficiency.
19. The non-transitory machine-readable medium of claim 17 , wherein the one or more operations further comprise: determining whether the plurality of processing cores and the other resources can be allocated from idle client environments or from active client environments; and reallocating the processing cores and the other resources among at least one of an active client environment, an idle client environment, and the unassigned processing cores and resources, to the new client environment; sending a message to stop all processing on the allocated processing cores from the manageability engine to the platform chipset before the reallocating of the plurality of processing cores and the other resources; and migrating execution states among the at least one of an active client environment, an idle client environment and unassigned cores and resources, to provide newly reallocated client environments with a transactional-safe execution state.
This invention relates to resource management in computing systems, specifically for dynamically reallocating processing cores and other resources between client environments to optimize performance and efficiency. The problem addressed is the inefficient use of computing resources in systems where processing cores and other hardware resources are statically assigned, leading to underutilization or overloading of certain environments. The system includes a manageability engine that monitors and controls resource allocation across multiple client environments, including active and idle environments, as well as unassigned resources. When a new client environment is initiated, the system determines whether the required processing cores and resources can be sourced from idle environments, active environments, or unassigned resources. The system then reallocates these resources to the new client environment while ensuring transactional safety by migrating execution states from the source environments to the new one. Before reallocation, the manageability engine sends a message to the platform chipset to halt processing on the allocated cores, preventing data corruption or inconsistencies. Execution states from the source environments are then migrated to the new environment, ensuring that the reallocated resources maintain a consistent and transactionally safe state. This dynamic reallocation improves resource utilization and system performance by efficiently redistributing idle or underutilized resources to where they are needed.
20. The non-transitory machine-readable medium of claim 19 , wherein the one or more operations further comprise: saving the execution state of the at least one active client environment to a protected area of a memory store coupled to the manageability engine; and restoring the execution state of the at least one active client environment after the reallocation of cores and resources to the new client environment.
A system and method for managing computing resources in a multi-core processor environment addresses the challenge of efficiently reallocating processor cores and resources between client environments while maintaining the integrity and continuity of active client operations. The system includes a manageability engine that monitors and controls the allocation of processor cores and other system resources to multiple client environments running on the processor. When a new client environment is initiated, the manageability engine reallocates cores and resources from existing client environments to the new environment. To ensure seamless operation, the execution state of active client environments is saved to a protected area of a memory store coupled to the manageability engine before reallocation occurs. After reallocation, the saved execution states are restored, allowing the active client environments to resume operation without disruption. This approach enables dynamic resource allocation while preserving the state and performance of ongoing client processes, improving system efficiency and reliability in multi-core computing environments. The protected memory store ensures that the saved states are secure and tamper-proof, further enhancing system stability.
Unknown
March 10, 2020
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.