Improving resource utilization for MPEG decoding in embedded end-devices

  • Authors:
  • Michael Ditze;Peter Altenbernd;Chris Loeser

  • Affiliations:
  • C-LAB, Paderborn, Germany;C-LAB, Paderborn, Germany;C-LAB, Paderborn, Germany

  • Venue:
  • ACSC '04 Proceedings of the 27th Australasian conference on Computer science - Volume 26
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

Abstract

Video streaming applications (e.g. video conferencing, video-on-demand) increasingly strive for deployment in small embedded systems that traditionally exhibit small computational resources as well as low speed internal network connections, e.g. set top boxes, mobile phones or PDAs. Whereas the latter is addressed by the new scalability features in the MPEG-2 and MPEG-4 standards, the computational resources still must be used effectively, all the more as continuously improved compression algorithms increase the computational demands. In order to guarantee a frame-per-second rate that satisfies the requested Quality of Service (QoS), a real-time scheduling mechanism is required that accounts for the specific needs of the respective compression standards along with a corresponding mechanism for Admission Control. The introduction of different frame-types in MPEG that require varying resources for decoding and the possibility of variable-bit-rate encoding, however, result in strong workload imbalances and unpredictability that do not allow to exploit the available resources efficiently. Therefore, this paper presents a new approach that allows to balance the workload caused by MPEG stream decoding. It allows to timely decode an additional 16% of frames compared to traditional solutions. Furthermore, we introduce a method called Peak Notification that may reduce resource over-reservation by considerable 67% through workload peak prediction compared to common solutions. Both methods increase the QoS delivered to the client. To our knowledge, this is the first approach that balances the workload on a single processor to achieve better CPU utilization.