JP2008515096A5 - - Google Patents

Download PDF

Info

Publication number
JP2008515096A5
JP2008515096A5 JP2007534659A JP2007534659A JP2008515096A5 JP 2008515096 A5 JP2008515096 A5 JP 2008515096A5 JP 2007534659 A JP2007534659 A JP 2007534659A JP 2007534659 A JP2007534659 A JP 2007534659A JP 2008515096 A5 JP2008515096 A5 JP 2008515096A5
Authority
JP
Japan
Prior art keywords
processor core
address range
update
indication
response
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
JP2007534659A
Other languages
English (en)
Other versions
JP4982375B2 (ja
JP2008515096A (ja
Filing date
Publication date
Priority claimed from US10/956,685 external-priority patent/US7257679B2/en
Application filed filed Critical
Publication of JP2008515096A publication Critical patent/JP2008515096A/ja
Publication of JP2008515096A5 publication Critical patent/JP2008515096A5/ja
Application granted granted Critical
Publication of JP4982375B2 publication Critical patent/JP4982375B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Claims (27)

  1. 更新のために第1プロセッサコアがモニタリングしているアドレスレンジを識別するアドレスレンジインディケーションを通信するように構成された第1プロセッサコアを有し、前記第1プロセッサコアは、更新のために前記第1プロセッサコアに前記アドレスレンジをモニタリングさせるように定義された第1の命令の実行に応答して、前記アドレスレンジインディケーションを通信するように構成されているものであって、
    前記アドレスレンジインディケーションを受信するように結合されるとともに、前記アドレスレンジにおいて少なくとも1バイトを更新する書込みオペレーションの実行に応答して、前記第1プロセッサコアに信号を送信するように構成された第2プロセッサコアを有し、前記第2プロセッサコアは、前記書込みオペレーションをコヒーレントに実行するように、1以上のコヒーレンシー通信を発行するように構成されており、
    前記第1プロセッサコアは、前記書込みオペレーションをコヒーレントに実行するように、前記第2プロセッサコアによって発行された前記1以上のコヒーレンシー通信を受信する前に前記第2プロセッサコアからの信号を受信するように結合されており、さらに、前記第1プロセッサコアは、前記第2プロセッサコアからの信号に応答して、前記アドレスレンジの更新を待つ第1の状態から抜け出すように構成されている、システム。
  2. 前記アドレスレンジインディケーションは、連続したメモリバイトのブロックを識別するアドレスを含む、請求項1に記載のシステム。
  3. 前記ブロック連続メモリバイトはキャッシュラインである、請求項2に記載のシステム。
  4. 前記第1プロセッサコアは、コンピュータシステムの他のコンポーネントと通信するためのインターフェースに結合されており、前記第1プロセッサコアは、前記更新のインディケーションが前記アドレスレンジの更新を示していれば、前記インターフェースからの更新インディケーションの受信に応答して、前記第1の状態から抜け出すようにさらに構成されている、請求項1に記載のシステム。
  5. 前記更新のインディケーションはプローブである、請求項4に記載のシステム。
  6. 前記第1プロセッサコアは、前記アドレスレンジインディケーションを記録するように構成された第1レジスタを含む、請求項1記載のシステム。
  7. 前記第2プロセッサコアは、前記アドレスレンジインディケーションのシャドウコピーを記録するように構成された第2レジスタを含む、請求項6に記載のシステム。
  8. 前記第1の状態は、電力節約状態を含む、請求項1に記載のシステム。
  9. 第1プロセッサコアが更新をモニタリングしているアドレスレンジを識別するアドレスレンジインディケーションを第1プロセッサコアから第2プロセッサコアに通信するステップを有し、前記通信は、更新のために前記第1プロセッサコアに前記アドレスレンジをモニタリングさせるように定義された前記第1プロセッサコアの第1の命令の実行に応答するものであり、
    前記第2プロセッサコアの前記アドレスレンジにおいて、少なくとも1バイトを更新する書込みオペレーションを実行するステップと、
    前記書込みオペレーションをコヒーレントに実行するように、前記第2プロセッサコアから1以上のコヒーレンシー通信を発行するステップと、
    前記書込みオペレーションに応答して、前記第1プロセッサコアに信号を送信するステップと、
    前記第1プロセッサコアが前記アドレスレンジにおいて前記更新を待っている第1の状態から抜け出すステップと、を含み、前記抜け出すステップは、前記信号に応答するものであって、さらに、前記書込みオペレーションをコヒーレントに実行するように、前記第2プロセッサコアによって1以上のコヒーレンシー通信を受信する前に起きる、方法。
  10. 前記アドレスレンジインディケーションは、連続したメモリバイトのブロックを識別するアドレスを含む、請求項9に記載の方法。
  11. 前記ブロック連続メモリバイトはキャッシュラインである、請求項10に記載の方法。
  12. 前記第1プロセッサコアは、前記コンピュータシステムの他のコンポーネントと通信するためのインターフェースに結合されているものであって、前記更新のインディケーションが前記アドレスレンジの更新を示していれば、前記インターフェースからの更新のインディケーションの受信に応答して、前記第1プロセッサコアの前記第1の状態から抜け出すステップをさらに含む、請求項9に記載の方法。
  13. 前記更新のインディケーションはプローブである、請求項12に記載の方法。
  14. 前記第1の状態は、電力節約状態を含む、請求項9に記載の方法。
  15. 第1の命令に応答して更新のためにアドレスレンジをモニタリングするように構成されたモニタユニットを備えたプロセッサコアであって、
    前記プロセッサコアは、前記アドレスレンジの更新を待つために第1の状態に入るよう構成されており、
    前記モニタユニットは、前記第1の命令の実行に応答して、第2のプロセッサコアに対する前記アドレスレンジを識別するアドレスレンジインディケーションを通信するように構成されており、さらに、
    前記モニタユニットは、第2のプロセッサコアから、前記第2プロセッサコアが前記アドレスレンジにおいて少なくとも1バイトを更新していることを示す信号を受信するように構成されており、さらに、前記プロセッサコアは前記書込みオペレーションをコヒーレントに実行するように、前記第2プロセッサコアによって発行された1以上のコヒーレンシー通信を受信する前に信号を受信するように結合されており、さらに、前記プロセッサコアは、前記信号に応答して前記第1の状態から抜け出すように構成されている、プロセッサコア。
  16. 前記アドレスレンジインディケーションは、連続したメモリバイトのブロックを識別するアドレスを含む、請求項15に記載のプロセッサコア。
  17. 前記ブロック連続メモリバイトはキャッシュラインである、請求項16に記載のプロセッサコア。
  18. 前記コンピュータシステムの他のコンポーネントと通信するためのインターフェースをさらに有しており、前記プロセッサコアは、前記更新のインディケーションが前記アドレスレンジの更新を示していれば、前記インターフェースからの更新インディケーションの受信に応答して、前記第1の状態から抜け出すようにさらに構成されている、請求項15に記載のプロセッサコア。
  19. 前記更新のインディケーションはプローブである、請求項18に記載のプロセッサコア。
  20. 前記第モニタユニットは、前記アドレスレンジインディケーションを記録するように構成された第1レジスタを含む、請求項15記載のプロセッサコア。
  21. 前記モニタユニットは、前記第2プロセッサプロセッサコアから受信した前記アドレスレンジインディケーションのシャドウコピーを記録するように構成されており、前記第2プロセッサコアは、前記第2アドレスレンジインディケーションにより示された第2アドレスレンジの更新をモニタリングする、請求項20に記載のプロセッサコア。
  22. 前記モニタユニットは、前記第2アドレスレンジにおいて少なくとも1バイトを更新している第2書込みオペレーションを実行する前記プロセッサコアに応答して、前記第2プロセッサコアに信号を送信するように構成されている、請求項21に記載のプロセッサコア。
  23. 前記第2の状態は、電力節約状態を含む、請求項15に記載のプロセッサコア。
  24. 前記プロセッサコアは、第2の命令の実行に応答して、前記第1の状態に入るように構成されている、請求項15に記載のプロセッサコア。
  25. 前記第2プロセッサコアは、前記インターフェースとは別個に前記第1プロセッサコアに信号を送信するよう結合されている、請求項4に記載のシステム。
  26. 前記第1プロセッサコアは、前記第1プロセッサコアが前記アドレスレンジ内での更新を待っていることを示す第2信号の実行に応答して、前記電力節約状態に入るように構成されている、請求項8に記載のシステム。
  27. 前記プロセッサコアは、前記インターフェースとは別個に前記信号を受信するよう結合されている、請求項18に記載のプロセッサコア。
JP2007534659A 2004-10-01 2005-09-21 複数のコアを介してのモニタリングされたキャッシュラインの共有 Active JP4982375B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/956,685 US7257679B2 (en) 2004-10-01 2004-10-01 Sharing monitored cache lines across multiple cores
US10/956,685 2004-10-01
PCT/US2005/033819 WO2006039162A2 (en) 2004-10-01 2005-09-21 Sharing monitored cache lines across multiple cores

Publications (3)

Publication Number Publication Date
JP2008515096A JP2008515096A (ja) 2008-05-08
JP2008515096A5 true JP2008515096A5 (ja) 2009-01-08
JP4982375B2 JP4982375B2 (ja) 2012-07-25

Family

ID=35994769

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007534659A Active JP4982375B2 (ja) 2004-10-01 2005-09-21 複数のコアを介してのモニタリングされたキャッシュラインの共有

Country Status (8)

Country Link
US (1) US7257679B2 (ja)
EP (1) EP1807754B1 (ja)
JP (1) JP4982375B2 (ja)
KR (1) KR101216190B1 (ja)
CN (1) CN101036116B (ja)
DE (1) DE602005020960D1 (ja)
TW (1) TWI366132B (ja)
WO (1) WO2006039162A2 (ja)

Families Citing this family (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7213093B2 (en) * 2003-06-27 2007-05-01 Intel Corporation Queued locks using monitor-memory wait
US7502948B2 (en) 2004-12-30 2009-03-10 Intel Corporation Method, system, and apparatus for selecting a maximum operation point based on number of active cores and performance level of each of the active cores
US7484053B2 (en) * 2005-05-16 2009-01-27 Texas Instruments Incorporated Cross-referencing cache line addresses with corresponding names
US7444474B2 (en) * 2005-05-16 2008-10-28 Texas Instruments Incorporated Determining the presence of a virtual address in a cache
US8281083B2 (en) 2005-06-30 2012-10-02 Intel Corporation Device, system and method of generating an execution instruction based on a memory-access instruction
US9003421B2 (en) * 2005-11-28 2015-04-07 Intel Corporation Acceleration threads on idle OS-visible thread execution units
US20070271450A1 (en) * 2006-05-17 2007-11-22 Doshi Kshitij A Method and system for enhanced thread synchronization and coordination
US8561037B2 (en) * 2007-08-29 2013-10-15 Convey Computer Compiler for generating an executable comprising instructions for a plurality of different instruction sets
US8122229B2 (en) * 2007-09-12 2012-02-21 Convey Computer Dispatch mechanism for dispatching instructions from a host processor to a co-processor
US9015399B2 (en) * 2007-08-20 2015-04-21 Convey Computer Multiple data channel memory module architecture
US8095735B2 (en) * 2008-08-05 2012-01-10 Convey Computer Memory interleave for heterogeneous computing
US8156307B2 (en) * 2007-08-20 2012-04-10 Convey Computer Multi-processor system having at least one processor that comprises a dynamically reconfigurable instruction set
US9710384B2 (en) 2008-01-04 2017-07-18 Micron Technology, Inc. Microprocessor architecture having alternative memory access paths
US9336051B2 (en) * 2007-10-19 2016-05-10 National Instruments Corporation Programmable controller with multiple processors using a scanning architecture
US20090106755A1 (en) * 2007-10-19 2009-04-23 Sundeep Chandhoke Programmable Controller with Multiple Processors Using Scanning and Data Acquisition Architectures
US20090309243A1 (en) * 2008-06-11 2009-12-17 Nvidia Corporation Multi-core integrated circuits having asymmetric performance between cores
US20100115233A1 (en) * 2008-10-31 2010-05-06 Convey Computer Dynamically-selectable vector register partitioning
US8205066B2 (en) * 2008-10-31 2012-06-19 Convey Computer Dynamically configured coprocessor for different extended instruction set personality specific to application program with shared memory storing instructions invisibly dispatched from host processor
US8156275B2 (en) * 2009-05-13 2012-04-10 Apple Inc. Power managed lock optimization
US8364862B2 (en) * 2009-06-11 2013-01-29 Intel Corporation Delegating a poll operation to another device
US8423745B1 (en) 2009-11-16 2013-04-16 Convey Computer Systems and methods for mapping a neighborhood of data to general registers of a processing element
US8782451B2 (en) * 2010-12-22 2014-07-15 Via Technologies, Inc. Power state synchronization in a multi-core processor
US8637212B2 (en) 2010-12-22 2014-01-28 Via Technologies, Inc. Reticle set modification to produce multi-core dies
US9460038B2 (en) 2010-12-22 2016-10-04 Via Technologies, Inc. Multi-core microprocessor internal bypass bus
US8631256B2 (en) 2010-12-22 2014-01-14 Via Technologies, Inc. Distributed management of a shared power source to a multi-core microprocessor
US8635476B2 (en) * 2010-12-22 2014-01-21 Via Technologies, Inc. Decentralized power management distributed among multiple processor cores
US8972707B2 (en) 2010-12-22 2015-03-03 Via Technologies, Inc. Multi-core processor with core selectively disabled by kill instruction of system software and resettable only via external pin
TWI450084B (zh) * 2010-12-22 2014-08-21 Via Tech Inc 配置在多重處理器核心之間之分散式電源管理
US8930676B2 (en) 2010-12-22 2015-01-06 Via Technologies, Inc. Master core discovering enabled cores in microprocessor comprising plural multi-core dies
US8819349B2 (en) * 2011-07-08 2014-08-26 Facebook, Inc. Invoking operating system functionality without the use of system calls
US8713262B2 (en) * 2011-09-02 2014-04-29 Nvidia Corporation Managing a spinlock indicative of exclusive access to a system resource
US8868843B2 (en) 2011-11-30 2014-10-21 Advanced Micro Devices, Inc. Hardware filter for tracking block presence in large caches
CN106909444B (zh) 2011-12-22 2021-01-12 英特尔公司 用于指定应用线程性能状态的指令的指令处理装置及相关方法
US9396020B2 (en) 2012-03-30 2016-07-19 Intel Corporation Context switching mechanism for a processing core having a general purpose CPU core and a tightly coupled accelerator
US10430190B2 (en) 2012-06-07 2019-10-01 Micron Technology, Inc. Systems and methods for selectively controlling multithreaded execution of executable code segments
US9218288B2 (en) * 2012-06-15 2015-12-22 International Business Machines Corporation Monitoring a value in storage without repeated storage access
US9507404B2 (en) 2013-08-28 2016-11-29 Via Technologies, Inc. Single core wakeup multi-core synchronization mechanism
US9792112B2 (en) 2013-08-28 2017-10-17 Via Technologies, Inc. Propagation of microcode patches to multiple cores in multicore microprocessor
US9465432B2 (en) 2013-08-28 2016-10-11 Via Technologies, Inc. Multi-core synchronization mechanism
JP6525267B2 (ja) * 2015-11-13 2019-06-05 Necプラットフォームズ株式会社 範囲外参照検出装置、方法およびプログラム
US10394678B2 (en) * 2016-12-29 2019-08-27 Intel Corporation Wait and poll instructions for monitoring a plurality of addresses
CN108009121B (zh) * 2017-12-21 2021-12-07 中国电子科技集团公司第四十七研究所 面向应用的动态多核配置方法
US11237960B2 (en) 2019-05-21 2022-02-01 Arm Limited Method and apparatus for asynchronous memory write-back in a data processing system
US11176042B2 (en) * 2019-05-21 2021-11-16 Arm Limited Method and apparatus for architectural cache transaction logging
US11553337B2 (en) 2019-12-10 2023-01-10 Winkk, Inc. Method and apparatus for encryption key exchange with enhanced security through opti-encryption channel
CN113157543B (zh) * 2021-05-14 2023-07-21 海光信息技术股份有限公司 一种可信度量方法及装置、服务器、计算机可读存储介质
US20220394023A1 (en) * 2021-06-04 2022-12-08 Winkk, Inc Encryption for one-way data stream

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2916421B2 (ja) * 1996-09-09 1999-07-05 株式会社東芝 キャッシュフラッシュ装置およびデータ処理方法
JPH10149285A (ja) * 1996-11-18 1998-06-02 Hitachi Ltd 命令実行制御方法および情報処理装置
US6493741B1 (en) 1999-10-01 2002-12-10 Compaq Information Technologies Group, L.P. Method and apparatus to quiesce a portion of a simultaneous multithreaded central processing unit
US6721856B1 (en) * 2000-10-26 2004-04-13 International Business Machines Corporation Enhanced cache management mechanism via an intelligent system bus monitor
US7363474B2 (en) * 2001-12-31 2008-04-22 Intel Corporation Method and apparatus for suspending execution of a thread until a specified memory access occurs
US7266587B2 (en) * 2002-05-15 2007-09-04 Broadcom Corporation System having interfaces, switch, and memory bridge for CC-NUMA operation

Similar Documents

Publication Publication Date Title
JP2008515096A5 (ja)
JP6066250B2 (ja) マルチコア異種システム変換のルックアサイドバッファコヒーレンシ
US9442855B2 (en) Transaction layer packet formatting
US9129071B2 (en) Coherence controller slot architecture allowing zero latency write commit
US9208091B2 (en) Coherent attached processor proxy having hybrid directory
US8055805B2 (en) Opportunistic improvement of MMIO request handling based on target reporting of space requirements
US20070005859A1 (en) Method and apparatus to quiesce USB activities using interrupt descriptor caching and asynchronous notifications
CN114580344B (zh) 测试激励生成方法、验证方法、验证***及相关设备
US8990513B2 (en) Accelerated recovery for snooped addresses in a coherent attached processor proxy
WO2016089086A1 (en) Electronic device and method for controlling shareable cache memory thereof
US8918591B2 (en) Data processing system having selective invalidation of snoop requests and method therefor
TW200627271A (en) Sharing monitored cache lines across multiple cores
US20060095674A1 (en) Tracing instruction flow in an integrated processor
JP2010505195A (ja) キャッシュ・メモリ・デバッグ・サポートを有するデータ処理システムおよびそのための方法
JP2010527488A (ja) データ処理システムにおけるキャッシュトランザクションのための方法及び装置
JP5623370B2 (ja) キャッシュ・メモリに対する直接アクセスのための装置および方法
US9251076B2 (en) Epoch-based recovery for coherent attached processor proxy
JPH11328016A (ja) 命令キャッシュとデ―タ・キャッシュ間のコヒ―レンシを維持する方法および装置
WO2013095464A1 (en) Apparatus and method for memory-hierarchy aware producer-consumer instruction
JP4302083B2 (ja) キャッシュシステムおよびキャッシュシステム制御方法
US7581042B2 (en) I/O hub resident cache line monitor and device register update
US20060004965A1 (en) Direct processor cache access within a system having a coherent multi-processor protocol
JP4373485B2 (ja) 情報処理装置及び該制御方法
US20050289303A1 (en) Pushing of clean data to one or more processors in a system having a coherency protocol
JP4490585B2 (ja) 周辺ステータスについての内部レジスタを有するプロセッサまたはコア論理演算装置