JP2001043028A - ディスク・タイムシェアリング装置及び方法 - Google Patents
ディスク・タイムシェアリング装置及び方法Info
- Publication number
- JP2001043028A JP2001043028A JP11215492A JP21549299A JP2001043028A JP 2001043028 A JP2001043028 A JP 2001043028A JP 11215492 A JP11215492 A JP 11215492A JP 21549299 A JP21549299 A JP 21549299A JP 2001043028 A JP2001043028 A JP 2001043028A
- Authority
- JP
- Japan
- Prior art keywords
- time
- input
- group
- output
- disk
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims description 154
- 230000007246 mechanism Effects 0.000 claims abstract description 31
- 238000012545 processing Methods 0.000 claims description 117
- 238000012937 correction Methods 0.000 description 120
- 230000002159 abnormal effect Effects 0.000 description 48
- 230000004044 response Effects 0.000 description 48
- 230000008859 change Effects 0.000 description 44
- 238000009826 distribution Methods 0.000 description 42
- 230000008569 process Effects 0.000 description 37
- 238000010586 diagram Methods 0.000 description 20
- 238000013459 approach Methods 0.000 description 5
- 230000007423 decrease Effects 0.000 description 5
- 238000004088 simulation Methods 0.000 description 5
- 238000012546 transfer Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000013468 resource allocation Methods 0.000 description 4
- 230000015572 biosynthetic process Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000011084 recovery Methods 0.000 description 3
- 102100033029 Carbonic anhydrase-related protein 11 Human genes 0.000 description 1
- RWSOTUBLDIXVET-UHFFFAOYSA-N Dihydrogen sulfide Chemical compound S RWSOTUBLDIXVET-UHFFFAOYSA-N 0.000 description 1
- 102100032244 Dynein axonemal heavy chain 1 Human genes 0.000 description 1
- 102100021735 Galectin-2 Human genes 0.000 description 1
- 101000867841 Homo sapiens Carbonic anhydrase-related protein 11 Proteins 0.000 description 1
- 101001016198 Homo sapiens Dynein axonemal heavy chain 1 Proteins 0.000 description 1
- 101001042446 Homo sapiens Galectin-2 Proteins 0.000 description 1
- 101001075218 Homo sapiens Gastrokine-1 Proteins 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000001771 impaired effect Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0613—Improving I/O performance in relation to throughput
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
合した場合の性能の最低保証を可能とする。 【解決手段】入出力スケジュール機構20は、ディスク
装置16への入出力をグループ化した入出力グループを
形成すると共に各入出力グループがディスクを使用する
時間の比率を定義し、定義された時間比率に基づき各入
出力グループが連続してディスク装置を使用できるクォ
ンタムτ1〜τ3を決定し、複数の入出力グループから
ディスク装置に入出力の依頼を受け付けている場合、競
合した入出力グループ間で割当時間τ1〜τ3を順番に
切り替えてディスク装置を使用するタイムシェアリング
を行う。更に、割当時間制御部35で、各入出力グルー
プの過密具合に応じて余ったクォンタムの割当時間を不
足側のクォンタムに配分する。
Description
づいてディスク装置の使用をスケジューリングするディ
スク・タイムシェアリング装置及び方法に関し、特に、
競合する入出力に対し割当て時間を順番に切替えるよう
にディスク装置の使用をスケジューリングするディスク
・タイムシェアリング装置及び方法に関する。
スク装置を使用してデータを管理するストレージシステ
ムにあっては、例えばディクス装置をRAID構成の装
置とし、このRAID装置をディスク制御装置の配下に
接続して上位のホストからの入出力を処理したり、直
接、サーバにRAID装置を接続し、サーバOSからの
入出力を処理するようにしている。
は、同一のディスク装置に対して、応答時間の保証が要
求されるランダムアクセスと、単位時間当たりの処理量
が重視されるシーケンシャルアクセスを行う必要がある
場合、ランダムアクセスとシーケンシャルアクセスが競
合しないように、時間帯を分けた運用を行っている。例
えば、昼間は、ディスク装置のデータベースに対してラ
ンダムアクセス中心のOLTP業務(On Line transact
ion Processing)を行い、業務終了後の夜間にデータベ
ースのバックアップを行っている。
とシーケンシャルアクセスの資源配分 しかしながら、このようなストレージシステムにあって
は、業務の無停止化(フォルトトレーラント)に伴い、
夜間といえどもランダムアクセス系のOLTP業務を継
続する必要が出てきたため、ランダムアクセス系のOL
TP業務中にシーケンシャルアクセスであるバックアッ
プの実行が必要となってきている。
応答時間、例えば30msを満たせる単位時間当りの入出
力回数であるIOPS(Input Output Per Second )、
例えば100IOPSを見積もることができる。シーケンシ
ャルアクセスのみの場合は、例えば20MB/sといっ
たスループットを見積もることができる。
ャルアクセスを同時に行った場合は、受け付けた入出力
を要求をFIFOを用いたキューで処理するため、ラン
ダムアクセスがディスク装置を使用できる時間およびシ
ーケンシャルアクセスがディスク装置を使用できる時間
を保証する仕組みがない。
のランダムアクセスと、5MB/sのシーケンシャルア
クセスが欲しい場合でも、シーケンシャルアクセスが頻
繁に発生するとシーケンシャルアクセスのスループット
は、上がる必要はないのであるが、5MB/sから10
MB/sに上がる。逆にランダムアクセスで平均応答時
間30msを満たすIOPSは、低下させたくはないにもか
かわらず、50IOPSから25IOPSに低下する。 2.論理ボリューム間の資源配分 また従来のストレージシステムは、性能要件の異なるデ
ータは異なるディスク装置に配置することで、それぞれ
の性能特性を引き出している。例えば、小量データのラ
ンダムアクセスで応答時間の保証が要求されるデータ
と、大量データのシーケンシャルアクセスで単位時間当
たりの処理量が重視されるデータは、異なるディスク装
置に配置している。
い、異なる性能要件のデータを同一ディスク装置に配置
するケースが増えてきている。このように異なる性能要
件の論理ボリュームを同一ディスクに配置した場合も同
様の問題が生じる。従来は、受け付けた入出力をFIF
Oでスケジュールして論理ボリューム間のディスク資源
分配を制御する仕組みがない。このため、ある論理ボリ
ュームへの入出力が頻繁に発生すると、他の論理ボリュ
ームへの入出力性能が低下する。
ームAと、50IOPSを保証して欲しいボリュームBを同
一ディスクに配置した場合、ボリュームAへのアクセス
が頻繁に発生するとボリュームAのIOPSは、上がる必要
はないにもかかわらず、10IOPSから20IOPSに上が
る。逆にボリュームBのIOPSは、低下させたくはないに
もかかわらず、50IOPSから40IOPSへと低下する。 3.通常処理とバックアップ/コピー処理間の資源配分 従来のストレージシステムで、同一ディスク装置上に複
数の論理ボリュームが存在し、個々の論理ボリューム単
位でバックアップやコピーを行う場合を考える。従来
は、バックアップ/コピー処理による通常の入出力への
影響を抑えるため、バックアップ/コピー処理のペース
(インターバル)を、バックアップ/コピー処理の実行
時に設定する手法を採っている。
リュームAと同じディスク装置上のボリュームBに対し
てコピーを実行すると、同時に2多重のコピー処理が同
一のディスク装置上で動作するため、通常の入出力への
影響は2倍になる。 4.通常処理とリビルディング間の資源配分 RAID装置では、複数のディスクドライブでデータを
冗長化させることにより、1つのディスクドライブに障
害が発生しても残りのディスクドライブからデータを復
旧することができる。このため、RAID装置では、デ
ィスクドライブに障害が発生しても、通常の入出力を継
続することができる。
て、残りのディスクドライブからデータの復旧が行われ
る。この復旧処理のことをリビルディング(Rebuilding)
と呼ぶ。リビルディングは、RAID装置を構成するデ
ィスクドライブに対する入出力処理を伴うため、同一の
ディスクドライブを通常の入出力と奪い合うことにな
る。
出力の性能は低下する。例えば、ミラー構成をとるRA
ID1の場合、リビルディングは、ディスクドライブの
障害により1台になったディスクドライブから交換され
た新しいディスクドライブへデータをコピースる処理で
あり、コピー元のディスクドライブに対しリード入出力
が発生する。このリード入出力が通常の入出力を持たせ
ることになり、通常の入出力の性能が低下する。
チは2つある。第1のアプローチは、通常の入出力に影
響を与えないように、十分長いインターバルで、十分小
さいデータをコピーする。のこ場合、通常の入出力への
影響は小さくすることができるが、リビルディング完了
までの時間が長くなる。例えば9GBのディスクドライ
プで構成するRAID1の場合、10時間前後が必要と
なる。
空いていれば、即ち、通常の入出力でディスクドライブ
を使用していなければ、リビルディングの入出力をスケ
ジュールする。この場合の問題は、リビルディング完了
までの時間が保証できない点にある。これはディスクド
ライブがほとんど空いていないと、リビルディングに長
時間必要になってしまう。 5.最大応答時間保証 ミッションクリティカルな業務では、入出力性能の要件
として平均応答時間の他に最大応答時間が重要となる。
近年のディスク装置は、実行待ち入出力を処理時間が最
短になるように並び替えるリ・オーダリング機能(Re-o
rdering 機能)を持っている。
が、実行待ち入出力の中からシーク時間と回転待ち時間
の和で定義されるポジショニング時間を最小にする入出
力を、次に実行する入出力として選ぶ機能である。ディ
スク装置に入出力を依頼する際に、リ・オーダリングの
対象として良い旨のタスク指定となるシンプルタスク
(Simple task)をディスク装置に通知する。
力の場合は、ポジショニング時間を最小にするような順
番で入出力をスケジュールする。これにより、ランダム
アクセス時の平均処理時間が短縮される。例えば、ラン
ダムアクセスの平均処理時間は、リ・オーダリング機能
を使用することにより、9msから5msに短縮する。
スク装置のスループットを向上させるが、最大応答時間
が大きくなる問題がある。これは、次の入出力にポジシ
ョニング時間が最小となる入出力を選択するため、ある
入出力が長い間待ちのままでスケジュールされない現象
が発生するためである。
は、リ・オーダリングの対象として良いことを指定する
シンプルタスクの他に、オーダードタスク(Ordered ta
sk)を指定する機能を備えている。オーダードタスクの
指定で入出力を依頼すると、ディスク装置は、それまで
に受け付けていた未だ完了していない入出力を全て完了
させた後、オーダードタスクの入出力をスケジューリン
グする。
ドタスクを混ぜることにより、入出力の最大応答時間の
延長を抑えることが可能となる。しかし、ランダムアク
スセとシーケンシャルアクセス間、論理ボリューム間、
通常処理とバックアップ/コピー処理やリビルディング
処理間の資源配分を考えた場合、スループット(IOPS)
を向上させるためのシンプルタスクの利用に加え、シン
プルタクスクを使った場合の最大応答時間の保証も考慮
に入れる必要がある。
なる複数の入出力が競合した場合の性能の最低保証を可
能とするディスク・タイムシェアリング装置及び方法を
提供することを目的とする。
図である。本発明のディスク・タイムシェアリング装置
は、図1(A)のように、1又は複数のディスクドライ
ブ24を備えたディスク装置16、ディスク装置16に
入出力要求を発行する入出力要求部18、入出力スケジ
ュール機構22及び割当時間制御部35を備える。
ディスク装置16への入出力をグループ化した入出力グ
ループを形成すると共に各入出力グループがディスク装
置16を使用する時間の比率を定義し、定義された時間
比率に基づき各入出力グループが連続してディスク装置
16を使用できるクォンタムτ1,τ2,τ3(割当時
間)を決定し、複数の入出力グループからディスク装置
16に入出力の依頼を受け付けている場合、図1(B)
のように、競合した入出力グループ間でクォンタムτ
1,τ2,τ3を順番に切り替えてディスク装置16を
使用するタイムシェアリングを行う。
ープの入出力処理要求の過密具合に応じて割当時間をダ
イナミックに変動させる。
アリング装置によれば、ランダムアクセス、シーケンシ
ャルアクセス、コピー(シーケンシャル)等の複数の入
出力グループに分けてクォンタムを割当てた場合、特定
の入出力グループでの入出力要求が少なくなってクォン
タムに余剰時間が生じた場合、他の入出力要求の多い入
出力グループのまクォンタムに余剰時間がダイナミック
に配分され、そのためディスク装置に遊び時間を生ずる
ことなく効率よくアクセスできる。
入出力グループの余った割当時間を、処理要求が多い入
出力グループの割当時間を延長させることで配分する。
ない入出力グループの余った割当時間を、処理要求が多
い入出力グループの割当時間を変えることなく頻度を増
やすことで配分する。
グループでいずれかで生じたクォンタムの余剰時間を、
入出力要求の多い別の入出力グループのクォンタムに配
分する場合、初期設定した比率に従って固定的に配分さ
れる。
ス、シーケンシャルアクセス、コピーアクセス等に分け
ていた場合、シーケンシャルアクセスで余剰時間が生
じ、このときコピーアクセスの入出力要求がたまたま多
かったとすると、余剰時間はコピーアクセスに配分され
てしまい、その結果、ランダムアグセスのレスポンス時
間が大幅に伸びてしまうこと恐れがある。
ュール機構20で複数の入出力グループをまとめて2以
上の上位グループを形成し、割当時間制御部35は、上
位グループ内においてのみ各入出力グループ間で余剰時
間の配分を行うことを特徴とする。
アクセスを正常系グループに入れ、コピーアクセスを異
常系グループに入れ、この上位グループ間での余剰時間
の配分を禁止することで、例えばシーケンシャルアクセ
スの余剰時間を上位グループ内のランダムアクセスに配
分でき、そのレスポンス時間を保証できる。
互間で余剰時間の配分を行うようにしてもよい。この場
合、割当時間制御部35は、ある上位グループに属する
全ての入出力グループに余剰時間がある場合に、他の上
位グループの処理要求の多い入出力グループに余剰時間
を配分する。
ープに属する一部の入出力グループに余剰時間がある場
合に、他の上位グループの処理要求の多い入出力グルー
プに余剰時間を配分する。更に割当時間制御部35は、
配分先の上位グループに余剰時間を使い切る入出力グル
ープがない場合は、他の上位グループに配分しない。
プに優先度を設定し、割当制御部35は、優先度の高い
上位グループから順番に入出力要求の過密具合を調べ、
入出力処理要求の多い上位グループに他の上位グループ
の余剰時間を配分する。
上位グループから順番に入出力要求の過密具合を調べ、
入出力処理要求の多い上位グループに他の上位グループ
の余剰時間を配分してもよい。
プから優先度の高い上位グループに対してのみ余剰時間
を配分することで、例えば異常系のコピーアクセスで生
じた余剰時間を正常系のランダムアクセス又はーケンシ
ャルアクセスに反映し、レスポンス時間又はスループッ
トを保証することができる。
の上位グループに他の上位グループの余剰時間を配分し
てもよい。割当時間制御部35は、ある上位グループに
属する入出力処理要求の少ない入出力グループの余った
割当時間を、他の上位グループに属する入出力処理要求
が多い入出力グループの割当時間を延長させること、又
は入出力グループの割当時間を変えることなく頻度を増
やすことで配分する。
を備えたディスク装置16と、ディスク装置16に入出
力要求を発行する入出力要求部18と、入出力要求に基
づいてディスク装置16の使用をスケジューリングする
入出力スケジュール機構20とを備えたディスク・タイ
ムシェアリング方法を提供する。
は、ディスク装置16への入出力を種別に応じてグルー
プ化した入出力グループを形成すると共に各入出力グル
ープが連続してディスク装置を使用できる割当時間(ク
ォンタム)を定義し、複数の入出力グループからディス
ク装置16に入出力の依頼を受け付けている場合、競合
した入出力グループ間で割当時間を順番に切り替えてデ
ィスク装置を使用し、入出力グループの入出力処理要求
の過密具合に応じて割当時間を変動させる。
ープの余った割当時間を、処理要求が多い入出力グルー
プの割当時間を延長させるか、或いは、処理要求が多い
入出力グループの割当時間を変えることなく頻度を増や
すことで配分する。
以上の上位グループを形成し、上位グループ内において
のみ各入出力グループ間で余剰時間を配分するか、或い
は、上位グループの相互間で余剰時間を配分する。これ
以外の詳細は装置の場合と同じになる。
レージシステムのブロック図である。図2において、ス
トレージシステムは、デバイス制御装置12、アレイデ
ィスク装置14、及びディスク装置16で構成される。
デバイス制御装置12に対しては、ホスト10−1〜1
0−nが接続されており、ホスト10−1〜10−nの
アプリケーションにより入出力要求をデバイス制御装置
12に対し行っている。
装置12からの入出力要求を受けつけ、ディスク装置1
6に対し受けつけた入出力要求を発行する。本発明のデ
ィスク・タイムシェアリング装置は、アレイディスク装
置14に設けた入出力要求依頼部18及びディスク入出
力スケジュール機構20と、ディスク装置16に設けた
ディスク入出力処理部22及びディスクドライブ24−
1〜24−nで構成される。
ディスクドライブ24−1〜24−nがRAID構成を
とる場合には、アレイディスク装置14にはRAID制
御機構がさらに設けられることになる。
された本発明のタイムシェアリング装置の基本的な実施
形態のブロック図であり、RAID構成のディスク装置
を例にとっている。
は、入出力要求部18、RAID制御部26、ディスク
入出力スケジュール機構20を備える。またディスク装
置16にはディスク入出力処理部22が設けられ、この
ディスク入出力処理22に対し、例えばRAID1の構
成(ミラーディスク構成)をとる2台のディスクドライ
ブ24−1,24−2が接続されている。
アリング装置は、入出力要求部18からのディスク装置
16への入出力要求をグループ化して入出力グループを
形成すると共に、各入出力グループがディスク装置16
を使用する時間の比率を定義し、定義された時間比率に
基づき各入出力グループが連続してディスク装置を使用
できるクォンタム(割当時間)を決定し、複数の入出力
グループから依頼を受けつけている場合に競合した入出
力グループ間でクォンタムを順番に切り替えてディスク
装置16を使用するようにスケジューリングする処理を
行う。
の過密具合に応じてクォンタムをダイナミックに変動さ
せ、ディスク装置16の効率的な使用を実現する。
アリング処理を実現する図3の各部の構成及び機能を更
に詳細に説明すると次のようになる。入出力要求部18
は、例えば図2に示した上位のデバイス制御装置12か
らのコマンドに基づきディスク装置16に対する入出力
要求をRAID制御部26を介してディスク入出力スケ
ジュール機構20に発行する。RAID制御部は、依頼
された論理入出力要求を物理入出力要求に変換する処理
を主に行う。
は、ディスク・タイムシェアリング制御情報30−1,
30−2、入出力スケジュール部32、入出力要求受付
部34、及び入出力完了処理部36が設けられる。ディ
スク・タイムシェアリング制御情報30−1,30−2
は、ディスク装置16に設けているディスクドライブ2
4−1,24−2単位に設けられる。
ライブ24−1,24−2単位に設けられたディスク・
タイムシェアリング制御情報30−1,30−2を参照
及び更新してディスク・タイムシェアリングを行う。
時間制御部35の機能も含まれ、各入出力グループにお
ける入出力要求の過密具合に応じてクォンタムをダイナ
ミックに変動させる。
には、 余剰時間によるクォンタムの延長 余剰時間によるクォンタムの頻度増加 の2つがある。
入出力グループの余った時間を、処理要求の多い別の入
出力グループのクォンタムを延長することで配分する
か、或いは、クォンタムを変えることなく頻度を殖やす
ことで配分する。
情報30−1について説明すると、この実施形態にあっ
ては入出力グループをG1,G2,G3の3つに分けて
定義した場合を例にとっており、入出力グループG1〜
G3に対応してスケジュール待ちグループキュー38−
1,38−2が設けられる。このスケジュール待ちグル
ープキュー38−1〜38−3には、入出力要求受付部
34で受けつけた入出力要求がキューを構成するFIF
Oに格納することで並ぶ。
完了待ちグループキュー40−1,40−2,40−3
が設けられる。完了待ちグループキュー40−1,40
−3には、ディスク装置16への入出力依頼が完了し、
ディスク装置16から入出力完了応答を受けていない入
出力要求がキューを構成するFIFOに格納することで
並んでいる。
グループ用クォンタム42−1,42−2,42−3が
設けられる。このグループ用クォンタム42−1〜42
−3には、入出力グループG1〜G3がディスク装置1
6を使用する時間の比率α1,α2,α3を予め定義
し、この定義された比率α1,α2,α3に基づき、そ
れぞれの入出力グループG1〜G3が連続してディスク
装置を使用できる割当時間となるクォンタムτ1,τ
2,τ3を決定して格納している。
タイムシェアリング周期をTcとすると、入出力グルー
プG1〜G3のクォンタムτ1〜τ3は次式で定義され
る。
6の使用を決めるクォンタムτ1〜τ3の適正値は次の
ようにして決める。まずクォンタムは値を小さくしすぎ
るとディスク装置16の入出力処理時間に近くなり、ポ
ジショニング時間を最小とするように入出力を選択する
リ・オーダリングの効果が小さくなり、全体の入出力性
能が低下する。
入出力グループに切り替えるクォンタムの待ち時間が延
びることにより、平均入出力処理時間及び最大入出力処
理時間が延びることになる。例えばクォンタムτ1とク
ォンタムτ2をそれぞれ1時間に設定すると、クォンタ
ムτ1の処理中はクォンタムτ2の入出力を実行できな
いため、クォンタムτ2の入出力はクォンタムτ1の終
了を1時間待つことになる。
処理時間が数ms〜20msのディスク装置16の場
合、クォンタムの値としては数十ms〜数百msが望ま
しい。
0でグループ化する入出力としては、例えば次のグルー
プ化がある。
正常系処理に属し、コピー/バックアップ処理やリビル
ディング処理は異常系処理に属する。このためディスク
タイムシェアリング制御情報30−1の入出力グループ
としては、例えばランダムアクセスグループ、シーケン
シャルアクセスグループ、及び異常系グループに分ける
ことができる。
報30−1には、現クォンタム種別44、現クォンタム
開始時刻46、更に次入出力タスク種別48が設けられ
る。この現クォンタム種別44のディスク装置16のデ
ィスクドライブ24−1,24−2毎に設けられ、現
在、ディスクドライブ24−1,24−2を使用してい
る入出力グループの識別子が設定される。
置16のディスクドライブ24−1,24−2毎に設け
られ、クォンタム識別子に設定されている現在のクォン
タムが開始した時刻T0 が設定される。更に次入出力タ
スク種別48は、ディスク装置16のディスクドライブ
24−1,24−2毎に設けられ、次のディスクドライ
ブに対する入出力依頼をシンプル・タスクとするかオー
ダード・タスクとするかが設定される。
シンプル・タスク又はオーダード・タスクは、ディスク
装置16におけるリ・オーダリング機能の効果を十分に
生かすために行う。
グ機能は、ディスクドライブ24−1又は24−2のそ
れぞれについて、実行待ちの入出力の中からシーク時間
と回転時間の和で与えられるポジショニング時間を最小
とする入出力を次に実行する入出力として選ぶ機能であ
る。
ディスク装置に入出力を依頼する場合、サンプル・タス
クを指定するとリ・オーダリングの対象としてよいこと
をディスクドライブに通知することになる。このサンプ
ル・タスクを指定した入出力を受けつけたディスクドラ
イブは、ポジショニング時間を最小とするような順番で
入出力をスケジュールする。
ポジショニング時間が最小となる入出力を選択するた
め、ある入出力が長い間待ちのままスケジュールされな
い現象が発生する。この現象を解消するためディスクド
ライブはシンプル・タスクの他にオーダー・タスクの機
能を備えている。
すると、ディスクドライブはそれまで受け継いでいた未
だ完了していない入出力を全て完了させた後に、オーダ
ード・タスクの入出力をスケジュールする。このためシ
ンプル・タスクの間にオーダード・タスクを混ぜること
で、入出力の最大応答時間の延長を押さえることが可能
となる。
理にあっては、クォンタムを切り替えた後の最初の入出
力は、オーダード・タスクを指定してディスク装置16
に依頼し、クォンタム切り替え前の未だ完了していない
入出力を完了させた後に次のクォンタムの入出力を実行
する。このためクォンタムに切り替えた後の2つ目以降
の入出力についてはシンプル・タスクを指定する。
しかない場合には、その入出力グループのスケジュール
を連続するためにクォンタムをリセットしながら繰り返
すことになる。この場合にあってはクォンタムをリセッ
トした直後の最初の入出力はオーダード・タスクで依頼
し、前のクォンタムで完了してない入出力を総て完了し
た後にリセット後のクォンタムの入出力をスケジュール
する。
力が競合する場合、及びひとつの入出力グループのみの
入出力のみを連続させる場合の最大応答時間の延長を防
止することができる。
ル機構20に設けている入出力スケジュール部32によ
るディスク・タイムシェアリングのスケジュールの一例
であり、余剰時間のない場合である。
について、ディスク・タイムシェアリング制御情報30
−1のスケジュール待ちグループキュー38−1〜38
−3に入出力要求が格納されている競合状態にあって
は、入出力グループG1〜G3毎に決定されたクォンタ
ム持ち時間τ1,τ2,τ3に従って、グループG1〜
G3の順に各入出力をスケジューリングしてディスク装
置16に入出力を依頼する。
τ1の間は、入出力グループG1の2つの入出力がスケ
ジュールされる。クォンタム切替えは、入出力完了時点
の時刻が現クォンタム切替え時刻を越えた時点で、次の
入出力グループのクォンタムに切替える。この切替えは
次式で判断する。 (現在クォオンタムの入出力開始時刻)< (現クォンタム開始時刻+クォンタム) (1) 即ち、(1)式を満たせば、現クォンタム種別に対応す
る入出力グループの入出力をディスク装置に依頼し、満
たさない場合は、次の入出力グループのクォンタムに切
替える。
時間τ2の間には、例えば6つの入出力がスケジュール
されている。更に時刻t2でクォンタム持ち時間τ2が
経過すると、入出力グループG3のクォンタム持ち時間
τ3への切り替えが行われ、例えば入出力グループG3
の3つの入出力がスケジュールされる。以下同様にクォ
ンタム持ち時間τ1,τ2,τ3を切り替えて、それぞ
れの入出力グループの入出力をスケジュールする。
みが連続した場合のタイムシェアリング処理の一例であ
る。図5において、時刻t0で入出力グループG1のみ
の入出力が図3のスケジュール待ちグループキュー38
−1に並んでおり、残りの入出力グループG2,G3の
スケジュール待ちキュー38−2,38−3は空であっ
たとする。
プG1のクォンタム持ち時間τ1で入出力グループG1
の2つの入出力をスケジュールした後、時刻t1でクォ
ンタム持ち時間τ1をリセットすることで次の同じ入出
力グループG1のクォンタムτ持ち時間1をリ・スター
トさせ、例えば3つの入出力をスケジュールする。
力のみ待ち状態にある時は、そのクォンタムをリセット
することで連続してひとつの入出力グループの入出力を
スケジュールする。
出力グループG1〜G3の入出力が競合状態となること
で、次のクォンタム持ち時間τ2への切り替えが行われ
ている。
ムシェアリングのスケジュールにおいて、ディスクドラ
イブに対する入出力の依頼は、クォンタムを切り替えた
直後の入出力はオーダード・タスクで依頼し、2回目以
降の次のクォンタム切替えまでの入出力はシンプル・タ
スクで依頼する。
4−2のリ・オーダリング機能を生かすためには、クォ
ンタムを切り替えた際に現在ディスクトドライブ24−
1,24−2に依頼している入出力要求が全て完了する
までの時間を予測し、この予測時間が切り替え後のクォ
ンタム以内であれば、切り替え後にクォンタムの入出力
を依頼し、予測時間が切り替え後のクォンタムを越えて
いた場合には、切り替え後の入出力を依頼せずに次のク
ォンタムへの切り替えを待つようにする。
グの恩恵を受けるためにはディスク入出力スケジュール
機構20において、できるだけ多くの入出力をディスク
装置16に依頼する環境を作るためである。
に対して複数の入出力要求を依頼することになる。本発
明のディスクタイムシェリングは、ディスク装置での入
出力処理時間の時分割制御を目的としているので、ディ
スク装置へ入出力要求を依頼する際には、依頼された複
数の要求をディスク装置で処理するのに必要な時間を予
測し、次のクォンタムに切替えた後に切替え後のクォン
タム種別の入出力をディスク装置に投入するか否か判断
する必要がある。
スクドライブに依頼している要求が次のクォンタム内で
完了して新たな入出力要求が投入できるか否かを判断す
るため残り時間τr を次式で算出する。 τr =T0 +τ−Tw −Tnow (2) 但し、T0 はクォンタム開始時刻(予測値) τはクォンタム割当時間 Tw は未処理I/O処理時間(予測値) Tnow は現在時刻 T0 =Ts +Tw (3) 但し、Ts は切替え前のクォンタム開始時刻 Tw =N×Ta (4) 但し、Nは未処理のI/O数 Ta はアクセス種別毎によるI/Oの平均処理時間 ここで未処理I/0とは、ディスク装置に入出力要求を
投入して完了応答が返っていなものをいう。この未処理
I/Oには、本発明の実施形態の場合、前未処理I/
O、前々未処理I/Oおよび全未処理I/Oがあり、そ
れぞれ直前のクォンタムの未処理I/O、2つ前のクォ
ンタムの未処理I/O、および全てのクォンタムを通じ
た未処理I/Oを意味する。
り、前クォンタムの残り時間予測により、現クォンタム
への切替えを判断した際に予測する。この時、ディスク
装置上で前クォンタムの未処理I/Oの処理が全て完了
するのに必要な時間Twを(4)式で予測し、ディスク
装置上での前クォンタムの終了時刻、即ち、現クォンタ
ムの開始時刻T0 を(3)式で予測する。
力スケジュール機構が新たな入出力を受け付けた場合、
またはディスク装置から入出力の完了応答を受けた場合
に算出され、残り時間Tr が Tr >0 あれば、残り時間ありと判断し、現クォンタムの入出力
をディスク装置に投入する。また Tr ≦0 であれば、残り時間なしと判断し、クォンタムを切替え
る。
出に使用するディスクドライブの平均入出力処理時間T
a の算出方法は、例えば直前のn個の入出力処理時間の
平均値とする。この場合nは例えばn=10の有限値で
あってもよし、例えばn=∞つまりシステム始動時から
の総ての入出力についてでもよい。
ては、入出力グループ毎に平均値を算出する方法と、全
ての入出力グループの平均値を算出する方法のいずれか
とすることができる。
ジショニング時間がデータ転送時間に比較して短いた
め、アクセスするデータ量とディスクドライブの転送能
力から平均入出力処理時間Ta を予測する。この場合、
ポジショニング時間はリ・オーダリング機能の恩恵をど
の程度受けられるか、即ちその時のディスクドライブで
のリ・オーダリング対象の入出力の数、個々の入出力要
求のアドレスの分散具合などによって違ってくるが、大
量データアクセスの場合、処理時間に占めるポジショニ
ング時間の割合が小さいため、この場合には処理時間を (平均ポジショニング時間)+(データ転送時間) と予測する。
待ち時間が3ms、平均シーク時間が5msのディスク
ドライブで1MBのデータをアクセスする場合、平均ポ
ジショニング時間が8msに対し、転送時間は52ms
なので、処理時間は両者を加えた60msとする。
測の例であり、シーケンシャル・クォンタムとランダム
・クォンタムを交互に繰り返す場合について、図6
(A)〜(J)と時間が経過する場合の例である。
ムからシーケンシャル・クォンタムへの切替え時に、次
のクォンタム開始時刻T0 を予測する例である。ランダ
ム・クォンタムに切替っている現在時刻Tnow で、ラン
ダム・クォンタムの残り時間不足になったとする。この
とき、前クォンタムのシーケンシャルI/Oが1要求、
現クォンタムのランダムI/Oが3要求の完了応答が返
ってきておらず、ディスク装置で処理中である。
装置に投入している処理中I/Oが全て完了するまでの
時間Tw1を(4)式で予測し、(2)式より次のシーケ
ンシャル・クォンタムの開始時刻T0 を決定する。また
クォンタムをシーケンシャル・クォンタムに切替える。
残り時間ありと判断する例である。図6(B)でシーケ
ンシャル・クォンタムに切替わった後、ディスク入出力
スケジュール機構がシーケンシャルI/Oを現在時刻T
now で1要求受け付けたとする。この時、ディスク装置
に依頼しているI/O要求で完了応答が返ってきていな
い未処理I/Oとして、ランダムI/Oの1要求があ
る。即、ディスク装置は、前クォンタムのランダムI/
Oの1要求を処理中である。
I/Oの1要求をディスク装置で完了するまでの時間T
w2を(4)式で予測し、図6(B)で求めたクォンタム
開始時刻T0 を使用して(2)式より残り時間τr2を図
6(F)のように求める。この場合、τr2>0であるこ
とから、シーケシンャルI/Oをディスク装置に投入す
ることができる。
残り時間なしと判断する例である。さらに時間が進み、
図6(G)の現在時刻Tnow でディスク入出力スケジュ
ール機構がシーケンシャルI/Oを1要求受け付けたと
する。この時、ディスク装置に依頼しているI/O要求
で完了応答が返ってきていない未処理I/Oとして、の
シーケンシャルI/Oの1要求がある。即、ディスク装
置は、現クォンタムのシーケンシャルI/Oの1要求を
処理中である。
シャルI/Oの1要求をディスク装置で完了するまでの
時間Tw3を(4)式で予測し、図6(B)で求めたクォ
ンタム開始時刻T0 を使用して(2)式より残り時間τ
r3を図6(J)のように求める。この場合、τr3<0で
あることから、残り時間なしと判断し、次のランダム・
クォンタムに切替える。
入出力要求の発行状態の説明図である。本発明にあって
は、あるクォンタムでディスク装置16を接続している
デバイスアダプタDAに送信された入出力要求に対し、
全ての応答が得られる前に、次のクォンタムの入出力要
求を開始するというパイプライン的な処理ができる。
を先行して送信しつづけると、入出力要求がデバイスア
ダプタDA側に溜りすぎて応答保証ができなくなる。逆
に、前に送信したI/O要求の全ての応答を待ってから
現クォンタムのI/O要求を送信するのでは、ディスク
装置16のキューに入出力要求を並べる時間が無駄にな
る。そこで、この実施形態では、連続する2個クォンタ
ムのみパイプライン処理できるようにしている。
ンタムτ1,τ2,τ3があった場合、図7(B)のよ
うに、前々回のシーケンシャルアクセス、前回の4つの
ランダムアクセスの応答が得られていない状態では、現
在のクォンタムτ3の要求は禁止する。
ル機構20に設けた入出力スケジュール部32による本
発明のディスクタイム・シェアリング制御処理のフロー
チャートである。
スクタイム・シェアリング制御処理は、入出力要求受付
部34で入出力要求部18より、ある入出力要求を受付
けた際の呼出し、或いは入出力完了処理部36でディス
ク装置16に依頼した入出力に対する完了報告があった
ときからの呼出しを受けて動作する。
構20において、ランダムアクセスとシーケンシャルア
クセスに分けて入出力グループG1,G2を構成し、競
合した2つの入出力グループ間でクォンタムτ1,τ2
を順番に切替えてディスクドライブ24−1のタイムシ
ェアリングを行なう場合を説明する。
れているクォンタム識別子i=1に対応するスケジュー
ル待ちグループキュー38−1を調べ、待ちの入出力の
有無を判定する。スケジュール待ちグループキュー38
−1に待ちの入出力があれば、ステップS2に進み、現
クォンタムはシーケンシャルか否かチェックする。
S3に進み、デバイスアダプタDAのバッファに空きが
あるか否かチェックし、空きがなければ処理を終了す
る。デバイスアダプタDAのバッファに空きがあれば、
ステップSに進む。またランダムアクセスの場合にはス
テップS2からステップS4に進む。
了の入出力があるか否かチェックする。いま、クォンタ
ム識別子i=1が最初のスケジュールであるとすると、
前クォンタムに未完了入出力はないことから、ステップ
S5に進み、残り時間τrを(1)(2)式から求め、
τr>0でいあればステップS6で残り時間ありとして
ステップS7に進む。
スケジュール待ちグループキュー38−1の先頭の入出
力をディスク装置16のディスク入出力処理部22を介
してディスクドライブ24−1に依頼し、次入出力タス
ク種別情報48のタスクをシンプルタクスに設定する。
のスケジュール待ちグループキュー38−1に待ちの入
出力があるか否かチェックし、待ちがあればステップS
2からステップS7の処理を繰り返す。
ム持ち時間τ1における入出力のスケジュールでステッ
プS6で残り時間無しが判別されるとステップS8に進
み、シーケンシャル入出力グループG2のスケジュール
待ちグループキュー38−2に待ちの入出力があるか否
かチェックする。
ュール待ちグループキュー38−2に入出力の待ちがあ
るとステップS12に進み、次の入出力グループG2の
クォンタム持ち時間τ2に切替え、次入出力タスク種別
情報48について、次のタスクをオーダードに設定す
る。
ル待ちグループキュー38−2に入出力の待ちがないと
ステップS9に進み、現在の入出力グループG1のクォ
ンタム持ち時間τ1をリセットし、次出力タスク種別情
報48について、次のタスクをオーダードに設定する。
同時に、クォンタム開始時刻To を予測し、現クォンタ
ムの開始時刻に予測したT0 を設定する。この場合、現
クォンタムしゆ々つはそのままである。
出力グループG1のスケジュール待ちグループキュー3
8−1が空になってステップS1で待ちキュー無しが判
別されると、ステップS10に進み、他のクォンタムに
ついてスケジュール待ちグループキュー38−2に待ち
の入出力があるか否かチェックする。
あればステップS11に進み、全てのクォンタムに未完
了の入出力があるか否かチェックし、無ければステップ
S12に進む。
のクォンタム持ち時間τ1に切替え、次タスクをオーダ
ードに設定し、現クォンタム種別に次のクッオンタム種
別を設定し、更に、クォンタム開始時刻T0 を予測し、
現クォンタム開始時刻に予測したT0 を設定する。
後の入出力グループG1の最初の入出力要求をオーダー
ドでディスクドライブ24−1にステップS1〜S7の
処理を通じて依頼することになる。
た場合、又はステップS9で現在のクォンタムを継続す
るためのリセットを行った場合には、ステップS13に
おいて、現在のクォンタム余剰時間を他のクォンタムに
配分するクォンタムの割当制御を行う。
割当時間制御をサブルーチンとして示したフローチャー
トである。
あっては、まずステップS1で現在のクォンタム割当時
間を使い切ることを「達成」と定義し、割当時間を使い
切った達成か否かチェックする。割当時間の達成であれ
ばステップS2に進み、現クォンタム自身のリセットで
初期配分に設定した後、割当時間の達成の有無を示す達
成フラグを、達成に対応してオンする。
あった場合には、余剰時間があることからステップS3
に進み、他のクォンタムに割当時間の達成があるか否か
チェックする。他のクォンタムに割当時間の達成があれ
ば、ステップS4に進み、現クォンタムの余剰時間を他
の達成クォンタムに配分する。そしてステップS5で現
クォンタムのリセットで初期配分を設定し、未達成であ
ることから達成フラグをオフとする。
のクォンタムがなかった場合には、ステップS4の余剰
分の配分は行わず、ステップS5に進んで現クォンタム
のリセットで初期配分を設定した後、未達成であること
から達成フラグをオフする。
ォンタムの余剰時間を他のクォンタムに配分する配分処
理の説明図であり、この実施形態にあっては配分先のク
ォンタム持ち時間を余剰時間に応じて延長するようにし
たことを特徴とする。
タムQ1,Q2,Q3についてクォンタム割当時間の初
期設定がτ1,τ2,τ3であったとする。このような
初期設定に対し実際の入出力による結果が、図10
(B)の実績のように、クォンタムQ1は初期設定の割
当時間τ1を達成したが残り2つのクォンタムQ2,Q
3は初期設定の割当時間時間τ2,τ3より短い実績と
なり、余剰時間Δτが生じたとする。
野設定において、割当時間を達成したクォンタムQ1の
割当時間τ1は、初期設定τ1に実績で生じた余剰時間
Δτを加えた τ1=τ1+Δτ とし、余剰時間Δτ分だけ延長する。これに対し割当時
間が達成できなかったクォンタムQ2,Q3について
は、図10(B)の実績の時間τ2,τ3を設定する。
ムQ1〜Q3において、クォンタムQ1のみの入出力が
続いた場合の割当時間の制御処理である。図11(A)
は初期設定であり、クォンタムQ1,Q2,Q3につい
て割当時間τ1,τ2,τ3が設定されている。これに
対し図11(B)の実績のようにクォンタムQ1のみの
入出力が行われたとすると、このとき余剰時間Δτが生
ずる。
は、クォンタムQ1の初期設定の割当時間τ1に実績で
生じた余剰時間Δτを加えた τ1=τ1+Δτ が設定され、余剰時間Δτが延長され、結果として全て
クォンタムQ1の割当時間に配分される。
ーチャートに従って、図10,図11のように、余剰時
間を他のクォンタムの割当時間を延長することにより配
分する場合について、具体的な本発明のタイムシェアリ
ング制御処理をタイムチャートで説明する。
Q3について、それぞれの割当時間を達成する多量の入
出力要求が流れた場合のタイムチャートである。
T3,・・・で繰り返されるクォンタムQ1,Q2,Q
3の切替順番であり、このクォンタムQ1〜Q3に対し
図12(B)のように、クォンタム時間の初期割当τ1
=30、τ2=20、τ3=20となっている。この初
期割当は、例えばミリ秒を単位とするの時間割当とな
る。
1サイクルにおいては、再割当として初期割当と同じ割
当時間「30,20,20」が行われ、これに対し図1
2(D)のように実績はクォンタムQ1の「30」のみ
であったとする。このため図12(E)のように、クォ
ンタムQ1が達成であることから達成フラグがオンして
「1」と変化している。
グの変化を表わしている。この場合、クォンタムQ2,
Q3の達成フラグは前と同じ「1」のままである。した
がって図12(F)のように、クォンタムQ1の達成に
よって余剰時間による配分量はなく、したがって達成フ
ラグが「1」となっているクォンタムQ2,Q3に対す
る配分量は共に「0」となっている。
Q2に実績「20」があり、このため達成フラグは「1
/1」と変化しているが、この場合にもクォンタムQ
1,Q3に対する配分量は「0」である。更にT3サイ
クルにあってはクォンタムQ3に実績「20」があり、
達成フラグは「1/1」と変化しているが、この場合に
もクォンタムQ1,Q2に対する配分量は「0」であ
る。
初期割当を越える多量の入出力要求が流れ続ける場合に
は、3つのクォンタムQ1〜Q3間での時間配分は行わ
れず、初期割当が繰り返し使用されることになる。
Q1〜Q3について、同じ初期割当τ1=30、τ2=
20、τ3=20であり、クォンタムQ1,Q3の入出
力要求の流れは「10」であり、クォンタムQ2には初
期割当τ2=20以上の多量の入出力要求が流れた場合
である。
ルにあっては、図13(C)の再割当としてクォンタム
Q1,Q2,Q3について、再割当「30,20,2
0」が行われており、図13(D)の実績として「1
0」の入出力要求が流れたとすると、この場合図13
(E)の達成フラグは実績が未達成であることから「1
/0」とオフになる。
「10」による余剰分が「20」であることから、この
とき達成フラグが1にオンしているクォンタムQ2,Q
3に均等に「10」ずつ配分される。
2サイクルの再割当は、初期割当にT1サイクルでの配
分量を加算した「30,30,30」となる。T2サイ
クルにあっては、クォンタムQ2の実績は「30」と割
当時間を達成し、達成フラグは「1/1」と変化する。
この場合、余剰分はないことから配分量は「0,0,
0」となる。
ルにあっては、再割当としてクォンタムQ1,Q3につ
いては1つ前のT2サイクルでの再割当「30,30」
に配分量「0,0」を加えた再割当「30,30」とな
るが、クォンタムQ2にあってはT2サイクルで実績が
「30」となって、達成していることから、リセットに
より初期割当「20」が再割当される。
績が「10」であり、未達成であることから達成フラグ
はオフとなって「1/0」と変化する。この場合のクォ
ンタムQ3の余りは「20」であり、達成フラグが
「1」となっているクォンタムQ2に配分量「20」と
して割り当てられる。
ルでは、1つ前のT3サイクルの再割当「30,20,
30」に配分量「0,20,0」を加算した再割当「3
0,40,20」が行われる。この場合のクォンタムQ
1の実績は「0」であることから、未達成であり、達成
フラグは0であるから「0/0」と変化する余り「2
0」を生ずる。
はクォンタムQ2のみであることから、余り分は配分量
「20」としてクォンタムQ2に配分される。
4サイクルの再割当と配分量の加算により「30,6
0,20」が再割当され、クォンタムQ2の実績は「6
0」であることから、達成フラグは「1/1」とオン状
態にあり、この場合の配分量は全て0である。
5サイクルによるクォンタムQ2の割当時間「60」の
達成で再割当は初期割当「20」にリセットされてお
り、クォンタムQ3の実績「10」による余り10はク
ォンタムQ2に配分量「10」として割り当てられる。
ルの再割当と配分量を加算した「30,30,20」が
再割当され、クォンタムQ1の実績は「10」であり、
この場合の余り「20」は達成フラグが「1」にあるク
ォンタムQ2に配分量20として配分される。以下同様
な処理を繰り返す。
Q3に割当より少ない入出力として例えば「20,1
0,10」が繰り返し流れて全て未達成となった場合の
タイムチャートである。
図14(A)のクォンタムQ1,Q2,Q3の初期割当
は、図14(B)のように「30,20,20」であ
り、図14(C)の最初の再割当は同じく「30,2
0,20」となる。
(D)のように「20」と未達成であり、図14(E)
の達成フラグはオフとなって「1/0」と変化する。こ
の場合の余り「10」は、達成フラグが「1」にオンし
ているクォンタムQ2,Q3にそれぞれ「5,5」と図
14(F)のように配分される。
ルでは、前のT1サイクルの再割当「30,20,2
0」に配分量「0,5,5」をそれぞれ加算した「3
0,25,25」が再割当される。この場合、クォンタ
ムQ2の実績は「10」であり、未達成であることから
達成フラグがオフとなって「1/0」と変化し、この場
合の余り「15」は達成フラグが「1」にオンしている
クォンタムQ3に配分量「15」として割り当てられ
る。
ルでは、1つ前のT2サイクルの再割当に配分量をそれ
ぞれ加算した「30,20,40」が再割当され、クォ
ンタムQ3の実績は「10」で未達成であるため、達成
フラグはオフとなって「1/0」と変化する。
余り「30」を持つが、達成フラグが「1」となる達成
状態のクォンタムがないため、余り「30」の再配分は
行われない。
と同じ「30,20,20」が再割当される。このよう
に達成フラグが全て「0」にオフになった後は、いずれ
のクォンタムで実績が未達成となって余りを生じても、
他のクォンタムに対する配分は行われない。
ォンタムの余剰時間を他の達成クォンタムに配分する場
合の配分処理の他の実施形態であり、図10,図11に
あっては余剰時間に対応して割当時間を達成した他のク
ォンタムの割当時間を延長させているが、この実施形態
にあっては割当時間は固定したままで配分先のクォンタ
ムの頻度を増加させるようにしたことを特徴とする。
Q2,Q3の割当時間の初期設定τ1,τ2,τ3であ
り、このとき図15(B)のように、実績がクォンタム
Q1にあってはτ1を達成するが、クォンタムQ2,Q
3にあっては初期設定より短い実績となり、その結果、
余りΔτを発生している。
は、クォンタムQ2,Q3の未達成で生じた余剰時間Δ
τとクォンタムQ1の初期設定の割当時間τ1を比較
し、余剰時間Δτが初期設定割当時間τ1以上であれ
ば、そこに達成したクォンタムQ1の初期設定割当時間
τ1を再設定する。
(D)のようになり、この場合の余りは初期設定割当時
間τ1より短いことから、図15(E)で次の設定を初
期設定割当時間を使用して行う。
ォンタムQ1,Q2,Q3の割当時間の間に、割当時間
を達成したクォンタムQ1については2回初期設定割当
時間τ1が設定されることとなり、これによってクォン
タムQ2,Q3で生じた余りに対応して、割当時間を達
成したクォンタムQ1の頻度を増加させることができ
る。
タムの頻度を増加させる場合について、クォンタムQ1
のみの入出力が行われた場合である。
し、図16(B)の実績はクォンタムQ1の割当時間T
1のみとなり、余剰時間が初期設定割当時間τ1以上で
ある限り、図16(C)(D)、図16(E)(F)の
ように、実績のあるクォンタムQ1の初期設定割当時間
τ1の再設定が繰り返され、余剰時間に応じて頻度が増
加される。そして図16(F)で余剰時間が不足した場
合には、図16(G)のように時刻t4で初期設定割当
時間τ1,τ2,τ3の再設定を行って同様な処理を繰
り返す。
力スケジュール機構20に設けているディスク・タイム
シェアリング制御機構の入出力グループについて、更に
上位グループでまとめるようにした実施形態の説明図で
ある。
リング制御情報において、この例では入出力グループと
してランダムキュー50、シーケンシャルキュー52,
54、コピーリードキュー56、コピーライトキュー5
8、リビルドキュー60の6つを設けた場合を例にとっ
ている。
るキューに対し、この実施形態にあっては、上位グルー
プとして正常系グループ62、第1異常系グループ64
及び第2異常系グループ66を設けている。正常系グル
ープ62は日常的な入出力要求をまとめたもので、ここ
にはランダムキュー50、シーケンシャルキュー52、
シーケンシャルキュー54が含まれる。
務をまとめたもので、コピーリードキュー56とコピー
ライトキュー58が含まれる。更に第2異常系グループ
66は故障時の復旧処理を対象としており、アレイディ
スクの内の故障ディスクを交換した際のリビルド処理の
入出力要求に使用するリビルドキュー60が含まれる。
て分けた正常系グループ62、第1異常系グループ64
及び第2異常系グループ66のそれぞれに、優先度P
1,P2,P3を割り付けることができる。ここで優先
度は正常系グループ62のP1が最も高く、続いて第1
異常系グループ64のP2となり、第2異常系グループ
66が最も低い優先度P3となる。
ある入出力グループのクォンタムを実行して余剰時間を
生じた場合、余剰時間の配分先を 上位グループ内で配分して、他の上位グループへの配
分を禁止 他の上位グループへの配分を許可 と2つに分けた配分制御が基本的にできる。
の上位グループとなる第1異常系グループ64及び第2
異常系グループ66に対する余剰時間の配分を禁止して
おけば、ランダムキュー50、シーケンシャルキュー5
2,54のいずれかのクォンタムで余剰時間が生じた場
合、グループ内の他のクォンタムに余剰時間を配分で
き、第1異常系グループ64や第2異常系グループ66
に余剰時間が配分されてしまうことを禁止し、正常系グ
ループ62におけるランダムキュー50のレスポンス時
間とシーケンシャルキュー52,54のスループットI
OPSをそれぞれ保証することができる。
常系グループ66については、外部の上位グループへの
余剰時間の配分を許容しておく。この場合に上位グルー
プに設定している優先度P1,P2,P3を利用し、優
先度の高い上位グループへの余剰時間の配分は許可し、
優先度の低い外部の上位グループへの配分は禁止するよ
うにしておく。
ーリードキュー56またはコピーライトキュー58のい
ずれかで余剰時間が生じた場合には、優先度の高い正常
系グループ62に余剰時間を配分し、その中の入出力要
求の多い現時点で割当時間を達成している入出力グルー
プに割当時間の延長または頻度の増加によって余剰時間
を配分する。
ュー60の入出力要求で余剰時間が生じた場合、まず最
上位の正常系グループ62に配分し、もし正常系グルー
プ62の入出力グループの中に割当時間達成がなけれ
ば、次に優先度の高い第1異常系グループ64に余剰時
間を配分すればよい。
系グループ62に下位の第1異常系グループ64及び第
2異常系グループ66で生じた余剰時間を吸い上げてラ
ンダムアクセスのレスポンス時間とシーケンシャルアク
セスのスループットIOPSを保証させることができ
る。
の上位グループに分けた場合の余剰時間の配分を決める
配分モードの設定条件を階層構造で表わしている。
は、上位グループに含まれる入出力グループの一部に余
剰があるか、全てに余剰があるかに分けられる。
プに余剰がある場合には、次の階層としてグループ内で
配分するか、他のグループへ配分するか、配分なしとす
るかの3つの内のいずれか1つが指定できる。
した場合には、更に下位の階層に示すように、優先度に
よる配分、全グループによる配分、任意の指定グループ
に対する配分のいずれか1つを指定することができる。
グループに余剰がある場合についても、次の階層のグル
ープ内での配分、他のグループへの配分、配分なしのい
ずれかが指定でき、他のグループへ配分する場合には、
次の階層の優先度による配分、全グループによる配分、
任意の指定グループに対する配分のいずれかを指定する
ことができる。
分については、優先度の高い上位グループの順に、その
上位グループに属している複数の入出力グループの中で
割当時間を達成したグループを調べ、達成したグループ
があればそのグループに割当時間を配分する。
に、その上位グループに含まれる複数の入出力グループ
について割当時間の達成を調べ、達成した入出力グルー
プに余剰時間を配分するようにしてもよい。
出力グループで余剰時間が生じた場合の配分モードは、
必要に応じて適宜の指定をとることができる。
は、上位グループを形成していない場合に、必要のない
入出力グループに余剰時間が配分され、必要とする入出
力グループへの配分が損なわれることを基本的に防止す
るためである。
業務となる優先度がP1と最も高い正常系グループ62
に余剰時間を集中させることを意図し、例えば正常系グ
ループ62については他の外部グループへの配分を禁止
し、第1異常系グループ64と第2異常系グループ66
については優先度の高い順に従った上位グループへの配
分を指定すればよい。
1異常系グループ64及び第2異常系グループ66につ
いて、正常系グループ62のグループ外への配分は禁止
し、第1異常系グループ64及び第2異常系グループ6
6については優先度の高いグループから順番に配分先を
調べて配分する配分モードを指定した場合のタイムチャ
ートである。
切替であり、正常系、第1異常系、第2異常系の順番に
繰り返している。この場合の優先度は、図19(B)の
ように、正常系が最も高いP1、続いて第1異常系が次
のP2、第2異常系が最も低いP3となっている。
(C)のクォンタムのように、ランダムアクセス、シー
ケンシャル1、シーケンシャル2、コピーリードアクセ
スOPCR、コピーライトアクセスOPCW、リビルド
Rebldを繰り返している。また、この場合の初期設
定となる配分比は、正常系は「30,20,20」、第
1異常系は「10,10」、第2異常系は「10」であ
る。これに対し図19(E)のような実績と余剰時間の
再配分が行われる。
クセスRANとシーケンシャルSeq1が実績「10,
10」で未達成であり、それぞれ余剰時間「20,1
0」を生じており、シーケンシャルSeq2の実績が
「30」であったとすると、余剰分の合計が「30」
「50」となる。
アクセスOPCRとコピーライトアクセスOPCWの初
期割当は共に「10,10」であり、この場合、実績が
「5,5」であることから、グループ全体としての余剰
分は「10」となっている。また第2異常系のリビルド
アクセスRebldは、初期割当が「10」で実績が
「10」であることから余剰はない。
スRANの実績が「30」、次のシーケンシャルアクセ
スSeq1の実績が「10」で、それぞれ余剰時間「2
0,10」を生じており、更に、既に処理の済んだ第1
異常系で余剰時間「10」があることから、これらを加
えた合計余剰時間「60」がシーケンシャルアクセスS
eq2に割り当てられる。
ループを2以上の上位グループに分けた場合のクォンタ
ム割当時間制御のフローチャートであり、図9のフロー
チャートと同様、図8のステップS13におけるクォン
タムの割当時間制御のサブルーチンとして実行される。
の割当時間を使い切った達成か否かチェックし、割当時
間を達成していればステップS2に進み、現クォンタム
のリセットで初期配分を設定し、達成フラグをオンす
る。
場合には、ステップS3に進み、上位グループ外に配分
するか否かをチェックする。ここで現クォンタムについ
て上位グループ外への配分が設定されていた場合には、
ステップS4に進み、配分先の上位グループの選択処理
を行う。
えば優先度の高い順番に調べていく。ステップS5で配
分先として選択した上位グループに属する入出力グルー
プの中に割当時間を達成したクォンタムがあるか否かチ
ェックし、もし達成したクォンタムがあればステップS
6に進み、現クォンタムの余剰時間をその達成クォンタ
ムに配分する。
セットで初期配分設定を行った後、現クォンタムが割当
時間未達成であることから達成フラグをオフする。
スグループ、更に2つのコピーアクセスグループの4つ
に分け、それぞれの割当時間の比率を140ms,40
ms,10ms,10msとしてシミュレーションした
場合のスループットIOPS(回)とレスポンス時間
(ms)のタイムチャートである。
スは継続的に行っており、またランダムアクセスの時間
的な変化を与えるため2.5秒間隔で入出力要求数を1
00IOPS,160IOPS,40IOPS,100
IOPSと変化させ、これを10秒ごとに繰り返してい
る。
求がないものとしている。更に、最初のコピーアクセス
は、シミュレーション開始から10秒後の時刻t1から
流れ始める。また2つめのコピーアクセスはシミュレー
ション開始から20秒後の時刻t3で流れ始める。更
に、このシミュレーションにあっては、図3のようにデ
ィスク装置16は2台のディスクドライブでRAID1
のミラーディスクを構成している。
ランダムアクセスのスループットは特性100のように
なり、また1つめのコピーアクセスのスループットは特
性200となり、更に2つめのコピーアクセスのスルー
プットは特性300となる。更にランダムアクセス要求
特性100に対するそのレスポンス時間は、特性400
のようになる。
0秒の間でランダムアクセスのスループット特性100
は開始後5〜6秒で高くなり、160IOPS程度とな
る。このときの平均レスポンス時間は、特性400のよ
うに、ランダムアクセスの要求数であるスループットI
OPSが高いときはやや長くなり、25ms程度まで上
がっている。
ーアクセスが特性200,300のように流れている。
この2つのコピーアクセスは多量の入出力要求があるこ
とで流れ続けているが、それぞれの割当時間比は全体の
5%ずつに制限されている。
セスの入出力要求数が少なくなると(負荷が軽くなる
と)、ランダムアクセスの余剰時間が2つのコピーアク
セスに配分され、特性200,300のようにそれぞれ
のスループットIOPSが上昇している。このため、ラ
ンダムアクセスのスループット特性100とコピーアク
セスのスループット特性200,300の間では波形が
逆の形となっている。
してランダムアクセス、シーケンシャルアクセス、コピ
ーアクセス、RAIDのリビルド処理を例にとるもので
あったが、これ以外に同一性能要件の論理ボリュームご
とのグループ分け等、必要に応じて適宜の入出力のグル
ープ分けを行うことができる。
ドライブのオーダード機能を活用する際の入出力要求の
依頼として、シンプルタスクとオーダードタスクを使い
分ける場合を例にとるものであったが、本発明はこれに
限定されず、リオーダード機能を持たないディスクドラ
イブについても適用することができる。
うにアレイディスク装置14に入出力要求部18とディ
スク入出力スケジュール機構20を設けた場合を例にと
っているが、サーバ側に入出力要求部18を設けたり、
更にサーバ側に入出力要求部18とディスク入出力スケ
ジュール機構20を設けるようにしてもよいことはもち
ろんである。
い適宜の変形を含み、更に実施形態に示した数値による
限定は受けない。
シェアリング装置及びその方法によれば、ランダムアク
セス、シーケンシャルアクセス、コピーアクセス等の複
数の入出力グループに分けてディスク装置を占有する割
当時間としてのクォンタムを割り当てた場合、特定の入
出力グループで入出力要求が少なくなってクォンタムに
余剰時間が生ずると、他の入出力要求の多い入出力グル
ープに余剰時間がダイナミックに配分され、そのためデ
ィスク装置に遊び時間を生ずることなく効率良くアクセ
スでき、特にランダムアクセスについてはレスポンス時
間を保証し、またシーケンシャルアクセスについてはス
ループットIOPSを保証することができる。
ープを更に2以上の上位グループでまとめることで、例
えば特定の上位グループに他の上位グループの余剰時間
を集中して配分することができ、配分先の上位グループ
に日常業務として行うランダムアクセスやシーケンシャ
ルアクセスを含めておけば、これら必要性の高い入出力
グループに余剰時間が生じても、他の非日常的な入出力
グループへの配分は行われず、逆に非日常的な入出力グ
ループで生じた余剰分を日常的なランダムアクセスやシ
ーケンシャルアクセスに集中して配分でき、ランダムア
クセスのレスポンス時間とシーケンシャルアクセスのス
ループットIOPSを確実に保証することができる。
ック図
形態の機能ブロック図
3のディスク・タイムシェアリング処理のスケジュール
説明図
図3のディスク・タイムシェアリング処理のスケジュー
ル説明図
るための残り時間の計算内容の説明図
力要求をディスク装置に送信する説明図
ローチャート
ト
タム持ち時間を延長する割当時間制御の説明図
時間のみを延長する割当時間制御の説明図
続ける場合の図3による割当制御のタイムチャート
る場合の図3による割当時間制御のタイムチャート
ォンタムに流れる場合の図3による割当時間制御のタイ
ムチャート
タムの頻度を増加させる割当時間制御の説明図
のみを増加させる割当時間制御の説明図
で複数の入出力グループを上位グループに分けた本発明
の他の実施形態の説明図
配分モードを示した階層構造の説明図
グループとし、優先度の高いグループに余剰時間を配分
する場合の割当時間制御のタイムチャート
当時間制御のフローチャート
ス、2つのコピーアクセスを各々入出力グループとして
本発明の割当時間制御を実行した場合のスループットI
OPSとレスポンス時間の計測結果の説明図
情報 32:入出力スケジュール部 34:入出力受付部 35:割当時間制御部 36:入出力完了処理部 38−1〜38−3:スケジュール待ちグループキュー 40−1〜40−3:完了待ちグループキュー 42−1〜42−3:グループ用クォンタム 44:現クォンタム種別情報 46:現クォンタム開始時刻 48:次入出力タスク種別情報 50:ランダムキュー 52,54:シーケンシャルキュー 56:コピーリードキュー 58:コピーライトキュー 60:リビルドキュー 62:正常系グループ 64:第1異常系グループ 66:第2異常系グループ
7)
ャルアクセスを同時に行った場合は、受け付けた入出力
要求をFIFOを用いたキューで処理するため、ランダ
ムアクセスがディスク装置を使用できる時間およびシー
ケンシャルアクセスがディスク装置を使用できる時間を
保証する仕組みがない。
出力の性能は低下する。例えば、ミラー構成をとるRA
ID1の場合、リビルディングは、ディスクドライブの
障害により1台になったディスクドライブから交換され
た新しいディスクドライブへデータをコピースる処理で
あり、コピー元のディスクドライブに対しリード入出力
が発生する。このリード入出力が通常の入出力を待たせ
ることになり、通常の入出力の性能が低下する。
チは2つある。第1のアプローチは、通常の入出力に影
響を与えないように、十分長いインターバルで、十分小
さいデータをコピーする。この場合、通常の入出力への
影響は小さくすることができるが、リビルディング完了
までの時間が長くなる。例えば9GBのディスクドライ
プで構成するRAID1の場合、10時間前後が必要と
なる。
アリング装置によれば、ランダムアクセス、シーケンシ
ャルアクセス、コピー(シーケンシャル)等の複数の入
出力グループに分けてクォンタムを割当てた場合、特定
の入出力グループでの入出力要求が少なくなってクォン
タムに余剰時間が生じた場合、他の入出力要求の多い入
出力グループのクォンタムに余剰時間がダイナミックに
配分され、そのためディスク装置に遊び時間を生ずるこ
となく効率よくアクセスできる。
ス、シーケンシャルアクセス、コピーアクセス等に分け
ていた場合、シーケンシャルアクセスで余剰時間が生
じ、このときコピーアクセスの入出力要求がたまたま多
かったとすると、余剰時間はコピーアクセスに配分され
てしまい、その結果、ランダムアクセスのレスポンス時
間が大幅に伸びてしまうこと恐れがある。
プに優先度を設定し、割当時間制御部35は、優先度の
高い上位グループから順番に入出力要求の過密具合を調
べ、入出力処理要求の多い上位グループに他の上位グル
ープの余剰時間を配分する。
低い上位グループから順番に入出力要求の過密具合を調
べ、入出力処理要求の多い上位グループに他の上位グル
ープの余剰時間を配分してもよい。
ループから優先度の高い上位グループに対してのみ余剰
時間を配分することで、例えば異常系のコピーアクセス
で生じた余剰時間を正常系のランダムアクセス又はーケ
ンシャルアクセスに反映し、レスポンス時間又はスルー
プットを保証することができる。
任意の上位グループに他の上位グループの余剰時間を配
分してもよい。割当時間制御部35は、ある上位グルー
プに属する入出力処理要求の少ない入出力グループの余
った割当時間を、他の上位グループに属する入出力処理
要求が多い入出力グループの割当時間を延長させるこ
と、又は入出力グループの割当時間を変えることなく頻
度を増やすことで配分する。
レージシステムのブロック図である。図2において、ス
トレージシステムは、デバイス制御装置12、アレイデ
ィスク装置14、及びディスク装置16で構成される。
デバイス制御装置12に対しては、ホスト10−1〜1
0−mが接続されており、ホスト10−1〜10−nの
アプリケーションにより入出力要求をデバイス制御装置
12に対し行っている。
配分には、(1) 余剰時間によるクォンタムの延長(2) 余剰時間によるクォンタムの頻度増加 の2つがある。
ない入出力グループの余った時間を、処理要求の多い別
の入出力グループのクォンタムを延長することで配分す
るか、或いは、クォンタムを変えることなく頻度を殖や
すことで配分する。
情報30−1について説明すると、この実施形態にあっ
ては入出力グループをG1,G2,G3の3つに分けて
定義した場合を例にとっており、入出力グループG1〜
G3に対応してスケジュール待ちグループキュー38−
1〜38−2が設けられる。このスケジュール待ちグル
ープキュー38−1〜38−3には、入出力要求受付部
34で受けつけた入出力要求がキューを構成するFIF
Oに格納することで並ぶ。
完了待ちグループキュー40−1,40−2,40−3
が設けられる。完了待ちグループキュー40−1,40
−3には、ディスク装置16への入出力依頼が完了し、
ディスク装置16から入出力完了応答を受けていない入
出力要求がキューを構成するFIFOに格納することで
並んでいる。
正常系処理に属し、コピー/バックアップ処理やリビル
ディング処理は異常系処理に属する。このためディスク
タイムシェアリング制御情報30−1の入出力グループ
としては、例えばランダムアクセスグループ、シーケン
シャルアクセスグループ、及び異常系グループに分ける
ことができる。
報30−1には、現クォンタム種別44、現クォンタム
開始時刻46、更に次入出力タスク種別48が設けられ
る。この現クォンタム種別44はディスク装置16のデ
ィスクドライブ24−1,24−2毎に設けられ、現
在、ディスクドライブ24−1,24−2を使用してい
る入出力グループの識別子が設定される。
ディスク装置に入出力を依頼する場合、シンプル・タス
クを指定するとリ・オーダリングの対象としてよいこと
をディスクドライブに通知することになる。このシンプ
ル・タスクを指定した入出力を受けつけたディスクドラ
イブは、ポジショニング時間を最小とするような順番で
入出力をスケジュールする。
ポジショニング時間が最小となる入出力を選択するた
め、ある入出力が長い間待ちのままスケジュールされな
い現象が発生する。この現象を解消するためディスクド
ライブはシンプル・タスクの他にオーダード・タスクの
機能を備えている。
について、ディスク・タイムシェアリング制御情報30
−1のスケジュール待ちグループキュー38−1〜38
−3に入出力要求が格納されている競合状態にあって
は、入出力グループG1〜G3毎に決定されたクォンタ
ム割当時間τ1,τ2,τ3に従って、グループG1〜
G3の順に各入出力をスケジューリングしてディスク装
置16に入出力を依頼する。
時間τ2の間には、例えば6つの入出力がスケジュール
されている。更に時刻t2でクォンタム割当時間τ2が
経過すると、入出力グループG3のクォンタム割当時間
τ3への切り替えが行われ、例えば入出力グループG3
の3つの入出力がスケジュールされる。以下同様にクォ
ンタム割当時間τ1,τ2,τ3を切り替えて、それぞ
れの入出力グループの入出力をスケジュールする。
みが連続した場合のタイムシェアリング処理の一例であ
る。図5において、時刻t0で入出力グループG1のみ
の入出力が図3のスケジュール待ちグループキュー38
−1に並んでおり、残りの入出力グループG2,G3の
スケジュール待ちグループキュー38−2,38−3は
空であったとする。
プG1のクォンタム持ち時間τ1で入出力グループG1
の2つの入出力をスケジュールした後、時刻t1でクォ
ンタム割当時間τ1をリセットすることで次の同じ入出
力グループG1のクォンタム持ち時間τ1をリ・スター
トさせ、例えば3つの入出力をスケジュールする。
出力グループG1〜G3の入出力が競合状態となること
で、次のクォンタム割当時間τ2への切り替えが行われ
ている。
スクドライブに依頼している要求が次のクォンタム内で
完了して新たな入出力要求が投入できるか否かを判断す
るため残り時間τr を次式で算出する。 τr =T0 +τ−Tw −Tnow (2) 但し、T0 はクォンタム開始時刻(予測値) τはクォンタム割当時間 Tw は未処理I/O処理時間(予測値) Tnow は現在時刻 T0 =Ts +Tw (3) 但し、Ts は切替え前のクォンタム開始時刻 Tw =N×Ta (4) 但し、Nは未処理のI/O数 Ta はアクセス種別毎によるI/Oの平均処理時間 ここで未処理I/0とは、ディスク装置に入出力要求を
投入して完了応答が返ってこないものをいう。この未処
理I/Oには、本発明の実施形態の場合、前未処理I/
O、前々未処理I/Oおよび全未処理I/Oがあり、そ
れぞれ直前のクォンタムの未処理I/O、2つ前のクォ
ンタムの未処理I/O、および全てのクォンタムを通じ
た未処理I/Oを意味する。
力スケジュール機構が新たな入出力を受け付けた場合、
またはディスク装置から入出力の完了応答を受けた場合
に算出され、残り時間τr がτ r >0 あれば、残り時間ありと判断し、現クォンタムの入出力
をディスク装置に投入する。またτ r ≦0 であれば、残り時間なしと判断し、クォンタムを切替え
る。
テップS3に進み、デバイスアダプタDAのバッファに
空きがあるか否かチェックし、空きがなければ処理を終
了する。デバイスアダプタDAのバッファに空きがあれ
ば、ステップS4に進む。またランダムアクセスの場合
にはステップS2からステップS4に進む。
ル待ちグループキュー38−2に入出力の待ちがないと
ステップS9に進み、現在の入出力グループG1のクォ
ンタム持ち時間τ1をリセットし、次入出力タスク種別
情報48について、次のタスクをオーダードに設定す
る。同時に、クォンタム開始時刻To を予測し、現クォ
ンタムの開始時刻に予測したT0 を設定する。この場
合、現クォンタム開始時間はそのままである。
のクォンタム持ち時間τ1に切替え、次タスクをオーダ
ードに設定し、現クォンタム種別に次のクォンタム種別
を設定し、更に、クォンタム開始時刻T0 を予測し、現
クォンタム開始時刻に予測したT0 を設定する。
ム割当時間制御をサブルーチンとして示したフローチャ
ートである。
タムQ1,Q2,Q3についてクォンタム割当時間の初
期設定がτ1,τ2,τ3であったとする。このような
初期設定に対し実際の入出力による結果が、図10
(B)の実績のように、クォンタムQ1は初期設定の割
当時間τ1を達成したが残り2つのクォンタムQ2,Q
3は初期設定の割当時間τ2,τ3より短い実績とな
り、余剰時間Δτが生じたとする。
ルにあっては、再割当としてクォンタムQ1,Q3につ
いては1つ前のT2サイクルでの再割当「30,30」
に配分量「0,0」を加えた再割当「30,30」とな
るが、クォンタムQ2にあってはT2サイクルで実績が
「30」となって、達成していることから、リセットに
より初期割当「20」が再割当される。
し、図16(B)の実績はクォンタムQ1の割当時間τ
1のみとなり、余剰時間が初期設定割当時間τ1以上で
ある限り、図16(C)(D)、図16(E)(F)の
ように、実績のあるクォンタムQ1の初期設定割当時間
τ1の再設定が繰り返され、余剰時間に応じて頻度が増
加される。そして図16(F)で余剰時間が不足した場
合には、図16(G)のように時刻t4で初期設定割当
時間τ1,τ2,τ3の再設定を行って同様な処理を繰
り返す。
ある入出力グループのクォンタムを実行して余剰時間を
生じた場合、余剰時間の配分先を(1) 上位グループ内で配分して、他の上位グループへ
の配分を禁止(2) 他の上位グループへの配分を許可 と2つに分けた配分制御が基本的にできる。
分については、優先度の高い上位グループの順に、その
上位グループに属している複数の入出力グループの中で
割当時間を達成したグループを調べ、達成したグループ
があればそのグループに余剰時間を配分する。
(C)のクォンタムのように、ランダムアクセス、シー
ケンシャル1、シーケンシャル2、コピーリードアクセ
スOPCR、コピーライトアクセスOPCW、リビルド
Rebldを繰り返している。また、この場合の初期設
定となる配分比は、正常系は「30,20,20」、第
1異常系は「10,10」、第2異常系は「10」であ
る。これに対し図19(E)のような実績と余剰時間の
再配分が行われる。
アクセスOPCRとコピーライトアクセスOPCWの初
期割当は共に「10,10」であり、この場合、実績が
「5,5」であることから、グループ全体としての余剰
分は「10」となっている。また第2異常系のリビルド
アクセスRebldは、初期割当が「10」で実績が
「10」であることから余剰はない。
スグループ、シーケンシャルアクセスグループ、更に2
つのコピーアクセスグループの4つに分け、それぞれの
割当時間の比率を140ms,40ms,10ms,1
0msとしてシミュレーションした場合のスループット
IOPS(回)とレスポンス時間(ms)のタイムチャ
ートである。
Claims (26)
- 【請求項1】1又は複数のディスクドライブを備えたデ
ィスク装置と、 前記ディスク装置に入出力要求を発行する入出力要求部
と、 ディスク装置への入出力を種別に応じてグループ化した
入出力グループを形成すると共に各入出力グループが連
続してディスク装置を使用できる割当時間(クォンタ
ム)を定義し、複数の入出力グループからディスク装置
に入出力の依頼を受け付けている場合、競合した入出力
グループ間で前記割当時間を順番に切り替えてディスク
装置を使用する入出力スケジュール機構と、 前記入出力グループの入出力処理要求の過密具合に応じ
て前記割当時間を変動させる割当時間制御部と、を備え
たことを特徴とするディスク・タイムシェアリング装
置。 - 【請求項2】請求項1記載のディスク・タイムシェアリ
ング装置に於いて、前記割当時間制御部は、処理要求の
少ない入出力グループの余った割当時間を、処理要求が
多い入出力グループの割当時間を延長させることで配分
することを特徴とするディスク・タイムシェアリング装
置。 - 【請求項3】請求項1記載のディスク・タイムシェアリ
ング装置に於いて、前記割当時間制御部は、処理要求の
少ない入出力グループの余った割当時間を、処理要求が
多い入出力グループの割当時間を変えることなく頻度を
増やすことで配分することを特徴とするディスク・タイ
ムシェアリング装置。 - 【請求項4】請求項1記載のディスク・タイムシェアリ
ング装置に於いて、 前記入出力スケジュール機構は、前記複数の入出力グル
ープをまとめて2以上の上位グループを形成し、 前記割当時間制御部は、上位グループ内においてのみ各
入出力グループ間で余剰時間の配分を行うことを特徴と
するディスク・タイムシェアリング装置。 - 【請求項5】請求項4記載のディスク・タイムシェアリ
ング装置に於いて、前記割当時間制御部は、上位グルー
プの相互間で余剰時間の配分を行うことを特徴とするデ
ィスク・タイムシェアリング装置。 - 【請求項6】請求項5記載のディスク・タイムシェアリ
ング装置に於いて、前記割当時間制御部は、ある上位グ
ループに属する全ての入出力グループに余剰時間がある
場合に、他の上位グループの処理要求の多い入出力グル
ープに余剰時間を配分することを特徴とするディスク・
タイムシェアリング装置。 - 【請求項7】請求項5記載のディスク・タイムシェアリ
ング装置に於いて、前記割当時間制御部は、ある上位グ
ループに属する一部の入出力グループに余剰時間がある
場合に、他の上位グループの処理要求の多い入出力グル
ープに余剰時間を配分することを特徴とするディスク・
タイムシェアリング装置。 - 【請求項8】請求項6又は7記載のディスク・タイムシ
ェアリング装置に於いて、前記割当時間制御部は、配分
先の上位グループに余剰時間を使い切る入出力グループ
がない場合は、他の上位グループに配分しないことを特
徴とするディスク・タイムシェアリング装置。 - 【請求項9】請求項6又は7記載のディスク・タイムシ
ェアリング装置に於いて、前記入出力スケジュール機構
は前記上位グループに優先度を設定し、前記割当制御部
は優先度の高い上位グループから順番に入出力要求の過
密具合を調べ、入出力処理要求の多い上位グループに他
の上位グループの余剰時間を配分することを特徴とする
ディスク・タイムシェアリング装置。 - 【請求項10】請求項6又は7記載のディスク・タイム
シェアリング装置に於いて、前記入出力スケジュール機
構は前記上位グループに優先度を設定し、前記割当制御
部は優先度の低い上位グループから順番に入出力要求の
過密具合を調べ、入出力処理要求の多い上位グループに
他の上位グループの余剰時間を配分することを特徴とす
るディスク・タイムシェアリング装置。 - 【請求項11】請求項6又は7記載のディスク・タイム
シェアリング装置に於いて、前記割当制御部は、予め指
定した上位グループに他の上位グループの余剰時間を配
分することを特徴とするディスク・タイムシェアリング
装置。 - 【請求項12】請求項5,6,7,9,10,11のい
ずれかに記載のディスク・タイムシェアリング装置に於
いて、前記割当時間制御部は、ある上位グループに属す
る入出力処理要求の少ない入出力グループの余った割当
時間を、他の上位グループに属する入出力処理要求が多
い入出力グループの割当時間を延長させることで配分す
ることを特徴とするディスク・タイムシェアリング装
置。 - 【請求項13】請求項5,6,7,9,10,11のい
ずれかに記載のディスク・タイムシェアリング装置に於
いて、前記割当時間制御部は、ある上位グループに属す
る入出力処理要求の少ない入出力グループの余った割当
時間を、他の上位グループに属する入出力処理要求が多
い入出力グループの割当時間を変えることなく頻度を増
やすことで配分することを特徴とするディスク・タイム
シェアリング装置。 - 【請求項14】1又は複数のディスクドライブを備えた
ディスク装置と、前記ディスク装置に入出力要求を発行
する入出力要求部と、前記入出力要求に基づいて前記デ
ィスク装置の使用をスケジューリングする入出力スケジ
ュール機構とを備えたディスク・タイムシェアリング方
法に於いて、 ディスク装置への入出力を種別に応じてグループ化した
入出力グループを形成すると共に各入出力グループが連
続してディスク装置を使用できる割当時間(クォンタ
ム)を定義し、 複数の入出力グループからディスク装置に入出力の依頼
を受け付けている場合、競合した入出力グループ間で前
記割当時間を順番に切り替えてディスク装置を使用し、 前記入出力グループの入出力処理要求の過密具合に応じ
て前記割当時間を変動させることを特徴とするディスク
・タイムシェアリング方法。 - 【請求項15】請求項14記載のディスク・タイムシェ
アリング方法に於いて、処理要求の少ない入出力グルー
プの余った割当時間を、処理要求が多い入出力グループ
の割当時間を延長させることで配分することを特徴とす
るディスク・タイムシェアリング方法。 - 【請求項16】請求項14記載のディスク・タイムシェ
アリング方法に於いて、処理要求の少ない入出力グルー
プの余った割当時間を、処理要求が多い入出力グループ
の割当時間を変えることなく頻度を増やすことで配分す
ることを特徴とするディスク・タイムシェアリング方
法。 - 【請求項17】請求項14記載のディスク・タイムシェ
アリング方法に於いて、 前記複数の入出力グループをまとめて2以上の上位グル
ープを形成し、 上位グループ内においてのみ各入出力グループ間で余剰
時間を配分することを特徴とするディスク・タイムシェ
アリング方法。 - 【請求項18】請求項17記載のディスク・タイムシェ
アリング方法に於いて、上位グループの相互間で余剰時
間の配分を行うことを特徴とするディスク・タイムシェ
アリング方法。 - 【請求項19】請求項18記載のディスク・タイムシェ
アリング方法に於いて、ある上位グループに属する全て
の入出力グループに余剰時間がある場合に、他の上位グ
ループの処理要求の多い入出力グループに余剰時間を配
分することを特徴とするディスク・タイムシェアリング
方法。 - 【請求項20】請求項18記載のディスク・タイムシェ
アリング方法に於いて、ある上位グループに属する一部
の入出力グループに余剰時間がある場合に、他の上位グ
ループの処理要求の多い入出力グループに余剰時間を配
分することを特徴とするディスク・タイムシェアリング
方法。 - 【請求項21】請求項19又は20記載のディスク・タ
イムシェアリング方法に於いて、配分先の上位グループ
に余剰時間を使い切る入出力グループがない場合は、他
の上位グループに配分しないことを特徴とするディスク
・タイムシェアリング方法。 - 【請求項22】請求項19又は20記載のディスク・タ
イムシェアリング方法に於いて、前記上位グループに優
先度を設定し、優先度の高い上位グループから順番に入
出力要求の過密具合を調べ、入出力処理要求の多い上位
グループに他の上位グループの余剰時間を配分すること
を特徴とするディスク・タイムシェアリング方法。 - 【請求項23】請求項19又は20記載のディスク・タ
イムシェアリング方法に於いて、前記上位グループに優
先度を設定し、優先度の低い上位グループから順番に入
出力要求の過密具合を調べ、入出力処理要求の多い上位
グループに他の上位グループの余剰時間を配分すること
を特徴とするディスク・タイムシェアリング方法。 - 【請求項24】請求項20又は21記載のディスク・タ
イムシェアリング方法に於いて、予め指定した上位グル
ープに他の上位グループの余剰時間を配分することを特
徴とするディスク・タイムシェアリング方法。 - 【請求項25】請求項18,19,20,21,23,
24のいずれかに記載のディスク・タイムシェアリング
方法に於いて、ある上位グループに属する入出力処理要
求の少ない入出力グループの余った割当時間を、他の上
位グループに属する入出力処理要求が多い入出力グルー
プの割当時間を延長させることで配分することを特徴と
するディスク・タイムシェアリング方法。 - 【請求項26】請求項18,19,20,21,23,
24のいずれかに記載のディスク・タイムシェアリング
方法に於いて、ある上位グループに属する入出力処理要
求の少ない入出力グループの余った割当時間を、他の上
位グループに属する入出力処理要求が多い入出力グルー
プの割当時間を変えることなく頻度を増やすことで配分
することを特徴とするディスク・タイムシェアリング方
法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP21549299A JP3623697B2 (ja) | 1999-07-29 | 1999-07-29 | ディスク・タイムシェアリング装置及び方法 |
US09/562,965 US6715006B1 (en) | 1999-07-29 | 2000-05-03 | Disk time-sharing apparatus and method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP21549299A JP3623697B2 (ja) | 1999-07-29 | 1999-07-29 | ディスク・タイムシェアリング装置及び方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001043028A true JP2001043028A (ja) | 2001-02-16 |
JP3623697B2 JP3623697B2 (ja) | 2005-02-23 |
Family
ID=16673291
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP21549299A Expired - Fee Related JP3623697B2 (ja) | 1999-07-29 | 1999-07-29 | ディスク・タイムシェアリング装置及び方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US6715006B1 (ja) |
JP (1) | JP3623697B2 (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009116477A (ja) * | 2007-11-02 | 2009-05-28 | Nec Corp | ソースコード検証管理装置、方法、及びプログラム |
JP2012043449A (ja) * | 2008-03-11 | 2012-03-01 | Internatl Business Mach Corp <Ibm> | データ記憶ライブラリのための重複排除プロトコルを選択する装置および方法 |
JP2013210847A (ja) * | 2012-03-30 | 2013-10-10 | Fujitsu Ltd | ストレージシステム、ストレージ制御方法およびストレージ制御プログラム |
JP2020160860A (ja) * | 2019-03-27 | 2020-10-01 | Necプラットフォームズ株式会社 | ストレージ制御装置、ストレージ制御方法及びストレージ制御プログラム |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005115600A (ja) * | 2003-10-07 | 2005-04-28 | Hitachi Ltd | 情報処理装置及び方法 |
US8892780B2 (en) * | 2007-03-08 | 2014-11-18 | Oracle International Corporation | Management of shared storage I/O resources |
US8099565B2 (en) * | 2007-03-27 | 2012-01-17 | The Board Of Regents Of The University Of Texas System | Methods and devices for determining quality of services of storage systems |
US8090903B2 (en) * | 2008-01-18 | 2012-01-03 | Microsoft Corporation | Fair and dynamic disk input/output bandwidth distribution |
US7979635B2 (en) * | 2008-02-14 | 2011-07-12 | International Business Machines Corporation | Apparatus and method to allocate resources in a data storage library |
US9772798B2 (en) * | 2008-09-19 | 2017-09-26 | Oracle International Corporation | Method and system for implementing workload management by monitoring disk utilizations |
EP2350875A1 (en) | 2008-09-19 | 2011-08-03 | Oracle International Corporation | Storage-side storage request management |
US8868831B2 (en) | 2009-09-14 | 2014-10-21 | Oracle International Corporation | Caching data between a database server and a storage system |
US10534683B2 (en) * | 2013-08-29 | 2020-01-14 | International Business Machines Corporation | Communicating outstanding maintenance tasks to improve disk data integrity |
US11768606B2 (en) * | 2021-12-27 | 2023-09-26 | Western Digital Technologies, Inc. | Maximizing performance through traffic balancing |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3593314A (en) * | 1969-06-30 | 1971-07-13 | Burroughs Corp | Multistage queuer system |
US5485455A (en) * | 1994-01-28 | 1996-01-16 | Cabletron Systems, Inc. | Network having secure fast packet switching and guaranteed quality of service |
JPH0981497A (ja) * | 1995-09-12 | 1997-03-28 | Toshiba Corp | 実時間ストリームサーバ並びに実時間ストリームデータの格納方法および転送方法 |
US6269403B1 (en) * | 1997-06-30 | 2001-07-31 | Microsoft Corporation | Browser and publisher for multimedia object storage, retrieval and transfer |
-
1999
- 1999-07-29 JP JP21549299A patent/JP3623697B2/ja not_active Expired - Fee Related
-
2000
- 2000-05-03 US US09/562,965 patent/US6715006B1/en not_active Expired - Lifetime
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009116477A (ja) * | 2007-11-02 | 2009-05-28 | Nec Corp | ソースコード検証管理装置、方法、及びプログラム |
JP2012043449A (ja) * | 2008-03-11 | 2012-03-01 | Internatl Business Mach Corp <Ibm> | データ記憶ライブラリのための重複排除プロトコルを選択する装置および方法 |
US8234444B2 (en) | 2008-03-11 | 2012-07-31 | International Business Machines Corporation | Apparatus and method to select a deduplication protocol for a data storage library |
JP2013210847A (ja) * | 2012-03-30 | 2013-10-10 | Fujitsu Ltd | ストレージシステム、ストレージ制御方法およびストレージ制御プログラム |
JP2020160860A (ja) * | 2019-03-27 | 2020-10-01 | Necプラットフォームズ株式会社 | ストレージ制御装置、ストレージ制御方法及びストレージ制御プログラム |
Also Published As
Publication number | Publication date |
---|---|
US6715006B1 (en) | 2004-03-30 |
JP3623697B2 (ja) | 2005-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3813056B2 (ja) | 優先順位に基づくチャネル・サブシステム保留入出力作業キューの処理 | |
US10387202B2 (en) | Quality of service implementation in a networked storage system with hierarchical schedulers | |
JP3807916B2 (ja) | コンピュータ環境の区画のグループを管理する方法およびシステム | |
JP3672236B2 (ja) | コンピュータ環境の中央処理装置を管理する方法、システム、およびプログラム製品 | |
US10534542B2 (en) | Dynamic core allocation for consistent performance in a non-preemptive scheduling environment | |
US5864712A (en) | Method and apparatus for controlling (N+I) I/O channels with (N) data managers in a homogenous software programmable environment | |
US6957433B2 (en) | System and method for adaptive performance optimization of data processing systems | |
US8122451B2 (en) | Method and apparatus for dispatching tasks in a non-uniform memory access (NUMA) computer system | |
JP3659324B2 (ja) | コンピュータ環境の論理プロセッサを管理する方法、システム、およびプログラム製品 | |
JP3440219B2 (ja) | 入出力装置及びディスク・タイムシェアリング方法 | |
US8307053B1 (en) | Partitioned packet processing in a multiprocessor environment | |
JP3872343B2 (ja) | コンピュータ環境におけるワークロード管理 | |
JP2001043028A (ja) | ディスク・タイムシェアリング装置及び方法 | |
US10394606B2 (en) | Dynamic weight accumulation for fair allocation of resources in a scheduler hierarchy | |
JP2009238114A (ja) | ストレージ管理方法、ストレージ管理プログラム、ストレージ管理装置およびストレージ管理システム | |
CN108228482B (zh) | 用于管理存储系统中的缓存设备的方法和系统 | |
JP2005031929A (ja) | サーバに記憶領域を割り当てる管理サーバ、記憶装置システム、及びプログラム | |
JP4091225B2 (ja) | ディスク・タイムシェアリング装置及び方法 | |
JPH09258907A (ja) | 複数の記憶ディスク部を有した高可用性の外部記憶装置 | |
KR102045125B1 (ko) | 분산환경에서의 cda 프로토콜을 활용한 자원할당방법 및 이를 적용한 기록매체 및 분산처리장치 | |
JP5158576B2 (ja) | 入出力制御システム、入出力制御方法、及び、入出力制御プログラム | |
JP2019164510A (ja) | ストレージシステム及びio処理の制御方法 | |
JPH10105205A (ja) | 資材所要量計算方法およびシステム | |
JP2001142723A (ja) | 資源配分方法、計算機システム及び記録媒体 | |
CN115981844A (zh) | 任务管理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20041020 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20041102 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20041125 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20071203 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081203 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091203 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091203 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101203 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111203 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111203 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121203 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121203 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131203 Year of fee payment: 9 |
|
LAPS | Cancellation because of no payment of annual fees |