IP Library Granted Patent US 11,765,039
Granted Patent B2
US 11,765,039 · App. 17/351,793 · Granted Sep 19, 2023

System and method for optimizing deployment of a processing function in a media production workflow

Inventors: Charles S. Meyer (Montreal, CA); James Westland Cain (Montreal, CA)
Assignee: GRASS VALLEY CANADA
H04L41/12G06F8/60G06F9/4843G06F16/252H04L47/827H04L67/10
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,765,039
App. No.
17/351,793
Granted
Sep 19, 2023
Kind
B2
Abstract

A system is provided for optimizing deployment of a processing function in a media production workflow. The system includes a media production workflow generator that builds the media production workflow that includes the processing function and determines deployment criteria that includes an input dataset for the processing function and an atomic compute function for executing the processing function. Moreover, a deployment topology generator generates a topologies of the resources available in a cloud computing network and based on the determined deployment criteria, with the generated topologies indicating different configurations of resources for executing the processing function and a processor for executing the atomic compute function of the processing function. Furthermore, a deployment optimizer selects an optimal topology to deploy the processing function within the cloud computing network, with the optimal topology selected to include the processor for optimizing accessibility of electronic memory to execute the atomic compute function.

Claims (41)

1. A system for optimizing deployment of a processing function in a media production workflow, the system comprising:

a media processing resource database comprising metadata associated with a plurality of resources available in a cloud computing network that includes both physical resources and software resources, with the resources comprising a plurality of processors and electronic memory accessible by the plurality of processors;

a media production workflow generator configured to build the media production workflow that includes the processing function and to determine deployment criteria for the processing function that includes an input dataset for the processing function and at least one atomic compute function for executing the processing function within the generated media production workflow;

a deployment topology generator configured to generate a plurality of topologies of the plurality of resources available in the cloud computing network and based on the determined deployment criteria, with the generated plurality of topologies indicating different configurations of the physical and software resources for executing the processing function and at least one of the plurality of processors configured for executing the atomic compute function of the processing function; and

a deployment optimizer configured to select an optimal topology of the plurality of topologies to deploy the processing function within the cloud computing network, with the optimal topology being selected to include the at least one processor for optimizing accessibility of the electronic memory to execute the atomic compute function, and the accessibility optimized based on at least one of a network type, network bandwidth, network latency, processor type, and processor location within the cloud computing network;

wherein the plurality of processors includes at least one of a computer processing unit (CPU), a graphics processing unit (GPU), and a field programmable gate array (FPGA);

wherein the deployment topology generator is configured to generate the plurality of topologies such that the processing function is executed at or below a maximum required time threshold, and

wherein the deployment optimizer is further configured to dynamically select a different topology of the plurality of topologies to deploy the processing function within the cloud computing network in response to a change of at least one of a format and a type of the input dataset.

2. The system according to claim 1 , wherein the deployment optimizer is further configured to decompose the processing function into a plurality of atomic functions that are allocated to respective resources of the plurality of resources available in the cloud computing network.

3. The system according to claim 1 , wherein the deployment optimizer is further configured to select the optimal topology of the plurality of topologies based on availabilities and capabilities of the plurality of resources in the cloud computing network.

4. The system according to claim 3 , wherein the deployment topology generator is configured to query the media processing resource database to identify the plurality of resources available in the cloud computing network and the respective capabilities of the plurality of resources.

5. The system according to claim 4 , wherein each resource of the plurality of resources available in the cloud computing network comprises a unique resource ID that includes metadata indicating the capabilities of the respective resource, such that the deployment topology generator is configured to generate the plurality of topologies of the plurality of resources available in the cloud computing network based on the unique resource ID for each resource.

6. The system according to claim 1 , wherein the input dataset comprises video content provided by at least one content generating device for production of a media production by the media production workflow and the processing function comprises at least one of image scaling, encoding and decoding of the video content.

7. A system for optimizing deployment of a processing function in a media production workflow, the system comprising:

a media processing resource database comprising metadata associated with a plurality of resources available in a cloud computing network that includes both physical resources and software resources, with the resources comprising a plurality of processors and electronic memory accessible by the plurality of processors;

a media production workflow generator configured to build the media production workflow that includes the processing function and to determine deployment criteria for the processing function that includes an input dataset for the processing function and at least one atomic compute function for executing the processing function within the generated media production workflow;

a deployment topology generator configured to generate a plurality of topologies of the plurality of resources available in the cloud computing network and based on the determined deployment criteria, with the generated plurality of topologies indicating different configurations of the physical and software resources for executing the processing function and at least one of the plurality of processors configured for executing the atomic compute function of the processing function; and

a deployment optimizer configured to select an optimal topology of the plurality of topologies to deploy the processing function within the cloud computing network, with the optimal topology being selected to include the at least one processor for optimizing accessibility of the electronic memory to execute the atomic compute function,

wherein the deployment optimizer is further configured to dynamically select a different topology of the plurality of topologies to deploy the processing function within the cloud computing network in response to a change of at least one of a format and a type of the input dataset.

8. The system according to claim 7 , wherein the deployment optimizer is further configured to select the optimal topology to optimize the accessibility of the electronic memory to execute the atomic compute function based on at least one of a network type, network bandwidth, network latency, processor type, and processor location within the cloud computing network.

9. The system according to claim 7 , wherein the plurality of processors includes at least one of a computer processing unit (CPU), a graphics processing unit (GPU), an a field programmable gate array (FPGA).

10. The system according to claim 7 , wherein the deployment topology generator is configured to generate the plurality of topologies such that the processing function is executed at or below a maximum required time threshold.

11. The system according to claim 7 , wherein the deployment optimizer is further configured to decompose the processing function into a plurality of atomic functions that are allocated to respective resources of the plurality of resources available in the cloud computing network.

12. The system according to claim 7 , wherein the deployment optimizer is further configured to select the optimal topology of the plurality of topologies based on availabilities and capabilities of the plurality of resources in the cloud computing network.

13. The system according to claim 12 ,

wherein the deployment topology generator is configured to query the media processing resource database to identify the plurality of resources available in the cloud computing network and the respective capabilities of the plurality of resources, and

wherein each resource of the plurality of resources available in the cloud computing network comprises a unique resource ID that includes metadata indicating the capabilities of the respective resource, such that the deployment topology generator is configured to generate the plurality of topologies of the plurality of resources available in the cloud computing network based on the unique resource ID for each resource.

14. The system according to claim 7 , wherein the input dataset comprises video content provided by at least one content generating device for production a media production by the media production workflow and the processing function comprises at least one of image scaling, encoding and decoding of the video content.

15. A system for optimizing deployment of a processing function in a media production workflow, the system comprising:

a media production workflow generator configured to build the media production workflow that includes the processing function and to determine deployment criteria for the processing function that includes an input dataset for the processing function and at least one atomic compute function for executing the processing function within the generated media production workflow;

a deployment topology generator configured to generate a plurality of topologies of a plurality of resources available in a cloud computing network and based on the determined deployment criteria, with the generated plurality of topologies indicating different configurations of physical and software resources for executing the processing function and at least one of a plurality of processors configured for executing the atomic compute function of the processing function; and

a deployment optimizer configured to select an optimal topology of the plurality of topologies to deploy the processing function within the cloud computing network, with the optimal topology being selected to include the at least one processor for optimizing accessibility of electronic memory to execute the atomic compute function,

wherein the deployment optimizer is further configured to dynamically select a different topology of the plurality of topologies to deploy the processing function within the cloud computing network in response to a change of at least one of a format and a type of the input dataset.

16. The system according to claim 15 , wherein the deployment optimizer is further configured to select the optimal topology to optimize the accessibility of the electronic memory to execute the atomic compute function based on at least one of a network type, network bandwidth, network latency, processor type, and processor location within the cloud computing network.

17. The system according to claim 16 , wherein the deployment topology generator is configured to generate the plurality of topologies such that the processing function is executed at or below a maximum required time threshold.

18. The system according to claim 15 , wherein the deployment optimizer is further configured to decompose the processing function into a plurality of atomic functions that are allocated to respective resources of the plurality of resources available in the cloud computing network.

19. The system according to claim 15 , wherein the deployment optimizer is further configured to select the optimal topology of the plurality of topologies based on availabilities and capabilities of the plurality of resources in the cloud computing network.

20. The system according to claim 19 ,

wherein the deployment topology generator is configured to query a media processing resource database to identify the plurality of resources available in the cloud computing network and the respective capabilities of the plurality of resources, and

wherein each resource of the plurality of resources available in the cloud computing network comprises a unique resource ID that includes metadata indicating the capabilities of the respective resource, such that the deployment topology generator is configured to generate the plurality of topologies of the plurality of resources available in the cloud computing network based on the unique resource ID for each resource.

21. The system according to claim 15 , wherein the input dataset comprises video content provided by at least one content generating device for production a media production by the media production workflow and the processing function comprises at least one of image scaling, encoding and decoding of the video content.

Assignments (3)
ASSIGNMENT OF INTELLECTUAL PROPERTY SECURITY AGREEMENTS Recorded Dec 12, 2025
From: MS PRIVATE CREDIT ADMINISTRATIVE SERVICES LLC
To: MGG INVESTMENT GROUP LP
Reel/Frame 073959/0584 →
SECURITY INTEREST Recorded Mar 20, 2024
From: GRASS VALLEY CANADA; GRASS VALLEY LIMITED
To: MS PRIVATE CREDIT ADMINISTRATIVE SERVICES LLC
Reel/Frame 066850/0869 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 28, 2023
From: MEYER, CHARLES S.; CAIN, JAMES WESTLAND
To: GRASS VALLEY CANADA
Reel/Frame 064419/0985 →