Distributed Runtime Architecture for Neural Computation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current computer hardware architectures, including central processors and graphic processors, are inadequate for performing highly parallel computations required by massive data-driven algorithms based on dynamic systems, especially those involving neural computations.

Innovation Solution

A network of processing nodes, either individual heterogeneous workstations or clusters of homogeneous computer boards, is used to create a runtime architecture that loads and distributes systems of differential equations across nodes based on hardware capabilities, enabling iterative integration and parallel processing of sensory data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If current central processor or graphic processor architectures are used, then device complexity is reduced, but computational capability for highly parallel massive data-driven algorithms is insufficient

Engineering Contradiction:
Improvecomputational capabilityVSAvoiddevice complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system segments the computational workload by distributing systems of differential equations across multiple slave nodes in a networked architecture. Each slave node processes a specific portion of the computational task independently, enabling massive data-driven algorithms to be executed in parallel across the network, thereby achieving high computational capability while maintaining manageable device complexity through modular distribution.

Inventive Principle:
Principle #1Segmentation

2Productivity

If a network of processing nodes is used to enable highly parallel processing, then computational capability is improved, but device complexity increases

Engineering Contradiction:
Improveparallel processing capabilityVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The master node and slave nodes are designed with universal functionality to handle multiple aspects of the computational process. The master node can distribute different systems of differential equations to various slave nodes, and each slave node can process different portions of the data. This multi-functional design allows the network to achieve high parallel processing capability while managing system complexity through standardized, reusable components.

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

3Productivity

If systems of differential equations are distributed across network nodes based on hardware capabilities, then processing efficiency is improved, but coordination complexity increases

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidcoordination complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system assigns specific systems of differential equations to slave nodes based on their local hardware capabilities and characteristics. Each slave node processes the equations assigned to it using its own computational resources, optimizing processing efficiency by matching task requirements with local capabilities. The master node coordinates this distribution by evaluating hardware capabilities and making intelligent assignment decisions, managing coordination complexity through localized optimization rather than centralized control of all operations.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS11070623B2Methods and apparatus for iterative nonspecific distributed runtime architecture and its application to cloud intelligence
Publication Date: 2021.07.20 NEURALA INC
  • US11070623B2 patent drawing
  • US11070623B2 patent drawing
  • US11070623B2 patent drawing

AI summary

The system and methods disclosed herein include a runtime architecture that takes a nonspecific set of systems of differential equations, distributes them across the network, and iteratively integrates them through time with a possibility to output the results on every iteration. Embodiments of the disclosed system may be used for neural computation or any other suitable application. Embodiments can be used as a standalone engine or as part of another computational system for massively parallel numerical integration of a data-driven dynamical system.