Serializer-Based Flow Control for Multi-Producer Queues

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In computing environments, existing flow control mechanisms fail to effectively manage service request flows between requesters and servers, leading to potential overflow and resource wastage due to unmanaged contention for services, especially when request rates exceed processing capabilities.

Innovation Solution

Implementing a serializer and serializer queue between requesters and service providers, which inhibits requesters when the serializer queue is full and recalculates service provider queue times to synchronize with serializer times, ensuring controlled request rates that match the service provider's processing capacity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If dynamic flow control methods are used to track congestion in real time, then throughput is optimized, but system complexity increases due to real-time monitoring and regulation mechanisms

Engineering Contradiction:
ImprovethroughputVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces a serializer as an intermediary component between producers and the service provider. This serializer acts as a mediator that manages the flow of service requests by serializing them into a queue, thereby reducing the complexity of real-time congestion tracking while still optimizing throughput through controlled request delivery.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Device complexity

If static rate control with pre-configured values is used, then system complexity is reduced, but adaptability to changing service rates deteriorates

Engineering Contradiction:
Improvesystem complexityVSAvoidadaptability to service rate changes
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The patent implements dynamic rate control by continuously monitoring the service provider's actual service rate and adjusting the serializer's controlled service rate accordingly. This dynamic adjustment mechanism allows the system to adapt to changing service rates without requiring complex real-time congestion tracking, thus maintaining simplicity while improving adaptability.

Inventive Principle:
Principle #15Dynamics

3Productivity

If the serializer queue is made larger to reduce inhibition frequency, then productivity improves, but the risk of overflow and resource wastage increases

Engineering Contradiction:
ImproveproductivityVSAvoidoverflow risk
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements a feedback mechanism where the serializer continuously monitors the service provider's queue status and service rate. When the service provider queue is full or at critical levels, the serializer receives feedback and adjusts its controlled service rate accordingly, dynamically reducing the risk of overflow while maintaining high productivity through efficient request serialization.

Inventive Principle:
Principle #23Feedback

4Productivity

If the service provider processes requests faster than the serializer can supply them, then productivity improves, but the service provider queue may empty out causing idle time

Engineering Contradiction:
Improveprocessing speedVSAvoididle time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by having the serializer continuously prepare and serialize service requests in advance, ensuring that the service provider queue is maintained at optimal levels. This preliminary serialization and queuing of requests ensures that when the service provider is ready to process, requests are immediately available, preventing idle time while maintaining high processing speed.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS7949780B2Adaptive flow control techniques for queuing systems with multiple producers
Publication Date: 2011.05.24 ORACLE AMERICAN INC
  • US7949780B2 patent drawing
  • US7949780B2 patent drawing
  • US7949780B2 patent drawing

AI summary

Provided is a method, computer program and system for controlling the flow of service requests originated by a plurality of requesters. The method includes adding an additional control mechanism, which includes a serializer and a serializer queue, between the requesters and the service provider. The serializer inhibits the requesters when the serializer queue size reaches a threshold for a period proportional to the number of requesters already waiting, the queue length and the serializer service time. When the service provider queue is full or at a critical level, the serializer is inhibited for a period of time that is the approximately the difference between the service times of the serializer and the service provider. In addition, when the service provider queue is full, the service provider service time is recalculated as a function of the serializer service time and of the time required to process requests by the service provider.