Priority Trainer for Many Core Processing Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Many core processing systems face challenges in accurately determining available system resources and optimizing their distribution, leading to inefficient utilization and power consumption, as existing scheduling algorithms fail to provide precise measurements for resource allocation.

Innovation Solution

A priority trainer system that uses a slack meter to measure system slack through synthetic variable loads and worst-case probes, determining real-time slack and ranking jobs to optimize resource allocation and scheduling, ensuring efficient execution based on resource demands.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If numerous scheduling algorithms are used to maximize system performance, then system performance is improved, but measurement accuracy of available resources deteriorates

Engineering Contradiction:
Improvesystem performanceVSAvoidmeasurement accuracy of available resources
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The system performs preliminary measurements of system slack before final scheduling decisions are made. The slack meter measures available resources in advance, and synthetic variable loads are added beforehand to determine worst-case scenarios, enabling accurate resource assessment prior to job execution.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

A slack meter is introduced as an intermediary component between the scheduling algorithm and the many core processing system. This mediator accurately measures system slack and resource availability, providing precise feedback to the scheduler without interfering with the scheduling algorithms' ability to maximize performance.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Use of energy by moving object

If system resources are fully utilized to save power and increase performance, then power efficiency and performance are improved, but system complexity increases

Engineering Contradiction:
Improvepower efficiencyVSAvoidsystem complexity
Core Design Contradiction:
Use of energy by moving objectVSDevice complexity

Solution Approach 1:

The many core processing system performs self-measurement of its own resource availability through the slack meter. The system autonomously determines its own system slack and resource state without requiring external monitoring tools, enabling it to self-optimize power efficiency and resource utilization.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system dynamically changes operational parameters such as frequency and voltage based on measured system slack. By adjusting these parameters in real-time according to actual resource availability, the system optimizes power efficiency without requiring complex external control mechanisms.

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If synthetic variable loads are added to determine priority, then resource allocation accuracy is improved, but execution time increases

Engineering Contradiction:
Improveresource allocation accuracyVSAvoidexecution time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system adds synthetic variable loads that represent only the necessary portion of actual resource demands to determine priority. These partial loads are sufficient to measure system slack and establish priority without requiring full execution of actual jobs, thus minimizing time loss while maintaining measurement accuracy.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

Synthetic variable loads are added in advance during a measurement phase before actual job execution. This preliminary action allows the system to determine priorities and allocate resources accurately without delaying the actual execution of production jobs, as the measurement occurs separately in advance.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentEP3394747A1Priority trainer for many core processing system
Publication Date: 2018.10.31 TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)

AI summary

A method of a priority trainer of a many core processing system comprising a plurality of cores is disclosed. The many core processing system is configured to execute one or more computer jobs, and wherein the priority trainer comprises a controller, the method comprising: receiving (201), from a slack meter, a set of probes comprising a worst case probe, wherein each of the probes indicates a respective system slack of the many core processing system, wherein the worst case probe indicates a least system slack among the set of probes, and wherein the system slack is indicative of available system idle time; adding (202) a synthetic variable load to the beginning of each of the one or more computer jobs to be executed by the many core processing system, wherein the synthetic variable load indicates a time delay of the execution of the one or more computer jobs; placing (203) the worst case probe in at least one location within each of the one or more computer jobs for measuring a real time slack of the one or more computer jobs during a current measurement cycle; determining (205) a priority for each of the one or more computer jobs based on the measured real time slack and the least system slack; and ranking (206) the one or more computer jobs in a priority list based on the determined priorities.