Bin Coalescing for Parallel Divide-and-Conquer Sorting

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Top-down sorting methods in parallel processing environments face inefficiencies due to difficulties in dynamically adjusting splitting points and achieving uniformly sized bins, leading to underutilization of processing resources, especially when dealing with non-uniform key distributions and mismatches between input size and bin-splitting factors.

Innovation Solution

The method involves bin-coalescing, where consecutive bins are merged to form larger, more efficient bin sizes, allowing for dynamic adjustment of splitting factors and improving local, in-core efficiency by constructing bins that can be more effectively sorted using block-sorting strategies.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If top-down sorting methods are used with dynamic splitting points, then sorting adaptability to different key distributions is improved, but implementation complexity on parallel architectures increases

Engineering Contradiction:
Improvesorting adaptabilityVSAvoidimplementation complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by pre-computing splitter values from sampled keys before the main sorting operation. This allows the sorting algorithm to adapt to different key distributions without requiring complex dynamic adjustments during parallel execution, thus resolving the contradiction between adaptability and implementation complexity

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses sampled keys as an intermediary to determine splitting points. Instead of directly computing complex dynamic splitters during parallel sorting, the algorithm samples keys, sorts them, and uses these samples as mediators to establish splitting points, simplifying the implementation while maintaining adaptability

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If bin sizes are reduced below block-sorting threshold, then parallel processing load balance is improved, but processor efficiency deteriorates

Engineering Contradiction:
Improveparallel processing efficiencyVSAvoidprocessor efficiency
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent applies merging by combining multiple small bins into larger bins that meet the block-sorting threshold. This allows the system to maintain good load balance across parallel processors while ensuring each bin is large enough to efficiently utilize processor resources, thus resolving the contradiction between parallel efficiency and processor utilization

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent implements dynamic bin size adjustment by coalescing bins based on the block-sorting threshold. Bins are dynamically merged or kept separate depending on their size relative to the threshold, allowing the system to adapt bin sizes to optimize both load balance and processor efficiency

Inventive Principle:
Principle #15Dynamics

3Manufacturing precision

If splitting factor is dynamically adjusted, then bin size optimization is improved, but cooperation complexity between parallel elements increases

Engineering Contradiction:
Improvebin size precisionVSAvoidcooperation complexity
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by determining the splitting factor based on pre-computed sampled keys before distribution to parallel elements. This allows each parallel element to use a predetermined splitting factor without requiring complex cooperation or dynamic adjustment during execution, thus resolving the contradiction between bin size precision and cooperation complexity

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9619204B2Method and system for bin coalescing for parallel divide-and-conquer sorting algorithms
Publication Date: 2017.04.11 NVIDIA CORP
  • US9619204B2 patent drawing
  • US9619204B2 patent drawing
  • US9619204B2 patent drawing

AI summary

A system and method for performing sorting. The method includes partitioning a plurality of keys needing sorting into a first plurality of bins, wherein the bins are sequentially sorted. The plurality of keys is capable of being sorted into a sequence of keys using a corresponding ordering system. The method includes coalescing a first pair of consecutive bins, such that when coalesced the first pair of bins falls below a threshold. The method also includes ordering keys in the first coalesced pair to generate a first sub-sequence of keys in the sequence of keys.