Date post: | 22-Dec-2015 |
Category: |
Documents |
View: | 221 times |
Download: | 5 times |
Multimedia Information Systems
Shahram GhandeharizadehComputer Science Department
University of Southern California
Reading
First 11 (until Section 3.2) pages of:
S. Ghandeharizadeh and R. Muntz, “Design and Implementation of Scalable Continuous Media Servers,” Parallel Computing, Elsevier 1998.
MULTIMEDIA
Multimedia now:
Multimedia in a few years from now:
Remaining:
Continuous Media: Audio & Video
Display of a clip as a function of time.
Constant Bit Rate Variable Bit Rate
Time Time
Bytes Bytes
Continuous Media: Audio & Video
A clip has a fixed display time.
Constant Bit Rate Variable Bit Rate
Time Time
Bytes Bytes
Clip display time
Continuous Media: Audio & Video
A clip has a fixed size.
Constant Bit Rate Variable Bit Rate
Time Time
Bytes Bytes
Clip size
Continuous Media: Audio & Video
Average bandwidth for continuous display is clip size divided by the clip display time.
Constant Bit Rate Variable Bit Rate
Time Time
Bytes Bytes
Display bandwidth requirements
BW = Line slope
Time and space
One may manipulate the bandwidth required to display a clip by prefetching a portion of the clip.
Constant Bit Rate Media
Time
Bytes
Startup latency
Prefetch portion
Continuous display from magnetic disk
Target architecture
Memory CPU
Display
System Bus
Continuous display
Once display is initiated, it should not starve for data. Otherwise, display will suffer from frequent disruptions and delays, termed hiccups.
Memory CPU
Display
System Bus
Continuous display: using memory
Given the low latency between memory and display, stage the entire clip from disk onto memory and then initiate its display.
Memory CPU
Display
System Bus
Continuous display: using memory
Limitations: – Forces the user to wait un-necessarily.– Requires a large memory module in the order of Gigabytes for 2 hour movies.
Memory CPU
Display
System Bus
Continuous display: pipelining
Partition a clip X into n fixed size blocks: X1, X2, X3, …, Xn
Stage Xi in memory and initiate its display.
Stage Xi+1 in memory prior to completion of the display of Xi
Display X1 Display X2Display
Disk X1 X2
Time Period
Pipelining: multiple displays
With multiple displays, disk is multiplexed between multiple requests, resulting in disk seeks.
Display Xi Display Xi+1Display
Disk Xi Xi+1
Time Period
Wj
Seek + Rotational delay
Zk Wj+1 Zk+1
How to manage disk seeks?
Live with it:– Assume the worst seek time in order to guarantee hiccup-free display– Assume average seek time if hiccups are acceptable.
Use the elevator algorithm by delaying display of a block to the end of a time period, termed Group Sweeping Scheme (GSS):
Display X1Display
Disk X1 Wj+1
Time Period
Wj Zk Zk+1 X2 Zk+2
Impact of block size
Disk service time with transfer-rate tfr and block size B is:– Tdisk = Tseek + TRotLatency + (B / tfr)
Number of simultaneous displays supported by a single disk is: N = Tp/Tdisk
Simple pipelining requires (N+1)B memory, GSS requires 2NB.
The observed transfer rate of a disk drive is a function of B and its physical characteristics: tfrobs = tfr ( B / [B + (Tseek + Tlatency) tfr] )
Percentage of wasted disk bandwidth: 100 * (tfr – tfrobs) / tfr
Impact of block size MPEG-1 clips with 1.5 Mbps bandwidth requirements Target disk characteristics:
Seek: max = 17 msec, min = 2 msec
Rotational latency: Max = 8.3 msec, min = 4.17 msec
Disk tfr = 68.6 Mbps
Throughput and startup latency as a function of block size:
Block size N Memory Required Latency Sec (2 Tp) Wasted disk BW (%)
8 KB 5 80 KB 0.012 88.9
16 KB 10 320 KB 0.167 77.7
32 KB 16 1 MB 0.333 64.7
64 KB 24 3 MB 0.67 47.5
128 KB 32 8 MB 1.33 30
256 KB 37 18.5 MB 2.67 19.1
512 KB 41 41 MB 5.33 10.3
1 MB 43 96 MB 10.66 6
Modern disks are multi-zoned
Each zone provides a different storage capacity (number of tracks and sectors per track) and transfer rate.
Outermost zone is typically twice faster than the innermost zone.
Seagate ST31200W zones
Seagate ST31200W
Consists of 2697 cylinders. One may model its seek characteristics as follows:
Seagate ST31200W
IBM’s Logical Track
Let Zmin denote the zone with fewest track, Tmin
A disk with Z zones is collapsed into a logical disk consisting of one zone with Tmin tracks. Size of each track is Z * Tavg
The size of a block must be a multiple of the logical track size
Disadvantage: Z+1 seeks to retrieve a logical track
Logical Track 1
Logical Track 2
Logical Track 3
HP’s Track Pairing
Let Zmin denote the zone with fewest track, Tmin
Pair outermost track with the innermost one and continue inward. A disk with Z zones is collapsed into a logical disk consisting of one zone
with (Z*Tmin)/2 tracks. The size of a block must be a multiple of a track pair
Disadvantage: 2 seeks to retrieve a logical track
Logical Track 1
Logical Track 2
Logical Track 3
Logical Track 8
...
USC’s region-based approach
Partition the Z zones into R regions. A region may consist of 1 or more consecutive zones. The slowest participating zone dictates transfer rate of its assigned region.
Assign blocks of a clip to regions in a round-robin manner. Display of clips requires visiting regions one at a time, multiplexing their
bandwidth between N active requests. Both fix sized blocks and variable length blocks are supported.
Region 1
Region 2
Multi-zone disk drives
With all 3 techniques, one may selectively drop zones: sacrifice storage for bandwidth!
Example: USC’s region-based approach
Region 1
Region 2
FIXB
Partition a clip into fix sized blocks and assign them to the regions in a round-robin manner.
During a time period, retrieve blocks from one region at a time.
Display starts when sufficient data is in main memory.
FIXB
Amount of data produced during (1 maximum seek + TScan) is identical to the amount of data displayed during TScan.
FIXB
VARB
Variable size blocks dictated by the transfer rate of each zone.
Amount of data produced during one TMUX is identical to the amount of data displayed during TMUX.
Limitation: complex to implement due to variable block sizes.
Comparison
FIXB and VARB waste space due to:1. Round-robin assignment of blocks to zones
2. Different zones offer different storage capacities.
Comparison