Concurrent Data Communication Protocol with Automatic Attribute Detection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current technical computing environments, such as MATLAB, face challenges in efficiently communicating arbitrary data between multiple computing units in a concurrent computing setting, as they require users to specify data attributes like size and type, which is cumbersome due to memory allocation complexities and lack of control in languages like MATLAB.
Innovation Solution
A communication protocol that automatically identifies data attributes, allowing for the transmission of arbitrary data without user specification, using a header message to convey attribute information and enabling error detection, user interrupt detection, and deadlock handling while maintaining communication speed.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If users specify data attributes (size and type) for communication between computing units, then memory allocation can be controlled, but the operation becomes cumbersome and complex
Solution Approach 1:
The communication protocol automatically identifies data attributes and manages memory allocation without requiring user intervention. The system performs self-service by detecting data types and sizes, allocating appropriate memory buffers, and handling communication details autonomously, thereby simplifying user operation while managing complexity internally
Solution Approach 2:
A communication protocol acts as an intermediary layer between the user and the memory allocation mechanism. This mediator automatically handles attribute specification and memory management, shielding users from complexity while enabling efficient data communication between computing units
2Ease of operation
If a communication protocol automatically identifies data attributes, then user specification is eliminated, but the protocol complexity increases
Solution Approach 1:
The communication protocol performs self-service by automatically detecting data attributes such as type and size without user input. This automation eliminates the need for manual specification while the protocol internally manages the increased complexity of attribute identification and memory allocation
Solution Approach 2:
The protocol dynamically changes parameters such as buffer size and data type based on automatic detection of incoming data characteristics. This allows the system to adapt to different data requirements without user specification, simplifying operation while managing complexity through automated parameter adjustment
3Productivity
If header messages are sent to convey data attributes, then receiving processes can allocate memory efficiently, but communication overhead increases
Solution Approach 1:
The sending process performs preliminary action by including data attribute information in header messages before the actual data transmission. This allows receiving processes to pre-allocate appropriate memory buffers in advance, improving memory allocation efficiency while the overhead is minimized through compact header structures
Data Source
AI summary
A communication protocol is provided for processes to send and receive arbitrary data in a concurrent computing environment. The communication protocol enables a process to send or receive arbitrary data without a user or programmer specifying the attributes of the arbitrary data. The communication protocol automatically determines the attributes of the arbitrary data, for example, the type and/or size of the data and sends information on the attributes of the data to a process to which the data is to be sent. Based on the information on the attributes of the data, the receiving process can allocate appropriate memory space for the data to be received.


