Task Management Progress Mapping for Integer Precision

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In storage systems, when the number of child tasks exceeds the total progress percentage, integer-type job progress percentage results in each child task being allocated zero progress, leading to a lack of progress visibility, worsening user experience, and changing the precision level to floating point type is not feasible due to significant changes and performance degradation.

Innovation Solution

Divide tasks into multiple child tasks and associate each child progress with a respective child task using a predefined mapping relationship, allowing only part of the child tasks to increment the total job progress percentage, maintaining integer-type precision while providing a display similar to floating point type progress.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If the number of child tasks exceeds the total progress percentage, then each child task is allocated zero progress, but this leads to lack of progress visibility and worsened user experience

Engineering Contradiction:
Improvenumber of child tasksVSAvoidprogress visibility
Core Design Contradiction:
Quantity of substanceVSLoss of information

Solution Approach 1:

The patent segments the child tasks into two groups: those that are mapped to child progresses and those that are not. By segmenting the tasks this way, the system can allocate progress percentages to a subset of tasks, ensuring that at least some tasks contribute to visible progress even when the total number of tasks exceeds 100%. This resolves the contradiction by allowing progress visibility to be maintained while accommodating a large number of tasks.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies partial action by mapping only a portion of child tasks to child progresses rather than all tasks. Specifically, when the number of child tasks exceeds the total progress percentage, the system maps only enough tasks to progress as needed, rather than attempting to map every task. This partial mapping ensures that progress remains visible while avoiding the allocation of zero progress to all tasks.

Inventive Principle:
Principle #16Partial or excessive action

2Measurement precision

If the precision level is changed to floating point type, then progress visibility is improved, but this causes significant changes and performance degradation

Engineering Contradiction:
Improveprogress precisionVSAvoidprocessing performance
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent segments the progress representation into discrete integer-based child progresses rather than using continuous floating-point values. By segmenting the progress into distinct integer steps that can be mapped to specific child tasks, the system achieves sufficient precision for visibility while maintaining integer-type performance characteristics. This avoids the need to change the overall precision level to floating point.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the parameter of progress representation from floating-point to integer-based by introducing child progresses as discrete units. This parameter change allows the system to maintain integer-type processing performance while achieving the necessary precision for progress display. The child progresses are represented as integers that sum to the total progress percentage, avoiding floating-point operations.

Inventive Principle:
Principle #35Parameter changes

3Quantity of substance

If all child tasks are mapped to child progresses, then progress distribution is uniform, but this is not feasible when the number of child tasks exceeds the total progress percentage

Engineering Contradiction:
Improvenumber of child progressesVSAvoidtask mapping flexibility
Core Design Contradiction:
Quantity of substanceVSAdaptability or versatility

Solution Approach 1:

The patent segments the child tasks into two distinct sets: those that are mapped to child progresses and those that are not. This segmentation allows the system to adapt to situations where the number of child tasks exceeds the total progress percentage. By segmenting tasks this way, the system can maintain a one-to-one mapping between child progresses and selected child tasks, while leaving other tasks unmapped without causing errors.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies partial mapping by only mapping a subset of child tasks to child progresses rather than all tasks. When the number of child tasks exceeds the total progress percentage, the system performs partial mapping by selecting only enough tasks to correspond to the available progress units. This partial action approach provides adaptability to various task counts while maintaining uniform progress distribution for the mapped tasks.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11294712B2Method, device and computer program product for task management
Publication Date: 2022.04.05 EMC IP HLDG CO LLC
  • US11294712B2 patent drawing
  • US11294712B2 patent drawing
  • US11294712B2 patent drawing

AI summary

Task management techniques, in a storage system, involve: dividing a task to be processed into a plurality of child tasks, so that a processing time required by each of the plurality of child tasks is same, the number of the plurality of child tasks being a first number; dividing a progress to be reported and being associated with the processing of the task into a plurality of child progresses, the number of the plurality of the child progresses being a second number, the second number being less than the first number, and each of the plurality of child progresses having a same value; and associating, based on the first and the second number, and according to a predetermined mapping between the plurality of child progresses and the plurality of child tasks, each of the plurality of child progresses with a respective child task of the plurality of child tasks.