SIMD Processor Acceleration for Ordinary Differential Equation Solvers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional CPU architectures fail to fully exploit sparsity patterns and structures that allow for parallelism in Runge-Kutta methods for solving ordinary differential equations, limiting the efficiency and accuracy of ODE solvers.

Innovation Solution

The use of a SIMD processor architecture with a compiler that transforms user-provided functions into SIMD-compatible operations, allowing for parallel processing of multiple stages of ordinary differential equations using a pre-derived tableau of coefficients with a sparsity matrix, enabling simultaneous calculation of stages without reliance on previous stages.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If conventional CPU architectures are used to solve ODEs with Runge-Kutta methods, then the solver can be implemented with standard processing, but the sparsity patterns and parallelism structures are not fully exploited, limiting efficiency and accuracy

Engineering Contradiction:
Improvesolving speedVSAvoidprocessor architecture complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent changes the fundamental processing parameter from sequential scalar operations to parallel vector operations by adopting SIMD architecture. This allows multiple stages of the Runge-Kutta method to be computed simultaneously, directly resolving the contradiction by transforming the computational paradigm to match the sparsity patterns inherent in the mathematical method.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent transitions from single-data processing to multiple-data parallel processing by utilizing the vector registers of SIMD processors. This dimensional shift from processing one data point at a time to processing multiple data points simultaneously enables full exploitation of the sparsity patterns in Runge-Kutta methods, achieving both high productivity and maintaining manageable complexity through hardware-level parallelism.

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

2Measurement precision

If more parallel calculations are performed simultaneously, then the accuracy and speed of ODE solutions improve, but the requirement for processor register size and computational resources increases

Engineering Contradiction:
Improvesolution accuracyVSAvoidprocessor register capacity
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent performs preliminary organization of the Runge-Kutta tableau to identify and exploit sparsity patterns before execution. By pre-processing the coefficient matrix to reveal parallel computation opportunities, the system can load appropriate subsets of data into registers, achieving high accuracy without requiring maximum register capacity for all possible simultaneous operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent segments the computational workload into independent stages that can be executed in parallel, matching the segmented structure of SIMD register operations. This segmentation allows the system to achieve high solution accuracy by processing multiple stages simultaneously while using only the necessary register capacity for each segment, rather than requiring all resources at once.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS20240354366A1Systems and methods for solving ordinary differential equations using a single-input multiple data (SIMD) processor
Publication Date: 2024.10.24 JULIAHUB INC
  • US20240354366A1 patent drawing
  • US20240354366A1 patent drawing
  • US20240354366A1 patent drawing

AI summary

Disclosed herein are systems and methods that take advantage of SIMD processor architecture to efficiently simulate continuous systems whose laws are defined by ordinary differential equations. Solving of ordinary differential equations is accelerated by optimizing properties of a tableau of numbers and using them for simultaneous or parallel processing by a single-input multiple data (SIMD) processor. Numerous calculations, such as Runge-Kutta calculations, are loaded and executed in parallel in a large register of a SIMD processor. These parallel calculations have a sparsity pattern that allows for parallel calculation. The multiple parallel calculations provide faster and more accurate solving of ordinary differential equations.