Graphical Program External Memory Buffer Access via EDVR
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional programming techniques require a separate copy of data from an external memory buffer, leading to performance degradation when accessing large or frequently updated data sets, especially in applications where a graphical program needs to interact with data produced by an external producer program.
Innovation Solution
The system enables a graphical program to natively access an external memory buffer through an External Data Value Reference (EDVR), allowing direct read and write operations without the need for a separate copy, by creating a data structure that references the external memory buffer and managing its access within the graphical program execution environment.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If conventional programming techniques are used to access external memory buffer, then data can be accessed, but performance degrades due to requiring separate copy of data
Solution Approach 1:
The patent introduces an External Data Value Reference (EDVR) as an intermediary mechanism that allows the graphical program to reference and access external memory buffers directly without requiring data copying. The EDVR acts as a mediator between the graphical program and external memory, enabling direct access while maintaining memory management responsibilities with the graphical program execution environment.
2Speed
If graphical program executes concurrently with producer program, then data can be accessed in real-time, but memory access complexity increases
Solution Approach 1:
The patent implements self-service through automatic memory management where the graphical program execution environment automatically handles memory allocation, reference creation, and data access for external memory buffers. The system automatically creates EDVRs when graphical programs need to access external memory, eliminating the need for manual memory management complexity while enabling concurrent execution with producer programs.
Data Source
AI summary
A system and method for enabling a graphical program to natively access an external memory buffer are disclosed. The graphical program may execute within a graphical program execution environment, and the external memory buffer may be allocated by another program that executes externally from the graphical program and the graphical program execution environment. The graphical program may be executed concurrently with a producer program that stores data in the memory buffer, and/or with a consumer program that reads and uses the data from the memory buffer. The memory buffer may be located within a region of memory allocated by the producer program, by the consumer program, or by another program that executes externally from the graphical program and the graphical program execution environment, such as a memory manager program.


