Fine-Grained Device Management in an Interactive Media Server Raju Rangaswami, Zoran Dimitrijevic, Edward Chang, and Shueng-Han Gary Chan IEEE Trans. on Multimedia, Dec 2003
Outline • Introduction • Interactive media proxy • Device profiling • Device management • High-level data organization • Low-level data organization • IO scheduling • System evaluation
Introduction • Interactive media • Fast-forward • Interactive media proxy (IMP) • Transform non-interactive broadcast or multicast streams into interactive ones for servicing a large number of end users.
Interactive Media Proxy (IMP) • Device profiling • Collect detailed disk parameters to manage a device more effectively. • Device management • Perform fine-grained device management to improve the overall disk access efficiency.
Disk profiling • The authors present a SCSI disk profiling tool that extracts detailed disk parameter. • Why disk profiling is necessary? • Inaccurate information (worst case assumption) • Dynamic information (ex: file fragmentation) • Manufacturing variance
Device management • High-level data organization • Low-level disk placement • IO scheduling
High-level data organization • For fast-scan • Skip B frames • Display a P frame only if the corresponding I frame is also included. • Adaptive tree scheme • Use a truncated binary tree to store videos. • Each level of the tree forms a substream and is stored as a sequential file.
Truncated binary tree sampled I sampled I I + P original
Adaptive tree scheme • Height (h) • The number of levels • The number of supported fast-scan streams • Density (η) • Range from 0 to 1 • The smaller η eliminates some tree level and decreases the tree density.
Low-level disk placement (1/2) • Zoning placement • Zone – multiple cylinders • Combine similar bit-rate streams in the same logical zone. • Outer zones have higher data-transfer rate. • High bit-rate streams should be stored in fast zones. (to maximize throughput) • Cylinder placement • Exploit the deterministic nature of write streams and use a best-effort approach for reads.
Low-level disk placement (2/2) • When any write stream uses up its allocated cylinders, a new set of free cylinders within the same zone and adjacent to the previous cylinder set is allocated. • Cylinder placement maintains the same relative cylinder distance between the stream pairs. • Minimize IO variability. • The seek overhead for switching from one write stream to the next write stream requires the disk to seek typically less than 50 cylinders. (almost equal to the minimum seek time for a single cylinder) S1 S2 S3 S1 S2 … write
IO scheduling • Goals • Maximize throughput • Minimize response time • Step-sweep IO scheduling • Using Cylinder Placement, the seek overheads for write streams can be minimized. Thus, step-sweep schedules write streams optimally.
System evaluation • Truncated Binary Tree (TBT) • η = 1 • Partial TBT (PTBT) • η = 0.5 • Sequential (SEQ) • η = 1/h (original video stream) • Reduce seek overhead for writes. • Suffer from fast-scan.
SEQ v.s. PTBT v.s. TBT SEQ reduces seek operations
Zoning Placement Zoning placement improves throughput for read-intensive loads.