page.37
考虑这样一个磁盘系统,io请求以100个/秒的速率(用a表示)到达,请求服务时间R(s)是8ms,根据上述公式,磁盘性能的各种度量值计算如下:
请求到达时间R(a)=1/a= 10ms
请求服务时间R(s)=8ms
利用率U=R(s)/R(a)=0.8 (80%)
响应时间R=R(s)/(1-U)=8/(1-0.8)=40ms
平均队列长度=U*U/(1-U)=3.2
请求在队列中的等待时间=U*R,或R-R(s) = 32ms
现在,若控制器的能力加倍,则服务时间R(s)减半成4ms,则
利用率U=R(s)/R(a)=0.4 (40%)
响应时间R=R(s)/(1-U)=4/(1-0.4)=6.67ms
平均队列长度=0.26
请求在队列中的等待时间=2.67ms
对比,可得出如下结论:若服务时间(寻道时间,旋转延迟和内部传输时间的总和)或利用率减半(降低请求量),则响应时间可以大大降低;利用率和响应时间的关系如图:
响应时间随着利用率增加呈现非线性的变化。当平均队列长度很短时,响应时间一直很快;当队列负载增加时,响应时间也逐渐增大。当利用率超过70%时,响应时间呈指数增长。
--------------------
个人观点:
对响应延时敏感的存储系统,要将磁盘利用率控制在一定范围(70%以下)内,可使用iostat(linux平台)查看使用率,详细说明请google
转载请注明出处。