JP5089896B2 - マイクロプロセッサの負荷分散機能を備えたストレージシステム - Google Patents
マイクロプロセッサの負荷分散機能を備えたストレージシステム Download PDFInfo
- Publication number
- JP5089896B2 JP5089896B2 JP2006073867A JP2006073867A JP5089896B2 JP 5089896 B2 JP5089896 B2 JP 5089896B2 JP 2006073867 A JP2006073867 A JP 2006073867A JP 2006073867 A JP2006073867 A JP 2006073867A JP 5089896 B2 JP5089896 B2 JP 5089896B2
- Authority
- JP
- Japan
- Prior art keywords
- cache
- processor
- load
- read
- request
- 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.)
- Expired - Fee Related
Links
Images
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/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/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- 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/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to storage systems
-
- 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/0658—Controller construction arrangements
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/509—Offload
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Multi Processors (AREA)
Description
Claims (14)
- I/O要求を発行する上位装置とデータを授受する複数の通信ポートと、
I/O処理に従うデータが読み書きされる複数の記憶装置と、
前記上位装置と前記複数の記憶装置との間で授受されるデータを一時的に記憶するキャッシュメモリと、
通信ポートを介して受信したI/O要求の処理であるI/O処理を実行する複数のマイクロプロセッサであって、前記上位装置と前記キャッシュメモリとの間の通信を制御するマイクロプロセッサである二以上の上位マイクロプロセッサと、前記記憶装置と前記キャッシュメモリとの通信を制御するマイクロプロセッサである一以上の下位マイクロプロセッサとを含む複数のマイクロプロセッサと
を備え、
(A)前記複数のマイクロプロセッサのうち、受信したI/O要求のI/O処理を行う上位マイクロプロセッサである振り元プロセッサは、前記I/O要求の種別を判別し、
(B)前記(A)において前記I/O要求がライト要求であると判別された場合、
(b1)前記振り元プロセッサが、自分の負荷が第一の負荷以上の場合に、そのライト要求のライト処理のうちのライト処理部分でありキャッシュヒット判定、キャッシュロック及びキャッシュ解放を含むライト時キャッシュ制御処理を、前記複数のマイクロプロセッサのうちの他の上位マイクロプロセッサであるライト振り先プロセッサに割り振り、
(b2)該ライト振り先プロセッサが、該ライト処理部分として、キャッシュヒット判定を行い、前記キャッシュヒット判定がミスだった場合に、前記キャッシュメモリからキャッシュ領域を割り当てて、そのキャッシュ領域をロックし、一方、前記キャッシュヒット判定がヒットだった場合に、ヒットしたキャッシュ領域をロックし、前記ライト要求に従うデータを、ロックされた前記キャッシュ領域に格納し、完了報告を前記振り元プロセッサに送信し、且つ、ロックされている前記キャッシュ領域のロックを解除することによりそのキャッシュ領域を解放し、
(b3)その後、前記振り元プロセッサが、前記完了報告を受信し、前記ライト要求の完了報告を前記上位装置に送り、
(C)前記(A)において前記I/O要求がリード要求であると判別された場合、
(c1)前記振り元プロセッサが、自分の負荷が第一の負荷以上の場合に、該リード要求のリード処理のうちのリード処理部分でありキャッシュヒット判定、キャッシュロック及びキャッシュ解放を含むリード時キャッシュ制御処理を、前記複数のマイクロプロセッサのうちのいずれかの下位マイクロプロセッサであるリード振り先プロセッサに割り振り、
(c2)該リード振り先プロセッサが、該リード処理部分として、キャッシュヒット判定を行い、前記キャッシュヒット判定がミスだった場合に、前記キャッシュメモリからキャッシュ領域を割り当てて、そのキャッシュ領域をロックして、そのキャッシュ領域に、前記リード要求に従うデータを読み出し、完了報告を前記振り元プロセッサに送信し、一方、前記キャッシュヒット判定がヒットだった場合に、ヒットしたキャッシュ領域をロックし、完了報告を前記振り元プロセッサに送信し、
(c3)前記振り元プロセッサが、前記完了報告を受けて、ロックされている前記キャッシュ領域に記憶されている、前記リード要求に従うデータを、前記上位装置に送り、キャッシュ解放要求を前記リード振り先プロセッサに送信し、
(c4)前記リード振り先プロセッサが、前記キャッシュ解放要求を受けて、ロックされている前記キャッシュ領域のロックを解除することによりそのキャッシュ領域を解放する、
ストレージシステム。 - 割り振り先として選択されても良い一以上のマイクロプロセッサIDが表された情報である割り振り制御情報の記憶域を更に備え、
前記振り元プロセッサは、前記割り振り制御情報を参照し、参照した割り振り制御情報に表されている一以上のマイクロプロセッサIDの中からマイクロプロセッサIDを選択し、選択したマイクロプロセッサIDに対応する他のマイクロプロセッサを前記ライト処理部分又は前記リード処理部分の割り振り先とし、
各マイクロプロセッサは、自分の負荷が第二の負荷以上の場合に、自分のマイクロプロセッサIDを前記割り振り制御情報に増やし、自分の負荷が第二の負荷未満の場合に、自分のマイクロプロセッサIDを前記割り振り制御情報から減らす、
請求項1記載のストレージシステム。 - 二以上のプロセッサパッケージを備え、
前記二以上のプロセッサパッケージ上に、前記複数のマイクロプロセッサが存在し、一つのプロセッサパッケージ上に、一以上のマイクロプロセッサと、前記キャッシュメモリに対するデータ通信に利用されるパスである内部データパスが搭載されており、
前記割り振り制御情報には、ライト割り振り制御情報とリード割り振り制御情報とがあり、
前記ライト割り振り制御情報は、ライト処理部分の割り振りを制御するために用いられる割り振り制御情報であり、
前記リード割り振り制御情報は、リード処理部分の割り振りを制御するために用いられる割り振り制御情報であり、
前記ライト処理部分の割り振りが行われる場合には、前記ライト処理部分の割り振りが行われずにライト処理が行われる場合に比して、前記キャッシュメモリの負荷及び前記内部データパスの負荷が高くなり、
各マイクロプロセッサは、前記ライト割り振り制御情報を更新する場合には、前記キャッシュメモリの負荷が或るメモリ負荷以上である、及び、自分を搭載するプロセッサパッケージの内部データパスの負荷が或るデータパス負荷以上である、のうちの少なくとも一方であるならば、自分のマイクロプロセッサIDを前記ライト割り振り制御情報から増やし、前記キャッシュメモリの負荷が前記或るメモリ負荷未満である、及び、自分を搭載するプロセッサパッケージの内部データパスの負荷が前記或るデータパス負荷未満である、のうちの少なくとも一方であるならば、自分のマイクロプロセッサIDを前記ライト割り振り制御情報に増やす、
請求項2記載のストレージシステム。 - ライト処理部分の割り振りを制御するために用いられる情報であるライト割り振り制御情報を記憶した記憶域を更に備え、
前記ライト要求には、アクセス先を表す情報であるアクセス先情報が含まれており、
前記ライト割り振り制御情報には、複数の領域の各々に対応付けられた領域ID及び上位マイクロプロセッサIDが記憶され、
各領域は、前記ライト要求に含まれている前記アクセス先情報から求められるアドレス範囲の一部分であり、
前記複数の領域には、周期的に、同じ上位マイクロプロセッサIDが対応付けられている、
請求項1記載のストレージシステム。 - リード処理部分の割り振りを制御するために用いられる情報であるリード割り振り制御情報を記憶した記憶域を更に備え、
前記下位マイクロプロセッサは複数個あり、各下位マイクロプロセッサには、通信可能に接続された記憶装置とそうではない記憶装置とがあり、
前記複数の記憶装置の二以上の記憶装置によりパリティグループが形成され、論理的な記憶デバイスである論理ユニットが、各パリティグループ毎に、一又は複数個形成されており、
各通信ポート毎に、通信可能な論理ユニット並びに該論理ユニットを形成する一以上の記憶装置が決まっており、
前記リード要求には、アクセス先を表す情報であるアクセス先情報が含まれており、該アクセス先情報には、論理ユニットのIDが含まれており、
前記リード割り振り制御情報には、各通信ポート毎に、通信ポートのID、該通信ポートに通信可能な論理ユニットのID、及び、該論理ユニットを形成する各記憶装置に通信可能な各下位マイクロプロセッサのIDが記録されており、
前記振り元プロセッサがリード振り先プロセッサにリード処理部分を割り振る場合、該振り元プロセッサが、リード要求を受信した通信ポートのIDと、該リード要求のアクセス先情報に含まれている論理ユニットIDとに対応した下位マイクロプロセッサIDに対応する下位マイクロプロセッサに、前記リード処理部分を割り振る、
請求項1又は4記載のストレージシステム。 - 前記ライト処理部分及び前記リード処理部分の割り振りの失敗状況を表す情報である失敗状況情報を記憶する記憶域と、
前記ライト処理部分及び前記リード処理部分の割り振りが失敗した場合に前記失敗状況情報を更新する失敗状況更新部と、
前記失敗状況情報を含んだ負荷情報を出力する負荷情報出力部と
を更に備える請求項1乃至5のうちのいずれか1項に記載のストレージシステム。 - 二以上のプロセッサパッケージ上に、前記複数のマイクロプロセッサが存在し、一つのプロセッサパッケージ上に、一以上のマイクロプロセッサと、前記キャッシュメモリに対するデータ通信に利用されるパスである内部データパスが搭載されており、
前記負荷情報には、更に、前記複数のマイクロプロセッサの各々の負荷を表す情報であるプロセッサ負荷情報と、各プロセッサパッケージ毎の内部データパスの負荷を表す情報である内部データパス負荷情報とが含まれている、
請求項6記載のストレージシステム。 - 所定の失敗状況以上に失敗されていることを示す失敗状況を前記失敗状況情報が表している場合に、マイクロプロセッサの増設を示唆する情報を表示する増設示唆部を更に備える、
請求項6又は7記載のストレージシステム。 - ストレージシステムと、
前記ストレージシステムを管理するための計算機である管理計算機と
を備え、
前記ストレージシステムが、
I/O要求を発行する上位装置とデータを授受する複数の通信ポートと、
I/O処理に従うデータが読み書きされる複数の記憶装置と、
前記上位装置と前記複数の記憶装置との間で授受されるデータを一時的に記憶するキャッシュメモリと、
通信ポートを介して受信したI/O要求の処理であるI/O処理を実行する複数のマイクロプロセッサであって、前記上位装置と前記キャッシュメモリとの間の通信を制御するマイクロプロセッサである二以上の上位マイクロプロセッサと、前記記憶装置と前記キャッシュメモリとの通信を制御するマイクロプロセッサである一以上の下位マイクロプロセッサとを含む複数のマイクロプロセッサと、
I/O処理部分の割り振りの失敗状況を表す情報である失敗状況情報を記憶する記憶域と、
前記I/O処理部分の割り振りが失敗した場合に前記失敗状況情報を更新する失敗状況更新部と、
負荷情報を前記管理計算機に出力する負荷情報出力部と
を備え、
(A)前記複数のマイクロプロセッサのうち、受信したI/O要求のI/O処理を行う上位マイクロプロセッサである振り元プロセッサは、前記I/O要求の種別を判別し、
(B)前記(A)において前記I/O要求がライト要求であると判別された場合、
(b1)前記振り元プロセッサが、自分の負荷が第一の負荷以上の場合に、そのライト要求のライト処理のうちのライト処理部分でありキャッシュヒット判定、キャッシュロック及びキャッシュ解放を含むライト時キャッシュ制御処理を、前記複数のマイクロプロセッサのうちの他の上位マイクロプロセッサであるライト振り先プロセッサに割り振り、
(b2)該ライト振り先プロセッサが、該ライト処理部分として、キャッシュヒット判定を行い、前記キャッシュヒット判定がミスだった場合に、前記キャッシュメモリからキャッシュ領域を割り当てて、そのキャッシュ領域をロックし、一方、前記キャッシュヒット判定がヒットだった場合に、ヒットしたキャッシュ領域をロックし、前記ライト要求に従うデータを、ロックされた前記キャッシュ領域に格納し、完了報告を前記振り元プロセッサに送信し、且つ、ロックされている前記キャッシュ領域のロックを解除することによりそのキャッシュ領域を解放し、
(b3)その後、前記振り元プロセッサが、前記完了報告を受信し、前記ライト要求の完了報告を前記上位装置に送り、
(C)前記(A)において前記I/O要求がリード要求であると判別された場合、
(c1)前記振り元プロセッサが、自分の負荷が第一の負荷以上の場合に、該リード要求のリード処理のうちのリード処理部分でありキャッシュヒット判定、キャッシュロック及びキャッシュ解放を含むリード時キャッシュ制御処理を、前記複数のマイクロプロセッサのうちのいずれかの下位マイクロプロセッサであるリード振り先プロセッサに割り振り、
(c2)該リード振り先プロセッサが、該リード処理部分として、キャッシュヒット判定を行い、前記キャッシュヒット判定がミスだった場合に、前記キャッシュメモリからキャッシュ領域を割り当てて、そのキャッシュ領域をロックして、そのキャッシュ領域に、前記リード要求に従うデータを読み出し、完了報告を前記振り元プロセッサに送信し、一方、前記キャッシュヒット判定がヒットだった場合に、ヒットしたキャッシュ領域をロックし、完了報告を前記振り元プロセッサに送信し、
(c3)前記振り元プロセッサが、前記完了報告を受けて、ロックされている前記キャッシュ領域に記憶されている、前記リード要求に従うデータを、前記上位装置に送り、キャッシュ解放要求を前記リード振り先プロセッサに送信し、
(c4)前記リード振り先プロセッサが、前記キャッシュ解放要求を受けて、ロックされている前記キャッシュ領域のロックを解除することによりそのキャッシュ領域を解放し、
前記管理計算機が、
前記ストレージシステムから負荷情報を受信する受信部と、
前記受信した負荷情報中の所定の失敗状況以上に失敗されていることを示す失敗状況を前記受信した失敗状況情報が表している場合に、マイクロプロセッサの増設を示唆する情報を表示する増設示唆部と
を備える計算機システム。 - 二以上のプロセッサパッケージ上に、前記複数のマイクロプロセッサが存在し、一つのプロセッサパッケージ上に、一以上のマイクロプロセッサと、前記キャッシュメモリに対するデータ通信に利用されるパスである内部データパスが搭載されており、
前記負荷情報には、更に、前記複数のマイクロプロセッサの各々の負荷を表す情報であるプロセッサ負荷情報と、各プロセッサパッケージ毎の内部データパスの負荷を表す情報である内部データパス負荷情報とが含まれており、
前記増設示唆部が、前記プロセッサ負荷情報及び前記内部データパス負荷情報に基づいて、マイクロプロセッサの増設を示唆する情報を表示する、
請求項9記載の計算機システム。 - I/O要求を発行する上位装置とデータを授受する複数の通信ポートと、
I/O処理に従うデータが読み書きされる複数の記憶装置と、
前記上位装置と前記複数の記憶装置との間で授受されるデータを一時的に記憶するキャッシュメモリと、
通信ポートを介して受信したI/O要求の処理であるI/O処理を実行する複数のマイクロプロセッサであって、前記上位装置と前記キャッシュメモリとの間の通信を制御するマイクロプロセッサである二以上の上位マイクロプロセッサと、前記記憶装置と前記キャッシュメモリとの通信を制御するマイクロプロセッサである一以上の下位マイクロプロセッサとを含む複数のマイクロプロセッサと
を備えたストレージシステムにおけるマイクロプロセッサの負荷分散方法であって、
(A)前記複数のマイクロプロセッサのうち、受信したI/O要求のI/O処理を行う上位マイクロプロセッサである振り元プロセッサは、前記I/O要求の種別を判別し、
(B)前記(A)において前記I/O要求がライト要求であると判別された場合、
(b1)前記振り元プロセッサが、前記振り元プロセッサの負荷が第一の負荷以上の場合に、該ライト処理のうちのライト処理部分でありキャッシュヒット判定、キャッシュロック及びキャッシュ解放を含むライト時キャッシュ制御処理を、前記複数のマイクロプロセッサのうちの他の上位マイクロプロセッサであるライト振り先プロセッサに割り振り、
(b2)該ライト振り先プロセッサが、該ライト処理部分として、キャッシュヒット判定を行い、前記キャッシュヒット判定がミスだった場合に、前記キャッシュメモリからキャッシュ領域を割り当てて、そのキャッシュ領域をロックし、一方、前記キャッシュヒット判定がヒットだった場合に、ヒットしたキャッシュ領域をロックし、前記ライト要求に従うデータを、ロックされた前記キャッシュ領域に格納し、完了報告を前記振り元プロセッサに送信し、且つ、ロックされている前記キャッシュ領域のロックを解除することによりそのキャッシュ領域を解放し、
(b3)その後、前記振り元プロセッサが、前記完了報告を受信し、前記ライト要求の完了報告を前記上位装置に送り、
(C)前記(A)において前記I/O要求がリード要求であると判別された場合、
(c1)前記振り元プロセッサが、自分の負荷が第一の負荷以上の場合に、該リード処理のうちのリード処理部分でありキャッシュヒット判定、キャッシュロック及びキャッシュ解放を含むリード時キャッシュ制御処理を、前記複数のマイクロプロセッサのうちのいずれかの下位マイクロプロセッサであるリード振り先プロセッサに割り振り、
(c2)該リード振り先プロセッサが、該リード処理部分として、キャッシュヒット判定を行い、前記キャッシュヒット判定がミスだった場合に、前記キャッシュメモリからキャッシュ領域を割り当てて、そのキャッシュ領域をロックして、そのキャッシュ領域に、前記リード要求に従うデータを読み出し、完了報告を前記振り元プロセッサに送信し、一方、前記キャッシュヒット判定がヒットだった場合に、ヒットしたキャッシュ領域をロックし、完了報告を前記振り元プロセッサに送信し、
(c3)前記振り元プロセッサが、前記完了報告を受けて、ロックされている前記キャッシュ領域に記憶されている、前記リード要求に従うデータを、前記上位装置に送り、キャッシュ解放要求を前記リード振り先プロセッサに送信し、
(c4)前記リード振り先プロセッサが、前記キャッシュ解放要求を受けて、ロックされている前記キャッシュ領域のロックを解除することによりそのキャッシュ領域を解放する、
負荷分散方法。 - 割り振り先として選択されても良い一以上のマイクロプロセッサIDが表された情報である割り振り制御情報に表されている前記一以上のマイクロプロセッサIDの中からマイクロプロセッサIDを選択し、選択されたマイクロプロセッサIDに対応するマイクロプロセッサが前記他のマイクロプロセッサであり、
マイクロプロセッサの負荷が第二の負荷以上の場合に、該マイクロプロセッサのマイクロプロセッサIDを前記割り振り制御情報に増やし、該マイクロプロセッサの負荷が第二の負荷未満の場合に、該マイクロプロセッサのマイクロプロセッサIDを前記割り振り制御情報から減らす、
請求項11記載の負荷分散方法。 - I/O処理部分の割り振りの失敗状況を表す情報である失敗状況情報を、前記I/O処理部分の割り振りが失敗した場合に前記失敗状況情報を更新し、
所定の失敗状況以上に失敗されていることを示す失敗状況を前記失敗状況情報が表している場合に、マイクロプロセッサの増設を示唆する情報を表示する、
請求項11又は12記載の負荷分散方法。 - I/O要求を発行する上位装置とデータを授受する複数の通信ポートと、
I/O処理に従うデータが読み書きされる複数の記憶装置と、
前記上位装置と前記複数の記憶装置との間で授受されるデータを一時的に記憶するキャッシュメモリと、
前記上位装置と前記キャッシュメモリとの間の通信を制御するマイクロプロセッサである二以上の上位マイクロプロセッサと、
前記記憶装置と前記キャッシュメモリとの通信を制御するマイクロプロセッサである一以上の下位マイクロプロセッサと、
I/O処理部分の割り振りの失敗状況を表す情報である失敗状況情報を記憶する記憶域と、
前記失敗状況情報を含んだ負荷情報を出力する負荷情報出力部と
を備え、
(A)前記複数のマイクロプロセッサのうち、受信したI/O要求のI/O処理を行う上位マイクロプロセッサである振り元プロセッサは、前記I/O要求の種別を判別し、
(B)前記(A)において前記I/O要求がライト要求であると判別された場合、
(b1)前記振り元プロセッサは、自分の負荷が前記第一の負荷以上であれば、該ライト要求のライト処理のうちのライト処理部分でありキャッシュヒット判定、キャッシュロック及びキャッシュ解放を含むライト時キャッシュ制御処理を、他の上位マイクロプロセッサであるライト振り先プロセッサに割り振り、
(b2)該ライト振り先プロセッサが、該ライト処理部分として、キャッシュヒット判定を行い、前記キャッシュヒット判定がミスだった場合に、前記キャッシュメモリからキャッシュ領域を割り当てて、そのキャッシュ領域をロックし、一方、前記キャッシュヒット判定がヒットだった場合に、ヒットしたキャッシュ領域をロックし、前記ライト要求に従うデータを、ロックされた前記キャッシュ領域に格納し、完了報告を前記振り元プロセッサに送信し、且つ、ロックされている前記キャッシュ領域のロックを解除することによりそのキャッシュ領域を解放し、
(b3)その後、前記振り元プロセッサが、前記完了報告を受信し、前記ライト要求の完了報告を前記上位装置に送り、
(C)前記(A)において前記I/O要求がリード要求であると判別された場合、
(c1)前記振り元プロセッサが、自分の負荷が前記第一の負荷以上であれば、該リード要求のリード処理のうちのリード処理部分でありキャッシュヒット判定、キャッシュロック及びキャッシュ解放を含むリード時キャッシュ制御処理を、下位マイクロプロセッサであるリード先振り先プロセッサに割り振り、
(c2)該リード振り先プロセッサが、該リード処理部分として、キャッシュヒット判定を行い、前記キャッシュヒット判定がミスだった場合に、前記キャッシュメモリからキャッシュ領域を割り当てて、そのキャッシュ領域をロックして、そのキャッシュ領域に、前記リード要求に従うデータを読み出し、完了報告を前記振り元プロセッサに送信し、一方、前記キャッシュヒット判定がヒットだった場合に、ヒットしたキャッシュ領域をロックし、完了報告を前記振り元プロセッサに送信し、
(c3)前記振り元プロセッサが、前記完了報告を受けて、ロックされている前記キャッシュ領域に記憶されている、前記リード要求に従うデータを、前記上位装置に送り、キャッシュ解放要求を前記リード振り先プロセッサに送信し、
(c4)前記リード振り先プロセッサが、前記キャッシュ解放要求を受けて、ロックされている前記キャッシュ領域のロックを解除することによりそのキャッシュ領域を解放し、
前記キャッシュ制御処理は、前記ライト処理や前記リード処理における他の処理よりも前記上位マイクロプロセッサにとって高負荷の処理であり、
前記ライト処理部分或いは前記リード処理部分の割り振りに失敗した場合に、前記振り元プロセッサが、前記失敗状況情報を更新する、
ストレージシステム。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006073867A JP5089896B2 (ja) | 2006-03-17 | 2006-03-17 | マイクロプロセッサの負荷分散機能を備えたストレージシステム |
US11/429,527 US8271979B2 (en) | 2006-03-17 | 2006-05-05 | Storage system comprising microprocessor load distribution function |
EP06254558A EP1835389A3 (en) | 2006-03-17 | 2006-08-31 | Storage system comprising microprocessor load distribution function |
US13/588,226 US9262095B2 (en) | 2006-03-17 | 2012-08-17 | Storage system comprising microprocessor load distribution function |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006073867A JP5089896B2 (ja) | 2006-03-17 | 2006-03-17 | マイクロプロセッサの負荷分散機能を備えたストレージシステム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007249729A JP2007249729A (ja) | 2007-09-27 |
JP5089896B2 true JP5089896B2 (ja) | 2012-12-05 |
Family
ID=38116168
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006073867A Expired - Fee Related JP5089896B2 (ja) | 2006-03-17 | 2006-03-17 | マイクロプロセッサの負荷分散機能を備えたストレージシステム |
Country Status (3)
Country | Link |
---|---|
US (2) | US8271979B2 (ja) |
EP (1) | EP1835389A3 (ja) |
JP (1) | JP5089896B2 (ja) |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070282880A1 (en) * | 2006-05-31 | 2007-12-06 | Searete Llc, A Limited Liability Corporation Of The State Of Delaware | Partial role or task allocation responsive to data-transformative attributes |
JP4933284B2 (ja) * | 2007-01-25 | 2012-05-16 | 株式会社日立製作所 | ストレージ装置及び負荷分散方法 |
US7715321B2 (en) * | 2007-01-30 | 2010-05-11 | International Business Machines Corporation | Network interface card transmission control protocol acceleration offload failure detection and recovery mechanism |
JP5330702B2 (ja) | 2008-01-31 | 2013-10-30 | 株式会社日立製作所 | 複数のコントローラモジュールを備えた記憶装置システム |
US7962671B2 (en) | 2008-11-21 | 2011-06-14 | Hitachi, Ltd. | Storage apparatus and method of updating control information in storage apparatus |
CN102754090B (zh) * | 2010-06-17 | 2015-09-16 | 株式会社日立制作所 | 包括多个微处理器的存储系统以及用于在该存储系统中分担处理的方法 |
US8769199B2 (en) * | 2011-05-17 | 2014-07-01 | Lsi Corporation | Methods and systems of distributing RAID IO load across multiple processors |
WO2013001613A1 (ja) * | 2011-06-28 | 2013-01-03 | 富士通株式会社 | スケジューリング方法およびシステム |
US10061718B2 (en) * | 2012-06-28 | 2018-08-28 | Microsoft Technology Licensing, Llc | Protecting secret state from memory attacks |
US9047129B2 (en) * | 2012-07-23 | 2015-06-02 | Adobe Systems Incorporated | Systems and methods for load balancing of time-based tasks in a distributed computing system |
JP5898377B2 (ja) * | 2012-09-25 | 2016-04-06 | 株式会社日立製作所 | ストレージ装置、及びストレージ装置の制御方法 |
JP5976937B2 (ja) * | 2013-07-26 | 2016-08-24 | 株式会社日立製作所 | コンピュータシステム |
JP6136834B2 (ja) * | 2013-10-07 | 2017-05-31 | 富士通株式会社 | ストレージ制御装置、制御プログラムおよび制御方法 |
KR102075358B1 (ko) * | 2013-11-11 | 2020-03-02 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그 동작 방법 |
US20160342512A1 (en) * | 2014-01-21 | 2016-11-24 | Hitachi, Ltd. | Storage system and processing method |
WO2015151239A1 (ja) * | 2014-04-02 | 2015-10-08 | 株式会社日立製作所 | 通信用半導体集積回路、ストレージ装置およびストレージ装置の障害管理方法 |
JP6428309B2 (ja) * | 2015-01-27 | 2018-11-28 | 富士通株式会社 | 演算処理システムおよび演算処理システムの制御方法 |
US9959146B2 (en) * | 2015-10-20 | 2018-05-01 | Intel Corporation | Computing resources workload scheduling |
US10579277B1 (en) * | 2017-10-27 | 2020-03-03 | EMC IP Holding Company LLC | Non-disruptive insertion of virtualized storage appliance |
JP7011156B2 (ja) | 2017-11-20 | 2022-01-26 | 富士通株式会社 | ストレージ制御装置およびプログラム |
US11144226B2 (en) * | 2019-04-11 | 2021-10-12 | Samsung Electronics Co., Ltd. | Intelligent path selection and load balancing |
US11099759B2 (en) | 2019-06-03 | 2021-08-24 | Advanced New Technologies Co., Ltd. | Method and device for dividing storage devices into device groups |
CN110347497B (zh) * | 2019-06-03 | 2020-07-21 | 阿里巴巴集团控股有限公司 | 一种将多个存储设备划分设备组的方法及装置 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE68925114T2 (de) | 1988-01-27 | 1996-06-20 | Storage Technology Corp | Frühstartmodus-verfahren und -vorrichtung |
US5121479A (en) | 1988-01-27 | 1992-06-09 | Storage Technology Corporation | Early start mode data transfer apparatus |
US5680574A (en) * | 1990-02-26 | 1997-10-21 | Hitachi, Ltd. | Data distribution utilizing a master disk unit for fetching and for writing to remaining disk units |
US5301324A (en) * | 1992-11-19 | 1994-04-05 | International Business Machines Corp. | Method and apparatus for dynamic work reassignment among asymmetric, coupled processors |
JP3264465B2 (ja) | 1993-06-30 | 2002-03-11 | 株式会社日立製作所 | 記憶システム |
JP3503690B2 (ja) | 2000-01-06 | 2004-03-08 | 国産電機株式会社 | 電動機速度制御装置 |
JP2001306365A (ja) * | 2000-04-27 | 2001-11-02 | Mitsubishi Electric Corp | 負荷測定方式 |
JP4478321B2 (ja) * | 2000-11-27 | 2010-06-09 | 富士通株式会社 | ストレージシステム |
JP4188602B2 (ja) | 2002-01-10 | 2008-11-26 | 株式会社日立製作所 | クラスタ型ディスク制御装置及びその制御方法 |
JP2003242097A (ja) * | 2002-02-15 | 2003-08-29 | Hitachi Ltd | クロスコール機能を備えるディスク制御装置 |
JP2004054845A (ja) * | 2002-07-24 | 2004-02-19 | Sony Corp | データ管理装置 |
JP2005056200A (ja) * | 2003-08-05 | 2005-03-03 | Hitachi Ltd | データ管理方法、ディスク記憶装置およびディスク記憶システム |
JP4391265B2 (ja) * | 2004-02-26 | 2009-12-24 | 株式会社日立製作所 | ストレージサブシステムおよび性能チューニング方法 |
JP4528551B2 (ja) * | 2004-04-14 | 2010-08-18 | 株式会社日立製作所 | ストレージシステム |
JP4377279B2 (ja) | 2004-05-06 | 2009-12-02 | 株式会社日立製作所 | ストレージシステム、コンピュータシステム、およびストレージシステムの設定方法 |
DE602004011757T2 (de) | 2004-07-01 | 2009-02-05 | Sap Ag | Datenverarbeitungssystem zur Zuweisung von Objekten an Verarbeitungseinheiten |
EP1626339B1 (en) * | 2004-08-13 | 2016-02-24 | Sap Se | Data processing system and method for assigning objects to processing units |
-
2006
- 2006-03-17 JP JP2006073867A patent/JP5089896B2/ja not_active Expired - Fee Related
- 2006-05-05 US US11/429,527 patent/US8271979B2/en not_active Expired - Fee Related
- 2006-08-31 EP EP06254558A patent/EP1835389A3/en not_active Withdrawn
-
2012
- 2012-08-17 US US13/588,226 patent/US9262095B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US8271979B2 (en) | 2012-09-18 |
JP2007249729A (ja) | 2007-09-27 |
US20120311204A1 (en) | 2012-12-06 |
EP1835389A2 (en) | 2007-09-19 |
US9262095B2 (en) | 2016-02-16 |
US20070220514A1 (en) | 2007-09-20 |
EP1835389A3 (en) | 2009-12-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5089896B2 (ja) | マイクロプロセッサの負荷分散機能を備えたストレージシステム | |
JP4775846B2 (ja) | 物理リンクの割当てを制御するコンピュータシステム及び方法 | |
JP4790372B2 (ja) | ストレージのアクセス負荷を分散する計算機システム及びその制御方法 | |
US7617360B2 (en) | Disk array apparatus and method of controlling the same by a disk array controller having a plurality of processor cores | |
JP5099128B2 (ja) | ストレージ管理プログラム、ストレージ管理装置およびストレージ管理方法 | |
JP4890033B2 (ja) | 記憶装置システム及び記憶制御方法 | |
JP4842593B2 (ja) | ストレージ仮想化装置のデバイス制御引継ぎ方法 | |
US7480780B2 (en) | Highly available external storage system | |
US6601138B2 (en) | Apparatus system and method for N-way RAID controller having improved performance and fault tolerance | |
JP4477906B2 (ja) | ストレージシステム | |
JP4896500B2 (ja) | 機器停止を伴う仮想ボリューム制御方法 | |
US7817626B2 (en) | Storage subsystem | |
JP4609848B2 (ja) | 負荷分散コンピュータシステム、経路設定プログラム及びその方法 | |
JP2009043030A (ja) | ストレージシステム | |
JP2005165702A (ja) | クラスタストレージのデバイス連結方法 | |
EP1708076B1 (en) | Storage system and storage control method | |
JP2002032197A (ja) | ディスクアレイ記憶装置の論理ボリュームの透過交換方法 | |
US8578073B2 (en) | Storage system and control method of storage system | |
US6922762B2 (en) | Clustering storage system | |
US7694037B2 (en) | Information processing apparatus and command multiplicity control method wherein commands are sent from a host to a target using iSCSI control protocol | |
JP2007179156A (ja) | 記憶制御装置及び方法 | |
JPH10198526A (ja) | Raid装置及びそのアクセス制御方法 | |
US8275958B2 (en) | Storage system with remote copy controllers | |
US20120311275A1 (en) | Storage subsystem and load distribution method | |
JP2009295045A (ja) | ストレージシステム、ストレージサブシステム、及び記憶制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20081216 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110426 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110624 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120125 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120323 |
|
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: 20120911 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120912 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150921 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |