Data Copy Throttling via Subrequest Partitioning and Delay

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data movement techniques in computer systems face challenges in efficiently balancing data copying operations with other tasks, such as I/O requests, to minimize resource utilization and adverse impacts on system performance.

Innovation Solution

A method that involves partitioning data copying requests into subrequests with introduced time delays between them, using a throttle value to control the copying rate, and adjusting delays based on actual performance to achieve a desired average delay time, allowing for fine-grained control of resource allocation and minimizing interference with higher priority tasks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data copying operations are performed at high speed, then productivity of data movement is improved, but resource consumption increases and adversely affects other system tasks

Engineering Contradiction:
Improvedata copying speedVSAvoidresource consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The patent implements periodic action by introducing controlled time delays between batches of data copy operations. The copy operation is divided into multiple batches with idle periods interspersed between them, allowing the system to periodically perform data movement while consuming fewer continuous resources, thus reducing adverse effects on other system tasks while maintaining overall productivity.

Inventive Principle:
Principle #19Periodic action

2Productivity

If data copying operations are performed continuously, then productivity of data movement is improved, but system performance stability deteriorates due to resource contention

Engineering Contradiction:
Improvedata movement throughputVSAvoidsystem performance stability
Core Design Contradiction:
ProductivityVSStability of the object's composition

Solution Approach 1:

The patent applies segmentation by dividing the continuous data copying operation into multiple discrete batches. Each batch processes a portion of the data and then pauses, allowing other system tasks to execute. This segmentation reduces resource contention and stabilizes system performance while maintaining overall data movement productivity through the cumulative effect of multiple batches.

Inventive Principle:
Principle #1Segmentation

3Use of energy by moving object

If time delays are introduced between data copy operations, then resource consumption is reduced, but productivity of data movement decreases

Engineering Contradiction:
Improveresource utilizationVSAvoiddata copying rate
Core Design Contradiction:
Use of energy by moving objectVSProductivity

Solution Approach 1:

The patent implements dynamics by making the time delay parameters adjustable and adaptive. The delay duration and batch size can be dynamically configured based on system conditions and performance requirements. This allows the system to optimize the balance between resource consumption and data movement productivity, adjusting the copying rate to match available system resources while maintaining acceptable throughput.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS9128629B1Throttling techniques for use with data relocation
Publication Date: 2015.09.08 EMC IP HLDG CO LLC
  • US9128629B1 patent drawing
  • US9128629B1 patent drawing
  • US9128629B1 patent drawing

AI summary

Techniques are described for copying data using a throttling mechanism to achieve a desired time delay. A request is received to copy a data portion from a source location of a first physical device to a target location of a second physical device. A desired average delay time is determined in accordance with a plurality of values including a throttle value affecting a rate at which data is copied from the source location to the target location. The request is partitioned into subrequests. The data portion is partitioned into a subportions. Each of the subrequests copies one of the subportions. The subrequests are performed whereby a time delay is introduced between at least two of the plurality of subrequests and whereby an average time delay with respect to each pair of consecutively issued subrequests is the desired average time delay.