Dynamic DMA Size Adjustment via Multi-Handle Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing computer systems face performance degradation due to exhaustion of direct memory access (DMA) resources during heavy I/O workloads, leading to buffered I/O requests and decreased read/write performance.

Innovation Solution

The implementation of a multi-handle approach allows for dynamic adjustment of DMA size without stopping ongoing I/O requests, by allocating additional DMA handles as needed and deallocating them when resources are sufficient.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If DMA resources are fixed in size, then device complexity is reduced, but system adaptability deteriorates under varying workload conditions

Engineering Contradiction:
ImproveDMA resource adaptabilityVSAvoidDMA handle management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements dynamic adjustment of DMA resource size by allowing the system to allocate additional DMA handles when resources are exhausted and deallocate them when workload decreases. This dynamic behavior enables the DMA subsystem to adapt to varying workload conditions without requiring manual reconfiguration, resolving the contradiction between fixed complexity and variable adaptability needs.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the parameter of DMA resource size by modifying the number of active DMA handles based on counter thresholds. When the counter reaches a predetermined threshold indicating resource exhaustion, the system increases the DMA resource size by allocating additional handles. This parameter change mechanism enables adaptability while maintaining manageable complexity through automated threshold-based decisions.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If DMA size is increased to handle heavy I/O workloads, then I/O processing capability is improved, but memory resource consumption increases

Engineering Contradiction:
ImproveI/O processing capabilityVSAvoidMemory resource consumption
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The system applies partial action by allocating DMA handles only when and to the extent needed. Instead of permanently reserving large DMA resources, the system allocates additional handles only when the counter indicates resource exhaustion during heavy workloads. This partial allocation approach provides sufficient I/O processing capability during peak demand while minimizing memory resource consumption during normal operation.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The DMA subsystem performs self-service by automatically monitoring its own resource usage through counters and autonomously allocating or deallocating DMA handles based on threshold conditions. This self-regulating mechanism eliminates the need for external intervention to manage memory resources, enabling the system to balance I/O processing capability with memory consumption efficiently.

Inventive Principle:
Principle #25Self-service

3Adaptability or versatility

If DMA handles are dynamically allocated and deallocated, then system adaptability is improved, but operation stability deteriorates due to potential resource exhaustion

Engineering Contradiction:
ImproveDMA size adjustabilityVSAvoidI/O request processing reliability
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The system takes preliminary action by monitoring the counter continuously and preparing to allocate additional DMA handles before complete resource exhaustion occurs. The threshold-based trigger mechanism ensures that DMA handles are allocated in advance when resource usage approaches critical levels, preventing I/O request failures and maintaining reliability while enabling dynamic adaptability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback through the counter that continuously monitors DMA resource usage and provides feedback to the allocation decision mechanism. When the counter reaches the predetermined threshold, the feedback triggers additional handle allocation. This closed-loop feedback system ensures reliable I/O processing by proactively responding to resource exhaustion conditions while maintaining adaptability to workload changes.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS20250156226A1Dynamically change direct memory access size of a driver using a multi-handle approach
Publication Date: 2025.05.15 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US20250156226A1 patent drawing
  • US20250156226A1 patent drawing
  • US20250156226A1 patent drawing

AI summary

Embodiments dynamically change direct memory access size of a driver using a multi-handle approach. A technique includes monitoring a counter for a software channel, the software channel being coupled to a storage system, the software channel being configured to process an input/output (I/O) request for the storage system and receiving a request to modify a direct memory access (DMA) size of the software channel based on the counter reaching a predetermined threshold. A number of DMA handles associated with the software channel is modified, based on receiving the request to modify the DMA size of the software channel.