Process Scheduler with Predictive Load Allocation for Video Encoding

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing schedulers for computer processes in multimedia processing, particularly in video encoding, face challenges in managing varying computing loads without causing service ruptures, as they often require transferring processes between virtual or physical machines, leading to resource wastage and potential service disruptions.

Innovation Solution

A scheduler that predicts computing loads for video coding processes and allocates virtual machines (VMs) on physical machines based on these predictions, dynamically adjusting resources to ensure real-time execution without process relocation, thereby optimizing resource utilization and maintaining continuous service.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If computing resources are allocated to a virtual machine based on peak load requirements, then the virtual machine can handle maximum computing loads, but resources are wasted during periods of lower load

Engineering Contradiction:
Improveability to handle maximum computing loadVSAvoidresource wastage
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent implements dynamic resource allocation by continuously monitoring the actual computing load of the virtual machine and adjusting the allocated computing resources in real-time. The orchestrator receives load information from the virtual machine and modifies resource allocation accordingly, transitioning from static peak-based allocation to dynamic adaptive allocation that matches actual需求的 fluctuations.

Inventive Principle:
Principle #15Dynamics

2Manufacturing precision

If the computing load of a video encoding process increases, then better quality can be achieved, but the computing resources of the virtual machine may become insufficient, requiring process transfer which causes service rupture

Engineering Contradiction:
Improvevideo qualityVSAvoidservice continuity
Core Design Contradiction:
Manufacturing precisionVSReliability

Solution Approach 1:

The patent implements preliminary resource allocation by predicting future computing load requirements based on process characteristics and advance scheduling information. The orchestrator proactively allocates additional computing resources to the virtual machine before the load increase occurs, preventing resource insufficiency and avoiding the need for process transfer that would cause service rupture.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If resources are increased for a virtual machine to handle higher computing loads, then real-time execution can be maintained, but the number of physical machines required increases

Engineering Contradiction:
Improvereal-time execution capabilityVSAvoidnumber of physical machines
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent enables one physical machine to serve multiple virtual machines with dynamically adjustable resources. By implementing resource pooling and dynamic allocation, a single physical machine can accommodate multiple VMs whose resource requirements fluctuate over time, allowing the same physical infrastructure to handle varying loads without requiring additional physical machines for each VM.

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

Data Source

PatentUS11006137B2Scheduler of processes having timed predictions of computing loads
Publication Date: 2021.05.11 HARMONIC INC
  • US11006137B2 patent drawing
  • US11006137B2 patent drawing
  • US11006137B2 patent drawing

AI summary

A scheduler of computer processes. The scheduler obtains predictions of a computing load of at least one multimedia process comprising real time video encoding or transcoding of a video in real time, including predictions of a target index of video quality to deliver the video over a period of time. Predictions of available computing capacities of a cluster are also retrieved. A determination is made, based on the predictions of the computing load and the predictions of the available computing capacities, of a processing capability to allocate the at least one multimedia process during the period of time. At least one virtual environment is created for the at least one multimedia process. The computing capacity of the at least one virtual environment is adapted to the predictions of the computing load of the at least one multimedia process during the period of time.