Bi-directional Communication in Parallel Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional parallel processing systems suffer from limited communication capabilities, allowing only uni-directional communication between controllers and parallel processors, restricting the ability of processors to request additional resources or information, which hampers efficient processing due to assumptions about configuration that may not align with actual conditions.

Innovation Solution

Implementing bi-directional communication between controllers and units of execution, enabling processors to request resources, information, and perform operations, such as requesting additional memory or specialized hardware, thereby allowing dynamic resource allocation and configuration adjustments.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If conventional parallel processing systems use uni-directional communication between controllers and parallel processors, then the system structure is simple and easy to implement, but the communication capability is limited and processors cannot request additional resources or information

Engineering Contradiction:
Improvecommunication capabilityVSAvoidsystem structure
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements a feedback mechanism where parallel processors can send queries and receive answers from controllers, enabling bi-directional communication. This allows processors to request additional resources, information, or operations during parallel processing, transforming the traditional one-way instruction flow into an interactive communication system that adapts to actual processing needs.

Inventive Principle:
Principle #23Feedback

2Adaptability or versatility

If parallel processors are allowed to send only results and errors to controllers, then the message exchange is simple and fast, but complex communications such as resource requests cannot be performed

Engineering Contradiction:
Improvemessage type varietyVSAvoidprocessing efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent introduces dynamic message exchange capabilities where the type and content of messages between controllers and parallel processors are not fixed but can adapt based on processing requirements. Processors can dynamically generate queries for additional resources, information requests, or operational commands, and controllers can respond with appropriate answers, making the communication system flexible and responsive to changing processing needs.

Inventive Principle:
Principle #15Dynamics

3Productivity

If controllers assume a specific configuration on parallel processors, then the control logic is simplified, but processing efficiency decreases when configuration mismatches occur

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidconfiguration verification
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent enables parallel processors to send queries to controllers to verify assumptions about system configuration, such as operating system type or available resources. This feedback mechanism allows processors to detect configuration mismatches and request appropriate adjustments or information, ensuring that processing continues efficiently even when initial assumptions about the environment are incorrect.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS7975001B1Bi-directional communication in a parallel processing environment
Publication Date: 2011.07.05 MATHWORKS INC
  • US7975001B1 patent drawing
  • US7975001B1 patent drawing
  • US7975001B1 patent drawing

AI summary

A computer-readable medium including executable instructions for performing parallel processing on behalf of a client operating a technical computing environment is provided. The medium may include instructions for receiving a request from the client. The medium may include instructions for commencing parallel processing on behalf of the client based on the received request and instructions for sending a query to the client, the query related to the parallel processing. The medium may include instructions for receiving an answer from the client, the answer received when the client has processed the query. The medium may include instructions for generating a result based on the parallel processing, the result used by the client or by another device to perform an operation.