Computational Object Storage for ML Data Preprocessing Offload

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current machine learning systems face inefficiencies in data preprocessing, as they often require dedicated accelerators or GPUs, which increase costs and processing bottlenecks, especially when dealing with large volumes of data that exceed volatile memory limits.

Innovation Solution

Offloading data preprocessing to external storage nodes, which can perform preprocessing operations on demand, allowing for data transformation and augmentation before providing preprocessed data to processor nodes, thereby optimizing data pipeline latency and freeing up processing bandwidth without additional system costs.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If preprocessing is offloaded to a dedicated data preprocessing accelerator on the training server node, then preprocessing capability is improved, but system cost increases

Engineering Contradiction:
Improvepreprocessing capabilityVSAvoidsystem cost
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The GPU is made multi-functional by enabling it to perform both traditional graphics processing and data preprocessing operations. The system configures the GPU to execute preprocessing tasks (such as image normalization, resizing, and augmentation) that were traditionally performed by dedicated preprocessing accelerators, thereby eliminating the need for separate preprocessing hardware while maintaining preprocessing capability.

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

Solution Approach 2:

The patent merges the preprocessing function with the GPU processing function. Instead of having separate preprocessing accelerators and GPUs, the system combines these functions into a single GPU unit, allowing the same hardware resource to serve dual purposes: preprocessing data before it reaches the training pipeline and performing graphics/compute operations when needed.

Inventive Principle:
Principle #5Merging (Combining)

2Productivity

If preprocessing is offloaded to the GPU, then preprocessing capability is improved, but processing bandwidth is reduced

Engineering Contradiction:
Improvepreprocessing capabilityVSAvoidprocessing bandwidth
Core Design Contradiction:
ProductivityVSSpeed

Solution Approach 1:

The system performs preprocessing operations in advance, before data enters the main training pipeline. By pre-processing data (normalization, augmentation, etc.) before it reaches the GPU for training operations, the system prepares data upfront so that the GPU can focus solely on high-performance training computations without being burdened by preprocessing tasks during critical training operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The GPU's function is made dynamic and adjustable. The system can configure the GPU to perform preprocessing operations when needed, and switch to traditional graphics/compute operations at other times. This dynamic allocation allows the GPU to adapt its role based on system demands, maintaining processing bandwidth for training while enabling preprocessing capability when required.

Inventive Principle:
Principle #15Dynamics

3Speed

If data is stored at the processor node, then access speed is improved, but storage capacity is insufficient

Engineering Contradiction:
Improvedata access speedVSAvoidstorage capacity
Core Design Contradiction:
SpeedVSVolume of stationary object

Solution Approach 1:

The patent introduces an intermediary mechanism (the configurable GPU with integrated preprocessing and storage capabilities) between the external storage system and the CPU. This intermediary allows data to be pre-fetched, preprocessed, and staged in GPU memory closer to the processing unit, reducing the distance and time for data transfer while maintaining access to large external storage capacities. The GPU acts as a buffer and processing intermediate layer that bridges the speed-capacity gap.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS20220172325A1Computational object storage for offload of data augmentation and preprocessing
Publication Date: 2022.06.02 INTEL CORP
  • US20220172325A1 patent drawing
  • US20220172325A1 patent drawing
  • US20220172325A1 patent drawing

AI summary

A system that executes a distributed application, such as a machine learning model, can have a processor node among a system of nodes to generate a request for data and a storage node among a system of nodes that stores the requested data. The processor node will use the data for iterative processing to train a machine learning model. The storage node receives the request for the data, reads the data, preprocess the data to perform requested data transformation on the data on demand, and provides the preprocessed data to the processor node for the iterative processing. The processor node can request storage system nodes to store data in a manner suitable for preprocessing. In response to receiving a request, the storage node can interpret hints or metadata associated with the storage operation and perform the requested data store operation.