Multimedia/Real-Time - PowerPoint PPT Presentation

1 / 36
About This Presentation
Title:

Multimedia/Real-Time

Description:

Global scheduler reconfigures schedules on-line. Local Scheduler ... Must correctly reconfigure on-line. Report monitoring info back to GS. Implemented in Cyclone ... – PowerPoint PPT presentation

Number of Views:27
Avg rating:3.0/5.0
Slides: 37
Provided by: Pras181
Category:

less

Transcript and Presenter's Notes

Title: Multimedia/Real-Time


1
Multimedia/Real-Time
  • Prashanth Reddy

2
Multimedia and Real-Time
  • Audio and Video Continuous Media (CM)
  • Graphics Discrete media
  • CM
  • High data rates
  • Timing requirements
  • Soft real-time applications

3
Problems
  • Traditional OSs do not provide good support
  • Schedulers
  • Round Robin, Priority scheduling
  • No sense of urgency
  • Large number of user-kernel level interactions
  • Efficient usage of resources
  • Varying demands
  • Delays, jitter

4
Papers
  • Scheduling and IPC Mechanisms for Continuous
    Media
  • New scheduling and IPC mechanisms
  • Split-level scheduling
  • User-level and kernel-level scheduler
  • Use shared memory
  • Memory mapped streams
  • Shared memory FIFO

5
Papers
  • User-specified Adaptive Scheduling in a Streaming
    Media Network
  • Deliver data in resource-limited, small-scale
    environments
  • Meet the preferences and demands of the users
  • MediaNet a distributed stream processing system

6
Deadline/Workahead Scheduling
  • Each message has a logical arrival time l(m)
  • Each real-time process has a fixed logical delay
    bound
  • A real-time process is critical at time t if
    l(m) lt t
  • Workahead processes - real-time processes that
    have pending messages but not critical

7
DWS contd
8
Split-level CPU scheduling
  • Combines the advantages of thread and LWPs
  • Minimizes user/kernel interactions
  • Also prioritizes LWPs in different VASs correctly
  • Kernel level scheduler and user level scheduler
    communicate through shared memory

9
Split-level scheduling contd
10
Split-level scheduling contd
11
Memory Mapped Streams
  • CM data must be moved to/from kernel
  • Components
  • Control and Synchronization
  • Data location transfer
  • Data transfer
  • Requires user/kernel interaction in one or more
    of the above components

12
MMS contd
  • A shared memory FIFO
  • Uses shared memory for control and
    synchronization
  • Uses shared memory to hold data location and the
    data
  • Mechanisms
  • Statically shared pages of physical memory
  • Fixed range of virtual pages, mapped dynamically
  • Array of message descriptors

13
Performance Evaluation
14
Performance Evaluation contd
15
Summary
  • Proper scheduling through Split-level scheduling
    and usage of shared memory
  • MMS low-overhead IPC mechanism
  • Reduced user-kernel interactions

16
User-specified Adaptive Scheduling in a Streaming
Media Network
  • MediaNet a distributed stream processing system
  • Users can specify how the system should adapt
  • Uses local and global resource scheduling
  • Adapts without resource reservation

17
MediaNet Architecture
Video source
Users desired stream adaptation prefs
schedules
Global scheduling service
Video player
subscribe
feedback
Video description, location, resource info
publish
from MediaNets website
18
Specifications
  • Continuous Media Network (CMN)
  • Directed acyclic graph of operations
  • frame dropping, transcoding, compression and
    decompression etc.
  • User specification
  • One or more CMNs, each with associated utility
    value
  • Goal Maximize users utility while utilizing the
    network efficiently

19
Operations
Op
frm1


frmn
Interval
Frame size
  • Other attributes
  • Fixed location?
  • Transitional?

from MediaNets website
20
Example User Specification
Utility
CMN
Vid
Prio
User
1.0
pcS
pcD
Prio
Vid
Drop B
Prio
User
0.3
pcS
pcD
Vid
Prio
Drop PB
Prio
User
0.1
pcS
pcD
21
Scheduling
22
Scheduling contd
23
Implementation
  • Global scheduling service
  • implemented on a single node
  • eventually hierarchical
  • Local, per-node schedulers
  • monitor and report available bandwidth
    eventually CPU memory usage
  • implement local CMNs
  • Global scheduler reconfigures schedules on-line

24
Local Scheduler
  • Implement the CMN given by the GS
  • Must correctly reconfigure on-line
  • Report monitoring info back to GS
  • Implemented in Cyclone
  • Type-safe, C-like language
  • One component per operation, dynamically
    reconfigurable
  • Uses TCP for send/receive

25
Monitoring
  • Monitor available bandwidth
  • Keep track of TCP throughput, attempted vs.
    actual bandwidth
  • Send regular reports to global scheduler
  • Too pessimistic
  • creep bandwidth estimate additively to
    optimistically attempt higher utility configs

26
Reconfiguration
  • New configuration is applied in parallel with the
    current configuration
  • Old operations are flushed along the dataflow
    path
  • New operations are enabled when all old ones are
    flushed on a particular node
  • Challenges
  • Rapid reconfiguration
  • Low disruption to stream

27
Experiments
  • Conducted on 8 850 MHz PIIIs, 512 MB RAM, 100
    Mb/s Ethernet, Red Hat Linux 7.1 using a bowtie
    topology

MPEG clip Bandwidth Requirements Bandwidth Requirements Bandwidth Requirements
Frame rate IPB IP I
30 fps 145 KB/s 88 KB/s 27 KB/s
28
Results
No adaptation
Priority-based frame dropping
Local, proactive frame dropping
MediaNet
29
Multi-User Performance
30
Multi-User Performance contd
31
Multi-User Performance contd
B frame dropping op
32
Multi-User Performance contd
B frame dropping op
33
Summary
  • Application-specific QoS via user specs
  • High network utilization and per-user utility via
    global scheduling
  • Share resources between flows in a multicast-like
    manner, but generalized to CMNs
  • Utilize multiple, redundant paths
  • Intelligently place operations to reduce network
    utilization
  • Adapts to resource availabilities on-line

34
Conclusion
  • Split-level scheduling
  • Tight coupling between user-level and
    kernel-level schedulers
  • Difficult to employ multiple scheduling policies
  • Scalability
  • Hierarchical global scheduling service
  • Automate setting utility values

35
Acknowledgements
  • Some of the slides have been taken from
    MediaNets website http//www.cs.umd.edu/projects
    /medianet/

36
Thank You
Write a Comment
User Comments (0)
About PowerShow.com