Dynamic Data Preprocessing Resource Allocation for ML Workloads

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional data preprocessing methods for machine learning face challenges due to data imbalances and heterogeneous computing requirements, leading to inefficiencies in resource allocation and increased computational costs.

Innovation Solution

The approach represents data preprocessing as a directed acyclic graph (DAG) and dynamically partitions and rebalances data across hardware resources, optimizing the use of CPU and GPU processing to ensure efficient execution and reduce computational costs.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If conventional data preprocessing methods are used with multiple pre-processors, then data transformation capabilities are provided, but data imbalances between examples occur and computational requirements become heterogeneous

Engineering Contradiction:
Improvedata transformation capabilityVSAvoidresource allocation efficiency
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The patent segments the preprocessing workflow into independent operator modules that can be dynamically selected and executed. Each operator is a self-contained unit that performs specific transformations, allowing the system to divide complex preprocessing tasks into manageable, reusable components that can be allocated efficiently across available computational resources.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates a universal preprocessing framework that can handle multiple data types and transformation operations through a common architecture. The system uses a standardized operator interface and unified resource management mechanism that works across CPU, GPU, and other heterogeneous processors, eliminating the need for separate specialized systems for different preprocessing needs.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Adaptability or versatility

If multiple pre-processors are used for different data processing stages, then diverse transformations are achieved, but computational requirements become heterogeneous requiring different processor types

Engineering Contradiction:
Improveprocessing operation diversityVSAvoidhardware resource management
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary resource manager that sits between the preprocessing operators and the heterogeneous hardware resources. This mediator translates diverse computational requirements into unified resource allocation decisions, matching operators to appropriate processors (CPU, GPU, etc.) based on their characteristics and current availability, thereby simplifying the overall system architecture.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent dynamically adjusts operational parameters such as batch size, parallelism degree, and memory allocation based on the specific requirements of each preprocessing operator and the available hardware. This parameter optimization allows the system to adapt to heterogeneous processors without requiring complex hardware management, as software-level adjustments compensate for hardware differences.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If data preprocessing is performed frequently for workflow development, then model training is improved, but processing time and computational costs increase

Engineering Contradiction:
Improvemodel training qualityVSAvoidpreprocessing execution time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs preliminary analysis of the preprocessing workflow to identify optimal execution strategies before actual data processing begins. The system pre-compiles operator execution plans, pre-allocates resources, and caches intermediate results where applicable, significantly reducing the time required for frequent preprocessing operations during workflow development and iteration.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent maintains continuous preprocessing operations by implementing efficient parallel processing pipelines and avoiding unnecessary idle time between operations. The system keeps data flowing through the preprocessing stages continuously, using buffer mechanisms and asynchronous operations to ensure that frequent preprocessing requests are handled without repeated startup overhead, thereby reducing total processing time while maintaining model training quality.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS20240403138A1Systems and Methods for Efficient Data Preprocessing of Machine Learning Workloads
Publication Date: 2024.12.05 SNORKEL AI INC
  • US20240403138A1 patent drawing
  • US20240403138A1 patent drawing
  • US20240403138A1 patent drawing

AI summary

A system, platform, apparatus, and associated methods for more efficiently pre-processing data for use in training a machine learning model, or for processing data for input to a trained model. Embodiments enable the dynamic allocation (or reallocation) of computational resources (e.g., processor cycles and/or memory) to the execution of a data pre-processing function or operation, and the reassignment of resources to a different data pre-processing function or operation as needed. This results in a more efficient approach to executing a set of pre-processing operations on data used to train a model or as input data for a trained model.