Parallel Scan Operation Using Tree Adder Architecture

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

There is a need for more efficient performance of computational algorithms such as scan operations using parallel processor architectures, which currently face inefficiencies in processing sequences of single-bit values.

Innovation Solution

A system and method for performing scan operations on single-bit values using a parallel processing architecture with a plurality of processing elements, where a scan operation instruction is received and executed, utilizing a parallel processor architecture that includes graphics processors or vector processors, and employing a tree of adders to perform prefix sum and inclusive/exclusive scan operations efficiently.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If conventional parallel processor architectures are used to perform scan operations on single-bit values, then the operations can be executed in parallel, but the processing efficiency and computational performance are insufficient

Engineering Contradiction:
Improvescan operation processing efficiencyVSAvoidcomputational latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent segments the scan operation into multiple parallel processing stages using a tree-structured adder network. Each processing element handles a specific segment of the input sequence, and results are combined hierarchically through multiple levels of addition operations, enabling efficient parallel computation of prefix sums for single-bit values

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transforms the sequential scan operation into a two-dimensional parallel processing structure by organizing processing elements in a grid or mesh topology. This spatial arrangement allows simultaneous execution of multiple addition operations across different dimensions, significantly reducing computational latency while maintaining high processing throughput

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Speed

If more processing elements are added to increase parallelism, then scan operations can be performed faster, but the hardware area requirements increase

Engineering Contradiction:
Improvescan operation execution speedVSAvoidprocessor hardware area
Core Design Contradiction:
SpeedVSArea of stationary object

Solution Approach 1:

The patent employs dynamic resource allocation where processing elements are configured and activated based on the specific scan operation requirements. The architecture allows processing elements to be dynamically enabled or disabled, and their functional roles to be reconfigured, optimizing the balance between execution speed and hardware area utilization for different input sizes and operation types

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent designs processing elements with multi-functional capabilities that can perform various scan operations (inclusive scan, exclusive scan, prefix sum) using the same hardware resources. The processing elements can be reconfigured to handle different input formats and operation types, reducing the total number of dedicated hardware components needed while maintaining high execution speeds

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

Data Source

PatentUS8661226B2System, method, and computer program product for performing a scan operation on a sequence of single-bit values using a parallel processor architecture
Publication Date: 2014.02.25 NVIDIA CORP
  • US8661226B2 patent drawing
  • US8661226B2 patent drawing
  • US8661226B2 patent drawing

AI summary

A system, method, and computer program product are provided for performing a scan operation on a sequence of single-bit values using a parallel processing architecture. In operation, a scan operation instruction is received. Additionally, in response to the scan operation instruction, a scan operation is performed on a sequence of single-bit values using a parallel processor architecture with a plurality of processing elements.