JP5016028B2 - メモリ・マイグレーション中のdma動作を停止させるコンピュータ実装方法、装置、及びコンピュータ・プログラム - Google Patents
メモリ・マイグレーション中のdma動作を停止させるコンピュータ実装方法、装置、及びコンピュータ・プログラム Download PDFInfo
- Publication number
- JP5016028B2 JP5016028B2 JP2009511520A JP2009511520A JP5016028B2 JP 5016028 B2 JP5016028 B2 JP 5016028B2 JP 2009511520 A JP2009511520 A JP 2009511520A JP 2009511520 A JP2009511520 A JP 2009511520A JP 5016028 B2 JP5016028 B2 JP 5016028B2
- Authority
- JP
- Japan
- Prior art keywords
- host bridge
- state
- page
- physical page
- migration
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Bus Control (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Debugging And Monitoring (AREA)
- Stored Programmes (AREA)
Description
Claims (19)
- コンピュータの処理により、物理メモリ内のページ(以後、物理ページ)のデータをコピーして前記物理メモリ内の異なるページに格納する処理方法(以後、マイグレーション・プロセス)であって、
データをコピー元の物理ページから宛先物理ページにコピーするマイグレーション・プロセスを開始するステップと、
メモリ・マップドI/O(MMIO)ロード及びストア要求ならびにDMA要求を受信するホスト・ブリッジを第1の状態に入らせるステップと、
前記ホスト・ブリッジが前記第1の状態にあるときは、前記ホスト・ブリッジによって、前記ホスト・ブリッジのDMA要求の処理を中断させるステップと、
前記ホスト・ブリッジが前記第1の状態にある間に、MMIOロード要求が前記ホスト・ブリッジによって受信された場合は、前記ホスト・ブリッジを第2の状態に入らせるために前記第1の状態に割り込みを発生させるステップと、
を含む方法。 - 前記ホスト・ブリッジによって前記MMIOロード要求が受信されたことに応じて、前記ホスト・ブリッジを第2の状態に入らせるステップと、
前記ホスト・ブリッジが前記第2の状態にある間に直接メモリ・アクセス要求の処理を再開するステップと、
を更に含む請求項1に記載の方法。 - 前記ホスト・ブリッジが前記第2の状態に入ったことに応じて前記マイグレーション・プロセスの前記中断を再開することを要求するステップ
を更に含む請求項2に記載の方法。 - 前記マイグレーション・プロセスが開始されたことに応じて、前記コピー元の物理ページから前記宛先物理ページへのデータのコピー処理を開始するステップと、
前記コピー元の物理ページから前記宛先物理ページへの前記データの前記コピー処理が完了したことに応じて、前記ホスト・ブリッジが依然として前記第1の状態にあるかどうかを判定するステップと、
前記コピー処理が完了した時点で前記ホスト・ブリッジが依然として前記第1の状態にあると判定されたことに応じて、前記ホスト・ブリッジを第3の状態に入らせるステップと、
を更に含む請求項1乃至3のいずれか一項に記載の方法。 - 前記ホスト・ブリッジが前記第3の状態に入ったことに応じて、前記ホスト・ブリッジが前記ホスト・ブリッジによるすべてのI/O動作の処理を停止させるステップ
を更に含む請求項4に記載の方法。 - 前記マイグレーション・プロセスを完了させるステップ
を更に含む請求項5に記載の方法。 - 前記データのアドレスが前記宛先ページを指すように変更するステップと、
前記ホスト・ブリッジが前記第3の状態を抜けるように仕向けるステップと、
を更に含む請求項6に記載の方法。 - 特定の物理ページに関連する、変換制御テーブル内の各エントリにマイグレーション・ビットを含めるステップと、
DMA書き込み要求が前記コピー元の物理ページに対する書き込みを試みるものであり、且つ前記コピー元の物理ページに関連するエントリ内でマイグレーション・ビットが設定されている場合にだけ、前記ホスト・ブリッジを前記第1の状態に入らせるステップと、
を更に含む請求項1乃至7のいずれか一項に記載の方法。 - 前記ホスト・ブリッジがDMA要求を受信するステップと、
前記コピー元の物理ページに関連するマイグレーション・ビットを使用して、前記DMA要求が前記コピー元の物理ページに対する書き込みを試みるものであるかどうかを判定するステップと、
前記DMA要求が前記コピー元の物理ページに対する書き込みを試みるものであると判定されたことに応じて、前記ホスト・ブリッジを前記第1の状態に入らせるステップと、
前記DMA要求が前記コピー元の物理ページに対する書き込みを試みるものではないと判定されたことに応じて、前記ホスト・ブリッジが前記DMA要求を実行するステップと、
を更に含む請求項8に記載の方法。 - 請求項1〜9の何れか1つの記載の方法の各ステップをコンピュータに実行させる、コンピュータ・プログラム。
- 物理メモリ内のページ(以後、物理ページ)のデータをコピーして前記物理メモリ内の異なるページに格納する処理(以後、マイグレーション・プロセス)を行う装置であって、
データをコピー元の物理ページから宛先物理ページにコピーするマイグレーション・プロセスを開始する手段と、
メモリ・マップドI/O(MMIO)ロード及びストア要求ならびにDMA要求を受信するホスト・ブリッジを第1の状態に入らせるページ・マイグレーション・メカニズムと、
前記ホスト・ブリッジが前記第1の状態にあるときに、前記ホスト・ブリッジのDMA要求の処理を中断させる前記ホスト・ブリッジと、
前記ホスト・ブリッジが前記第1の状態にある間に、MMIOロード要求が前記ホスト・ブリッジによって受信された場合は、前記ホスト・ブリッジを第2の状態に入らせるために前記第1の状態に割り込みを発生させる前記ページ・マイグレーション・メカニズムと、
を備える装置。 - 前記MMIOロード要求が前記ホスト・ブリッジによって受信されたことに応じて、前記ホスト・ブリッジを第2の状態に入らせる前記ページ・マイグレーション・メカニズムと、
前記ホスト・ブリッジが前記第2の状態にある間に直接メモリ・アクセス要求の処理を再開する前記ホスト・ブリッジと、
を更に備える請求項11に記載の装置。 - 前記ホスト・ブリッジが前記第2の状態に入ったことに応じて前記マイグレーション・プロセスを再開することを要求する前記ページ・マイグレーション・メカニズム
を更に備える請求項12に記載の装置。 - 前記マイグレーション・プロセスが開始されたことに応じて、前記コピー元の物理ページから前記宛先物理ページへのデータのコピー処理を開始する前記マイグレーション・プロセスと、
前記コピー元の物理ページから前記宛先物理ページへの前記データの前記コピー処理が完了したことに応じて、前記ホスト・ブリッジが依然として前記第1の状態にあるかどうかを判定する前記ページ・マイグレーション・メカニズムと、
前記コピー処理が完了した時点で前記ホスト・ブリッジが依然として前記第1の状態にあると判定されたことに応じて、前記ホスト・ブリッジを第3の状態に入らせる前記ページ・マイグレーション・メカニズムと、
を更に備える請求項11乃至13のいずれか一項に記載の装置。 - 前記ホスト・ブリッジが前記第3の状態に入ったことに応じて、すべてのI/O動作の処理を停止させる前記ホスト・ブリッジ
を更に備える請求項14に記載の装置。 - 前記マイグレーション・プロセスを完了させる、
請求項15に記載の装置。 - 前記データのアドレスが前記宛先ページを指すように変更する前記マイグレーション・プロセス
を更に備える請求項16に記載の装置。 - 特定の物理ページに関連する、変換制御テーブル内の各エントリに含められるマイグレーション・ビットと、
DMA書き込み要求が前記コピー元の物理ページに対する書き込みを試みるものであり、且つ前記コピー元の物理ページに関連するエントリ内でマイグレーション・ビットが設定されている場合にだけ、前記ホスト・ブリッジを前記第1の状態に入らせる前記ページ・マイグレーション・メカニズムと、
を更に備える請求項11乃至17のいずれか一項に記載の装置。 - DMA要求を受信する前記ホスト・ブリッジと、
前記DMA要求が前記コピー元の物理ページに対する書き込みを試みるものであるかどうかを判定するのに使用される、前記コピー元の物理ページに関連するマイグレーション・ビットと、
前記DMA要求が前記コピー元の物理ページに対する書き込みを試みるものであると判定されたことに応じて、前記ホスト・ブリッジを前記第1の状態に入らせる前記ページ・マイグレーション・メカニズムと、
前記DMA要求が前記コピー元の物理ページに対する書き込みを試みるものではないと判定されたことに応じて、前記DMA要求を実行する前記ホスト・ブリッジと、
を更に備える請求項18に記載の装置。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/420,236 | 2006-05-25 | ||
US11/420,236 US7734843B2 (en) | 2006-05-25 | 2006-05-25 | Computer-implemented method, apparatus, and computer program product for stalling DMA operations during memory migration |
PCT/EP2007/055020 WO2007137983A1 (en) | 2006-05-25 | 2007-05-23 | Computer-implemented method, apparatus, and computer program product for stalling dma operations during memory migration |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009537922A JP2009537922A (ja) | 2009-10-29 |
JP5016028B2 true JP5016028B2 (ja) | 2012-09-05 |
Family
ID=38335617
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009511520A Active JP5016028B2 (ja) | 2006-05-25 | 2007-05-23 | メモリ・マイグレーション中のdma動作を停止させるコンピュータ実装方法、装置、及びコンピュータ・プログラム |
Country Status (7)
Country | Link |
---|---|
US (1) | US7734843B2 (ja) |
EP (1) | EP2033101B1 (ja) |
JP (1) | JP5016028B2 (ja) |
CN (1) | CN101410813B (ja) |
AT (1) | ATE484797T1 (ja) |
DE (1) | DE602007009835D1 (ja) |
WO (1) | WO2007137983A1 (ja) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8595405B2 (en) * | 2008-02-18 | 2013-11-26 | Hewlett-Packard Development Company, L.P. | Systems and methods of communicatively coupling a host computing device and a peripheral device |
US20120023302A1 (en) * | 2010-07-20 | 2012-01-26 | Ibm Corporation | Concurrent Atomic Operations with Page Migration in PCIe |
US8495271B2 (en) * | 2010-08-04 | 2013-07-23 | International Business Machines Corporation | Injection of I/O messages |
US9336029B2 (en) | 2010-08-04 | 2016-05-10 | International Business Machines Corporation | Determination via an indexed structure of one or more partitionable endpoints affected by an I/O message |
US8549202B2 (en) | 2010-08-04 | 2013-10-01 | International Business Machines Corporation | Interrupt source controller with scalable state structures |
US9032146B2 (en) | 2010-11-30 | 2015-05-12 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Dynamic use of raid levels responsive to workload requirements |
US8452819B1 (en) | 2011-03-22 | 2013-05-28 | Amazon Technologies, Inc. | Methods and apparatus for optimizing resource utilization in distributed storage systems |
US9473561B2 (en) * | 2013-03-15 | 2016-10-18 | International Business Machines Corporation | Data transmission for transaction processing in a networked environment |
US10042720B2 (en) | 2016-02-22 | 2018-08-07 | International Business Machines Corporation | Live partition mobility with I/O migration |
US10002018B2 (en) | 2016-02-23 | 2018-06-19 | International Business Machines Corporation | Migrating single root I/O virtualization adapter configurations in a computing system |
US10042723B2 (en) | 2016-02-23 | 2018-08-07 | International Business Machines Corporation | Failover of a virtual function exposed by an SR-IOV adapter |
US10025584B2 (en) | 2016-02-29 | 2018-07-17 | International Business Machines Corporation | Firmware management of SR-IOV adapters |
US9760512B1 (en) | 2016-10-21 | 2017-09-12 | International Business Machines Corporation | Migrating DMA mappings from a source I/O adapter of a source computing system to a destination I/O adapter of a destination computing system |
US9715469B1 (en) | 2016-10-21 | 2017-07-25 | International Business Machines Corporation | Migrating interrupts from a source I/O adapter of a source computing system to a destination I/O adapter of a destination computing system |
US9720863B1 (en) | 2016-10-21 | 2017-08-01 | International Business Machines Corporation | Migrating MMIO from a source I/O adapter of a source computing system to a destination I/O adapter of a destination computing system |
US9720862B1 (en) | 2016-10-21 | 2017-08-01 | International Business Machines Corporation | Migrating interrupts from a source I/O adapter of a computing system to a destination I/O adapter of the computing system |
US9740647B1 (en) | 2016-10-21 | 2017-08-22 | International Business Machines Corporation | Migrating DMA mappings from a source I/O adapter of a computing system to a destination I/O adapter of the computing system |
US9785451B1 (en) | 2016-10-21 | 2017-10-10 | International Business Machines Corporation | Migrating MMIO from a source I/O adapter of a computing system to a destination I/O adapter of the computing system |
US10365824B2 (en) * | 2017-04-24 | 2019-07-30 | Advanced Micro Devices, Inc. | Silent active page migration faults |
US11526278B2 (en) | 2017-12-21 | 2022-12-13 | Advanced Micro Devices, Inc. | Adaptive page close prediction |
US11455264B2 (en) * | 2020-08-10 | 2022-09-27 | International Business Machines Corporation | Minimizing delay while migrating direct memory access (DMA) mapped pages |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5923859A (en) * | 1995-04-13 | 1999-07-13 | Compaq Computer Corporation | Dual arbiters for arbitrating access to a first and second bus in a computer system having bus masters on each bus |
US6587961B1 (en) * | 1998-06-15 | 2003-07-01 | Sun Microsystems, Inc. | Multi-processor system bridge with controlled access |
US6932471B2 (en) | 2003-08-06 | 2005-08-23 | Gary M. Zelman | Eyeglasses having magnetically coupled primary lens frame and auxiliary frame |
US6931471B2 (en) | 2002-04-04 | 2005-08-16 | International Business Machines Corporation | Method, apparatus, and computer program product for migrating data subject to access by input/output devices |
US7480911B2 (en) * | 2002-05-09 | 2009-01-20 | International Business Machines Corporation | Method and apparatus for dynamically allocating and deallocating processors in a logical partitioned data processing system |
US6941436B2 (en) * | 2002-05-09 | 2005-09-06 | International Business Machines Corporation | Method and apparatus for managing memory blocks in a logical partitioned data processing system |
US7103728B2 (en) * | 2002-07-23 | 2006-09-05 | Hewlett-Packard Development Company, L.P. | System and method for memory migration in distributed-memory multi-processor systems |
JP2004086451A (ja) * | 2002-08-26 | 2004-03-18 | Matsushita Electric Ind Co Ltd | 半導体集積回路 |
US6804729B2 (en) * | 2002-09-30 | 2004-10-12 | International Business Machines Corporation | Migrating a memory page by modifying a page migration state of a state machine associated with a DMA mapper based on a state notification from an operating system kernel |
US7318140B2 (en) * | 2004-06-10 | 2008-01-08 | International Business Machines Corporation | Method and apparatus for dynamic hosting partition page assignment |
US20060069818A1 (en) * | 2004-09-27 | 2006-03-30 | Cliff Mather | Synchronizing direct memory access and evacuation operations in a computer system |
US7500072B2 (en) * | 2006-04-25 | 2009-03-03 | International Business Machines Corporation | Migrating data that is subject to access by input/output devices |
-
2006
- 2006-05-25 US US11/420,236 patent/US7734843B2/en active Active
-
2007
- 2007-05-23 CN CN2007800112575A patent/CN101410813B/zh active Active
- 2007-05-23 JP JP2009511520A patent/JP5016028B2/ja active Active
- 2007-05-23 AT AT07729454T patent/ATE484797T1/de not_active IP Right Cessation
- 2007-05-23 DE DE602007009835T patent/DE602007009835D1/de active Active
- 2007-05-23 WO PCT/EP2007/055020 patent/WO2007137983A1/en active Application Filing
- 2007-05-23 EP EP07729454A patent/EP2033101B1/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2009537922A (ja) | 2009-10-29 |
US7734843B2 (en) | 2010-06-08 |
EP2033101B1 (en) | 2010-10-13 |
EP2033101A1 (en) | 2009-03-11 |
CN101410813A (zh) | 2009-04-15 |
WO2007137983A1 (en) | 2007-12-06 |
US20080005383A1 (en) | 2008-01-03 |
ATE484797T1 (de) | 2010-10-15 |
CN101410813B (zh) | 2011-11-16 |
DE602007009835D1 (de) | 2010-11-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5016028B2 (ja) | メモリ・マイグレーション中のdma動作を停止させるコンピュータ実装方法、装置、及びコンピュータ・プログラム | |
JP4898525B2 (ja) | Dmaオペレーションを選択的に停止させるための方法、装置およびデータ処理システム | |
US8607020B2 (en) | Shared memory partition data processing system with hypervisor managed paging | |
JP5579354B2 (ja) | 関連アプリケーションに対するトラック・データ・クロスリファレンスを保存する方法及び装置 | |
US7480911B2 (en) | Method and apparatus for dynamically allocating and deallocating processors in a logical partitioned data processing system | |
US7484029B2 (en) | Method, apparatus, and computer usable program code for migrating virtual adapters from source physical adapters to destination physical adapters | |
JP4157710B2 (ja) | Pci入出力スロットの論理分割を実施する方法および装置 | |
US8949659B2 (en) | Scheduling workloads based on detected hardware errors | |
US8201167B2 (en) | On-demand allocation of virtual asynchronous services interfaces | |
JP2015135696A (ja) | ローカル物理メモリとリモート物理メモリとの間で共有されるバーチャルメモリのためのハードウェアサポートの提供 | |
JP4405435B2 (ja) | 動的なホスト区画ページ割り当てのための方法および装置 | |
JP2008102921A (ja) | データ処理システム、ハイパートランスポート環境におけるi/oアダプタのlpar分離方法、およびプログラム記憶デバイス | |
US20100100892A1 (en) | Managing hosted virtualized operating system environments | |
US7941568B2 (en) | Mapping a virtual address to PCI bus address | |
US7500051B2 (en) | Migration of partitioned persistent disk cache from one host to another | |
US7266631B2 (en) | Isolation of input/output adapter traffic class/virtual channel and input/output ordering domains | |
US8139595B2 (en) | Packet transfer in a virtual partitioned environment | |
US20140122850A1 (en) | Non-interrupting performance tuning using runtime reset | |
US20120124298A1 (en) | Local synchronization in a memory hierarchy |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100319 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110906 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110907 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111201 |
|
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: 20120515 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120607 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150615 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5016028 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |