Computational Workflow Management via Task Label Caching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

High power computer systems face inefficiencies in completing complex computations due to resource redundancy and storage challenges, where significant time and memory are consumed, and existing methods to reduce computation time mainly involve increasing processing power and memory.

Innovation Solution

The system decomposes computations into workflows of tasks, generates task labels for each task result, and uses these labels to identify and reuse cached results, evicting unnecessary data from memory to optimize resource utilization and ensure liveness and safety in computational workflow management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If more processing power and memory are added to reduce computation time, then computation speed improves, but system cost and resource consumption increase

Engineering Contradiction:
Improvecomputation speedVSAvoidmemory resources
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The system performs preliminary actions by caching intermediate task results before they are needed. The cache stores task results and their labels in advance, allowing future tasks to quickly retrieve previously computed results without re-computation, thereby reducing both computation time and memory requirements for active processing

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system creates copies of task results in a cache memory structure, storing both the results and their associated labels. These copies enable rapid retrieval and comparison without accessing the original computation sources, improving computation speed while managing memory resources efficiently through selective caching

Inventive Principle:
Principle #26Copying

2Productivity

If computation is decomposed into workflow tasks with caching, then resource utilization improves, but system complexity increases

Engineering Contradiction:
Improveresource utilizationVSAvoidworkflow management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system segments computation into discrete workflow tasks, where each task produces a result that can be independently cached and labeled. This segmentation enables fine-grained resource utilization by caching individual task results rather than entire computations, improving productivity while managing complexity through modular task organization

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system introduces task labels as intermediary elements that mediate between computation tasks and the cache. These labels serve as keys for retrieving cached results without requiring complex matching logic, simplifying the workflow management while enabling efficient resource utilization through label-based cache lookup

Inventive Principle:
Principle #24Intermediary (Mediator)

3Loss of time

If task labels are generated for cache management, then redundant computation is reduced, but processing overhead increases

Engineering Contradiction:
Improveredundant computation timeVSAvoidlabel generation overhead
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The system extracts essential identifying information from each task into a compact label that can be stored and compared efficiently. By taking out only the necessary task identification elements rather than storing entire task definitions, the system reduces redundant computation through accurate matching while minimizing the processing overhead of label generation and storage

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS10261911B2Apparatus and method for computational workflow management
Publication Date: 2019.04.16 JOHNS HOPKINS UNIVERSITY
  • US10261911B2 patent drawing
  • US10261911B2 patent drawing
  • US10261911B2 patent drawing

AI summary

Apparatuses and methods for performing computational workflow management are provided. An example apparatus may include processing circuitry. The processing circuitry may be configured to receive a computation resource reservation request for cache from a client to perform a computation, and decompose the computation into a workflow of tasks, generate a task label for each task result and the associated task, and compare a selected task label with previous task labels to determine if the selected task label matches one of the previous task labels. The processing circuitry may be further configured to, in response to determining that the selected task label matches one of the previous task labels, perform the computation using a task result that is associated with the matched one of the previous task labels that is currently stored in the cache for the task result of the selected task label.