Resource allocation optimization for cloud-based video processing
원문보기
IPC분류정보
국가/구분
United States(US) Patent
등록
국제특허분류(IPC7판)
H04N-007/173
H04N-021/2385
H04N-021/24
H04N-021/218
H04N-021/231
H04N-021/643
H04N-021/2743
출원번호
US-0708128
(2015-05-08)
등록번호
US-9407944
(2016-08-02)
발명자
/ 주소
Galdy, Alessio
Juteau, Eric
Davis, Jeffrey Alan
VanAntwerp, Mark Daniel
출원인 / 주소
iStreamPlanet Co.
대리인 / 주소
Nicholson De Vos Webster & Elliott, LLP
인용정보
피인용 횟수 :
8인용 특허 :
24
초록▼
A method executed by an electronic device to optimize resource utilization while processing media workflows by a video streaming platform is disclosed. In one embodiment, a request to initiate a set of training sessions is received, and for each training session, a set of training workflows to be pr
A method executed by an electronic device to optimize resource utilization while processing media workflows by a video streaming platform is disclosed. In one embodiment, a request to initiate a set of training sessions is received, and for each training session, a set of training workflows to be processed is initiated and a task graph for each training workflow is created. Then a worker of the video streaming platform is assigned to each training session. The raw performance data from each assigned worker is then collected, and a platform performance profile is generated based on the raw performance data from the each assigned worker. The platform performance profile is used to predict resource requirements of media workflows to be processed by the video streaming platform. A system to perform the method and a storage medium storing instructions to perform the method are disclosed too.
대표청구항▼
1. A method executed by an electronic device implementing a video streaming platform, the method to optimize resource utilization while processing media workflows by the video streaming platform, the method comprising: receiving a request to initiate a set of training sessions, the request including
1. A method executed by an electronic device implementing a video streaming platform, the method to optimize resource utilization while processing media workflows by the video streaming platform, the method comprising: receiving a request to initiate a set of training sessions, the request including a set of parameters describing characteristics of each training session in the set of training sessions;for each training session in the set of training sessions, initiating a set of training workflows to be processed by the video streaming platform;creating a task graph for each training workflow in the set of training workflows, the task graph being a directed acyclic graph of tasks with each node of the task graph representing a media processing task and each edge of the task graph representing a data flow across two tasks and a corresponding input and output of each task;assigning a worker from a set of workers of the video streaming platform to each training session;collecting raw performance data from each assigned worker after each set of training workflows is processed;generating a platform performance profile of the video streaming platform based on the raw performance data from the each assigned worker, wherein the platform performance profile is used to predict resource requirements of media workflows to be processed by the video streaming platform;receiving a request to create a media workflow for a video source;predicting a set of resource requirements necessary to process the media workflow based on the platform performance profile and characteristics of the video source, wherein the predicting of the set of resource requirements includes creating a task graph for the media workflow, and predicting the set of resource requirements for each task of the task graph based on the platform performance profile and the characteristics of the video source; andselecting one or more workers based on the set of predicted resource requirements and current resource availability of workers in the video streaming platform. 2. The method of claim 1, wherein the set of parameters includes values for characteristics of the set of training sessions including video source codec, output audio/video transcoding, and publishing operations. 3. The method of claim 1, wherein the platform performance profile enables predictive modeling of resource requirements for specific task types in a media workflow. 4. The method of claim 1, wherein generating the platform performance profile comprises performing a linear regression on the raw performance data. 5. The method of claim 4, wherein the linear regression comprises generating a set of coefficients from the raw performance data from the worker. 6. The method of claim 1, wherein the raw performance data includes metrics on a processor usage. 7. The method of claim 6, wherein the processor usage includes a usage of a graphic processing unit. 8. An electronic device to serve as an orchestrator cluster of a video streaming platform, the electronic device comprising: a processor; anda non-transitory machine-readable storage medium coupled to the processor, the non-transitory machine-readable storage medium containing operations executable by the processor, wherein the electronic device is operative to receive a request to initiate a set of training sessions, the request including a set of parameters describing characteristics of each training session in the set of training sessions, for each training session in the set of training sessions, to initiate a set of training workflows to be processed by the video streaming platform, to create a task graph for each training workflow in the set of training workflows, the task graph being a directed acyclic graph of tasks with each node of the task graph representing a media processing task and each edge of the task graph representing a data flow across two tasks and a corresponding input and output of each task, to assign a worker from a set of workers of the video streaming platform to each training session, to collect raw performance data from each assigned worker after each set of training workflows is processed, to generate a platform performance profile of the video streaming platform based on the raw performance data from the each assigned worker, wherein the platform performance profile is used to predict resource requirements of media workflows to be processed by the video streaming platform, to receive a request to create a media workflow for a video source, to predict a set of resource requirements necessary to process the media workflow based on the platform performance profile and characteristics of the video source, wherein prediction of the set of resource requirements includes creating a task graph for the media workflow, and predicting the set of resource requirements for each task of the task graph based on the platform performance profile and the characteristics of the video source, and to select one or more workers based on the set of predicted resource requirements and current resource availability of workers in the video streaming platform. 9. The electronic device of claim 8, wherein the generation of the platform performance profile comprises performing a linear regression on the raw performance data. 10. The electronic device of claim 9, wherein the linear regression comprises generating a set of coefficients from the raw performance from the worker. 11. The electronic device of claim 8, wherein the raw performance data includes metrics on a processor usage. 12. A non-transitory machine-readable storage medium having instructions stored therein, which when executed by a processor, cause the processor to perform operations in an electronic device implementing a video streaming platform, wherein the operations optimize resource utilization while processing media workflows by the video streaming platform, the operations comprising: receiving a request to initiate a set of training sessions, the request including a set of parameters describing characteristics of each training session in the set of training sessions;for each training session in the set of training sessions, initiating a set of training workflows to be processed by the video streaming platform;creating a task graph for each training workflow in the set of training workflows, the task graph being a directed acyclic graph of tasks with each node of the task graph representing a media processing task and each edge of the task graph representing a data flow across two tasks and a corresponding input and output of each task;assigning a worker from a set of workers of the video streaming platform to each training session;collecting raw performance data from each assigned worker after each set of training workflows is processed;generating a platform performance profile of the video streaming platform based on the raw performance data from the each assigned worker, wherein the platform performance profile is used to predict resource requirements of media workflows to be processed by the video streaming platform;receiving a request to create a media workflow for a video source;predicting a set of resource requirements necessary to process the media workflow based on the platform performance profile and characteristics of the video source, wherein the predicting of the set of resource requirements includes creating a task graph for the media workflow, and predicting the set of resource requirements for each task of the task graph based on the platform performance profile and the characteristics of the video source; andselecting one or more workers based on the set of predicted resource requirements and current resource availability of workers in the video streaming platform. 13. The storage medium of claim 12, wherein the platform performance profile enables predictive modeling of resource requirements for specific task types in a media workflow. 14. The storage medium of claim 12, wherein generating the platform performance profile comprises performing a linear regression on the raw performance data. 15. The storage medium of claim 12, wherein the raw performance data includes metrics on a processor usage.
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (24)
Bowman-Amuah, Michel K., Block-based communication in a communication services patterns environment.
Goldszmidt German Sergio ; Willebeek-LeMair Marc Hubert ; Hon Kenneth Sau-yee,HKX, Client-based dynamic switching of streaming servers for fault-tolerance and load balancing.
Dave Bharat P. ; Jha Niraj K., Concurrent hardware-software co-synthesis of hard real-time aperiodic and periodic specifications of embedded system architectures.
Angela C. W. Lai ; James Peter Hoddie ; Howard E. Chartock ; Christopher V. Pirazzi ; Giovanni M. Agnoli ; Harry A. Chomsky ; Steve H. Chen ; Hitoshi Hokamura, Distributed on-demand media transcoding system and method.
Buco, Melissa Jane; Chaar, Jarir Kamel; Chang, Rong Nickle; Hunt, Guerney Douglass Holloway; Luan, Laura Zaihua; Ward, Christopher, Execution order management of multiple processes on a data processing system by assigning constrained resources to the processes based on resource requirements and business impacts.
Bonomi, Mauro; Fritsch, Jean-Georges; Sweeney, Patrick James; Osborne, Randolph; Morris, Jr., Charles Francis; Majors, Reed; Degrange, Francis Michel; Locke, Ian; Ng, Johnny C. Y.; Cao, Yousheng; Liu, Method and system for delivering media services and application over networks.
Beyer, Dirk; Wiener, Janet; Kelly, Terence, Method of dispatching tasks in multi-processor computing environment with dispatching rules and monitoring of system status.
Moote, Stanley R.; Delay, John L.; Bugir, Taras M., System and method for controlling content and delivery of internet protocol television (IPTV) services.
Kwatra, Vivek; Yagnik, Jay; Toshev, Alexander T.; Suryanarayan, Poonam, System and method for exploiting segment co-occurrence relationships to identify object location in images.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.