Graph-Based Computing with Topology-Matched Messaging Channels

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data storage and computation infrastructures fail to optimize network resources and alleviate communication bottlenecks, limiting the utilization of available computation resources.

Innovation Solution

A method utilizing a messaging platform and computing units to execute graph-based programs that identify bipartite graphs and update function sets, instantiating channels matching the graph topology to facilitate data flow between units, allowing efficient communication and computation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of energy

If traditional data storage and computation infrastructures are used, then memory optimization is achieved, but network resource optimization and communication bottleneck alleviation fail

Engineering Contradiction:
Improvememory optimizationVSAvoidnetwork resource utilization
Core Design Contradiction:
Loss of energyVSProductivity

Solution Approach 1:

The system segments the computation infrastructure into distributed computing units organized according to graph topology, where each computing unit processes specific graph operations independently. This segmentation enables parallel processing across multiple units while maintaining optimized memory access patterns within each unit, thereby resolving the contradiction between memory optimization and network resource utilization.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A messaging platform acts as an intermediary layer between computing units, managing communication and data flow according to graph topology. This intermediary optimizes network resource utilization by routing communications efficiently along graph edges while allowing each computing unit to maintain its own optimized memory structure, thus resolving the contradiction between memory optimization and network utilization.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Speed

If computing units are organized in traditional infrastructures, then memory access is optimized, but communication bottlenecks increase

Engineering Contradiction:
Improvememory access speedVSAvoidcommunication bottleneck time
Core Design Contradiction:
SpeedVSLoss of time

Solution Approach 1:

The system transitions from traditional hierarchical memory-access-optimized organization to a graph-topology-based spatial organization of computing units. By mapping computing units and their communications onto graph nodes and edges, the system optimizes communication paths in the network dimension while maintaining memory access optimization within each computing unit, thereby resolving the contradiction between memory access speed and communication time.

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

3Productivity

If graph-based programming is implemented with topology-matching channels, then communication efficiency improves, but system complexity increases

Engineering Contradiction:
Improvecommunication efficiencyVSAvoidsystem configuration complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The messaging platform provides universal communication services that automatically handle topology-matched channel configuration. Rather than requiring manual configuration of complex graph-based communication paths, the platform offers a unified interface that manages all computing units and channels, thereby achieving communication efficiency through topology-matching while minimizing the perceived complexity for users.

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

Data Source

PatentUS11055157B2Method and apparatus for graph-based computing
Publication Date: 2021.07.06 MASSACHUSETTS INST OF TECH
  • US11055157B2 patent drawing
  • US11055157B2 patent drawing
  • US11055157B2 patent drawing

AI summary

A method is disclosed including: receiving a graph-based program that identifies a bipartite graph and one or more update function sets, the bipartite graph including a plurality of graph nodes and a plurality of edges, such that each graph node corresponds to one of the update function sets; associating each of a plurality of computing units with a different respective one of the graph nodes; instantiating, by a Publisher Subscriber platform, a plurality of channels, the plurality of channels defining a topology that matches a topology of the bipartite graph; and executing the graph-based program based on the plurality of channels to produce a result.