Parallel Multicolor ILU Preconditioner for Sparse Linear Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional methods for computing LU factors in sparse linear systems are inherently sequential, making them inefficient for parallel hardware architectures like GPUs, and existing ILU preconditioners often require excessive computational complexity and memory to achieve adequate convergence.

Innovation Solution

A parallel multicolor ILU preconditioner processor and method that applies distance coloring to identify parallelisms, computes a sparsity pattern, and calculates ILU preconditioning matrix values using parallel processing, thereby optimizing the computation and storage of ILU factors.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional sequential methods are used to compute LU factors, then computational accuracy is maintained, but computational efficiency and parallel processing capability deteriorate

Engineering Contradiction:
Improvecomputational efficiencyVSAvoidparallel processing complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the computation of ILU factors by applying graph coloring to partition the dependency graph of matrix operations into independent color classes. Each color class represents a set of operations that can be executed in parallel without dependency conflicts, transforming the sequential LU factorization into multiple parallel stages that can be efficiently implemented on GPU architectures.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a temporal dimension to the parallel processing by organizing computations into multiple time steps corresponding to different color classes. Operations within each time step execute simultaneously, while time steps are ordered to respect data dependencies, effectively adding a time dimension to the computational architecture to enable parallelism.

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

2Quantity of substance

If incomplete factorization methods are used as preconditioners, then memory requirements are reduced, but convergence rate deteriorates

Engineering Contradiction:
Improvememory requirementsVSAvoidconvergence rate
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The patent applies local quality by computing ILU factors with selective fill-in based on the distance coloring graph. Instead of uniformly applying incomplete factorization across the entire matrix, the method selectively retains certain non-zero elements in the L and U factors based on their positions in the dependency graph, allowing better convergence in critical regions while maintaining memory efficiency elsewhere.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent creates a composite preconditioning approach by combining incomplete factorization with graph coloring-based parallel computation. The ILU preconditioner is constructed as a composite of the original matrix structure and the coloring-derived sparsity pattern, achieving a balance between memory efficiency and convergence performance through the synergistic combination of these two techniques.

Inventive Principle:
Principle #40Composite materials

3Speed

If parallel processing pipelines are implemented, then computational speed is improved, but device complexity and implementation difficulty increase

Engineering Contradiction:
Improvecomputational speedVSAvoidprocessor architecture complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent designs a universal parallel processing framework where the same graph coloring and ILU computation pipeline can handle different matrix sizes and sparsity patterns. The processor architecture uses configurable parallel computing pipelines that can be adapted to various problem dimensions, making the complex hardware design reusable and versatile across different applications rather than application-specific.

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

Solution Approach 2:

The patent performs preliminary graph coloring and sparsity pattern analysis before the actual ILU factorization computation. This preliminary action prepares the computational roadmap by identifying all parallelism opportunities and data dependencies in advance, allowing the parallel processing pipelines to execute efficiently without runtime decision-making complexity, thus reducing implementation difficulty.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9600446B2Parallel multicolor incomplete LU factorization preconditioning processor and method of use thereof
Publication Date: 2017.03.21 NVIDIA CORP
  • US9600446B2 patent drawing
  • US9600446B2 patent drawing
  • US9600446B2 patent drawing

AI summary

A preconditioner processor and a method of computing a preconditioning matrix. In one embodiment, the preconditioner processor has parallel computing pipelines including: (1) a graph coloring circuit operable to identify parallelisms in a sparse linear system, (2) an incomplete lower triangle, upper triangle factorization (ILU) computer configured to employ the parallel computing pipelines according to the parallelisms to: (2a) determine a sparsity pattern for an ILU preconditioning matrix, and (2b) compute non-zero elements of the ILU preconditioning matrix according to the sparsity pattern, and (3) a memory communicably couplable to the parallel computing pipelines and configured to store the ILU preconditioning matrix.