Synaptic Parallel Processing for Distributed Load Balancing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

High-throughput data analysis and signal processing in heterogeneous computing environments face challenges due to the limitations of traditional master-slave configurations, which are not native to dynamical load balancing, leading to bottlenecks in network I/O and underutilization of compute resources with varying node performance and unpredictable compute demands.

Innovation Solution

The implementation of Synaptic Parallel Processing (SPP) that allows nodes to initiate task requests from a shared Synaptic Process List (SPL) without a central server, enabling each node to manage its own I/O and dynamically balance load by delegating task distribution and launching, thus avoiding the need for a central administrator and optimizing compute performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If a master-slave configuration is used for distributed computing, then task distribution is simplified, but network I/O bottlenecks occur and compute resources are underutilized

Engineering Contradiction:
Improvetask distributionVSAvoidcompute resource utilization
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

Instead of having a central master node distribute tasks to slave nodes, the invention inverts the architecture so that slave nodes autonomously compete to acquire tasks from a shared process list. This eliminates the centralized bottleneck while maintaining task distribution functionality through decentralized peer-to-peer task acquisition.

Inventive Principle:
Principle #13The other way round (Inversion)

Solution Approach 2:

Each compute node operates as an independent entity that autonomously monitors the shared process list, selects appropriate tasks based on its own capabilities, and executes them without requiring centralized coordination. This self-service mechanism maximizes resource utilization by allowing each node to independently optimize its task execution.

Inventive Principle:
Principle #25Self-service

2Adaptability or versatility

If heterogeneous compute nodes are used to maximize resource availability, then hardware flexibility increases, but load balancing becomes difficult due to varying node performance

Engineering Contradiction:
Improvehardware flexibilityVSAvoidload balancing
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

Each compute node autonomously evaluates its own local characteristics (processing power, memory, available resources) and uses this local quality information to select tasks from the shared process list. This eliminates the need for centralized load balancing while ensuring that heterogeneous nodes are matched with appropriate tasks based on their individual capabilities.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system dynamically adjusts task allocation based on changing parameters of compute nodes (performance metrics, resource availability, workload status). Each node monitors its own parameters and adapts its task selection strategy accordingly, enabling effective load balancing across heterogeneous hardware without centralized control.

Inventive Principle:
Principle #35Parameter changes

3Ease of operation

If a central server is used to manage task distribution, then centralized control is achieved, but network I/O bandwidth is consumed and deployment complexity increases

Engineering Contradiction:
Improvecentralized controlVSAvoidnetwork I/O bandwidth
Core Design Contradiction:
Ease of operationVSLoss of energy

Solution Approach 1:

The invention extracts the task distribution function from a centralized server and distributes it across all compute nodes through a shared process list. Each node independently accesses and acquires tasks from this shared list, eliminating the need for continuous centralized control while maintaining coordinated task allocation across the distributed system.

Inventive Principle:
Principle #2Taking out (Extraction)

4Productivity

If fine-grained task partitioning is implemented to improve parallel processing, then throughput increases, but task management complexity increases

Engineering Contradiction:
ImprovethroughputVSAvoidtask management
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system segments the overall computational workload into fine-grained tasks that are stored as individual entries in a shared process list. Each compute node can independently select and execute these segmented tasks, achieving high parallel throughput while simplifying task management through the decentralized, list-based organization of work units.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS20240303120A1Method for high-throughput load balanced data-processing in distributed heterogeneous computing
Publication Date: 2024.09.12 VAN PUTTEN MAURICE HENDRIKUS PAULUS
  • US20240303120A1 patent drawing

AI summary

This invention pertains to optimizing data-analysis in distributed computing over a LAN or WAN of compute nodes. The method disclosed applies to processes that can be partitioned into tasks amenable to embarrassingly parallel compute. Reversing the traditional master-slave operation, this method introduces node-initiated task handling by synapses: scripts in daemon mode initiating requests for tasks specified by instructions in line items from a shared process list subject to atomic updating. This method realizes dynamical load balancing to compute-limited performance in heterogeneous distributed computing, when tasks have compute demands that are not predictable or nodes vary in compute performance. A particular objective is high-throughput signal-processing in time-critical processes, common in engineering and multi-messenger astronomy.