Parallel Task Processing via Segmented Nodes
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional parallel processing approaches face challenges due to thread locking, racing, and blocking issues caused by shared resources, leading to bottlenecks and sub-optimization of resources even with adequate CPU bandwidth.
Innovation Solution
A system that conducts parallelization of tasks by receiving messages with a representation of logic describing tasks to be executed in parallel, and distributes these tasks to independent processing units for asynchronous processing, using a processor with processing manager units and processing units.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If threaded architecture is used for parallel processing, then processing power scaling is achieved, but resource competition causes thread locking, racing, and blocking issues
Solution Approach 1:
The system divides the processing architecture into completely independent processing nodes, each with its own dedicated resources (CPU, memory, I/O). This segmentation eliminates resource sharing between threads, thereby preventing thread locking, racing, and blocking while maintaining parallel processing capability across multiple nodes.
Solution Approach 2:
The patent introduces a message queue as an intermediary component that enables communication and coordination between independent processing nodes without requiring shared resources. Messages are passed through the queue, allowing asynchronous parallel processing while maintaining data flow and synchronization without direct resource competition.
2Use of energy by moving object
If threads share system resources, then resource utilization is improved, but management complexity increases leading to bottlenecks and artificial delays
Solution Approach 1:
Instead of managing complex resource sharing among threads, the system segments resources so that each processing node has dedicated CPU, memory, and I/O resources. This eliminates the need for complex thread management mechanisms while maintaining high resource utilization through parallel execution across multiple independent nodes.
Solution Approach 2:
Each processing node operates autonomously with its own dedicated resources, making its own decisions about resource allocation and task execution without requiring complex centralized management. This self-service approach simplifies the overall system management while maintaining efficient resource utilization.
3Speed
If parallel threads are implemented, then processing speed is improved, but resource competition causes bottlenecks and artificial delays
Solution Approach 1:
The system segments processing into independent nodes with dedicated resources, allowing truly parallel execution without resource contention. This eliminates thread waiting time caused by resource competition while maintaining high processing speed through simultaneous execution of multiple tasks across different nodes.
Solution Approach 2:
By providing dedicated resources to each processing node, the system ensures continuous useful action without interruptions caused by resource locking or waiting. Each node can continuously process tasks assigned to it without being blocked by other threads, maximizing throughput and minimizing idle time.
Data Source
AI summary
A system for conducting parallelization of tasks is disclosed. The system includes an interface for receiving messages comprising a representation of logic describing two tasks to be executed in parallel, the message further comprising a content payload for use in the tasks. The system further includes a processor comprising devices running on independent machines, each device comprising a processing manager unit and at least two processing units. The processing manager is configured to parse the received messages and to distribute the at least two tasks to the at least two processing units for independent and parallel processing relative to the content payload.


