JP5780243B2 - スケジューリング方法、およびマルチコアプロセッサシステム - Google Patents
スケジューリング方法、およびマルチコアプロセッサシステム Download PDFInfo
- Publication number
- JP5780243B2 JP5780243B2 JP2012551780A JP2012551780A JP5780243B2 JP 5780243 B2 JP5780243 B2 JP 5780243B2 JP 2012551780 A JP2012551780 A JP 2012551780A JP 2012551780 A JP2012551780 A JP 2012551780A JP 5780243 B2 JP5780243 B2 JP 5780243B2
- Authority
- JP
- Japan
- Prior art keywords
- thread
- cpu
- address
- time
- storage 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
Links
- 238000000034 method Methods 0.000 title claims description 149
- 238000006243 chemical reaction Methods 0.000 claims description 85
- 230000015654 memory Effects 0.000 claims description 61
- 238000013519 translation Methods 0.000 claims description 46
- 238000012545 processing Methods 0.000 claims description 21
- 230000004044 response Effects 0.000 claims description 18
- 230000006399 behavior Effects 0.000 claims 1
- 230000001360 synchronised effect Effects 0.000 claims 1
- 230000000903 blocking effect Effects 0.000 description 163
- 230000008569 process Effects 0.000 description 106
- 230000007246 mechanism Effects 0.000 description 42
- 230000006870 function Effects 0.000 description 41
- 238000010586 diagram Methods 0.000 description 36
- FFBHFFJDDLITSX-UHFFFAOYSA-N benzyl N-[2-hydroxy-4-(3-oxomorpholin-4-yl)phenyl]carbamate Chemical compound OC1=C(NC(=O)OCC2=CC=CC=C2)C=CC(=C1)N1CCOCC1=O FFBHFFJDDLITSX-UHFFFAOYSA-N 0.000 description 31
- 238000004364 calculation method Methods 0.000 description 14
- 238000001514 detection method Methods 0.000 description 11
- 238000005516 engineering process Methods 0.000 description 6
- FTGYKWAHGPIJIT-UHFFFAOYSA-N hydron;1-[2-[(2-hydroxy-3-phenoxypropyl)-methylamino]ethyl-methylamino]-3-phenoxypropan-2-ol;dichloride Chemical compound Cl.Cl.C=1C=CC=CC=1OCC(O)CN(C)CCN(C)CC(O)COC1=CC=CC=C1 FTGYKWAHGPIJIT-UHFFFAOYSA-N 0.000 description 5
- KNMAVSAGTYIFJF-UHFFFAOYSA-N 1-[2-[(2-hydroxy-3-phenoxypropyl)amino]ethylamino]-3-phenoxypropan-2-ol;dihydrochloride Chemical compound Cl.Cl.C=1C=CC=CC=1OCC(O)CNCCNCC(O)COC1=CC=CC=C1 KNMAVSAGTYIFJF-UHFFFAOYSA-N 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 230000007717 exclusion Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
Images
Classifications
-
- 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/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0815—Cache consistency protocols
-
- 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/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/0284—Multiple user address space allocation, e.g. using different base addresses
-
- 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/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/065—Replication mechanisms
-
- 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/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
-
- 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/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline, look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3851—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution from multiple instruction streams, e.g. multistreaming
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Description
図2は、実施の形態にかかるマルチコアプロセッサシステムのハードウェアを示すブロック図である。図2において、マルチコアプロセッサシステム100は、CPUを複数搭載するCPUs101と、ROM(Read‐Only Memory)201と、RAM(Random Access Memory)202と、を含む。また、マルチコアプロセッサシステム100は、フラッシュROM203と、フラッシュROMコントローラ204と、フラッシュROM205と、を含む。また、マルチコアプロセッサシステム100は、ユーザやその他の機器との入出力装置として、ディスプレイ206と、I/F(Interface)207と、キーボード208と、を含む。また、各部はバス103によってそれぞれ接続されている。
次に、マルチコアプロセッサシステム100の機能について説明する。図3は、マルチコアプロセッサシステム100の機能を示すブロック図である。マルチコアプロセッサシステム100は、検出部303と、判定部304と、複写部305と、算出部306と、通知部307と、設定部308と、変換部309と、を含む。
⇔変換後のアドレス=0x0010+0x2000
⇔変換後のアドレス=0x2010
⇔変換後のアドレス=0x0010+0x1000
⇔変換後のアドレス=0x1010
⇔変換後のアドレス=0x0010+0x2100
⇔変換後のアドレス=0x2110
⇔変換後のアドレス=0x0010+0x3000
⇔変換後のアドレス=0x3010
処理される第1スレッドから第2スレッドが生成されるときに負荷が低いCPUを選択し、
前記第2スレッドが前記第1スレッドと排他的動作を行うか否かを判定し、
前記第2スレッドが排他的動作を行うときに前記第1スレッドがアクセスする第1記憶領域を前記CPUが管理する第2記憶領域に複写し、
前記第2記憶領域のアドレスと所定値とに基づいて、前記第2スレッドが前記第1記憶領域にアクセスするための第2アドレスへのオフセットを算出し、
第1アドレスを、前記第2記憶領域にアクセスするための第3アドレスに変換するために前記第2アドレスへのオフセットを前記CPUに通知すること
を特徴とするスケジューリング方法。
を特徴とする付記1に記載のスケジューリング方法。
前記第2記憶領域へのアクセスのレスポンスに対して、前記第1アドレスへのオフセットと前記所定値に基づいて、前記第3アドレスを前記第1記憶領域内を示す第4アドレスに変換するために前記第1アドレスへのオフセットを前記CPUに通知すること
を特徴とする付記1に記載のスケジューリング方法。
を特徴とする付記1または付記2に記載のスケジューリング方法。
を特徴とする付記1に記載のスケジューリング方法。
を特徴とする付記1、付記2または付記4に記載のスケジューリング方法。
を特徴とする付記1乃至付記6の何れか一に記載のスケジューリング方法。
前記第1CPUに対応するスケジューラと、
前記複数のCPUにバスを介して接続されるとともに、第1記憶領域と第2記憶領域とを含むメモリと、
前記複数のCPUのうちの少なくとも一のCPUと前記メモリとの間に配置されるアドレス変換装置と、
を含み、
前記アドレス変換装置は、前記第1CPUが管理する前記第1記憶領域にアクセスするためのアドレスを前記第2CPUが管理する前記第2記憶領域にアクセスするためのアドレスに変換すること
を特徴とするマルチコアプロセッサシステム。
を特徴とする付記8に記載のマルチコアプロセッサシステム。
を特徴とする付記8に記載のマルチコアプロセッサシステム。
を特徴とする付記8または付記9に記載のマルチコアプロセッサシステム。
を特徴とする付記11に記載にマルチコアプロセッサシステム。
を特徴とする付記12に記載のマルチコアプロセッサシステム。
#0、#1、#2 CPU、OS、ハイパーバイザ
102 メモリ
103 バス
104 アドレス変換装置
210 スヌープ機構
301 親スレッド
302 子スレッド
303 検出部
304 判定部
305 複写部
306 算出部
307 通知部
308 設定部
309 変換部
310 スケジューラ
311 親スレッドコンテキスト領域
312 複写先の親スレッドコンテキスト領域
313 シングルコア時の子スレッドコンテキスト領域
314 子スレッドコンテキスト領域
Claims (11)
- コンビュータによって実行されるスレッドを管理するスケジューラが、
第1スレッドの処理結果に応じて前記第1スレッドから第2スレッドが生成された場合に、複数のCPUのうち負荷が低い第1CPUを選択し、
前記第2スレッドが前記第1スレッドと排他的動作を行う場合、前記第1スレッドがアクセスする第1記憶領域の複写元データを前記第1CPUが管理する第2記憶領域に複写し、
前記第2記憶領域に複写した複写先データのアドレスと前記複数のCPUの各々のCPUに割り当てられるスレッドがアクセスするメモリ範囲を示すマスク値とに基づいて、前記第2記憶領域における前記第2スレッドがアクセスするメモリ範囲の先頭アドレスを算出し、
前記第2スレッドが前記第1スレッドと排他的動作を行うことを示す情報と、前記第2記憶領域における前記第2スレッドがアクセスするメモリ範囲の先頭アドレスとを前記第1CPUに通知する
スケジューリング方法。 - 前記第1CPUが、
前記第2スレッドが前記第1スレッドと排他的動作を行うことを示す情報を受け付けた場合、前記第2スレッドから発生した前記複写元データへのアクセスが発生したことに応じて、前記複写元データへのアクセスのアクセス先のアドレスと、前記第2記憶領域における前記第2スレッドがアクセスするメモリ範囲の先頭アドレスと前記マスク値とに基づいて前記複写元データへのアクセスが変換された前記複写先データへのアクセスにより、前記複写先データにアクセスすること
を特徴とする請求項1に記載のスケジューリング方法。 - 前記第1記憶領域の複写元データが前記第2記憶領域に複写された後に、前記第1スレッドを退避させること
を特徴とする請求項1または請求項2に記載のスケジューリング方法。 - 前記第2スレッドが前記第1スレッドと排他的動作を行わないとき、前記第1CPUが有するキャッシュメモリを前記複数のCPUのうち前記第1CPU以外のCPUが有するキャッシュメモリと同期させるためのフラグをオンすること
を特徴とする請求項1に記載のスケジューリング方法。 - 前記第1記憶領域の複写元データが前記第2記憶領域に複写された後に、前記第1CPUが有するキャッシュメモリを前記複数のCPUのうち前記第1CPU以外のCPUが有するキャッシュメモリと同期させるためのフラグをオフすること
を特徴とする請求項1乃至請求項3の何れか一に記載のスケジューリング方法。 - 前記第1スレッドを退避させた後に前記第2スレッドが終了したときに、前記第2記憶領域内の更新部分を前記第1記憶領域に反映して、前記第1スレッドを復帰させること
を特徴とする請求項3に記載のスケジューリング方法。 - スレッドを実行する複数のコアと、
前記複数のコアのうち第1のコアに接続された第1記憶領域と、
前記複数のコアのうち第2のコアに接続された第2記憶領域と、
を有するマルチプロセッサシステムであって、前記複数のコアのいずれかは、
前記第1のコアが実行する第1スレッドの処理結果に応じて前記第1スレッドから第2スレッドが生成されたことに応じて、前記第2スレッドが前記第1スレッドと排他的動作を行う場合に前記第1スレッドがアクセスする前記第1記憶領域の複写元データを前記第2記憶領域に複写し、前記第2記憶領域に複写した複写先データのアドレスと前記複数のコアの各々のコアに割り当てられるスレッドがアクセスするメモリ範囲を示すマスク値とに基づいて、前記第2記憶領域における前記第2スレッドがアクセスするメモリ範囲の先頭アドレスを算出し、前記第2スレッドが前記第1スレッドと排他的動作を行うことを示す情報と前記第2記憶領域における前記第2スレッドがアクセスするメモリ範囲の先頭アドレスとを前記第2のコアに通知する
マルチコアプロセッサシステム。 - 前記マルチコアプロセッサシステムは、前記第2のコアと前記第2記憶領域との間に配置されるアドレス変換装置を有し、
前記アドレス変換装置は、
前記第2スレッドが前記第1スレッドと排他的動作を行うことを示す情報を前記第2のコアから受け付けた場合、前記第2スレッドから発生した前記複写元データへのアクセスが発生したことに応じて、前記複写元データへのアクセスのアクセス先のアドレスと、前記第2記憶領域における前記第2スレッドがアクセスするメモリ範囲の先頭アドレスと前記マスク値とに基づいて、前記複写元データへのアクセスを前記複写先データへのアクセスに変換すること
を特徴とする請求項7に記載のマルチコアプロセッサシステム。 - 前記アドレス変換装置は、フラグがオン設定されているときに前記複写元データへのアクセスを変換し、前記フラグがオフ設定されているときに前記複写元データへのアクセスを変換しないこと
を特徴とする請求項8に記載のマルチコアプロセッサシステム。 - 前記フラグは、前記第1のコアにおいて実行される前記第1スレッドに基づいて生成される前記第2スレッドの種類に基づいて設定されること
を特徴とする請求項9に記載にマルチコアプロセッサシステム。 - 前記第2スレッドが前記第1スレッドと排他的動作を行う場合に前記フラグがオン設定されること
を特徴とする請求項10に記載のマルチコアプロセッサシステム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2011/050187 WO2012093488A1 (ja) | 2011-01-07 | 2011-01-07 | スケジューリング方法、およびマルチコアプロセッサシステム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2012093488A1 JPWO2012093488A1 (ja) | 2014-06-09 |
JP5780243B2 true JP5780243B2 (ja) | 2015-09-16 |
Family
ID=46457353
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012551780A Expired - Fee Related JP5780243B2 (ja) | 2011-01-07 | 2011-01-07 | スケジューリング方法、およびマルチコアプロセッサシステム |
Country Status (4)
Country | Link |
---|---|
US (1) | US9367459B2 (ja) |
EP (1) | EP2662771A4 (ja) |
JP (1) | JP5780243B2 (ja) |
WO (1) | WO2012093488A1 (ja) |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9401869B1 (en) * | 2012-06-04 | 2016-07-26 | Google Inc. | System and methods for sharing memory subsystem resources among datacenter applications |
GB2502857B (en) * | 2013-03-05 | 2015-01-21 | Imagination Tech Ltd | Migration of data to register file cache |
US8671232B1 (en) * | 2013-03-07 | 2014-03-11 | Freescale Semiconductor, Inc. | System and method for dynamically migrating stash transactions |
US9256534B2 (en) * | 2014-01-06 | 2016-02-09 | International Business Machines Corporation | Data shuffling in a non-uniform memory access device |
US9274835B2 (en) | 2014-01-06 | 2016-03-01 | International Business Machines Corporation | Data shuffling in a non-uniform memory access device |
US9830263B1 (en) * | 2014-06-30 | 2017-11-28 | EMC IP Holding Company LLC | Cache consistency |
US9632958B2 (en) | 2014-07-06 | 2017-04-25 | Freescale Semiconductor, Inc. | System for migrating stash transactions |
US9569110B2 (en) * | 2014-11-18 | 2017-02-14 | International Business Machines Corporation | Efficient management of cloned data |
US9747108B2 (en) * | 2015-03-27 | 2017-08-29 | Intel Corporation | User-level fork and join processors, methods, systems, and instructions |
US10587671B2 (en) * | 2015-07-09 | 2020-03-10 | Zscaler, Inc. | Systems and methods for tracking and auditing changes in a multi-tenant cloud system |
US10140150B2 (en) * | 2016-02-08 | 2018-11-27 | Microsoft Technology Licensing, Llc | Thread diversion awaiting log call return |
CN106293935A (zh) * | 2016-07-28 | 2017-01-04 | 张升泽 | 电流在多核芯片内部的多区间分配方法及系统 |
JP6943030B2 (ja) * | 2017-06-16 | 2021-09-29 | 富士通株式会社 | 情報処理装置、情報処理方法およびプログラム |
US10353826B2 (en) * | 2017-07-14 | 2019-07-16 | Arm Limited | Method and apparatus for fast context cloning in a data processing system |
US10534719B2 (en) | 2017-07-14 | 2020-01-14 | Arm Limited | Memory system for a data processing network |
US10613989B2 (en) | 2017-07-14 | 2020-04-07 | Arm Limited | Fast address translation for virtual machines |
US10592424B2 (en) | 2017-07-14 | 2020-03-17 | Arm Limited | Range-based memory system |
US10467159B2 (en) | 2017-07-14 | 2019-11-05 | Arm Limited | Memory node controller |
US10489304B2 (en) | 2017-07-14 | 2019-11-26 | Arm Limited | Memory address translation |
US10565126B2 (en) | 2017-07-14 | 2020-02-18 | Arm Limited | Method and apparatus for two-layer copy-on-write |
US10884850B2 (en) | 2018-07-24 | 2021-01-05 | Arm Limited | Fault tolerant memory system |
US10963299B2 (en) * | 2018-09-18 | 2021-03-30 | Advanced Micro Devices, Inc. | Hardware accelerated dynamic work creation on a graphics processing unit |
CN110750356B (zh) * | 2019-09-09 | 2022-03-29 | 华南师范大学 | 适用于非易失性内存的多核交互方法、系统及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10143382A (ja) * | 1996-11-08 | 1998-05-29 | Hitachi Ltd | 共有メモリ型マルチプロセッサシステムの資源管理方法 |
JPH10198644A (ja) * | 1997-01-13 | 1998-07-31 | Hitachi Ltd | 同期制御方法およびマルチプロセッサシステム |
JP2000242510A (ja) * | 1999-02-25 | 2000-09-08 | Fujitsu Ltd | 共有記憶媒体の書き込み同期制御方法 |
JP2007504535A (ja) * | 2003-08-28 | 2007-03-01 | ミップス テクノロジーズ インコーポレイテッド | マルチスレッド化されたマイクロプロセッサで並行命令ストリームを開始する命令 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0416768B1 (en) * | 1989-09-08 | 1998-06-17 | Digital Equipment Corporation | Thread private memory storage for multi-thread digital data processors |
JPH05127904A (ja) | 1991-11-05 | 1993-05-25 | Matsushita Electric Ind Co Ltd | 情報処理装置及びコード生成装置 |
GB2272085A (en) * | 1992-10-30 | 1994-05-04 | Tao Systems Ltd | Data processing system and operating system. |
JP3687990B2 (ja) * | 1994-01-25 | 2005-08-24 | 株式会社日立製作所 | メモリアクセス機構 |
JP3639366B2 (ja) | 1995-11-29 | 2005-04-20 | 富士通株式会社 | アドレス空間共有システム |
US6212604B1 (en) * | 1998-12-03 | 2001-04-03 | Sun Microsystems, Inc. | Shared instruction cache for multiple processors |
JP3702813B2 (ja) * | 2001-07-12 | 2005-10-05 | 日本電気株式会社 | マルチスレッド実行方法及び並列プロセッサシステム |
US7469321B2 (en) * | 2003-06-25 | 2008-12-23 | International Business Machines Corporation | Software process migration between coherency regions without cache purges |
WO2005022384A1 (en) | 2003-08-28 | 2005-03-10 | Mips Technologies, Inc. | Apparatus, method, and instruction for initiation of concurrent instruction streams in a multithreading microprocessor |
US7689971B2 (en) * | 2004-08-09 | 2010-03-30 | Intel Corporation | Method and apparatus for referencing thread local variables with stack address mapping |
US8079035B2 (en) * | 2005-12-27 | 2011-12-13 | Intel Corporation | Data structure and management techniques for local user-level thread data |
US7653789B2 (en) * | 2006-02-01 | 2010-01-26 | Sun Microsystems, Inc. | Multiprocessor system that supports both coherent and non-coherent memory accesses |
US8041929B2 (en) * | 2006-06-16 | 2011-10-18 | Cisco Technology, Inc. | Techniques for hardware-assisted multi-threaded processing |
US8495636B2 (en) * | 2007-12-19 | 2013-07-23 | International Business Machines Corporation | Parallelizing single threaded programs by performing look ahead operation on the single threaded program to identify plurality of instruction threads prior to execution |
US20100332763A1 (en) * | 2009-06-30 | 2010-12-30 | International Business Machines Corporation | Apparatus, system, and method for cache coherency elimination |
US8280866B2 (en) * | 2010-04-12 | 2012-10-02 | Clausal Computing Oy | Monitoring writes using thread-local write barrier buffers and soft synchronization |
-
2011
- 2011-01-07 EP EP11855010.2A patent/EP2662771A4/en not_active Withdrawn
- 2011-01-07 JP JP2012551780A patent/JP5780243B2/ja not_active Expired - Fee Related
- 2011-01-07 WO PCT/JP2011/050187 patent/WO2012093488A1/ja active Application Filing
-
2013
- 2013-07-03 US US13/934,951 patent/US9367459B2/en not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10143382A (ja) * | 1996-11-08 | 1998-05-29 | Hitachi Ltd | 共有メモリ型マルチプロセッサシステムの資源管理方法 |
JPH10198644A (ja) * | 1997-01-13 | 1998-07-31 | Hitachi Ltd | 同期制御方法およびマルチプロセッサシステム |
JP2000242510A (ja) * | 1999-02-25 | 2000-09-08 | Fujitsu Ltd | 共有記憶媒体の書き込み同期制御方法 |
JP2007504535A (ja) * | 2003-08-28 | 2007-03-01 | ミップス テクノロジーズ インコーポレイテッド | マルチスレッド化されたマイクロプロセッサで並行命令ストリームを開始する命令 |
Also Published As
Publication number | Publication date |
---|---|
US9367459B2 (en) | 2016-06-14 |
US20130297888A1 (en) | 2013-11-07 |
EP2662771A1 (en) | 2013-11-13 |
WO2012093488A1 (ja) | 2012-07-12 |
JPWO2012093488A1 (ja) | 2014-06-09 |
EP2662771A4 (en) | 2014-05-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5780243B2 (ja) | スケジューリング方法、およびマルチコアプロセッサシステム | |
Li et al. | NUMA-aware shared-memory collective communication for MPI | |
KR101123443B1 (ko) | 프로세서 시스템에서 명령어 레벨에서의 자원 할당 식별을 가능하게 하는 방법 및 장치 | |
TWI512466B (zh) | 在複數執行緒處理單元中的效率式記憶體虛擬化 | |
JP5488697B2 (ja) | マルチコアプロセッサシステム、同期制御方法、および同期制御プログラム | |
JP5733385B2 (ja) | エンディアン変換方法、およびシステム | |
TW201432570A (zh) | 在複數執行緒處理單元中的效率式記憶體虛擬化 | |
US9448934B2 (en) | Affinity group access to global data | |
CN104583943A (zh) | 拥有具有分布式结构的动态分派窗口的虚拟加载存储队列 | |
CN104823154A (zh) | 具有拥有统一结构的动态分派窗口的虚拟加载存储队列 | |
CN104823168A (zh) | 用于实现从由加载存储重新排序和优化所引发的推测性转发缺失预测/错误中恢复的方法和系统 | |
CN104583956A (zh) | 用于实现加载存储重新排序和优化的指令定义 | |
JPWO2012124078A1 (ja) | 同期方法、マルチコアプロセッサシステム、および同期システム | |
US20150194198A1 (en) | Multi-core processor system, memory controller control method, and computer product | |
JP5321748B2 (ja) | マルチコアプロセッサシステム、スレッド制御方法、およびスレッド制御プログラム | |
JP5708450B2 (ja) | マルチコアプロセッサシステム、レジスタ利用方法、およびレジスタ利用プログラム | |
WO2012144012A1 (ja) | スレッド処理方法、およびスレッド処理システム | |
CN105487837A (zh) | 具有载入扩展页表指令的处理器 | |
JP5811211B2 (ja) | マルチコアプロセッサシステム、マルチコアプロセッサシステムの制御方法、およびマルチコアプロセッサシステムの制御プログラム | |
US9298622B2 (en) | Affinity group access to global data | |
JP5817860B2 (ja) | マルチコアプロセッサシステム、マルチコアプロセッサシステムの制御方法、およびマルチコアプロセッサシステムの制御プログラム | |
CN115756742A (zh) | 直通i/o虚拟化的性能优化设计方法、系统、介质及设备 | |
JP2020086871A (ja) | 情報処理装置、プログラム、オペレーティングシステム、実行方法及びプログラムの修正方法 | |
JP2014149765A (ja) | コンパイラ、オブジェクトコード生成方法、情報処理装置及び情報処理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140708 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140908 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150331 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150601 |
|
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: 20150616 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150629 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5780243 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |