Course Matters - PowerPoint PPT Presentation

About This Presentation
Title:

Course Matters

Description:

Find block size such that the service time for the most heavily loaded disk is minimize ... find B that minimize T. if T duration of a round. incr Nc and try ... – PowerPoint PPT presentation

Number of Views:50
Avg rating:3.0/5.0
Slides: 82
Provided by: dcso
Category:

less

Transcript and Presenter's Notes

Title: Course Matters


1
Course Matters
2
Make-Up Lecture
  • This Saturday, 23 October
  • TR7, 1-3pm
  • Topic CPU scheduling

3
Multimedia Storage Issues
4
Media vs. Documents
5
Media vs. Documents
  • large file size
  • write once, read many
  • sequential access
  • periodic access
  • deadlines

6
Average Service Time?
7
OS Review Disk
8
Disk
head, spindle, track, sector, cylinder
9
Latency components
seek time, rotational time and transfer time
10
Disk Scheduler
read/write command
disk sched
I/O Request
11
OS Review Disk Scheduling Algorithm
12
FCFS
98 183 37 122 14 124 65 67
13
SSTF
98 183 37 122 14 124 65 67
14
SCAN (Elevator)
98 183 37 122 14 124 65 67
15
C-SCAN
98 183 37 122 14 124 65 67
16
EDF
98 183 37 122 14 124 65 67
30 10 13 5 24 33 21 39
17
EDF-SCAN
98 183 37 122 14 124 65 67
30 10 13 5 24 33 21 39
18
Other Schemes
  • FD-SCAN
  • SSEDO
  • SSEDV

19
Data Placement
20
Contiguous
21
Fragmented
22
Striping (RAID-0)
23
Mirroring (RAID-1)
24
Parity (RAID-5)
25
Parity
26
Summary of Concerns
  • High Throughput
  • Fault Tolerant
  • Load balancing

27
This Lecture
  • Consider striping only (RAID-0)

28
Efficient Striping Techniques for Multimedia File
Servers
  • P. Shenoy, H. Vin
  • NOSSDAV 97

29
Design Parameters
  • unit of striping (block size)
  • degree of striping (num of disks)

30
Stripe Unit
31
Model
  • Disk serves clients in rounds
  • Time to read media from disk should be smaller
    than round time
  • Concern minimize service time of most heavily
    loaded disk

32
Effects of Block Size
service time
Block Size
33
Problem
  • Find block size such that the service time for
    the most heavily loaded disk is minimize

34
Analysis Model A Plan
  • service time of the busiest disk as a function of
    block size
  • expected num of blocks accessed on the busiest
    disk
  • expected num of blocks accessed on any disk

35
Assumptions
  • Non-redundant array
  • VBR
  • Analyze read operation only

36
Variables Declaration
  • Nd Number of Disks
  • Nc Number of Clients
  • B Block size

37
Variables Declaration
  • Nb(i,j) Number of blocks client i access from
    disk j
  • Pa(i,m) Probability of i access m blocks in a
    round

38
Analysis
  • Suppose i request m blocks

39
Reading 1 block
  • Nd Number of Disks
  • Nc Number of Clients
  • B Block size
  • Nb(i,j) Number of blocks client i access from
    disk j
  • Pa(i,m) Probability of i access m blocks in a
    round
  • Prob(Nb(i,j)1)

40
Reading k block
  • Nd Number of Disks
  • Nc Number of Clients
  • B Block size
  • Nb(i,j) Number of blocks client i access from
    disk j
  • Pa(i,m) Probability of i access m blocks in a
    round
  • Prob(Nb(i,j)k)

41
Blocks Read From a Disk
  • Nb(,j)
  • Nd Number of Disks
  • Nc Number of Clients
  • B Block size
  • Nb(i,j) Number of blocks client i access from
    disk j
  • Pa(i,m) Probability of i access m blocks in a
    round

42
Busiest Disk
  • Nmax
  • Nd Number of Disks
  • Nc Number of Clients
  • B Block size
  • Nb(i,j) Number of blocks client i access from
    disk j
  • Pa(i,m) Probability of i access m blocks in a
    round

43
Access Time
  • Nd Number of Disks
  • Nc Number of Clients
  • B Block size
  • Nb(i,j) Number of blocks client i access from
    disk j
  • Pa(i,m) Probability of i access m blocks in a
    round
  • T Nmax(ts tr Btt)
  • Depends on
  • block size B
  • disk characteristic ts,tr,tt
  • server design Nd
  • workload characteristic Nc, Nb(i,j)_

44
Model Verification
45
Imbalance and Overhead
46
Effects of Block Size
47
Effects of Clients
48
Effects of Num of Disks
49
Choosing Block Size
  • Given Nc, assume rest is fixed
  • find B that minimize T
  • if T lt duration of a round
  • incr Nc and try again

50
There is more..
  • redundant array
  • finding optimum degree of striping

51
Cello A Disk Scheduling Framework for Next
Generation Operating Systems
  • P. Shenoy, H. Vin
  • SIGMETRICS 98

52
Problem
  • How to co-exist with other applications?

53
Classes of Applications
  • Real-time
  • hard/soft
  • periodic/aperiodic
  • Best-effort
  • interactive
  • troughput-intensive

54
Attempt 1
  • Priority-based scheduler
  • Always schedule real-time tasks ahead of
    best-effort tasks

55
Attempt 2
  • Partition time slots into real-time and
    best-effort

56
Attempt 3
  • Assign weight to application class, based on
    their priority
  • Service based on weight

57
Attempt 3 Cello
  • Two-level scheduling

58
Class Independent Scheduler
59
Allocating Disk Bandwidth
  • Allocate in proportion to time
  • Allocate in proportion to bytes

60
Proportionate Time-Allocation
61
Variables
  • P Interval of a period
  • I Idle time so far
  • Ui Allocated time for class i
  • wi Weightage of class i

62
Proportional Time Allocation
63
Example
10
20
16
14
Weights 112 P 100 I 30
64

65
next
r
prev
66
Need to Make Sure..
  • Does not exceed share for class i

67
Need to Make Sure..
  • Total service time does not exceed available time

68
Update and Repeat
next
prev
69
Being Work Conserving
  • Work conserving dont work only if no work to
    do

70
What if..
  • a class have no pending request?
  • put in no_work group
  • a class violates one of the constraints?
  • put in too_much_work group

71
Improving Utilization
  • When disk is idle, distribute service time among
    classes in too_much_work group
  • Pick a request from this class and put into
    scheduled queue

72
Free Time Utilization
73
Class Specific Scheduler
  • How to pick (r, prev, next)?
  • Must not affect tasks in queue
  • Idea Compute slack time

74
Slack Time
  • li Latest time must begin servicing request i
  • ei Earliest time may begin servicing request i
  • di Deadline for request i
  • si Slack time for i li ei
  • ti Time to service request i

75
Slack Time
i
i
76
Class 1 Interactive Best Effort
next
prev
77
Class 2 High Throughput Best Effort
next
prev
78
Class 3 Real Time Application
next
prev
79
Evaluations
response time
video
80
Evaluations
time
time
81
Cello Summary
  • OS disk scheduler
  • Support multiple classes
  • Protect classes from each other
  • Work conserving
  • Use two-level scheduling
Write a Comment
User Comments (0)
About PowerShow.com