Thread Weight Tuning for Multithreaded Processor Resource Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Multithreaded processors face performance issues due to overutilization or underutilization of resources when multiple threads contend for a limited number of cores, leading to inefficient CPU resource allocation and potential waste.

Innovation Solution

A system that includes a thread activity analyzer and a thread weight component to determine the likelihood of a thread entering a spin mode based on previous activity, assigning a thread weight to allocate resources effectively, ensuring that heavily working threads receive sufficient CPU resources.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple threads contend for a limited number of cores, then processor resource utilization increases, but performance suffers due to overutilization or underutilization

Engineering Contradiction:
Improveprocessor resource utilizationVSAvoidperformance
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system dynamically adjusts thread weights based on real-time analysis of thread activity patterns and spin mode behavior. The scheduler modifies resource allocation dynamically by changing thread weights, allowing the system to adapt to varying workload conditions and prevent both overutilization and underutilization of processor cores

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The thread activity analyzer continuously monitors thread behavior and provides feedback to the scheduler about spin mode likelihood. This feedback loop enables the system to identify threads that are likely to spin and adjust their weights accordingly, preventing performance degradation from uncontested thread execution

Inventive Principle:
Principle #23Feedback

2Productivity

If thread weights are assigned based on spin mode likelihood, then resource allocation efficiency improves, but system complexity increases

Engineering Contradiction:
Improveresource allocation efficiencyVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The thread activity analyzer automatically monitors thread behavior and determines spin mode likelihood without requiring manual intervention. The system self-adjusts thread weights based on observed patterns, reducing the need for complex external control mechanisms while maintaining efficient resource allocation

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The thread activity analyzer serves as an intermediary component between the scheduler and the threads. It analyzes thread behavior and provides weight recommendations to the scheduler, simplifying the overall system architecture by separating the analysis function from the scheduling decision-making process

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10817341B1Adaptive tuning of thread weight based on prior activity of a thread
Publication Date: 2020.10.27 EMC IP HLDG CO LLC
  • US10817341B1 patent drawing
  • US10817341B1 patent drawing
  • US10817341B1 patent drawing

AI summary

The described technology is generally directed towards adaptively tuning thread weights for multithreaded processors. According to an embodiment, a system can comprise a memory that can store computer executable components, and a processor that can execute the computer executable components stored in the memory. The computer executable components can comprise a thread activity analyzer to determine a first likelihood of a first thread of a multithreaded processor entering a spin mode based on analysis of previous activity of the first thread. The system can further comprise a thread weight component to assign a thread weight to the first thread based on the first likelihood, wherein a share of resources of the multithreaded processor is assigned to the first thread based on the thread weight of the first thread.