JP2008522264A5 - - Google Patents

Download PDF

Info

Publication number
JP2008522264A5
JP2008522264A5 JP2007541929A JP2007541929A JP2008522264A5 JP 2008522264 A5 JP2008522264 A5 JP 2008522264A5 JP 2007541929 A JP2007541929 A JP 2007541929A JP 2007541929 A JP2007541929 A JP 2007541929A JP 2008522264 A5 JP2008522264 A5 JP 2008522264A5
Authority
JP
Japan
Prior art keywords
processor
cache
line
cache line
shared memory
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
Application number
JP2007541929A
Other languages
English (en)
Other versions
JP4641545B2 (ja
JP2008522264A (ja
Filing date
Publication date
Priority claimed from US11/001,476 external-priority patent/US7418557B2/en
Application filed filed Critical
Publication of JP2008522264A publication Critical patent/JP2008522264A/ja
Publication of JP2008522264A5 publication Critical patent/JP2008522264A5/ja
Application granted granted Critical
Publication of JP4641545B2 publication Critical patent/JP4641545B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Claims (15)

  1. 第1プロセッサがキャッシュ・ラインを反復的に読み取るステップで、前記キャッシュ・ラインが前記第1プロセッサと第2プロセッサの両方が共有するリソースの共有メモリのラインからキャッシュされ、前記共有メモリ・ラインと前記キャッシュ・ラインとのコヒーレンシをキャッシュ・コヒーレンシ・プロトコルに従い保ち、前記反復的なキャッシュ・ラインの読み取りが前記第1プロセッサを占有して前記第1プロセッサが前記共有リソースにアクセスするのを禁止する、前記読み取るステップと、
    前記第2プロセッサが前記共有メモリ・ラインにデータを書き込んで、前記共有リソースに前記第1プロセッサからアクセスできることを前記第1プロセッサに知らせるステップと、
    前記第1プロセッサが、前記キャッシュ・コヒーレンシ・プロトコルに従い、前記共有メモリ・ラインへの前記データの書き込みに応答して、前記キャッシュ・ラインの状態を変更するステップとを有する、方法。
  2. 前記第1プロセッサが、前記キャッシュ・コヒーレンシ・プロトコルに従い前記共有メモリ・ラインに前記第2プロセッサにより書き込まれた前記データを前記キャッシュ・ラインに取り出すステップをさらに有する、請求項1の方法。
  3. 前記第1プロセッサが、前記キャッシュ・ラインの読み取り、前記キャッシュ・ラインの状態の変更、および前記共有メモリ・ラインの読み取りを含む第1エラー処理手続きを実行するステップをさらに有する、請求項2の方法。
  4. 前記第2プロセッサが、前記第1プロセッサが前記キャッシュ・ラインを読み取る間の共有リソースのリセット、および前記共有リソースのリセットの完了時の前記共有メモリ・ラインへの前記データの書き込みを含む第2エラー処理手続きを実行するステップをさらに有する、請求項3の方法。
  5. エラー状態がある場合に、共有リソースが前記第1および第2プロセッサにそれぞれ第1および第2割込みを発するステップで、前記第1プロセッサは前記第1割込みに応答して前記第1エラー処理手続きを実行し、前記第2プロセッサは前記第2割込みに応答して前記第2エラー処理手続きを実行する、前記発するステップをさらに有する請求項4の方法。
  6. 前記第2プロセッサが第2キャッシュ・ラインを読み取るステップで、前記第2キャッシュ・ラインは前記第1プロセッサと第2プロセッサの両方が共有するリソースの共有メモリのラインからキャッシュされ、前記共有メモリ・ラインと前記第2キャッシュ・ラインとのコヒーレンシをキャッシュ・コヒーレンシ・プロトコルに従い保ち、前記第2キャッシュ・ラインの読み取りが前記第2プロセッサを占有して前記第2プロセッサが前記共有リソースへのアクセスするのを禁止する、前記読み取るステップと、
    前記第1プロセッサは前記第2キャッシュ・ラインがキャッシュされる前記共有メモリ・ラインにデータを書き込んで、共有リソースに前記第2プロセッサからアクセスできることを前記第2プロセッサに知らせるステップと、
    前記第2プロセッサは、前記キャッシュ・コヒーレンシ・プロトコルに従い、前記共有メモリ・ラインへの前記データの書き込みに応答して、前記第2キャッシュ・ラインの状態を変更するステップとをさらに有する、請求項5の方法。
  7. 前記第2プロセッサが、前記第1プロセッサが前記共有メモリにデータを書き込んだことを検知するようにスヌープするステップと、
    前記第2プロセッサが、前記キャッシュ・コヒーレンシ・プロトコルに従い、前記第2キャッシュ・ラインがキャッシュされる前記共有メモリ・ラインに第1プロセッサにより書き込まれた前記データを前記第2キャッシュ・ラインに読み取るステップとをさらに有する、請求項1の方法。
  8. 前記第2プロセッサが、前記第2キャッシュ・ラインの読み取り、前記第2キャッシュ・ラインの状態の変更、および前記共有メモリ・ラインの読み取りを含む第3エラー処理手続きを実行するステップをさらに有する、請求項7の方法。
  9. 前記第1プロセッサが、前記第2プロセッサが前記第2キャッシュ・ラインを読み取る間の共有リソースのリセット、および前記共有リソースのリセット時の完了前記第2キャッシュ・ラインがキャッシュされる前記共有メモリ・ラインへの前記データの書き込みを含む第4エラー処理手続きを実行するステップをさらに有する、請求項8の方法。
  10. 前記第1プロセッサが、前記第2プロセッサが前記共有メモリ・ラインにデータを書き込んだことを検知するようにスヌープするステップをさらに有する、請求項1の方法。
  11. 前記第1プロセッサが、前記キャッシュ・ラインを反復的に読み取る期間が終了したことを判定するステップと、
    前記期間の終了時、前記第1プロセッサが共有リソースのリセットを含む第2エラー処理手続きを実行するステップとをさらに有する、請求項1の方法。
  12. キャッシュをもつ第1プロセッサと、
    第2プロセッサと、
    共有メモリを含む複数の共有リソースで、前記共有メモリのラインが前記第1プロセッサのキャッシュのラインにキャッシュされ、前記共有メモリ・ラインと前記キャッシュ・ラインのコヒーレンシをキャッシュ・コヒーレンシ・プロトコルに従い保つ、前記複数の共有リソースとを有し、前記第1プロセッサが前記キャッシュ・ラインを反復的に読み取るようになされたロジックをもち、前記反復的なキャッシュ・ラインの読み取りが前記第1プロセッサを占有して前記第1プロセッサが前記共有リソースにアクセスするのを禁止し、
    前記第2プロセッサが前記共有メモリ・ラインにデータを書き込んで、前記共有リソースに前記第1プロセッサからアクセスできることを前記第1プロセッサに知らせるようになされたロジックをもち、
    前記第1プロセッサが、前記キャッシュ・コヒーレンシ・プロトコルに従い、前記共有メモリ・ラインへの前記データの書き込みに応答して、前記キャッシュ・ラインの状態を変更するようになされたロジックをもつ、システム。
  13. コンピユータ・システムに、請求項1〜請求項11の何れかの方法に記載された各ステップを実行させる、プログラム。
  14. システムによって実行されて操作を行うことのできるコードを有するプログラムで、前記システムはキャッシュをもつ第1プロセッサと、第2プロセッサと、共有メモリを含む複数の共有リソースを備え、前記共有メモリのラインが前記第1プロセッサのキャッシュのラインにキャッシュされ、前記共有メモリ・ラインと前記キャッシュ・ラインのコヒーレンシをキャッシュ・コヒーレンシ・プロトコルに従い保ち、さらに前記操作は、
    第1プロセッサが前記キャッシュ・ラインを反復的に読み取り、前記反復的なキャッシュ・ラインの読み取りが前記第1プロセッサを占有して前記第1プロセッサが前記共有リソースにアクセスするのを禁止する、前記読み取るステップと、
    前記第2プロセッサが前記共有メモリ・ラインにデータを書き込んで、前記共有リソースが前記第1プロセッサからアクセスできることを前記第1プロセッサに知らせるステップと、
    前記第1プロセッサが、前記キャッシュ・コヒーレンシ・プロトコルに従い、前記共有メモリ・ラインへの前記データの書き込みに応答して、前記キャッシュ・ラインの状態を変更するステップとを有する、プログラム。
  15. 演算命令を配備する方法が、
    コンピュータ読み取り可能コードをシステムに統合するステップを有し、前記システムがキャッシュをもつ第1プロセッサと、第2プロセッサと、共有メモリを含む複数の共有リソースとを備え、前記共有メモリのラインが前記第1プロセッサのキャッシュのラインでキャッシュされ、前記共有メモリ・ラインと前記キャッシュ・ラインのコヒーレンシをキャッシュ・コヒーレンシ・プロトコルに従い保ち、コードは前記システムとの組み合わせで、前記システムに、
    前記第1プロセッサは前記キャッシュ・ラインを反復的に読み取る操作で、前記反復的なキャッシュ・ラインの読み取りが前記第1プロセッサを占有して前記第1プロセッサが前記共有リソースにアクセスするのを禁止する、前記読み取る操作と、
    前記第2プロセッサが前記共有メモリ・ラインにデータを書き込んで、前記共有リソースに前記第1プロセッサからアクセスできることを前記第1プロセッサに知らせる操作と、
    前記第1プロセッサが前記キャッシュ・コヒーレンシ・プロトコルに従い前記共有メモリ・ラインへの前記データの書き込みに応答して前記キャッシュ・ラインの状態を変更する操作とを行わせることができる、演算命令を配備する方法。
JP2007541929A 2004-11-30 2005-11-11 マルチプロセッサの操作を管理する方法、システム、およびコンピュータ・プログラム Expired - Fee Related JP4641545B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/001,476 US7418557B2 (en) 2004-11-30 2004-11-30 Managing multiprocessor operations
PCT/EP2005/055907 WO2006058826A1 (en) 2004-11-30 2005-11-11 Managing multiprocessor operations

Publications (3)

Publication Number Publication Date
JP2008522264A JP2008522264A (ja) 2008-06-26
JP2008522264A5 true JP2008522264A5 (ja) 2008-10-02
JP4641545B2 JP4641545B2 (ja) 2011-03-02

Family

ID=35645753

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007541929A Expired - Fee Related JP4641545B2 (ja) 2004-11-30 2005-11-11 マルチプロセッサの操作を管理する方法、システム、およびコンピュータ・プログラム

Country Status (9)

Country Link
US (2) US7418557B2 (ja)
EP (1) EP1839156B1 (ja)
JP (1) JP4641545B2 (ja)
CN (1) CN100568199C (ja)
AT (1) ATE402444T1 (ja)
DE (1) DE602005008477D1 (ja)
IL (1) IL183470A (ja)
MX (1) MX2007006350A (ja)
WO (1) WO2006058826A1 (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7536694B2 (en) * 2004-11-30 2009-05-19 International Business Machines Corporation Exception handling in a multiprocessor system
US7937709B2 (en) 2004-12-29 2011-05-03 Intel Corporation Synchronizing multiple threads efficiently
JP2006227856A (ja) * 2005-02-17 2006-08-31 Hitachi Ltd アクセス制御装置及びそれに搭載されるインターフェース
US7818056B2 (en) * 2005-03-24 2010-10-19 Cardiac Pacemakers, Inc. Blending cardiac rhythm detection processes
JP4831599B2 (ja) 2005-06-28 2011-12-07 ルネサスエレクトロニクス株式会社 処理装置
US7849362B2 (en) * 2005-12-09 2010-12-07 International Business Machines Corporation Method and system of coherent design verification of inter-cluster interactions
JP2007219571A (ja) * 2006-02-14 2007-08-30 Hitachi Ltd 記憶制御装置及びストレージシステム
JP5387776B2 (ja) * 2010-07-27 2014-01-15 富士通株式会社 割込制御方法、マルチコアプロセッサシステム、および割込制御プログラム
JP5745868B2 (ja) * 2011-01-18 2015-07-08 トヨタ自動車株式会社 マルチプロセッサシステム
JP5614419B2 (ja) * 2012-02-29 2014-10-29 富士通株式会社 情報処理装置、制御方法および制御プログラム
US9405477B2 (en) * 2012-04-25 2016-08-02 Intel Corporation Method and system for maintaining release consistency in shared memory programming
US9135175B2 (en) * 2012-12-21 2015-09-15 Oracle International Corporation Distributed cache coherency directory with failure redundancy
CN103745315A (zh) * 2013-12-31 2014-04-23 太原理工大学 重点项目行政执法监察联动管理方法及系统
US10310982B2 (en) * 2016-12-15 2019-06-04 International Business Machines Corporation Target cache line arbitration within a processor cluster
US10339064B2 (en) * 2017-03-29 2019-07-02 International Business Machines Corporation Hot cache line arbitration
US10915445B2 (en) 2018-09-18 2021-02-09 Nvidia Corporation Coherent caching of data for high bandwidth scaling
CN114327920B (zh) * 2022-03-16 2022-06-21 长沙金维信息技术有限公司 用于多处理器系统的硬件资源共享方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08202622A (ja) * 1995-01-31 1996-08-09 Fujitsu Ltd 分散型メモリ構成のキャッシュ制御方法
US5930821A (en) * 1997-05-12 1999-07-27 Integrated Device Technology, Inc. Method and apparatus for shared cache lines in split data/code caches
US6314526B1 (en) 1998-07-10 2001-11-06 International Business Machines Corporation Resource group quorum scheme for highly scalable and highly available cluster system management
US6467050B1 (en) 1998-09-14 2002-10-15 International Business Machines Corporation Method and apparatus for managing services within a cluster computer system
JP3676934B2 (ja) * 1998-12-15 2005-07-27 株式会社日立製作所 プロセッサおよびマルチプロセッサシステム
US6622260B1 (en) 1999-12-30 2003-09-16 Suresh Marisetty System abstraction layer, processor abstraction layer, and operating system error handling
US6751705B1 (en) 2000-08-25 2004-06-15 Silicon Graphics, Inc. Cache line converter
US6772298B2 (en) * 2000-12-20 2004-08-03 Intel Corporation Method and apparatus for invalidating a cache line without data return in a multi-node architecture
US6859866B2 (en) 2001-10-01 2005-02-22 International Business Machines Corporation Synchronizing processing of commands invoked against duplexed coupling facility structures

Similar Documents

Publication Publication Date Title
JP2008522264A5 (ja)
US11281562B2 (en) Method and system for cache agent trace and capture
JP4764360B2 (ja) メモリ属性を用いるための技術
JP6375379B2 (ja) キャッシュ占有決定および命令スケジューリングのための方法および装置
US8725485B2 (en) Simulation method and simulation apparatus
TWI428823B (zh) 微處理器積體電路以及相關除錯方法
US10970192B2 (en) Debugging support unit for microprocessor
US9361233B2 (en) Method and apparatus for shared line unified cache
JP5357972B2 (ja) コンピュータシステムにおける割り込み通信技術
US8473921B2 (en) Debugging mechanisms in a cache-based memory isolation system
EP2645237B1 (en) Deadlock/livelock resolution using service processor
JP2013504127A5 (ja)
TWI514156B (zh) 推測式快取修改技術
US9875108B2 (en) Shared memory interleavings for instruction atomicity violations
US20140129784A1 (en) Methods and systems for polling memory outside a processor thread
JP2008529181A5 (ja)
WO2020191549A1 (zh) 一种soc芯片、确定热点函数的方法及终端设备
US20230099163A1 (en) Processing-in-memory concurrent processing system and method
JP2009529740A5 (ja)
BR102016012083A2 (pt) Hardware appliances and methods for performing transactive energy management
JP6227151B2 (ja) アドレスへの書き込みに対する監視命令を実行するスケーラブル機構
JP6192858B2 (ja) ハングを検出するためのロジック・アナライザ
US11226819B2 (en) Selective prefetching in multithreaded processing units
JP6183049B2 (ja) 演算処理装置及び演算処理装置の制御方法
JP4553622B2 (ja) データ処理装置