Storage System Port Queue Control for Parallel Processor Polling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

High-performance storage systems face inefficiencies when multiple processors poll a single higher-order interface, leading to redundant request processing and inconsistencies in queue management, especially when the number of processors exceeds the logical performance ceiling, making it difficult to maintain the order of request processing as expected by host computation apparatuses.

Innovation Solution

A storage system configuration where multiple processors share a higher-order interface and perform parallel polling without mutual exclusion, using a port queue with virtual queues and pointers to store and process requests in the correct order, ensuring that requests are processed in the order of receipt without the need for locking mechanisms.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple processors simultaneously perform polling of a higher-order interface, then processing speed is improved, but request redundancy and queue management inconsistency occur

Engineering Contradiction:
Improveprocessing speedVSAvoidqueue management consistency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The queue management is segmented by introducing virtual queues that are logically associated with specific processors. Each processor polls only its assigned virtual queue, eliminating contention and redundancy while maintaining high processing speed. The physical queue is divided into multiple virtual queues, each handled by a dedicated processor.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A queue management unit is introduced as an intermediary between the higher-order interface and processors. This unit manages the mapping between physical queues and virtual queues, and handles the serial number assignment and request distribution, ensuring consistent queue management while enabling parallel processing.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If locks are used to exclude processors from polling, then queue management consistency is maintained, but processing efficiency decreases

Engineering Contradiction:
Improvequeue management consistencyVSAvoidprocessing efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The polling workload is segmented across multiple virtual queues, with each processor assigned to specific virtual queues. This segmentation eliminates the need for locks because processors operate on disjoint queue segments, achieving both consistency and high efficiency simultaneously.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Each processor independently manages its assigned virtual queues without requiring coordination or locking with other processors. The queue management unit automatically distributes requests to appropriate virtual queues, enabling processors to serve themselves without mutual exclusion.

Inventive Principle:
Principle #25Self-service

3Productivity

If the number of processors is increased beyond logical performance ceiling, then processing capability is improved, but request processing order cannot be maintained

Engineering Contradiction:
Improveprocessing capabilityVSAvoidrequest processing order
Core Design Contradiction:
ProductivityVSManufacturing precision

Solution Approach 1:

The queue management unit acts as an intermediary that enforces ordering constraints. It assigns serial numbers to requests and ensures that requests are processed in the correct order within each virtual queue, even when multiple processors are operating in parallel across different queues.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

Serial numbers are assigned to requests in advance by the queue management unit before distribution to processors. This preliminary ordering action ensures that when processors execute requests in parallel, the original reception order is preserved through the serial number sequence.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11237770B2Storage system and queue control method of storage system
Publication Date: 2022.02.01 HITACHI VANTARA LTD
  • US11237770B2 patent drawing
  • US11237770B2 patent drawing
  • US11237770B2 patent drawing

AI summary

A protocol chip stores requests from a computer in a port queue, on the basis of an index indicating a slot of the port queue which allows subsequent storing. MPs each hold a CI of the slot having undergone a preceding search of the port queue by the MP, search this port queue from the slot that the pointer indicates, search for a request addressed to a logical device to which the MP corresponds, and store this request in a virtual queue corresponding to the logical device, to process the request.