Dynamic load-balancing between two processing means for real-time video encoding
AssigneeInstitute of Microelectronics
InventorsWeisi Lin, Bee June Tye, Ee Ping Ong
Life of this patent
Estimating the term…
Abstract
A method for use in a real-time video encoder based on two processing means to optimise the use of computing power of the processing means. This is achieved by dynamically load-balancing between two processing means. The load pattern is determined with measures for the progress of motion estimation in one processing means and the idle time in the other. Adaptive adjustment of load balancing is fulfilled via making a decision on whether the DCT/IDCT/Quantization/Dequantization sub-process is skipped for a macroblock. The invention is not constrained to particular motion estimation techniques.
Claims13
A method for balancing the workload between a first and second processing means for video encoding, the method comprising:
- measuring the load distribution dynamically between the first and second processing means, and
- adaptively adjusting the amount of computation performed by the second processing means based on said load distribution,
- wherein the first processing means performs motion estimation and motion estimation associated functions and the second processing means performs discrete cosine transformation (DCT), inverse discrete cosine transformation (IDCT), quantization, dequantization and source coding functions, and
- wherein the first processing means performs functions different than the second processing means.
A method for balancing the workload between a first processing means and a second processing means for video encoding of video frames divided into macroblocks, comprising:
- using the first processing means to perform motion estimation;
- using the second processing means to perform any of discrete cosine transformation (DCT), inverse discrete cosine transformation (IDCT), quantization and dequantization;
- determining the load distribution dynamically between the first and second processing means using a combination of the idle time of the second processing means and the progress of motion estimation in the first processing means;
- and
- determining for each macroblock whether any of DCT, IDCT, quantization and dequantization should be performed on that macroblock by the second processing means based on said load distribution.
A method for balancing the workload between a first processing means and a second processing means for video encoding of video frames divided into macroblocks, comprising:
- using the first processing means to perform motion estimation;
- using the second processing means to perform discrete cosine transformation (DCT), inverse discrete cosine transformation (IDCT), quantization and dequantization;
- determining a load pattern dynamically between the first and second processing means using a combination of the idle time of the second processing means and the progress of motion estimation in the first processing means;
- and
- determining for each frame of the video whether DCT, IDCT, quantization and dequantization should be performed on the macroblocks of that frame by the second processing means based on said load pattern.
A method for balancing the workload between a first processing means and a second processing means, the first processing means performing motion estimation functions and the second processing means performing discrete cosine transformation (DCT), inverse discrete cosine transformation (IDCT), quantization, dequantization and source coding functions, the first processing means performing functions different than the second processing means,
- wherein the amount of computation in the second processing means is reduced when the first processing means progresses faster than the second processing means;
- otherwise the amount of computation in the second processing means is increased.
A method for balancing the workload between a first and second processing means for video encoding, the first processing means performing motion estimation functions and the second processing means performing discrete cosine transformation (DCT), inverse discrete cosine transformation (IDCT), quantization, dequantization and source coding functions, the first processing means performing functions different than the second processing means, the method comprising the steps of:
- measuring the load distribution dynamically between the first and second processing means, and
- adaptively adjusting the amount of computation performed by the second processing means based on said measured load distribution;
- wherein the amount of computation in the second processing means is reduced when the first processing means progresses faster than the second processing means;
- otherwise the amount of computation in the second processing means is increased.
Dependencies are inferred from the claim text.