Policy-Based Task Selection for Distributed Worker Contention

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing compute activities in distributed systems face inefficiencies due to contention between workers when processing tasks, particularly in optimistic concurrency control systems, where multiple workers may end up working on the same tasks, leading to resource inefficiency and increased update failures.

Innovation Solution

Implementing policy-based task selection techniques that determine the starting point for task processing in a task data structure, such as random, heat-map, or availability-based methods, to reduce contention by ensuring distinct workers process different tasks, thereby optimizing resource utilization and reducing update failures.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If optimistic concurrency control is used to allow multiple concurrent entities to access records, then system performance improves due to reduced locking time, but update failures increase when multiple workers process the same tasks simultaneously

Engineering Contradiction:
Improvesystem performanceVSAvoidupdate failure rate
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The task data structure is segmented into multiple partitions or regions, and workers are assigned to process tasks from different segments. This segmentation ensures that workers operate on distinct portions of the task queue, reducing the probability of concurrent access conflicts and update failures while maintaining high system throughput.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary actions by pre-assigning tasks to workers before actual processing begins. Task assignments are made in advance based on worker availability and task characteristics, ensuring that workers have dedicated tasks to process without competing for the same resources, thereby reducing update failures.

Inventive Principle:
Principle #10Preliminary action

2Ease of operation

If tasks are selected in a fixed manner from the task data structure, then task selection is simple and deterministic, but contention occurs when multiple workers select the same tasks

Engineering Contradiction:
Improvetask selection simplicityVSAvoidtask processing efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The task selection mechanism transitions from a static, fixed approach to a dynamic, adaptive approach. Workers can select tasks based on dynamic criteria such as task priority, worker capability, and current system state. This dynamic selection reduces contention by distributing tasks more evenly across workers while maintaining operational simplicity through standardized selection algorithms.

Inventive Principle:
Principle #15Dynamics

3Productivity

If multiple workers process batches of tasks concurrently, then system throughput increases, but resource inefficiency occurs when workers process overlapping tasks

Engineering Contradiction:
Improvesystem throughputVSAvoidresource inefficiency
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The system implements feedback mechanisms where workers report task processing status and completion to a central coordinator. This feedback enables the system to track which tasks are being processed by which workers, allowing for intelligent task allocation that avoids assigning the same tasks to multiple workers simultaneously, thereby eliminating resource waste while maintaining high throughput.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent replaces traditional mechanical task allocation methods with an information-based system using tokens and data structures. Workers receive task batches through information exchange rather than direct resource allocation, enabling efficient coordination and reducing redundant processing without requiring complex inter-worker communication protocols.

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

Data Source

PatentUS11537431B1Task contention reduction via policy-based selection
Publication Date: 2022.12.27 AMAZON TECH INC
  • US11537431B1 patent drawing
  • US11537431B1 patent drawing
  • US11537431B1 patent drawing

AI summary

A system implements task contention reduction via policy-based selection. Tasks waiting to be performed are indexed in a task data structure that groups the tasks based on the resources to which the tasks pertain. Workers request batches of tasks for the workers to perform. A scan cycle includes building multiple batches of tasks by scanning the task data structure for a requesting worker. A policy (e.g., random or some other form of optimization) determines where the scan cycle starts in the data structure. Each batch of tasks is delivered to a worker along with a token that keeps the state of the scan cycle (e.g., where the scan cycle started, and where the next scan to build the next batch within the scan cycle begins). The worker returns the token with the next request for the next batch and the next batch is built based on the token's state information.