JP2550897B2 - マルチプロセッサシステムのバリア同期装置 - Google Patents

マルチプロセッサシステムのバリア同期装置

Info

Publication number
JP2550897B2
JP2550897B2 JP5297945A JP29794593A JP2550897B2 JP 2550897 B2 JP2550897 B2 JP 2550897B2 JP 5297945 A JP5297945 A JP 5297945A JP 29794593 A JP29794593 A JP 29794593A JP 2550897 B2 JP2550897 B2 JP 2550897B2
Authority
JP
Japan
Prior art keywords
value
barrier
processor
processors
shared area
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
Application number
JP5297945A
Other languages
English (en)
Other versions
JPH07152694A (ja
Inventor
彰一 左近
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.)
NEC Corp
Original Assignee
Nippon Electric Co 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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP5297945A priority Critical patent/JP2550897B2/ja
Priority to US08/339,278 priority patent/US5796946A/en
Publication of JPH07152694A publication Critical patent/JPH07152694A/ja
Application granted granted Critical
Publication of JP2550897B2 publication Critical patent/JP2550897B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • G06F9/522Barrier synchronisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、マルチプロセッサシス
テムにおけるバリア同期装置に関する。
【0002】
【従来の技術】マルチプロセッサによる並列処理におい
て、プログラム中でプロセッサの足並みを揃え最も遅い
プロセッサが到着するのを他のプロセッサが待つため
に、バリアと呼ばれる同期がとられる。このバリア処理
は、従来は、バリアをとりたいプロセッサの数を全てプ
ロセッサからアクセス可能な共有メモリないし共有レジ
スタに初期設定しておき、各プロセッサではロックをと
りながらその共有領域の値に1を減算し、その後、その
共有領域の値が0になるまでループして待つことにより
行っていた。あるいは、最初に初期設定される値を0に
しておき、各プロセッサではロックをとりながら値に1
を加算し、値がプロセッサ数になるまでループして待つ
ことにより行っていた。バリア同期に関する従来の技術
としては、「細粒度並列実行を支援する種々の静的順序
制御方式の定量的評価 高木、有田、曽和、並列処理シ
ンポジウムJSPP’91論文集、pp.269−27
6、1991年5月」に記載されている技術がある。
【0003】
【発明が解決しようとする課題】このような従来の技術
では、バリアを複数回連続して行う場合に、毎回バリア
領域を初期設定しなければならないという問題点があ
る。そのために別にロックおよびバリア同期をとらなけ
ればならず性能低下を招いていた。
【0004】
【課題を解決するための手段】第1の発明のマルチプロ
セッサシステムのバリア同期装置は、マルチプロセッサ
システムを構成する各プロセッサが、各プロセッサ間の
共有領域に対する排他制御を行うロック手段と、このロ
ック手段による排他制御区間において、この各プロセッ
サ間の共有領域の値を読みだす読みだし手段と、前記ロ
ック手段による排他制御区間において、この読みだし手
段が読みだした値に予め定められた値、例えば1を加算
する加算手段と、前記ロック手段による排他制御区間に
おいて、この加算手段が算出した値を前記プロセッサ間
の共有領域へ書き込む書き込み手段と、前記加算手段が
算出した値をもとに次バリア値を計算する計算手段と、
前記加算手段が算出した値とこの計算手段が計算した次
バリア値を比較する比較手段と、この比較手段の結果、
全プロセッサがバリア同期に到達したと判断された場合
にバリアを抜けて次の処理に分岐し、全プロセッサがバ
リア同期に到達していないと判断された場合に全プロセ
ッサがバリア同期に到達するまで待ち合わせる分岐手段
を備えて構成されている。
【0005】第2の発明のマルチプロセッサシステムの
バリア同期装置は、第1の発明のマルチプロセッサシス
テムのバリア同期装置において、プロセッサ間の共有領
域に対する排他的インクリメントデクリメント手段を備
えている。
【0006】第3の発明のマルチプロセッサシステムの
バリア同期装置は、第1の発明のマルチプロセッサシス
テムのバリア同期装置において、各プロセッサ毎に保持
している領域の値から次バリア値を計算する計算手段を
備えている。
【0007】第4の発明のマルチプロセッサシステムの
バリア同期装置は、第1の発明のマルチプロセッサシス
テムのバリア同期装置において、プロセッサ間の共有領
域に対する排他的インクリメントデクリメント手段と、
各プロセッサ毎に保持している領域の値から次バリア値
を計算する計算手段を備えている。
【0008】
【実施例】以下本発明の一実施例について、図を参照し
ながら詳細に説明する。
【0009】図1を参照すると、本発明の第1の実施例
であるマルチプロセッサシステムのバリア同期装置は、
マルチプロセッサシステムを構成する複数のプロセッサ
とプロセッサとプロセッサとの間で共有される共有領域
12とから構成される。プロセッサ11は、他のプロセ
ッサとの間で排他制御を行うロック手段111と、共有
領域12の値を読みだす読みだし手段112と、読みだ
した共有領域12の値に1を加えるための加算手段11
4と、共有領域12に値を書き込む書き込み手段113
と、読みだした共有領域12の値を元に、全プロセッサ
がバリア同期に到達した時の共有領域12の値である次
バリア値を算出する計算手段115と、読みだした共有
領域12の値と算出した次バリア値を比較する比較手段
116と、比較の結果全プロセッサがバリア同期に到達
した場合に次の動作に分岐し、また全プロセッサがバリ
ア同期に到達していない場合に再び共有領域12の値を
読みだし比較する為の分岐を行う分岐手段117とから
構成される。
【0010】図2はプロセッサ11がバリア同期を行う
為のプログラムを示す。並列処理を行っているプロセッ
サが各々このプログラムを実行すると、最後に到達した
プロセッサがこのプログラムを実行するまで他のプロセ
ッサは待ち合わせを行うことになる。図2中の各処理に
付された数字は、以下の実施例の各ステップに対応す
る。
【0011】次に本発明の第1の実施例の動作につい
て、図1と図2を参照して説明する。
【0012】ステップ21を参照すると、プロセッサ1
1のロック手段111が共有領域12にロックをかけ
る。ロックをかけるのは、共有領域12を排他的に更新
する必要がある為である。
【0013】ステップ22を参照すると、読みだし手段
112が共有領域12であるcomの値を読みだし、変
数bに格納する。変数bはプロセッサのローカルメモリ
およびレジスタのいずれか1つに割り当てる。また共有
領域comの値は予め0に初期化されている。
【0014】ステップ23を参照すると、加算手段11
4が変数bの値に1を加算する。
【0015】ステップ24を参照すると、書き込み手段
113が変数bの値を共有領域comに書き戻す。
【0016】ステップ25を参照すると、ロック手段1
11がロックを外す。
【0017】ステップ21からステップ25までの処理
により、マルチプロセッサシステムを構成する各プロセ
ッサがこのプログラムを実行するたびに共有領域com
の値が1を加算されることになる。すなわちcomの値
はバリアに到着したプログラム数を示していることにな
る。
【0018】ステップ26を参照すると、計算手段11
5が、各プロセッサが読みだした共有領域comの値に
1を加えた変数bの値をもとに、以下に示す計算式によ
り、最終プロセッサ到着時の共有領域comの値(これ
を次バリア値という)を算出し変数nに代入する。nは
プロセッサのローカルメモリおよびレジスタのいずれか
1つに割り当てる。
【0019】
【0020】計算式において、tは並列処理を行うプロ
セッサの数であり、並列処理開始時に各プロセッサのロ
ーカルメモリおよびレジスタのいずれか1つに保存す
る。計算式により、bより大きい(bも含む)tの倍数
で最も小さいものが求められる。これがこのバリア同期
プログラムに最終プロセッサが到着した時のcomの値
となる。
【0021】ステップ27を参照すると、比較手段11
6が変数bと変数nを比較し、変数bが変数nより大き
いか等しい場合には、全てのプロセッサがバリアに到達
したとして、分岐手段117によりラベルL2に分岐し
バリアを抜ける。つまりこのステップ27を最初に実行
して比較条件が成立するのは、最終プロセッサの場合だ
けである。
【0022】ステップ28を参照すると、変数bが変数
nより小さい場合、すなわちバリアに到達していないプ
ロセッサが存在する時、読みだし手段112が再び共有
領域comの値を変数bに読み込む。
【0023】そして、ステップ29を参照すると、分岐
手段117によりラベルL1に分岐し、再びステップ2
7の実行を繰り返す。
【0024】ステップ27からステップ29までの処理
により、全てのプロセッサがバリアに到達するまで待ち
合わせが行われる。
【0025】また、プロセッサが次のバリア動作を引き
続き行いたい場合には、共有領域の初期化を行う必要は
なく、同じプログラムを用いてバリアを行うことができ
る。
【0026】以上により、本発明の第1の実施例の動作
であるマルチプロセッサシステムのバリア同期装置の処
理が完了する。
【0027】図3を参照すると、本発明の第2の実施例
であるマルチプロセッサシステムのバリア同期装置は、
第1の発明のマルチプロセッサシステムのバリア同期装
置において、ロック手段111、書き込み手段113、
および加算手段114を排他的インクリメントデクリメ
ント手段311で置換して構成されている。すなわち、
マルチプロセッサシステムを構成する複数のプロセッサ
とプロセッサとプロセッサとの間で共有される共有領域
32とから構成され、プロセッサ31は、共有領域32
の値を排他的にインクリメントする排他的インクリメン
トデクリメント手段311と、共有領域32の値を読み
だす読みだし手段312と、読みだした共有領域32の
値を元に、全プロセッサがバリア同期に到達した時の共
有領域32の値である次バリア値を算出する計算手段3
15と、読みだした共有領域32の値と算出した次バリ
ア値を比較する比較手段316と、比較の結果全プロセ
ッサがバリア同期に到達した場合に次の動作に分岐し、
また全プロセッサがバリア同期に到達していない場合に
再び共有領域32の値を読みだし比較する為の分岐を行
う分岐手段317とから構成される。
【0028】図4はプロセッサ31がバリア同期を行う
為のプログラムを示す。並列処理を行っているプロセッ
サが各々このプログラムを実行すると、最後に到達した
プロセッサがこのプログラムを実行するまで他のプロセ
ッサは待ち合わせを行うことになる。図4中の各処理に
付された数字は、以下の実施例の各ステップに対応す
る。
【0029】次に本発明の第2の実施例の動作につい
て、図3と図4を参照して説明する。
【0030】第1の実施例のステップ21、22、2
3、24、25が、本実施例では排他的インクリメント
デクリメント手段を用いたステップ41に置き換えられ
る。
【0031】すなわちステップ41を参照すると、排他
的インクリメントデクリメント手段311が、共有領域
31であるcomの値を排他的にインクリメントしその
インクリメント後の値を変数bに代入する。
【0032】以下、ステップ42、43、44、45、
46の動作は第1の実施例のステップ26、27、2
8、29、30の動作と同じである。これによりバリア
同期を行うことができる。
【0033】以上により、本発明の第2の実施例の動作
であるマルチプロセッサシステムのバリア同期装置の処
理が完了する。
【0034】図5を参照すると、本発明の第3の実施例
であるマルチプロセッサシステムのバリア同期装置は、
第1の発明のマルチプロセッサシステムのバリア同期装
置において、各プロセッサがプロセッサ毎に保持してい
る領域53を含んでいる。すなわち、マルチプロセッサ
システムを構成する複数のプロセッサとプロセッサとプ
ロセッサとの間で共有される共有領域52と、各プロセ
ッサがプロセッサ毎に保持している領域53から構成さ
れる。プロセッサ51は、他のプロセッサとの間で排他
制御を行うロック手段511と、共有領域52の値を読
みだす読みだし手段512と、読みだした共有領域52
の値に1加えるための加算手段514と、共有領域52
に値を書き込む書き込み手段513と、プロセッサ毎に
保持している領域53の値を元に、全プロセッサがバリ
ア同期に到達した時の共有領域52の値である次バリア
値を算出する計算手段515と、読みだした共有領域5
2の値と算出した次バリア値を比較する比較手段516
と、比較の結果全プロセッサがバリア同期に到達した場
合に次の動作に分岐し、また全プロセッサがバリア同期
に到達していない場合に再び共有領域52の値を読みだ
し比較する為の分岐を行う分岐手段517とから構成さ
れる。
【0035】図6はプロセッサ51がバリア同期を行う
為のプログラムを示す。並列処理を行っているプロセッ
サが各々このプログラムを実行すると、最後に到達した
プロセッサがこのプログラムを実行するまで他のプロセ
ッサは待ち合わせを行うことになる。図6中の各処理に
付された数字は、以下の実施例の各ステップに対応す
る。
【0036】次に本発明の第3の実施例の動作につい
て、図5と図6を参照して説明する。
【0037】第1の実施例のステップ26が、本実施例
ではステップ66に置き換えられる。
【0038】すなわちステップ66を参照すると、各プ
ログラム毎に保持しているバリア値n(初期値は0にな
っているものとする)にプログラム数tを加えることに
より、次バリア値を求めることができる。
【0039】本実施例におけるステップ61、62、6
3、64、65、67、68、69、および70は、第
1の実施例のステップ21、22、23、24、25、
27、28、29、および30と同じである。これによ
りバリア同期を行うことができる。
【0040】以上により、本発明の第3の実施例の動作
であるマルチプロセッサシステムのバリア同期装置の処
理が完了する。
【0041】図7を参照すると、本発明の第4の実施例
であるマルチプロセッサシステムのバリア同期装置は、
第1の発明のマルチプロセッサシステムのバリア同期装
置において、ロック手段111、書き込み手段113、
および加算手段114を排他的インクリメントデクリメ
ント手段711で置換して構成され、さらに各プロセッ
サがプロセッサ毎に保持している領域73を含んでい
る。すなわち、マルチプロセッサシステムを構成する複
数のプロセッサとプロセッサとプロセッサとの間で共有
される共有領域72と、各プロセッサがプロセッサ毎に
保持している領域73から構成され、プロセッサ71
は、共有領域72の値を排他的にインクリメントする排
他的インクリメントデクリメント手段711と、共有領
域72の値を読みだす読みだし手段712と、プロセッ
サ毎に保持している領域73の値を元に、全プロセッサ
がバリア同期に到達した時の共有領域72の値である次
バリア値を算出する計算手段715と、読みだした共有
領域72の値と算出した次バリア値を比較する比較手段
716と、比較の結果全プロセッサがバリア同期に到達
した場合に次の動作に分岐し、また全プロセッサがバリ
ア同期に到達していない場合に再び共有領域72の値を
読みだし比較する為の分岐を行う分岐手段717とから
構成される。
【0042】図8はプロセッサ71がバリア同期を行う
為のプログラムを示す。並列処理を行っているプロセッ
サが各々このプログラムを実行すると、最後に到達した
プロセッサがこのプログラムを実行するまで他のプロセ
ッサは待ち合わせを行うことになる。図8中の各処理に
付された数字は、以下の実施例の各ステップに対応す
る。
【0043】次に本発明の第4の実施例の動作につい
て、図7と図8を参照して説明する。
【0044】第1の実施例のステップ21、22、2
3、24、および25が、本実施例では排他的インクリ
メントデクリメント手段711を用いたステップ81に
置き換えられる。
【0045】すなわちステップ81を参照すると、排他
的インクリメントデクリメント手段711が、共有領域
71であるcomの値を排他的にインクリメントデクリ
メントしそのインクリメント後の値を変数bに代入す
る。
【0046】第1の実施例のステップ26が、本実施例
ではステップ82に置き換えられる。
【0047】すなわちステップ82を参照すると、各プ
ロセッサ毎に保持しているバリア値n(初期値は0にな
っているものとする)にプロセッサ数tを加えることに
より、次バリア値を求めることができる。
【0048】本実施例におけるステップ83、84、8
5、および86の処理は、第1の実施例のステップ2
7、28、29、および30の動作と同じである。これ
によりバリア動作を行うことができる。
【0049】以上により、本発明の第4の実施例の動作
であるマルチプロセッサシステムのバリア同期装置の処
理が完了する。
【0050】
【発明の効果】以上に示した様に、本発明のバリア同期
装置により、共有領域の初期化を行うことなく繰り返し
てバリアを取ることができるので、並列処理プログラム
の性能を向上させることができる効果を有している。
【図面の簡単な説明】
【図1】図1は本発明の第1の実施例を示すブロック図
である。
【図2】図2は本発明の第1の実施例のマルチプロセッ
サシステム間でバリア同期を行う為のプログラムを示す
図である。
【図3】図3は本発明の第2の実施例を示すブロック図
である。
【図4】図4は本発明の第2の実施例のマルチプロセッ
サシステム間でバリア同期を行う為のプログラムを示す
図である。
【図5】図5は本発明の第3の実施例を示すブロック図
である。
【図6】図6は本発明の第3の実施例のマルチプロセッ
サシステム間でバリア同期を行う為のプログラムを示す
図である。
【図7】図7は本発明の第4の実施例を示すブロック図
である。
【図8】図8は本発明の第4の実施例のマルチプロセッ
サシステム間でバリア同期を行う為のプログラムを示す
図である。
【符号の説明】
11 プロセッサ 12 共有領域 111 ロック手段 112 読みだし手段 113 書き込み手段 114 加算手段 115 計算手段 116 比較手段 117 分岐手段 31 プロセッサ 32 共有領域 311 排他的インクリメントデクリメント手段 312 読みだし手段 315 計算手段 316 比較手段 317 分岐手段 51 プロセッサ 52 共有領域 53 各プロセッサ毎に保持している領域 511 ロック手段 512 読みだし手段 513 書き込み手段 514 加算手段 515 計算手段 516 比較手段 517 分岐手段 71 プロセッサ 72 共有領域 73 各プロセッサ毎に保持している領域 711 排他的インクリメントデクリメント手段 712 読みだし手段 715 計算手段 716 比較手段 717 分岐手段
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 情報処理学会論文誌Vol.32No. 7P.886−896ELASTIC BAR RIER:一般化されたバリア型同期機 構松本尚 PROC.OF ASPLOS ▲I II▼P.54−63 R.GUPTA「T HE FUZZY BARRIER:A MECHANISM FOR HIG H SPEED SYNCHRONIZ ATION OF PROCESSOR S」

Claims (4)

    (57)【特許請求の範囲】
  1. 【請求項1】 マルチプロセッサシステムを構成する各
    プロセッサが、 各プロセッサ間の共有領域に対する排他制御を行うロッ
    ク手段と、 このロック手段による排他制御区間において、この各プ
    ロセッサ間の共有領域の値を読みだす読みだし手段と、 前記ロック手段による排他制御区間において、この読み
    だし手段が読みだした値に予め定められた値を加算する
    加算手段と、 前記ロック手段による排他制御区間において、この加算
    手段が算出した値を前記プロセッサ間の共有領域へ書き
    込む書き込み手段と、 前記加算手段が算出した値をもとに次バリア値を計算す
    る計算手段と、 前記加算手段が算出した値とこの計算手段が計算した次
    バリア値を比較する比較手段と、 この比較手段の結果、全プロセッサがバリア同期に到達
    したと判断された場合にバリアを抜けて次の処理に分岐
    し、全プロセッサがバリア同期に到達していないと判断
    された場合に全プロセッサがバリア同期に到達するまで
    待ち合わせる分岐手段を備えることを特徴とするマルチ
    プロセッサシステムのバリア同期装置。
  2. 【請求項2】 プロセッサ間の共有領域に対する排他的
    インクリメントデクリメント手段を備えることを特徴と
    する請求項1のマルチプロセッサシステムのバリア同期
    装置。
  3. 【請求項3】 各プロセッサ毎に保持している領域の値
    から次バリア値を計算する計算手段を備えることを特徴
    とする請求項1のマルチプロセッサシステムのバリア同
    期装置。
  4. 【請求項4】 プロセッサ間の共有領域に対する排他的
    インクリメントデクリメント手段と、 各プロセッサ毎に保持している領域の値から次バリア値
    を計算する計算手段を備えることを特徴とする請求項1
    のマルチプロセッサシステムのバリア同期装置。
JP5297945A 1993-11-29 1993-11-29 マルチプロセッサシステムのバリア同期装置 Expired - Fee Related JP2550897B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP5297945A JP2550897B2 (ja) 1993-11-29 1993-11-29 マルチプロセッサシステムのバリア同期装置
US08/339,278 US5796946A (en) 1993-11-29 1994-11-10 Multi-processor system barrier synchronizer not requiring repeated intializations of shared region

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5297945A JP2550897B2 (ja) 1993-11-29 1993-11-29 マルチプロセッサシステムのバリア同期装置

Publications (2)

Publication Number Publication Date
JPH07152694A JPH07152694A (ja) 1995-06-16
JP2550897B2 true JP2550897B2 (ja) 1996-11-06

Family

ID=17853130

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5297945A Expired - Fee Related JP2550897B2 (ja) 1993-11-29 1993-11-29 マルチプロセッサシステムのバリア同期装置

Country Status (2)

Country Link
US (1) US5796946A (ja)
JP (1) JP2550897B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5928334A (en) * 1997-03-28 1999-07-27 International Business Machines Corporation Hardware verification tool for multiprocessors
US6757847B1 (en) * 1998-12-29 2004-06-29 International Business Machines Corporation Synchronization for system analysis
US7181539B1 (en) * 1999-09-01 2007-02-20 Microsoft Corporation System and method for data synchronization
US20050120185A1 (en) * 2003-12-01 2005-06-02 Sony Computer Entertainment Inc. Methods and apparatus for efficient multi-tasking
US7428619B2 (en) * 2005-01-18 2008-09-23 Sony Computer Entertainment Inc. Methods and apparatus for providing synchronization of shared data
US8423959B1 (en) 2006-12-11 2013-04-16 Synopsys, Inc. Techniques for coordinating and controlling debuggers in a simulation environment
US9317636B1 (en) * 2006-12-11 2016-04-19 Synopsys, Inc. System and method for stopping integrated circuit simulation

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5127092A (en) * 1989-06-15 1992-06-30 North American Philips Corp. Apparatus and method for collective branching in a multiple instruction stream multiprocessor where any of the parallel processors is scheduled to evaluate the branching condition
JPH0640324B2 (ja) * 1989-10-26 1994-05-25 インターナショナル・ビジネス・マシーンズ・コーポレーション マルチプロセッサ・システムおよびそのプロセス同期方法
US5363495A (en) * 1991-08-26 1994-11-08 International Business Machines Corporation Data processing system with multiple execution units capable of executing instructions out of sequence
US5452101A (en) * 1991-10-24 1995-09-19 Intel Corporation Apparatus and method for decoding fixed and variable length encoded data
CA2073516A1 (en) * 1991-11-27 1993-05-28 Peter Michael Kogge Dynamic multi-mode parallel processor array architecture computer system
US5434995A (en) * 1993-12-10 1995-07-18 Cray Research, Inc. Barrier synchronization for distributed memory massively parallel processing systems

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
PROC.OFASPLOS▲III▼P.54−63R.GUPTA「THEFUZZYBARRIER:AMECHANISMFORHIGHSPEEDSYNCHRONIZATIONOFPROCESSORS」
情報処理学会論文誌Vol.32No.7P.886−896ELASTICBARRIER:一般化されたバリア型同期機構松本尚

Also Published As

Publication number Publication date
US5796946A (en) 1998-08-18
JPH07152694A (ja) 1995-06-16

Similar Documents

Publication Publication Date Title
Israeli et al. Disjoint-access-parallel implementations of strong shared memory primitives
US6285974B1 (en) Hardware verification tool for multiprocessors
US6681226B2 (en) Selective pessimistic locking for a concurrently updateable database
US7506339B2 (en) High performance synchronization of accesses by threads to shared resources
Moir Practical implementations of non-blocking synchronization primitives
US5450560A (en) Pointer for use with a buffer and method of operation
Bershad Practical considerations for non-blocking concurrent objects
EP0679993B1 (en) A computer apparatus having special instructions to force ordered load and store operations
EP0340453B1 (en) Instruction handling sequence control system
US5499356A (en) Method and apparatus for a multiprocessor resource lockout instruction
US5408658A (en) Self-scheduling parallel computer system and method
JPH06222936A (ja) 共用変数の値を更新する方法
JPH0324696B2 (ja)
JP2550897B2 (ja) マルチプロセッサシステムのバリア同期装置
US5758120A (en) Method and system for increased system memory concurrency in a multi-processor computer system utilizing concurrent access of reference and change bits
Ladan-Mozes et al. An optimistic approach to lock-free FIFO queues
Jayanti A time complexity lower bound for randomized implementations of some shared objects
EP0346031B1 (en) Vector data processing apparatus
Cole et al. Snapshots and software transactional memory
Magnusson et al. Efficient software synchronization on large cache coherent multiprocessors
US5586320A (en) High speed synchronous processing system for executing parallel processing of programs having loops
Son et al. Replication Control for Distributed Real-Time Database Systems.
Alur et al. How to share an object: A fast timing-based solution
McNamee et al. Transformations for optimizing interprocess communication and synchronization mechanisms
JPH0769825B2 (ja) 並列処理装置

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19960625

LAPS Cancellation because of no payment of annual fees