JPH11259430A - マルチプロセッサ排他制御方法および制御装置 - Google Patents

マルチプロセッサ排他制御方法および制御装置

Info

Publication number
JPH11259430A
JPH11259430A JP6246898A JP6246898A JPH11259430A JP H11259430 A JPH11259430 A JP H11259430A JP 6246898 A JP6246898 A JP 6246898A JP 6246898 A JP6246898 A JP 6246898A JP H11259430 A JPH11259430 A JP H11259430A
Authority
JP
Japan
Prior art keywords
processor
resource
word
multiprocessor
waiting
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.)
Pending
Application number
JP6246898A
Other languages
English (en)
Inventor
Hisao Honma
久雄 本間
Hisaharu Takeuchi
久治 竹内
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP6246898A priority Critical patent/JPH11259430A/ja
Publication of JPH11259430A publication Critical patent/JPH11259430A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 【課題】マルチプロセッサを構成する制御方式の資源排
他方式の一手法を提案し、マルチプロセッサ数の増加へ
の対応、競合によるハードウェア資源の占有、論理的待
ち時間の短縮を行なう。 【解決手段】マルチプロセッサ共有資源を排他制御、待
ち順管理を行なう論理を具備し、マルチプロセッサ制御
装置のシステムプログラム実行性能を向上させる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は複数のプロセッサを
有する制御装置の制御方法に関し、特にマルチプロセッ
サによる排他制御を装置の性能を落とさずに行う排他制
御方法に関する。
【0002】
【従来の技術】近年、記憶装置に対する性能の要求が高
まっている。その1つの解決手段として記憶装置制御の
ためにマルチプロセッサの構成を実施する事が一般的に
なっている。マルチプロセッサ構成を実施する場合、そ
れらのプロセッサ間の情報を伝達することを目的とする
共有メモリ持ち、共有資源を排他するための排他方式が
重要な課題となる。その一方、マルチプロセッサ構成を
実現するプロセッサにおいても、マルチプロセッサ構成
を意識した機能が提供されているが、いずれもハードウ
ェア構成として実現するためのものであり、制御プログ
ラムが論理的資源を排他するためのものではない。
【0003】マルチプロセッサ構成をとる制御装置にお
いて共有資源を排他する場合、排他管理を行なうための
共有メモリに対してリードモディファイライト機能が多
くもちいられている。リードモディファイライト機能と
は1プロセッサが共有メモリに対してリードを実行し、
そのデータを編集、結果を共有メモリにライトするまで
他プロセッサの共有メモリに対するアクセスを排他する
機能である。
【0004】それに対し制御プログラムで共有資源排他
を実現する方法として、データを編集する機能におい
て、ビット操作のみの編集機能、またはリードしたデー
タが比較対象のデータと一致した場合のみデータを更新
するといった機能により実現してきた。ビット編集機能
のみを提供する場合、ビット操作による資源待ち行列制
御が可能になるが、プロセッサが資源を占有するための
情報としてはそのビット単位ユニークにプロセッサを割
り当てる事が必須になるため、編集単位の1ワードのビ
ット数にプロセッサ数が制限される。また、複数ワード
で実現する事によりプロセッサ数の問題は解決される
が、複数ワードアクセスによる性能劣化が問題になって
くる。一方、比較更新を提供する機能においてはプロセ
ッサが資源を占有した事を示す情報としてコード(複数
ビットによる数値)として表現する事が可能となるため
プロセッサ数の制限はなくなる。しかし、複数プロセッ
サが同一資源で競合した場合の待ち行列制御が不可能に
なるため、待ち時間がランダムになり待ち行列理論によ
る平均待ち時間が増加し、性能劣化させる事が問題とな
る。
【0005】
【発明が解決しようとする課題】制御装置、とりわけ記
憶装置にとって重要なのは、そのシステム性能である。
その性能を向上するためにマルチプロセッサで装置を構
成するわけだが、システム性能を決定する要因として
は、加えて制御プログラムの実行速度、制御装置ハード
ウェア資源のボトルネックの回避、論理的な共有資源の
衝突回避が重要な要因を占めている。
【0006】プロセッサ数を増加させてもハードウェア
資源のボトルネックがある場合は性能は向上しない恐れ
があり、また、論理資源数がプロセッサ数とバランスし
ていない限り性能は向上しない。従って、プロセッサ数
が増加した場合にハードウェア資源のボトルネック回避
及び論理資源競合による待ち時間増加が課題となる。
【0007】マルチプロセッサで構成を実施する場合、
本発明方式の適用によりプロセッサ数増加に伴う、ハー
ドウェア資源の占有、主に共有メモリに対してのアクセ
スパス、論理資源の競合による待ち時間増加を最小限に
する事を可能とし、ハードウェア資源の最大性能を向上
する。
【0008】
【課題を解決するための手段】上記課題の達成を目的と
し、本発明では共有メモリの1ワードの排他制御情報を
資源占有プロセッサ情報と資源待ちプロセッサ情報とに
分割する。その情報をリードモディファイライト機能と
比較更新及びビット操作を組み合わせて使用する事によ
り実現する。
【0009】本発明はこのような大規模マルチプロセッ
サ構成を実施する上での問題に対し、1つの解決方法を
提案している。本提案はプロセッサのアクセス1単位で
ある1ワードの排他制御で大規模マルチプロセッサ構成
を可能とする事により、制御プログラム実行ステップの
増加の防止、排他衝突による沈み込みを防止し、制御装
置性能を保証する事を可能としている。
【0010】資源新規確保を実施する場合にはまず共有
メモリからリードしたデータのプロセッサ占有情報を比
較しどのプロセッサも占有していない事を確認する。ま
た、同時に資源待ちプロセッサ情報も比較し待ちプロセ
ッサがいない事を確認する。この結果、前記2つの条件
を満たした場合、自プロセッサのIDを資源占有プロセ
ッサ情報エリアを更新し、共有メモリに書き込む。この
動作が終了した場合、当該プロセッサは資源を占有した
ことになる。また、条件が成立しない場合、資源待ちプ
ロセッサ情報エリアに自プロセッサIDと対応付けたビ
ットをアサインし、そのビットを1として更新し、共有
メモリにライトを行なう。資源待ち状態になっているプ
ロセッサは自分がアサインしたビットの前のビットを定
期的にチェックし、前のビットが0の場合は再度、再資
源確保要求を実施する。前のビットが1の場合は自分の
前に当該資源を待っているプロセッサがある事を示し、
自プロセッサは前のプロセッサが資源確保を行なうま
で、つまり、ビットが0になるまでは再資源確保要求を
行わない。
【0011】再資源確保要求の場合は既に資源待ちプロ
セッサ情報にビットが登録されているため、新規確保要
求動作+資源待ちプロセッサ情報ビットOFFの動作と
なる。
【0012】マルチプロセッサ構成を持つ制御装置にお
いて、本発明方式を用いる事により、ハードウェア資源
占有による性能劣化、資源待ちの沈み込みが防止されマ
ルチプロセッサ構成による性能劣化を低減可能と考えら
れる。
【0013】また、本発明方式を採用しハードウェアに
て実現する事により制御プログラムの簡易化を可能と
し、実行ステップの軽減による性能向上も期待できる。
【0014】
【発明の実施の形態】本発明方式の実施例について、図
面を用いて詳細に説明する。
【0015】図1は、本発明方式を適応した記憶制御装
置のブロック図である。ホストコピュータとの間でデー
タ転送制御を行なうチャネルアダプタ(以下ではCH
A)11、データ転送を制御するCHA11が入出力デ
ータを一時的に格納するキャッシュメモリ12、データ
を積畜する記憶媒体であるディスクアレイ13、キャッ
シュメモリ12とディスクアレイ13間のデータ転送を
制御するディスクアダプタ(以下ではDKA)14、シ
ステム管理情報および通信情報などを格納する共用メモ
リ15、各CHA11、DKA14からキャッシュメモ
リ12または共用メモリ15へ接続する共通バス16に
よって構成される。CHA11はホストコピュータから
のライトデータをキャッシュメモリ12に転送され処理
を終了する。DKA14は非同期にCHA11によって
ライトされたデータがキャッシュ12上に存在するかを
確認し、データが存在した場合ディスクアレイ13に対
する書き込みを実行する。図に示される記憶装置は記憶
領域を論理デバイス(以下LDEV)に分割して制御し
ている。これは複数のCHA11から同一LDEVに対
するデータのライト、CHA11とDKA14が同時に
動作するとデータの衝突が発生するために複数のCHA
11、DKA14の排他制御を行なう単位としている。
【0016】図2はプロセッサを持つCHA/DKAが
データの衝突を防止するための方式について説明する。
プロセッサ21はキャッシュ上のデータ格納領域23に
対してデータ転送を実行する場合、そのプロセッサ21
がキャッシュ上のデータ格納領域23を占有する事を宣
言する。その方法として21がキャッシュ上のデータ格
納領域の排他共有制御を行なうために、共有メモリ上に
キャッシュ上のデータ格納領域毎のプロセッサ排他制御
ワード(以下ロックワードとも言う)を持つ。この制御
ワードで複数のプロセッサが競合し、占有権を獲得した
プロセッサがデータ格納領域を使用可能となる。各プロ
セッサの資源確保フローチャート24において、まず資
源確保要求を当該プロセッサ制御ワードに対して実行す
る。その結果として、資源確保が成功したか否かの情報
を取得し、失敗の場合は自分の待ち順が登録される。こ
の後、確保待ちプロセッサは同一制御ワードを監視し、
確保要求を実行してもよいかの問い合せを行なう。自分
の順番でない場合は自分の順番がスケジュールされるま
で一定時間の待ちを実行しながら繰り返す。この問い合
せにより自分の順番がスケジュールされた場合には再度
資源確保要求を実行する。
【0017】図3はプロセッサがプロセッサ排他ワード
のフォーマットについて説明する。32ビットのプロセ
ッサ排他ワードは1ビットのロック31と7ビットのM
PID32と24ビットの待ちキュー33で構成され
る。ロック31はプロセッサが当該ロックワードを確保
している事を示す。本ビットが“1”の場合がロック状
態であり、“0”の場合がロック状態でない事をしめ
す。MPIDは32はロックワードを確保しているMP
IDを格納する。各プロセッサはユニークにMPIDを
持ちそのIDを本エリアに格納する。本ワード構成は7
ビットのMPIDエリアを使用しているため、最大12
8プロセッサまで扱えることになる。待ちキュー33は
資源競合が発生した場合の待ちプロセッサ登録に使用す
る。本エリアはプロセッサ毎に1ビットを使用するが、
固定的にプロセッサ対応していない。この24ビットを
リングバッファとして制御しビットの配列で制御する。
【0018】図4はプロセッサ排他ワードを制御するた
めのインタフェースである資源確保要求制御ワードを示
したものである。比較データ34はロックワードを開放
する場合、他プロセッサとのすれ違いを防止するため
に、必ず比較データと比較を行い、一致した場合のみデ
ータ更新を行なうために使用する。制御ビット35は資
源ロックの機能である新規確保要求、再確保要求、開放
要求を制御する為の機能を提供する。MPID36はプ
ロセッサにユニークなIDを指定する。これによりロッ
クワード情報の資源取得プロセッサ情報を設定する。待
ちビット位置37は既に新規確保要求に失敗し、待ちキ
ューに自プロセッサのビットが登録されている場合、再
確保要求に成功した場合の待ちキューをOFFするビッ
ト位置として指定する。
【0019】図5は資源新規確保要求の動作フローチャ
ートを示したものである。プロセッサからの要求で資源
ロックワードのアドレス、及び資源確保要求制御ワード
の情報を受け取る。これにより本処理は指定されたアド
レスの資源ロックワードデータを取得301し、ロッ
ク、MPID、待ちキューが全て0かどうかを比較する
302。一致した場合、ロックエリアに1、MPIDエ
リアに自MPIDを格納する307。不一致の場合、他
プロセッサが資源を確保中ということで待ちキュー登録
を行なう。待ちキューの登録は24ビットのエリアをリ
ングバッファとしてデータパターン“100”をサーチ
する303。ここで一致した場合、データを“110”
とし305、更新したビット位置が確保要求を行なった
プロセッサの待ち順ビットになる。データが見つからな
かった場合304は待ちキューが満杯である事を意味す
る。最後にこのデータを共有メモリ上のロックワードに
格納し、更新後データをプロセッサに報告して処理を終
了する。
【0020】図6は資源再確保要求の動作フローチャー
トを示したものである。再確保要求は新規確保要求に対
して、待ちキューは必ず0以外であるため比較を行わな
い308。また、待ちキュー登録は既に済んでいるため
実施しない。また、再確保が成功した場合、指定された
自プロセッサの待ち順ビットをクリアする処理309が
追加される。
【0021】図7は資源確保クリア要求の動作フローチ
ャートを示したものである。この動作はロックエリアが
1でMPIDが自MPIDである事を確認310する。
これはすれ違い等により誤ってクリアする事を防止する
ためである。この比較が一致した場合、確かに自プロセ
ッサが確保していた事が確認され、ロックエリア=0、
MPID=0を設定310する。
【0022】
【発明の効果】マルチプロセッサ構成を持つ制御装置に
おいて、本発明方式を用いる事により、ハードウェア資
源占有による性能劣化、資源待ちの沈み込みが防止され
マルチプロセッサ構成による性能劣化を低減可能と考え
られる。
【0023】また、本発明方式を採用しハードウェアに
て実現する事により制御プログラムの簡易化を可能と
し、実行ステップの軽減による性能向上も期待できる。
【図面の簡単な説明】
【図1】実施例記憶制御装置のブロック図。
【図2】資源確保フローチャート図。
【図3】プロセッサ排他制御ワード図。
【図4】資源確保要求制御ワード図。
【図5】プロセッサ排他制御新規確保要求フローチャー
ト図。
【図6】プロセッサ排他制御再確保要求フローチャート
図。
【図7】プロセッサ排他制御確保クリア要求フローチャ
ート図。
【符号の説明】
11…CHA(チャンネルアダプタ)、12…キャッシ
ュメモリ、13…ディスクアレイ、14…DKA(ディ
スクアダプタ)、15…共有メモリ、16…共用メモ
リ、17…共通バス。

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】マルチプロセッサをもつ制御装置におい
    て、資源を排他共有制御するための共有メモリを持ち、
    プロセッサからメモリに対するアクセス単位、1ワード
    でそのビット数以上のマルチプロセッサを排他すること
    を可能とする制御方法。
  2. 【請求項2】上記請求項1のマルチプロセッサ排他方式
    において、1ワード内に資源確保プロセッサ番号と、資
    源確保待ちプロセッサキューを持ち、資源待ちプロセッ
    サの待ち順を保証する事を可能とするプロセッサ排他制
    御方法。
  3. 【請求項3】マルチプロセッサ構成において、共有資源
    を排他する場合、上記請求項1を用いて、プロセッサの
    1ワードビット数以上のマルチプロセッサ構成を可能と
    する制御装置。
  4. 【請求項4】マルチプロセッサ構成において、共有資源
    を排他する場合、上記請求項2を用いて、資源ロック待
    ちによる沈み込みを防止可能とする制御装置。
JP6246898A 1998-03-13 1998-03-13 マルチプロセッサ排他制御方法および制御装置 Pending JPH11259430A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6246898A JPH11259430A (ja) 1998-03-13 1998-03-13 マルチプロセッサ排他制御方法および制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6246898A JPH11259430A (ja) 1998-03-13 1998-03-13 マルチプロセッサ排他制御方法および制御装置

Publications (1)

Publication Number Publication Date
JPH11259430A true JPH11259430A (ja) 1999-09-24

Family

ID=13201076

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6246898A Pending JPH11259430A (ja) 1998-03-13 1998-03-13 マルチプロセッサ排他制御方法および制御装置

Country Status (1)

Country Link
JP (1) JPH11259430A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005275829A (ja) * 2004-03-25 2005-10-06 Hitachi Ltd ストレージシステム
JP2011129024A (ja) * 2009-12-21 2011-06-30 Renesas Electronics Corp データ処理システム及びデータ処理方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005275829A (ja) * 2004-03-25 2005-10-06 Hitachi Ltd ストレージシステム
JP2011129024A (ja) * 2009-12-21 2011-06-30 Renesas Electronics Corp データ処理システム及びデータ処理方法

Similar Documents

Publication Publication Date Title
US7200695B2 (en) Method, system, and program for processing packets utilizing descriptors
EP1310872B1 (en) Circuit group control system
EP1189132A2 (en) Shared peripheral architecture
JPH05128071A (ja) 多重プロセツサ・システムの性能の最適化装置及び方法
JP2557199B2 (ja) インターフェース・システムおよび方法
JP2001117859A (ja) バス制御装置
US20110265093A1 (en) Computer System and Program Product
JP2006513493A (ja) フリーバッファプールを使用することによるメモリの管理
JP5655403B2 (ja) マルチコアプロセッサシステム,スケジュール管理プログラム及び同プログラムを記録したコンピュータ読取可能な記録媒体
US10831684B1 (en) Kernal driver extension system and method
US10671453B1 (en) Data storage system employing two-level scheduling of processing cores
JP2002278833A (ja) ディスクアレイ制御装置
JP2001306265A (ja) 記憶制御装置および記憶制御装置の制御方法
JPH06119297A (ja) データ処理システムにおける命令の実行順序を決定する方法および装置
JPH11259430A (ja) マルチプロセッサ排他制御方法および制御装置
US20030014558A1 (en) Batch interrupts handling device, virtual shared memory and multiple concurrent processing device
US5918243A (en) Computer mechanism for reducing DASD arm contention during parallel processing
JPH09146904A (ja) アドレス空間共有システム
JPH08212178A (ja) 並列計算機
JP2602241B2 (ja) 並列計算機
CN113176950B (zh) 报文处理方法、装置、设备及计算机可读存储介质
EP0923031B1 (en) Method for reading data from a shared memory in a multiprocessor computer system
JPS603229B2 (ja) 情報処理方式
JP3206580B2 (ja) Dmaデータ転送制御方法及び入出力処理装置
JPH1021203A (ja) I/o装置のアクセス方法およびそのためのマルチプロセッサシステム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20051007

A131 Notification of reasons for refusal

Effective date: 20051018

Free format text: JAPANESE INTERMEDIATE CODE: A131

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060228