Efficient splitting and mixing of streaming-data frames for processing through multiple processing modules
First Claim
1. A method for processing frames of streaming data through modules in a digital computer, comprising:
- constructing a pipe as a connected group of multiple ones of the modules, at least one of the modules being a restructuring module that alters the frame structure of the data;
allocating composite frames having predefined subframes;
transporting the streaming data through different ones of the modules in the group in different ones of the subframes;
restructuring the data among at least some of the subframes in the restructuring module, wherein the restructuring includes altering the frame structure of the data; and
assigning an allocator for the composite frames to one of a farthest upstream restructuring module in the pipe or a farthest downstream restructuring module in the pipe.
2 Assignments
0 Petitions
Accused Products
Abstract
Streaming data is processed through one or more pipes of connected modules including mixers and/or splitters. The data is carried in composite physically allocated frames having virtual subframes associated with different ones of the splitters, mixers, and other transform modules. Nesting trees and pipe control tables represent the structure of the pipes. A frame allocator is assigned to a particular module in a pipe. Rather than issuing a control transaction to all modules when any one of them completes an operation upon its source data, a control manager requests a module to begin its operation only when all of its input subframes have become available. Frame control tables record when any module has completed an operation, and a pipe control table lists which modules provide data to which other modules.
-
Citations
20 Claims
-
1. A method for processing frames of streaming data through modules in a digital computer, comprising:
-
constructing a pipe as a connected group of multiple ones of the modules, at least one of the modules being a restructuring module that alters the frame structure of the data; allocating composite frames having predefined subframes; transporting the streaming data through different ones of the modules in the group in different ones of the subframes; restructuring the data among at least some of the subframes in the restructuring module, wherein the restructuring includes altering the frame structure of the data; and assigning an allocator for the composite frames to one of a farthest upstream restructuring module in the pipe or a farthest downstream restructuring module in the pipe. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A computer system for processing streaming data, comprising:
-
a plurality of filters for processing the streaming data, at least some of which are restructuring filters, wherein the restructuring includes altering the frame structure of the data; a plurality of memory managers for allocating composite frames containing subframes for containing streaming data; and a processor for executing a plurality of modules, the modules comprising; a flow manager for constructing a graph having a pipe, the pipe including a plurality of the restructuring filters that alter the frame structure of the data, and for assigning one of the memory managers to a restructuring filter included in the pipe. - View Dependent Claims (8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A computer memory device bearing instructions and data for causing a digital computer to execute a method for processing frames of streaming data through multiple modules disposed in a pipe including at least one restructuring module in a digital computer, the method comprising:
-
allocating a composite frame having multiple subframes; performing operations upon the subframes in a plurality of modules sourcing data to the restructuring module; for each of said plurality of modules, after completion of the operations upon the subframe for said module, checking whether all of the plurality of modules have completed their respective operations upon their respective subframes, and when all of said plurality of modules have completed their respective operations, issuing a control transaction to the restructuring module; and performing operations upon the subframes sourced to the restructuring module in response to the control transaction. - View Dependent Claims (20)
-
Specification