Messaging Queue Delegate System for Scalable Inter-Processor Communication
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current multiprocessor systems face inefficiencies in inter-processor communication due to reliance on expensive and non-scalable mechanisms like shared memory and interprocessor interrupts, which hinder effective communication across a large number of processing units.
Innovation Solution
The implementation of messaging queues with a delegate queue system that allows processors to efficiently communicate by storing notifications of received messages, enabling processors or threads to be awakened when messages are available, thereby reducing the need for costly and inefficient polling mechanisms.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If shared memory and interprocessor interrupts are used for inter-processor communication, then communication between processors is enabled, but the system becomes expensive and inefficient with poor scalability
Solution Approach 1:
The patent introduces message queues as an intermediary mechanism between processors. Instead of direct shared memory access or interrupt-based communication, processors communicate by placing messages in queues. The queue management system acts as a mediator that handles message routing, notification, and processor wake-up events, eliminating the need for expensive shared memory hardware and complex interrupt handling while improving communication efficiency and scalability.
2Quantity of substance
If the number of processors is increased in shared-bus systems, then processing power increases, but the maximum number of processors is limited to a dozen or two
Solution Approach 1:
The patent segments the communication system into independent message queues, each associated with specific processors or processing units. This segmentation allows the system to scale to a large number of processors by organizing communication channels in a modular fashion. Each queue operates independently, managing messages for specific processor groups, which eliminates the bottleneck of shared-bus arbitration and enables the system to support many more processors than traditional shared-bus architectures.
3Loss of information
If polling mechanisms are used to check for messages, then messages can be detected, but energy is wasted due to continuous polling
Solution Approach 1:
The patent implements a feedback mechanism where message queues automatically generate notification events when messages are available. Instead of processors continuously polling to check for messages, the system provides feedback by setting notification bits or generating events that wake up processors when messages arrive. This event-driven feedback approach eliminates wasteful continuous polling while ensuring reliable message detection, significantly reducing energy consumption in multi-processor systems.
Data Source
AI summary
A processing system includes a first processing system element, and a second processing system element configured to communicate with the first processing system. The second processing system element includes a set of messaging queues. Each of the messaging queues includes one or more entries for storing data, a set of delegate queue addresses associated with one of the set of messaging queues; and a delegate queue associated with the set of messaging queues. The delegate queue includes a set of entries corresponding to the delegate queue addresses, and each of the entries of the delegate queue indicates whether a corresponding one of the set of messaging queues is storing data.


