GPU Automatic Differentiation for Multi-Physics Simulation Sensitivity

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing automatic differentiation techniques for multi-physics simulations are cumbersome and inefficient, particularly when dealing with complex simulations, as they require substantial I/O activity and do not adapt well to execution on graphics processing units (GPUs).

Innovation Solution

An automatic differentiation technique that processes multi-physics simulation software entirely on GPUs, using a factory framework to produce automatically differentiated code mapped for efficient execution on GPU pipeline architectures, reducing I/O activity and enhancing performance by computing derivatives directly on GPUs.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Power

If source transformation is used to parse and differentiate simulation code to generate optimized C++ code for GPUs, then execution performance on specialized hardware is improved, but device complexity and ease of manufacture deteriorate due to cumbersome compilation and maintenance requirements

Engineering Contradiction:
Improveexecution performanceVSAvoidcode generation complexity
Core Design Contradiction:
PowerVSDevice complexity

Solution Approach 1:

The patent creates a differentiated copy of the simulation code that automatically tracks computational graphs and generates execution plans. This copy mechanism allows the system to preserve the original code while generating optimized versions with automatic differentiation, avoiding manual code generation complexity.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent replaces manual code parsing and differentiation mechanisms with an automatic differentiation system that uses computational graphs and chain rule algorithms. This substitution eliminates the need for complex manual code generation while maintaining optimized execution performance on GPUs.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Measurement precision

If tape-based sequential logging is used to record calculations for reverse mode AD, then measurement precision is improved, but productivity deteriorates due to substantial I/O activity and poor adaptability to GPU execution

Engineering Contradiction:
Improvederivative computation accuracyVSAvoidcomputation efficiency
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent replaces sequential tape-based logging with in-memory computational graphs that directly represent the simulation code's execution structure. This substitution eliminates substantial I/O activity while maintaining the ability to compute derivatives with high precision through reverse mode AD on GPU.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The patent transitions from sequential one-dimensional tape logging to a multi-dimensional computational graph structure that captures parallel execution dependencies. This dimensional change enables efficient GPU execution by representing computations in a format that leverages parallel processing capabilities.

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

3Measurement precision

If automatic differentiation is applied to complex multi-physics simulations, then measurement precision is improved for sensitivity analysis, but device complexity worsens due to the need to differentiate arbitrarily complex code

Engineering Contradiction:
Improvesensitivity analysis accuracyVSAvoidcode differentiation complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent creates a differentiated copy of the simulation code that automatically tracks computational graphs. This copying mechanism allows the system to handle arbitrarily complex multi-physics simulations by preserving the original code structure while adding automatic differentiation capabilities without manual intervention.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent implements a universal automatic differentiation framework that can handle any simulation code regardless of complexity. This framework uses computational graphs and chain rule algorithms that work uniformly across different physics domains, eliminating the need for domain-specific differentiation approaches.

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

Data Source

PatentUS20230409663A1Approach for sensitivity analysis of arbitrary multi-physics simulations using automatic differentiation
Publication Date: 2023.12.21 LUMINARY CLOUD INC
  • US20230409663A1 patent drawing
  • US20230409663A1 patent drawing
  • US20230409663A1 patent drawing

AI summary

An automatic differentiation (AD) technique and implementation processes multi-physics solver code entirely on graphics processing units (GPUs) to automatically differentiate one or more outputs of the code with respect to one or more inputs. The technique provides a “factory” framework that ingests arbitrarily complex solver code to produce a version of the code that is automatically differentiated (AD code) and mapped to the GPUs. The technique provides a derivative of the solver code output with respect to the inputs that enables analysis of the output of the computed solver code with initially provided inputs coherent with sensitivity analysis of that output as the inputs are changed. The adjoint information derived from solver code execution (AD code) computed by the AD technique may also be used to estimate one or more estimates of the numerical error in a solution to the physical simulation.