Hyper-Kernel Virtual Processor Scheduling in Distributed Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Distributed computing systems face challenges in managing data distribution and access across changing landscapes, workloads, and complex computing environments, leading to inefficiencies and performance degradation over time.

Innovation Solution

The implementation of a hyper-kernel that dynamically optimizes resource use by migrating virtualized resources and processors across nodes, using a TidalTree architecture to manage and assign work, and associating working sets with threads to improve memory and processor allocation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If virtualized resources are migrated across nodes in a distributed system, then system adaptability and resource utilization are improved, but system complexity and management overhead increase

Engineering Contradiction:
Improvesystem adaptabilityVSAvoidsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces a hyper-kernel as an intermediary layer between the operating system and hardware resources. This hyper-kernel manages virtual processor migration and resource allocation across distributed nodes, absorbing the complexity of resource management while presenting a simplified interface to upper layers. The hyper-kernel acts as a mediator that handles the complex tasks of virtualization, migration, and resource orchestration, thereby improving system adaptability without proportionally increasing overall system complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The hyper-kernel is designed as a universal management layer that handles multiple functions including virtual processor scheduling, resource migration, memory management, and inter-node communication. By consolidating these diverse functions into a single multi-functional component, the system achieves high adaptability through unified resource management while avoiding the complexity that would arise from separate specialized management systems for each function.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Productivity

If dynamic scheduling and migration of virtual processors is implemented, then productivity and resource efficiency are improved, but processing overhead and system complexity increase

Engineering Contradiction:
Improveresource efficiencyVSAvoidprocessing overhead
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by pre-establishing virtual processor images and maintaining their state information in the hyper-kernel before migration is needed. When migration becomes necessary, the system can quickly relocate these pre-prepared virtual processors without extensive setup time. This preliminary preparation reduces the processing overhead associated with dynamic scheduling and migration operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent replaces traditional mechanical scheduling mechanisms with software-based virtualization and hyper-kernel management. Instead of physically moving processors or using complex hardware scheduling logic, the system uses software abstraction layers that can dynamically allocate and migrate virtual processors across nodes through software instructions, significantly reducing the time and overhead compared to mechanical or hardware-based approaches.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Speed

If working sets are associated with threads and memory is co-located with processors, then data access speed and system performance are improved, but memory management complexity increases

Engineering Contradiction:
Improvedata access speedVSAvoidmemory management complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The system implements local quality by associating specific working sets of data with specific threads and co-locating them in memory regions that are optimally positioned near the executing processors. This creates localized data-processing units where frequently accessed data resides close to the processors that need it, improving data access speed. The hyper-kernel manages this localization by tracking thread-working set associations and allocating memory accordingly, absorbing the management complexity while delivering performance benefits.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS11513836B2Scheduling resuming of ready to run virtual processors in a distributed system
Publication Date: 2022.11.29 HEWLETT PACKARD ENTERPRISE DEV LP
  • US11513836B2 patent drawing
  • US11513836B2 patent drawing
  • US11513836B2 patent drawing

AI summary

Dynamic scheduling is disclosed. A plurality of physical nodes is included in a computer system. Each node includes a plurality of processors. Each processor includes a plurality of hyperthreads. In response to receiving an indication of an event occurring, a search is performed for a queue in a set of queues on which to place a virtual processor that had been waiting on the event. Queues in the set of queues correspond to hyperthreads in a physical node in the plurality of physical nodes. The queues in the set of queues are visited according to a predetermined traversal order.