GPU Parallel Processing Architecture for Machine Learning Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current graphics processing units (GPUs) face limitations in efficiently processing graphics and machine-learning operations due to their fixed function computational units and lack of parallel processing capabilities, particularly in handling complex data transformations and neural network computations.

Innovation Solution

A graphics processing unit (GPU) is integrated with a parallel processing architecture that includes multiple processing clusters and a scheduler, enabling SIMT (single instruction, multiple thread) execution and supporting general-purpose processing, which accelerates graphics and machine-learning operations by distributing workloads across multiple processing clusters.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If fixed function computational units are used in GPUs, then device complexity is reduced and ease of manufacture is improved, but adaptability and versatility for different operations (graphics, machine learning, data transformations) deteriorate

Engineering Contradiction:
Improveease of manufactureVSAvoidadaptability
Core Design Contradiction:
Ease of manufactureVSAdaptability or versatility

Solution Approach 1:

The patent implements a unified computational unit architecture where the same processing elements can execute multiple types of operations including graphics rendering, machine learning inference, and general-purpose data transformations. This is achieved through a programmable execution model that allows dynamic configuration of computational units to perform different functions, eliminating the need for separate fixed-function hardware for each operation type.

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

2Adaptability or versatility

If parallel processing capabilities are added to handle complex data transformations and neural network computations, then adaptability and processing capability are improved, but device complexity and manufacturing difficulty increase

Engineering Contradiction:
ImproveadaptabilityVSAvoiddevice complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent divides the GPU architecture into multiple independent processing clusters, each containing identical computational units. This segmentation allows the system to achieve high parallel processing capability while maintaining manageable complexity at the cluster level. Each cluster can be independently configured and scaled, and the repetitive modular structure simplifies manufacturing compared to a monolithic complex design.

Inventive Principle:
Principle #1Segmentation

3Productivity

If more processing clusters are added to maximize parallel processing, then productivity and processing speed are improved, but device complexity and manufacturing difficulty increase

Engineering Contradiction:
ImproveproductivityVSAvoiddevice complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent achieves high productivity by dividing the processing architecture into multiple identical clusters that can operate in parallel. This modular segmentation allows linear scaling of processing power by simply adding more clusters, rather than increasing the complexity of individual processing units. The repetitive nature of identical clusters simplifies manufacturing and testing compared to designing increasingly complex single-unit processors.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentEP4020377A1Conditional kernel prediction network and adaptive depth prediction for image and video processing
Publication Date: 2022.06.29 INTEL CORP
  • EP4020377A1 patent drawingFigure 1
  • EP4020377A1 patent drawingFigure 2A
  • EP4020377A1 patent drawingFigure 2B

AI summary

Embodiments are generally directed to a Conditional Kernel Prediction Network (CKPN) for image and video de-noising and other related image and video processing applications. Disclosed is an embodiment of a method for de-noising an image or video frame by a convolutional neural network implemented on a compute engine, the image including a plurality of pixels, the method comprising: for each of the plurality of pixels of the image, generating a convolutional kernel having a plurality of kernel weights for the pixel, the plurality of kernel weights respectively corresponding to pixels within a region surrounding the pixel; adjusting the plurality of kernel weights of the convolutional kernel for the pixel based on convolutional kernels generated respectively for the corresponding pixels within the region surrounding the pixel; and filtering the pixel with the adjusted plurality of kernel weights and pixel values of the corresponding pixels within the region surrounding the pixel to obtain a de-noised pixel.