JP5911985B2 - ローカル物理メモリとリモート物理メモリとの間で共有されるバーチャルメモリのためのハードウェアサポートの提供 - Google Patents
ローカル物理メモリとリモート物理メモリとの間で共有されるバーチャルメモリのためのハードウェアサポートの提供 Download PDFInfo
- Publication number
- JP5911985B2 JP5911985B2 JP2015042361A JP2015042361A JP5911985B2 JP 5911985 B2 JP5911985 B2 JP 5911985B2 JP 2015042361 A JP2015042361 A JP 2015042361A JP 2015042361 A JP2015042361 A JP 2015042361A JP 5911985 B2 JP5911985 B2 JP 5911985B2
- Authority
- JP
- Japan
- Prior art keywords
- memory
- processor
- accelerator
- remote
- entry
- 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
- 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/10—Address translation
- G06F12/1027—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
- G06F12/1036—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] for multiple virtual address spaces, e.g. segmentation
-
- 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/10—Address translation
- G06F12/1027—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
-
- 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/12—Replacement control
- G06F12/121—Replacement control using replacement algorithms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/25—Using a specific main memory architecture
- G06F2212/254—Distributed memory
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)
- Memory System (AREA)
Description
110 プラットフォーム
120 CPU
130 システムメモリ
140 インターコネクト
150 アクセラレータ
Claims (22)
- バーチャルアドレスを含むメモリアクセスリクエストを受信するステップと、
プロセッサの変換ルックアサイドバッファ(TLB)に格納される前記バーチャルアドレスに対応するエントリを解析し、前記バーチャルアドレスに対応する物理アドレス(PA)が前記プロセッサに関連するローカルメモリ、又は前記PAが前記ローカルメモリ若しくは1以上のリモートメモリの1つに存在するか示すための前記TLBのエントリのローカル属性に基づき非コヒーラントリンクを介し前記プロセッサに接続されるアクセラレータに関連するリモートメモリに存在するか判断するステップであって、前記ローカルメモリと前記リモートメモリとは一緒になって共有バーチャルメモリスペースを構成する、判断するステップと、
前記PAが前記リモートメモリに存在する場合、マイクロコードハンドラにより処理されるべきフォルト状態により前記メモリアクセスリクエストをタグ付けし、前記メモリアクセスリクエストを実行するため、前記非コヒーラントリンクを介しトンネルされる前記リモートメモリにリバースプロキシ実行リクエストを送信するステップと、
を有する方法。 - 前記リモートメモリが関連付けされるアクセラレータを示す前記TLBのエントリの識別子フィールドを利用して、前記PAが配置されるアクセラレータと関連付けされる複数のリモートメモリの何れかを決定するステップを更に有する、請求項1記載の方法。
- 前記プロセッサによる前記リモートメモリのPAへのアクセスの回数を示す前記TLBのエントリのカウンタを解析するステップを更に有する、請求項2記載の方法。
- 前記プロセッサによる前記リモートメモリのPAへのアクセスの回数を示す前記TLBのエントリのカウンタが閾値に達すると、前記プロセッサ上で実行されるアプリケーションの関与なく、前記リモートメモリのPAから前記ローカルメモリに情報を移動するステップを更に有する、請求項1記載の方法。
- 前記ローカルメモリに関連する第1の物理アドレス範囲と前記リモートメモリに関連する第2の物理アドレス範囲とを示すため、前記ローカルメモリと前記リモートメモリとを含むシステムのメモリコンフィギュレーションを設定するステップを更に有する、請求項1記載の方法。
- 前記メモリアクセスリクエストの変換を取得するため、ページウォーク上で前記メモリコンフィギュレーションにアクセスし、前記PAが前記第1の物理アドレス範囲内にあるとき、前記PAが前記ローカルメモリにあることを示すための第1の値を有する位置インジケータと前記変換とを含むエントリを前記TLBに格納するステップを更に有する、請求項5記載の方法。
- 第1のメモリマネージメントユニット(MMU)を含む第1のコアを有するプロセッサであって、
前記第1のMMUは、バーチャルアドレスから物理アドレスへの変換を格納するための複数のエントリを有し、各エントリは、対応するエントリのメモリ位置が当該プロセッサに接続されるローカルメモリ、又は非コヒーラントインターコネクトを介し当該プロセッサに接続されるアクセラレータに接続されるリモートメモリに存在するか示すための第1のインジケータを格納するための位置フィールドと、前記リモートメモリに関連するアクセラレータの識別子を格納するための識別子フィールドとを有し、前記プロセッサは、フォルト状態により前記リモートメモリにおけるメモリ位置に対するメモリリクエストをタグ付けし、前記フォルト状態を処理するためのハンドラを実行し、前記リモートメモリにおける前記メモリ位置に対するメモリリクエストを、前記非コヒーラントインターコネクトを介した通信のためのダイレクトメモリアクセス(DMA)に変換するプロセッサ。 - 前記第1のMMUの各エントリは、当該プロセッサによる前記リモートメモリのメモリ位置へのアクセスの回数のカウントを格納するためのカウンタを更に有する、請求項7記載のプロセッサ。
- 前記ローカルメモリはシステムメモリであり、前記リモートメモリは前記アクセラレータのローカルメモリである、請求項7記載のプロセッサ。
- 前記システムメモリと前記リモートメモリとは、単一のバーチャルアドレススペースを構成する、請求項9記載のプロセッサ。
- 前記システムメモリと前記リモートメモリとは、単一のバーチャルアドレススペースを構成する、請求項9記載のプロセッサ。
- 前記第1のMMUのエントリは、前記メモリ位置が前記リモートメモリにあることを示し、当該プロセッサは、前記非コヒーラントインターコネクトのプロトコルを介し前記アクセラレータにメモリリクエストをトンネルする、請求項7記載のプロセッサ。
- 前記アクセラレータは、第2のMMUを有し、前記第2のMMU上のページフォルトに応答して、前記アクセラレータは、前記ページフォルトを処理するよう前記プロセッサにリクエストする、請求項7記載のプロセッサ。
- 当該プロセッサは、前記第1のMMUのエントリにおける情報を利用して、前記リモートメモリに存在するメモリ位置を直接アドレス指定する、請求項7記載のプロセッサ。
- 当該プロセッサは、当該プロセッサ上で実行されるユーザレベルアプリケーションを利用することなく、前記第1のMMUのエントリにおける情報を利用して前記アクセラレータのリモートメモリに格納されているデータにアクセスするためのリバースプロキシ実行リクエストを前記アクセラレータの発信する、請求項7記載のプロセッサ。
- 第1のメモリマネージメントユニット(MMU)を含む第1のコアを有するプロセッサであって、前記第1のMMUは、バーチャルアドレスから物理アドレスへの変換を格納するための複数のエントリを有し、各エントリは、対応するエントリのメモリ位置がシステムメモリ、又はアクセラレータコンポーネントに関連する第2のメモリに存在するか示すためのインジケータを格納するための位置フィールドと、前記プロセッサによる第2のメモリのメモリ位置へのアクセスの回数のカウントを格納するためのカウンタとを有し、前記プロセッサ上で実行されるアプリケーションから独立して、前記プロセッサは、前記カウンタが閾値に達すると、前記メモリ位置に格納されているデータを前記第2のメモリに存在するメモリ位置から前記システムメモリに存在するメモリ位置に移動し、前記カウンタが前記閾値に達すると生じる例外に応答して、前記データの移動は前記プロセッサ上で実行されるアプリケーションにトランスペアレントである、プロセッサと、
リンクを介し前記プロセッサに接続されるアクセラレータコンポーネントであって、第2のプロセッサと第2のMMUとを有するアクセラレータコンポーネントと、
前記プロセッサに接続されるシステムメモリであって、DRAM(Dynamic Random Access Memory)を有するシステムメモリと、
を有するシステム。 - 前記プロセッサは、前記第1のMMUのエントリにおける情報を利用して前記第2のメモリに存在するメモリ位置を直接アドレス指定する、請求項16記載のシステム。
- 前記システムメモリと前記第2のメモリとは、単一のバーチャルアドレススペースを構成する、請求項16記載のシステム。
- 前記プロセッサは、前記カウンタが前記閾値に達すると行われるインタラプトに応答して、前記プロセッサ上で実行されるアプリケーションの関与なく、前記第2のメモリに存在するメモリ位置から前記システムメモリに存在するメモリ位置にデータを移動する、請求項16記載のシステム。
- 前記プロセッサと前記アクセラレータコンポーネントとは、単一の半導体ダイから構成される、請求項16記載のシステム。
- 前記第2のメモリは、前記システムメモリのパーティションされた部分である、請求項20記載のシステム。
- 命令フェッチユニット、命令復号化ユニット及び第1のメモリマネージメントユニット(MMU)を有する第1のコアであって、前記第1のMMUは、バーチャルアドレスから物理アドレスへの変換を格納する複数のエントリを有し、各エントリは、前記第1のコアによるアクセスの回数のカウントを、前記プロセッサに接続される第2のプロセッサに関連する第2のメモリのメモリ位置に格納するためのカウンタを有し、エントリの前記カウンタが閾値に達すると、前記プロセッサは、前記エントリに関連するメモリ位置に格納されているデータを前記第2のメモリのメモリ位置から前記プロセッサに接続されるシステムメモリのメモリ位置に移動し、前記第1のコアは更に第1のキャッシュメモリと少なくとも1つの実行ユニットとを有する、第1のコアと、
インターコネクトと、
前記インターコネクトを介し前記第1のコアに接続され、第2のMMUを有するアクセラレータであって、前記第2のMMUはバーチャルアドレスから物理アドレスへの変換を格納する複数のエントリを有し、前記第1のMMUの各エントリは、対応するエントリのメモリ位置が前記プロセッサに接続される第1のメモリ又は前記アクセラレータに接続される第2のメモリに存在するか示すための第1のインジケータを格納するための位置フィールドを有し、前記プロセッサは、前記第2のメモリにおけるメモリ位置に対するメモリリクエストを前記第2のメモリとの通信のためのダイレクトメモリアクセス(DMA)に変換するためのハンドラを実行する、アクセラレータと、
前記第1のコアと前記アクセラレータとに接続される共有キャッシュメモリと、
前記共有キャッシュメモリに接続されるメモリコントローラと、
を有するプロセッサ。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/562,477 US8719547B2 (en) | 2009-09-18 | 2009-09-18 | Providing hardware support for shared virtual memory between local and remote physical memory |
US12/562,477 | 2009-09-18 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013195581A Division JP2013254524A (ja) | 2009-09-18 | 2013-09-20 | ローカル物理メモリとリモート物理メモリとの間で共有されるバーチャルメモリのためのハードウェアサポートの提供 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2015135696A JP2015135696A (ja) | 2015-07-27 |
JP2015135696A5 JP2015135696A5 (ja) | 2015-11-12 |
JP5911985B2 true JP5911985B2 (ja) | 2016-04-27 |
Family
ID=43705804
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010205550A Pending JP2011065650A (ja) | 2009-09-18 | 2010-09-14 | ローカル物理メモリとリモート物理メモリとの間で共有されるバーチャルメモリのためのハードウェアサポートの提供 |
JP2013195581A Pending JP2013254524A (ja) | 2009-09-18 | 2013-09-20 | ローカル物理メモリとリモート物理メモリとの間で共有されるバーチャルメモリのためのハードウェアサポートの提供 |
JP2015042361A Active JP5911985B2 (ja) | 2009-09-18 | 2015-03-04 | ローカル物理メモリとリモート物理メモリとの間で共有されるバーチャルメモリのためのハードウェアサポートの提供 |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010205550A Pending JP2011065650A (ja) | 2009-09-18 | 2010-09-14 | ローカル物理メモリとリモート物理メモリとの間で共有されるバーチャルメモリのためのハードウェアサポートの提供 |
JP2013195581A Pending JP2013254524A (ja) | 2009-09-18 | 2013-09-20 | ローカル物理メモリとリモート物理メモリとの間で共有されるバーチャルメモリのためのハードウェアサポートの提供 |
Country Status (6)
Country | Link |
---|---|
US (2) | US8719547B2 (ja) |
JP (3) | JP2011065650A (ja) |
CN (2) | CN104123242B (ja) |
BR (1) | BRPI1003466A2 (ja) |
DE (1) | DE102010035603A1 (ja) |
TW (1) | TWI470435B (ja) |
Families Citing this family (125)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8667249B2 (en) * | 2004-12-22 | 2014-03-04 | Intel Corporation | Systems and methods exchanging data between processors through concurrent shared memory |
US8726289B2 (en) * | 2008-02-22 | 2014-05-13 | International Business Machines Corporation | Streaming attachment of hardware accelerators to computer systems |
US8250578B2 (en) * | 2008-02-22 | 2012-08-21 | International Business Machines Corporation | Pipelining hardware accelerators to computer systems |
US8656397B2 (en) * | 2010-03-30 | 2014-02-18 | Red Hat Israel, Ltd. | Migrating groups of threads across NUMA nodes based on remote page access frequency |
US20120236010A1 (en) * | 2011-03-15 | 2012-09-20 | Boris Ginzburg | Page Fault Handling Mechanism |
US9921967B2 (en) | 2011-07-26 | 2018-03-20 | Intel Corporation | Multi-core shared page miss handler |
US9916257B2 (en) | 2011-07-26 | 2018-03-13 | Intel Corporation | Method and apparatus for TLB shoot-down in a heterogeneous computing system supporting shared virtual memory |
JP5573829B2 (ja) * | 2011-12-20 | 2014-08-20 | 富士通株式会社 | 情報処理装置およびメモリアクセス方法 |
US8984511B2 (en) * | 2012-03-29 | 2015-03-17 | Advanced Micro Devices, Inc. | Visibility ordering in a memory model for a unified computing system |
EP2831693B1 (en) * | 2012-03-30 | 2018-06-13 | Intel Corporation | Apparatus and method for accelerating operations in a processor which uses shared virtual memory |
US9164904B2 (en) | 2012-08-28 | 2015-10-20 | Hewlett-Packard Development Company, L.P. | Accessing remote memory on a memory blade |
US9384153B2 (en) * | 2012-08-31 | 2016-07-05 | Freescale Semiconductor, Inc. | Virtualized local storage |
US10270709B2 (en) | 2015-06-26 | 2019-04-23 | Microsoft Technology Licensing, Llc | Allocating acceleration component functionality for supporting services |
CN107402891B (zh) | 2012-12-25 | 2020-12-22 | 华为技术有限公司 | 确定共享虚拟内存页面管理模式的方法和相关设备 |
US9417873B2 (en) | 2012-12-28 | 2016-08-16 | Intel Corporation | Apparatus and method for a hybrid latency-throughput processor |
US9361116B2 (en) | 2012-12-28 | 2016-06-07 | Intel Corporation | Apparatus and method for low-latency invocation of accelerators |
US10140129B2 (en) | 2012-12-28 | 2018-11-27 | Intel Corporation | Processing core having shared front end unit |
US10346195B2 (en) | 2012-12-29 | 2019-07-09 | Intel Corporation | Apparatus and method for invocation of a multi threaded accelerator |
WO2014116240A1 (en) | 2013-01-27 | 2014-07-31 | Hewlett-Packard Development Company, L.P. | Socket state transfer |
US10061622B2 (en) | 2013-02-26 | 2018-08-28 | Red Hat Israel, Ltd. | Updating memory topology information for virtual machines |
US10114662B2 (en) | 2013-02-26 | 2018-10-30 | Red Hat Israel, Ltd. | Updating processor topology information for virtual machines |
WO2014142836A1 (en) | 2013-03-13 | 2014-09-18 | Empire Technology Development, Llc | Memory allocation accelerator |
US10133677B2 (en) * | 2013-03-14 | 2018-11-20 | Nvidia Corporation | Opportunistic migration of memory pages in a unified virtual memory system |
US20140280669A1 (en) * | 2013-03-15 | 2014-09-18 | Microsoft Corporation | Memory Sharing Over A Network |
CN105190576A (zh) * | 2013-03-28 | 2015-12-23 | 惠普发展公司,有限责任合伙企业 | 共享的存储器系统 |
US9678818B2 (en) * | 2014-01-30 | 2017-06-13 | Mellanox Technologies, Ltd. | Direct IO access from a CPU's instruction stream |
US9785576B2 (en) | 2014-03-27 | 2017-10-10 | Intel Corporation | Hardware-assisted virtualization for implementing secure video output path |
WO2015150976A1 (en) | 2014-04-03 | 2015-10-08 | Strato Scale Ltd. | Cluster-wide memory management using similarity-preserving signatures |
US9766916B2 (en) * | 2014-05-05 | 2017-09-19 | International Business Machines Corporation | Implementing coherent accelerator function isolation for virtualization |
US10025715B2 (en) | 2014-06-27 | 2018-07-17 | International Business Machines Corporation | Conditional inclusion of data in a transactional memory read set |
US9342346B2 (en) | 2014-07-27 | 2016-05-17 | Strato Scale Ltd. | Live migration of virtual machines that use externalized memory pages |
US9436601B2 (en) | 2014-09-15 | 2016-09-06 | International Business Machines Corporation | Categorizing memory pages based on page residences |
US9390028B2 (en) | 2014-10-19 | 2016-07-12 | Strato Scale Ltd. | Coordination between memory-saving mechanisms in computers that run virtual machines |
WO2016065610A1 (zh) * | 2014-10-31 | 2016-05-06 | 华为技术有限公司 | 访问文件的方法、分布式存储系统和存储节点 |
US9600428B2 (en) | 2014-11-20 | 2017-03-21 | International Business Machines Corporation | Implementing extent granularity authorization command flow processing in CAPI adapters |
US9600642B2 (en) | 2014-11-20 | 2017-03-21 | International Business Machines Corporation | Implementing extent granularity authorization processing in CAPI adapters |
US9582659B2 (en) | 2014-11-20 | 2017-02-28 | International Business Machines Corporation | Implementing extent granularity authorization and deauthorization processing in CAPI adapters |
US9697370B2 (en) | 2014-11-20 | 2017-07-04 | International Business Machines Corporation | Implementing and processing extent granularity authorization mechanism in CAPI adapters |
US20160149909A1 (en) | 2014-11-20 | 2016-05-26 | International Business Machines Corporation | Implementing block device extent granularity authorization model processing in capi adapters |
US9710624B2 (en) * | 2014-11-20 | 2017-07-18 | International Business Machines Corporation | Implementing extent granularity authorization initialization processing in CAPI adapters |
CN104391753B (zh) * | 2014-12-16 | 2017-12-05 | 浪潮电子信息产业股份有限公司 | 一种服务器主板内存系统无故障运行方法 |
US9921768B2 (en) * | 2014-12-18 | 2018-03-20 | Intel Corporation | Low power entry in a shared memory link |
JP6380084B2 (ja) * | 2014-12-19 | 2018-08-29 | 富士ゼロックス株式会社 | 情報処理装置及び情報処理プログラム |
US9524328B2 (en) | 2014-12-28 | 2016-12-20 | Strato Scale Ltd. | Recovery synchronization in a distributed storage system |
US9912748B2 (en) | 2015-01-12 | 2018-03-06 | Strato Scale Ltd. | Synchronization of snapshots in a distributed storage system |
US9495303B2 (en) * | 2015-02-03 | 2016-11-15 | Intel Corporation | Fine grained address remapping for virtualization |
US9727241B2 (en) * | 2015-02-06 | 2017-08-08 | Advanced Micro Devices, Inc. | Memory page access detection |
US9658793B2 (en) * | 2015-02-20 | 2017-05-23 | Qualcomm Incorporated | Adaptive mode translation lookaside buffer search and access fault |
US9858201B2 (en) * | 2015-02-20 | 2018-01-02 | Qualcomm Incorporated | Selective translation lookaside buffer search and page fault |
EP3126987A4 (en) | 2015-02-26 | 2017-11-22 | Strato Scale Ltd. | Using access-frequency hierarchy for selection of eviction destination |
GB2536200B (en) * | 2015-03-02 | 2021-08-18 | Advanced Risc Mach Ltd | Memory management |
GB2536199B (en) * | 2015-03-02 | 2021-07-28 | Advanced Risc Mach Ltd | Memory management |
US10067893B2 (en) * | 2015-04-03 | 2018-09-04 | Futurewei Technologies, Inc. | Acceleration framework with direct data transfer mechanism |
US9792154B2 (en) | 2015-04-17 | 2017-10-17 | Microsoft Technology Licensing, Llc | Data processing system having a hardware acceleration plane and a software plane |
US10198294B2 (en) | 2015-04-17 | 2019-02-05 | Microsoft Licensing Technology, LLC | Handling tenant requests in a system that uses hardware acceleration components |
WO2016181648A1 (ja) * | 2015-05-12 | 2016-11-17 | 日本電気株式会社 | アクセラレータ制御装置、アクセラレータ制御方法および記録媒体 |
US10216555B2 (en) | 2015-06-26 | 2019-02-26 | Microsoft Technology Licensing, Llc | Partially reconfiguring acceleration components |
US9858198B2 (en) | 2015-06-26 | 2018-01-02 | Intel Corporation | 64KB page system that supports 4KB page operations |
CN105938461B (zh) * | 2015-07-31 | 2019-02-19 | 杭州迪普科技股份有限公司 | 一种dma数据传输方法、装置以及网络设备 |
US10216662B2 (en) * | 2015-09-26 | 2019-02-26 | Intel Corporation | Hardware mechanism for performing atomic actions on remote processors |
US10025722B2 (en) | 2015-10-28 | 2018-07-17 | International Business Machines Corporation | Efficient translation reloads for page faults with host accelerator directly accessing process address space without setting up DMA with driver and kernel by process inheriting hardware context from the host accelerator |
US9678788B2 (en) | 2015-11-10 | 2017-06-13 | International Business Machines Corporation | Enabling poll/select style interfaces with coherent accelerators |
KR20180088437A (ko) * | 2015-11-30 | 2018-08-03 | 가부시키가이샤 페지 컴퓨팅 | 다이 및 패키지, 및 다이의 제조 방법 및 패키지의 생성 방법 |
CN108292291A (zh) | 2015-11-30 | 2018-07-17 | Pezy计算股份有限公司 | 管芯和封装件 |
JP6588106B2 (ja) * | 2016-01-07 | 2019-10-09 | 株式会社日立製作所 | 計算機システム及び計算機の制御方法 |
WO2017123208A1 (en) | 2016-01-12 | 2017-07-20 | Hewlett Packard Enterprise Development Lp | Partially coherent memory transfer |
US9934173B1 (en) * | 2016-02-24 | 2018-04-03 | Xilinx, Inc. | Pseudo cut-through architecture between non-volatile memory storage and remote hosts over a fabric |
KR20180009217A (ko) * | 2016-07-18 | 2018-01-26 | 삼성전자주식회사 | 데이터 저장 장치의 작동 방법과 이를 포함하는 데이터 처리 시스템의 작동 방법 |
US10613991B2 (en) | 2016-08-01 | 2020-04-07 | Hewlett Packard Enterprise Development Lp | Transparent routers to provide services |
US10255181B2 (en) * | 2016-09-19 | 2019-04-09 | Qualcomm Incorporated | Dynamic input/output coherency |
TWI645290B (zh) * | 2016-10-11 | 2018-12-21 | 慧榮科技股份有限公司 | 資料儲存裝置及其資料寫入方法 |
US10289553B2 (en) | 2016-10-27 | 2019-05-14 | International Business Machines Corporation | Accelerator sharing |
US10296338B2 (en) * | 2016-12-09 | 2019-05-21 | Intel Corporation | System, apparatus and method for low overhead control transfer to alternate address space in a processor |
CN108572864A (zh) * | 2017-03-13 | 2018-09-25 | 龙芯中科技术有限公司 | 触发负载均衡调度的方法、装置及服务器 |
US11113440B1 (en) * | 2017-03-17 | 2021-09-07 | Synopsys, Inc. | Memory migration in hybrid emulation |
US20180285262A1 (en) * | 2017-03-31 | 2018-10-04 | Intel Corporation | Techniques for shared virtual memory access protection |
US10282811B2 (en) * | 2017-04-07 | 2019-05-07 | Intel Corporation | Apparatus and method for managing data bias in a graphics processing architecture |
US10324858B2 (en) * | 2017-06-12 | 2019-06-18 | Arm Limited | Access control |
US11194618B2 (en) * | 2017-06-13 | 2021-12-07 | Nec Corporation | Accelerator control device, accelerator control method, and recording medium with accelerator control program stored therein |
US10489304B2 (en) * | 2017-07-14 | 2019-11-26 | Arm Limited | Memory address translation |
US11030117B2 (en) * | 2017-07-14 | 2021-06-08 | Advanced Micro Devices, Inc. | Protecting host memory from access by untrusted accelerators |
US11263143B2 (en) * | 2017-09-29 | 2022-03-01 | Intel Corporation | Coherent accelerator fabric controller |
US11204867B2 (en) * | 2017-09-29 | 2021-12-21 | Intel Corporation | PCIe controller with extensions to provide coherent memory mapping between accelerator memory and host memory |
CN109729110B (zh) * | 2017-10-27 | 2022-02-11 | 伊姆西Ip控股有限责任公司 | 管理专用处理资源的方法、设备以及计算机可读介质 |
US11861025B1 (en) | 2018-01-08 | 2024-01-02 | Rankin Labs, Llc | System and method for receiving and processing a signal within a TCP/IP protocol stack |
US11099789B2 (en) * | 2018-02-05 | 2021-08-24 | Micron Technology, Inc. | Remote direct memory access in multi-tier memory systems |
US11231927B2 (en) * | 2018-03-08 | 2022-01-25 | Intel Corporation | System, apparatus and method for providing a fabric for an accelerator |
JP7083717B2 (ja) * | 2018-07-23 | 2022-06-13 | ルネサスエレクトロニクス株式会社 | 半導体装置 |
US11689543B2 (en) | 2018-08-10 | 2023-06-27 | Rankin Labs, Llc | System and method for detecting transmission of a covert payload of data |
CN109308270B (zh) * | 2018-09-04 | 2021-07-23 | 飞腾技术(长沙)有限公司 | 一种加速虚实地址转换的方法及装置 |
US11030012B2 (en) | 2018-09-28 | 2021-06-08 | Intel Corporation | Methods and apparatus for allocating a workload to an accelerator using machine learning |
KR102655094B1 (ko) * | 2018-11-16 | 2024-04-08 | 삼성전자주식회사 | 메모리를 공유하는 이종의 프로세서들을 포함하는 스토리지 장치 및 그것의 동작 방법 |
US11200168B2 (en) | 2018-12-10 | 2021-12-14 | International Business Machines Corporation | Caching data from remote memories |
US10909045B2 (en) * | 2018-12-20 | 2021-02-02 | Arm Limited | System, method and apparatus for fine granularity access protection |
US11108671B2 (en) | 2019-01-21 | 2021-08-31 | Rankin Labs, Llc | Systems and methods for processing network traffic using dynamic memory |
US11023397B2 (en) | 2019-03-25 | 2021-06-01 | Alibaba Group Holding Limited | System and method for monitoring per virtual machine I/O |
US11301396B2 (en) * | 2019-03-29 | 2022-04-12 | Intel Corporation | Technologies for accelerated data access and physical data security for edge devices |
US10852949B2 (en) | 2019-04-15 | 2020-12-01 | Micron Technology, Inc. | Predictive data pre-fetching in a data storage device |
WO2020214757A1 (en) * | 2019-04-17 | 2020-10-22 | John Rankin | Virtual memory pool within a network which is accessible from multiple platforms |
US11334387B2 (en) | 2019-05-28 | 2022-05-17 | Micron Technology, Inc. | Throttle memory as a service based on connectivity bandwidth |
US11100007B2 (en) | 2019-05-28 | 2021-08-24 | Micron Technology, Inc. | Memory management unit (MMU) for accessing borrowed memory |
US11256624B2 (en) * | 2019-05-28 | 2022-02-22 | Micron Technology, Inc. | Intelligent content migration with borrowed memory |
WO2020243244A1 (en) * | 2019-05-28 | 2020-12-03 | John Rankin | Supporting a virtual memory area at a remote computing machine |
US11438414B2 (en) | 2019-05-28 | 2022-09-06 | Micron Technology, Inc. | Inter operating system memory services over communication network connections |
US11061819B2 (en) * | 2019-05-28 | 2021-07-13 | Micron Technology, Inc. | Distributed computing based on memory as a service |
US11169930B2 (en) * | 2019-05-28 | 2021-11-09 | Micron Technology, Inc. | Fine grain data migration to or from borrowed memory |
US20190317802A1 (en) * | 2019-06-21 | 2019-10-17 | Intel Corporation | Architecture for offload of linked work assignments |
US11526290B2 (en) * | 2019-06-29 | 2022-12-13 | Intel Corporation | System and method to track physical address accesses by a CPU or device |
US11226902B2 (en) * | 2019-09-30 | 2022-01-18 | International Business Machines Corporation | Translation load instruction with access protection |
CN111290979B (zh) * | 2020-03-23 | 2021-08-17 | 优刻得科技股份有限公司 | 数据传输方法、装置及系统 |
US11922297B2 (en) * | 2020-04-01 | 2024-03-05 | Vmware, Inc. | Edge AI accelerator service |
US11714755B2 (en) | 2020-07-31 | 2023-08-01 | Hewlett Packard Enterprise Development Lp | System and method for scalable hardware-coherent memory nodes |
US11573898B2 (en) | 2020-08-17 | 2023-02-07 | Hewlett Packard Enterprise Development Lp | System and method for facilitating hybrid hardware-managed and software-managed cache coherency for distributed computing |
TWI766387B (zh) * | 2020-10-07 | 2022-06-01 | 智捷科技股份有限公司 | 一種具延遲感知負載平衡的反向代理方法和存儲裝置 |
US20210149812A1 (en) * | 2020-11-18 | 2021-05-20 | Intel Corporation | Network interface controller with eviction cache |
JP7164267B2 (ja) * | 2020-12-07 | 2022-11-01 | インテル・コーポレーション | ヘテロジニアスコンピューティングのためのシステム、方法及び装置 |
CN113014631A (zh) * | 2021-02-19 | 2021-06-22 | 浙江曲速科技有限公司 | 基于Hlink的设备缓存推送系统及方法 |
US20220292027A1 (en) * | 2021-03-12 | 2022-09-15 | Micron Technology, Inc. | Shared virtual address spaces |
US20220292026A1 (en) * | 2021-03-12 | 2022-09-15 | Micron Technology, Inc. | Virtual addresses for a memory system |
CN112948149A (zh) * | 2021-03-29 | 2021-06-11 | 江苏为是科技有限公司 | 一种远端内存共享方法、装置、电子设备及存储介质 |
WO2022261325A2 (en) * | 2021-06-09 | 2022-12-15 | Enfabrica Corporation | Transparent remote memory access over network protocol |
US12050798B2 (en) * | 2021-07-29 | 2024-07-30 | International Business Machines Corporation | Memory migration within a multi-host data processing environment |
US11934279B2 (en) * | 2021-10-27 | 2024-03-19 | Dell Products L.P. | Sequential file restore performance using filesystem redirection |
WO2024073864A1 (en) * | 2022-10-02 | 2024-04-11 | Intel Corporation | Distributed address translation services |
CN118467410A (zh) * | 2023-02-07 | 2024-08-09 | 华为技术有限公司 | 一种共享虚拟内存管理方法及装置 |
Family Cites Families (47)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4004A (en) * | 1845-04-16 | Wooden bbidge | ||
IT1228728B (it) | 1989-03-15 | 1991-07-03 | Bull Hn Information Syst | Sistema multiprocessore con replicazione di dati globali e due livelli di unita' di traduzione indirizzi. |
GB2239724B (en) | 1990-01-05 | 1993-11-24 | Sun Microsystems Inc | Apparatus for maintaining consistency in a multi-processor computer system using virtual caching |
EP0447145B1 (en) | 1990-03-12 | 2000-07-12 | Hewlett-Packard Company | User scheduled direct memory access using virtual addresses |
US5450542A (en) * | 1993-11-30 | 1995-09-12 | Vlsi Technology, Inc. | Bus interface with graphics and system paths for an integrated memory system |
WO1996035169A1 (en) * | 1995-05-05 | 1996-11-07 | Silicon Graphics, Inc. | Page migration in a non-uniform memory access (numa) system |
US6408386B1 (en) | 1995-06-07 | 2002-06-18 | Intel Corporation | Method and apparatus for providing event handling functionality in a computer system |
US5897664A (en) | 1996-07-01 | 1999-04-27 | Sun Microsystems, Inc. | Multiprocessor system having mapping table in each node to map global physical addresses to local physical addresses of page copies |
US5953741A (en) | 1996-11-27 | 1999-09-14 | Vlsi Technology, Inc. | Stack cache for stack-based processor and method thereof |
US5860116A (en) * | 1996-12-11 | 1999-01-12 | Ncr Corporation | Memory page location control for multiple memory-multiple processor system |
US6249853B1 (en) | 1997-06-25 | 2001-06-19 | Micron Electronics, Inc. | GART and PTES defined by configuration registers |
US5914730A (en) * | 1997-09-09 | 1999-06-22 | Compaq Computer Corp. | System and method for invalidating and updating individual GART table entries for accelerated graphics port transaction requests |
US6252612B1 (en) | 1997-12-30 | 2001-06-26 | Micron Electronics, Inc. | Accelerated graphics port for multiple memory controller computer system |
EP1044411B1 (en) * | 1997-12-30 | 2003-05-02 | Micron Technology, Inc. | Computer with accelerated graphics port and multiple memory controllers and method of manufacture of said controllers |
US7007126B2 (en) * | 1998-02-13 | 2006-02-28 | Intel Corporation | Accessing a primary bus messaging unit from a secondary bus through a PCI bridge |
US6317706B1 (en) | 1998-03-31 | 2001-11-13 | Sony Corporation | Simulation development tool for an embedded system |
US6362826B1 (en) * | 1999-01-15 | 2002-03-26 | Intel Corporation | Method and apparatus for implementing dynamic display memory |
US7065633B1 (en) | 1999-01-28 | 2006-06-20 | Ati International Srl | System for delivering exception raised in first architecture to operating system coded in second architecture in dual architecture CPU |
US6412057B1 (en) | 1999-02-08 | 2002-06-25 | Kabushiki Kaisha Toshiba | Microprocessor with virtual-to-physical address translation using flags |
US6766424B1 (en) * | 1999-02-09 | 2004-07-20 | Hewlett-Packard Development Company, L.P. | Computer architecture with dynamic sub-page placement |
US6282601B1 (en) | 1999-03-31 | 2001-08-28 | International Business Machines Corporation | Multiprocessor data processing system and method of interrupt handling that facilitate identification of a processor requesting a system management interrupt |
US6651163B1 (en) | 2000-03-08 | 2003-11-18 | Advanced Micro Devices, Inc. | Exception handling with reduced overhead in a multithreaded multiprocessing system |
US6604187B1 (en) | 2000-06-19 | 2003-08-05 | Advanced Micro Devices, Inc. | Providing global translations with address space numbers |
US6925547B2 (en) | 2000-12-14 | 2005-08-02 | Silicon Graphics, Inc. | Remote address translation in a multiprocessor system |
US6658538B2 (en) * | 2001-06-21 | 2003-12-02 | International Business Machines Corporation | Non-uniform memory access (NUMA) data processing system having a page table including node-specific data storage and coherency control |
US6907519B2 (en) | 2001-11-29 | 2005-06-14 | Hewlett-Packard Development Company, L.P. | Systems and methods for integrating emulated and native code |
JP4128467B2 (ja) * | 2002-02-25 | 2008-07-30 | 株式会社リコー | 画像形成装置及びメモリマップ方法 |
JP4263919B2 (ja) * | 2002-02-25 | 2009-05-13 | 株式会社リコー | 画像形成装置及びメモリ管理方法 |
US6891543B2 (en) * | 2002-05-08 | 2005-05-10 | Intel Corporation | Method and system for optimally sharing memory between a host processor and graphics processor |
US6922766B2 (en) * | 2002-09-04 | 2005-07-26 | Cray Inc. | Remote translation mechanism for a multi-node system |
US7047320B2 (en) * | 2003-01-09 | 2006-05-16 | International Business Machines Corporation | Data processing system providing hardware acceleration of input/output (I/O) communication |
US8719819B2 (en) | 2005-06-30 | 2014-05-06 | Intel Corporation | Mechanism for instruction set based thread execution on a plurality of instruction sequencers |
US8607235B2 (en) | 2004-12-30 | 2013-12-10 | Intel Corporation | Mechanism to schedule threads on OS-sequestered sequencers without operating system intervention |
US7516449B2 (en) | 2005-01-04 | 2009-04-07 | International Business Machines Corporation | Run-time type conversion |
US7743233B2 (en) | 2005-04-05 | 2010-06-22 | Intel Corporation | Sequencer address management |
US7831780B2 (en) * | 2005-06-24 | 2010-11-09 | Nvidia Corporation | Operating system supplemental disk caching system and method |
US20070005927A1 (en) | 2005-06-30 | 2007-01-04 | Khosravi Hormuzd M | Systems and methods for remote triggering of page faults |
US7793067B2 (en) * | 2005-08-12 | 2010-09-07 | Globalfoundries Inc. | Translation data prefetch in an IOMMU |
US8914618B2 (en) * | 2005-12-29 | 2014-12-16 | Intel Corporation | Instruction set architecture-based inter-sequencer communications with a heterogeneous resource |
US7814279B2 (en) * | 2006-03-23 | 2010-10-12 | International Business Machines Corporation | Low-cost cache coherency for accelerators |
JP2007304747A (ja) * | 2006-05-10 | 2007-11-22 | Nec Corp | 計算機システム及びメモリアクセス方法 |
US7487341B2 (en) | 2006-06-29 | 2009-02-03 | Intel Corporation | Handling address translations and exceptions of a heterogeneous resource of a processor using another processor resource |
US7490191B2 (en) | 2006-09-22 | 2009-02-10 | Intel Corporation | Sharing information between guests in a virtual machine environment |
US7506084B2 (en) * | 2006-10-17 | 2009-03-17 | International Business Machines Corporation | Method for communicating with an I/O adapter using cached address translations |
JP4304676B2 (ja) * | 2006-10-31 | 2009-07-29 | 日本電気株式会社 | データ転送装置、データ転送方法、及びコンピュータ装置 |
US8205064B2 (en) * | 2007-05-11 | 2012-06-19 | Advanced Micro Devices, Inc. | Latency hiding for a memory management unit page table lookup |
US8521919B2 (en) * | 2009-06-30 | 2013-08-27 | International Business Machines Corporation | Direct memory access in a computing environment |
-
2009
- 2009-09-18 US US12/562,477 patent/US8719547B2/en not_active Expired - Fee Related
-
2010
- 2010-07-27 TW TW99124707A patent/TWI470435B/zh not_active IP Right Cessation
- 2010-08-27 DE DE102010035603A patent/DE102010035603A1/de not_active Ceased
- 2010-09-14 JP JP2010205550A patent/JP2011065650A/ja active Pending
- 2010-09-16 BR BRPI1003466-8A patent/BRPI1003466A2/pt not_active IP Right Cessation
- 2010-09-16 CN CN201410350006.1A patent/CN104123242B/zh not_active Expired - Fee Related
- 2010-09-16 CN CN201010293493.4A patent/CN102023932B/zh not_active Expired - Fee Related
-
2013
- 2013-09-20 JP JP2013195581A patent/JP2013254524A/ja active Pending
-
2014
- 2014-03-21 US US14/221,741 patent/US9003164B2/en not_active Expired - Fee Related
-
2015
- 2015-03-04 JP JP2015042361A patent/JP5911985B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
CN104123242A (zh) | 2014-10-29 |
JP2011065650A (ja) | 2011-03-31 |
US9003164B2 (en) | 2015-04-07 |
US8719547B2 (en) | 2014-05-06 |
CN102023932B (zh) | 2014-08-27 |
US20140208042A1 (en) | 2014-07-24 |
DE102010035603A1 (de) | 2011-04-07 |
TWI470435B (zh) | 2015-01-21 |
CN102023932A (zh) | 2011-04-20 |
CN104123242B (zh) | 2017-08-08 |
JP2015135696A (ja) | 2015-07-27 |
TW201120643A (en) | 2011-06-16 |
US20110072234A1 (en) | 2011-03-24 |
JP2013254524A (ja) | 2013-12-19 |
BRPI1003466A2 (pt) | 2015-08-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5911985B2 (ja) | ローカル物理メモリとリモート物理メモリとの間で共有されるバーチャルメモリのためのハードウェアサポートの提供 | |
US11030126B2 (en) | Techniques for managing access to hardware accelerator memory | |
US9384132B2 (en) | Emulated message signaled interrupts in a virtualization environment | |
JP5749304B2 (ja) | 割り込み通信装置、方法、およびシステム | |
CA2800632C (en) | Enable/disable adapters of a computing environment | |
US8621112B2 (en) | Discovery by operating system of information relating to adapter functions accessible to the operating system | |
US20110320664A1 (en) | Controlling a rate at which adapter interruption requests are processed | |
KR20130032358A (ko) | 메시지 시그널 인터럽션을 i/o 어댑터 이벤트 통지로 변환 | |
BR112012033818B1 (pt) | método para execução dentro de um circuito de processamento e sistema de computador para executar uma instrução | |
US10564972B1 (en) | Apparatus and method for efficiently reclaiming demoted cache lines | |
CN116762059A (zh) | 监控独占指令 | |
KR102544401B1 (ko) | 어드레스 트랜슬레이션 캐시 및 이를 포함하는 시스템 | |
US11782832B2 (en) | Low latency host processor to coherent device interaction | |
Bhattacharjee et al. | Heterogeneity and Virtualization | |
Nider et al. | Systems Software for Fast Inter-Machine Page Faults |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150928 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20160219 |
|
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: 20160301 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160330 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5911985 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |