IN2014CN00386A - - Google Patents
Info
- Publication number
- IN2014CN00386A IN2014CN00386A IN386CHN2014A IN2014CN00386A IN 2014CN00386 A IN2014CN00386 A IN 2014CN00386A IN 386CHN2014 A IN386CHN2014 A IN 386CHN2014A IN 2014CN00386 A IN2014CN00386 A IN 2014CN00386A
- Authority
- IN
- India
- Prior art keywords
- state
- entries
- pasid
- tlb
- management unit
- Prior art date
Links
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
-
- 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
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/80—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
-
- 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/1081—Address translation for peripheral access to main memory, e.g. direct memory access [DMA]
-
- 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/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
-
- 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/10—Providing a specific technical effect
- G06F2212/1048—Scalability
-
- 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/30—Providing cache or TLB in specific location of a processing system
- G06F2212/303—In peripheral interface, e.g. I/O adapter or channel
-
- 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/68—Details of translation look-aside buffer [TLB]
- G06F2212/682—Multiprocessor TLB consistency
-
- 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/68—Details of translation look-aside buffer [TLB]
- G06F2212/683—Invalidation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
Methods and apparatus are disclosed for efficient TLB (translation look aside buffer) shoot downs for heterogeneous devices sharing virtual memory in a multi core system. Embodiments of an apparatus for efficient TLB shoot downs may include a TLB to store virtual address translation entries and a memory management unit coupled with the TLB to maintain PASID (process address space identifier) state entries corresponding to the virtual address translation entries. The PASID state entries may include an active reference state and a lazy invalidation state. The memory management unit may perform atomic modification of PASID state entries responsive to receiving PASID state update requests from devices in the multi core system and read the lazy invalidation state of the PASID state entries. The memory management unit may send PASID state update responses to the devices to synchronize TLB entries prior to activation responsive to the respective lazy invalidation state.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/191,327 US9916257B2 (en) | 2011-07-26 | 2011-07-26 | Method and apparatus for TLB shoot-down in a heterogeneous computing system supporting shared virtual memory |
PCT/US2012/047991 WO2013016345A2 (en) | 2011-07-26 | 2012-07-24 | Method and apparatus for tlb shoot-down in a heterogeneous computing system supporting shared virtual memory |
Publications (1)
Publication Number | Publication Date |
---|---|
IN2014CN00386A true IN2014CN00386A (en) | 2015-04-03 |
Family
ID=47425977
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
IN386CHN2014 IN2014CN00386A (en) | 2011-07-26 | 2012-07-24 |
Country Status (9)
Country | Link |
---|---|
US (1) | US9916257B2 (en) |
JP (2) | JP6032855B2 (en) |
KR (1) | KR101604929B1 (en) |
CN (2) | CN106776379B (en) |
DE (1) | DE202012007252U1 (en) |
GB (1) | GB2506788B (en) |
IN (1) | IN2014CN00386A (en) |
TW (1) | TWI489278B (en) |
WO (1) | WO2013016345A2 (en) |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014016650A1 (en) * | 2012-07-27 | 2014-01-30 | Freescale Semiconductor, Inc. | Circuitry for a computing system and computing system |
RU2633126C2 (en) * | 2013-02-28 | 2017-10-11 | Интел Корпорейшн | Strengthening mechanism of transfer and/or configuration of one protocol of inter-connections for another protocol of inter-connections |
US9223690B2 (en) * | 2013-10-04 | 2015-12-29 | Sybase, Inc. | Freeing memory safely with low performance overhead in a concurrent environment |
US9411745B2 (en) | 2013-10-04 | 2016-08-09 | Qualcomm Incorporated | Multi-core heterogeneous system translation lookaside buffer coherency |
US9384133B2 (en) * | 2014-05-30 | 2016-07-05 | International Business Machines Corporation | Synchronizing updates of page table status indicators and performing bulk operations |
US9785554B2 (en) | 2014-05-30 | 2017-10-10 | International Business Machines Corporation | Synchronizing updates of page table status indicators in a multiprocessing environment |
US20160098203A1 (en) * | 2014-12-18 | 2016-04-07 | Mediatek Inc. | Heterogeneous Swap Space With Dynamic Thresholds |
CN105846859B (en) * | 2015-01-12 | 2019-05-24 | 芋头科技(杭州)有限公司 | A kind of embedded OS realizes the system and method for Bluetooth slave devices function |
EP3054384B1 (en) | 2015-02-04 | 2018-06-27 | Huawei Technologies Co., Ltd. | System and method for memory synchronization of a multi-core system |
US10853277B2 (en) * | 2015-06-24 | 2020-12-01 | Intel Corporation | Systems and methods for isolating input/output computing resources |
US10310974B2 (en) * | 2015-09-25 | 2019-06-04 | Intel Corporation | Systems and methods for input/output computing resource control |
US10942683B2 (en) | 2015-10-28 | 2021-03-09 | International Business Machines Corporation | Reducing page invalidation broadcasts |
US9898226B2 (en) * | 2015-10-28 | 2018-02-20 | International Business Machines Corporation | Reducing page invalidation broadcasts in virtual storage management |
US10386904B2 (en) | 2016-03-31 | 2019-08-20 | Qualcomm Incorporated | Hardware managed power collapse and clock wake-up for memory management units and distributed virtual memory networks |
US10120814B2 (en) * | 2016-04-01 | 2018-11-06 | Intel Corporation | Apparatus and method for lazy translation lookaside buffer (TLB) coherence |
US10067870B2 (en) | 2016-04-01 | 2018-09-04 | Intel Corporation | Apparatus and method for low-overhead synchronous page table updates |
US10540292B2 (en) | 2016-06-08 | 2020-01-21 | Google Llc | TLB shootdowns for low overhead |
EP3255550B1 (en) * | 2016-06-08 | 2019-04-03 | Google LLC | Tlb shootdowns for low overhead |
US10282308B2 (en) * | 2016-06-23 | 2019-05-07 | Advanced Micro Devices, Inc. | Method and apparatus for reducing TLB shootdown overheads in accelerator-based systems |
US20180276175A1 (en) * | 2017-03-22 | 2018-09-27 | National Instruments Corporation | Direct Network Access by a Memory Mapped Peripheral Device for Scheduled Data Transfer on the Network |
CN108932213A (en) * | 2017-10-10 | 2018-12-04 | 北京猎户星空科技有限公司 | The means of communication, device, electronic equipment and storage medium between multiple operating system |
US10725932B2 (en) | 2017-11-29 | 2020-07-28 | Qualcomm Incorporated | Optimizing headless virtual machine memory management with global translation lookaside buffer shootdown |
US10990436B2 (en) * | 2018-01-24 | 2021-04-27 | Dell Products L.P. | System and method to handle I/O page faults in an I/O memory management unit |
US11106613B2 (en) | 2018-03-29 | 2021-08-31 | Intel Corporation | Highly scalable accelerator |
US10846235B2 (en) | 2018-04-28 | 2020-11-24 | International Business Machines Corporation | Integrated circuit and data processing system supporting attachment of a real address-agnostic accelerator |
DE102018004086A1 (en) | 2018-05-18 | 2019-11-21 | Singulus Technologies Ag | Continuous flow system and method for coating substrates |
KR102655094B1 (en) * | 2018-11-16 | 2024-04-08 | 삼성전자주식회사 | Storage device including heterogeneous processors which shares memory and method of operating the same |
US11036649B2 (en) | 2019-04-04 | 2021-06-15 | Cisco Technology, Inc. | Network interface card resource partitioning |
CN110968530B (en) * | 2019-11-19 | 2021-12-03 | 华中科技大学 | Key value storage system based on nonvolatile memory and memory access method |
US20210004338A1 (en) * | 2020-09-21 | 2021-01-07 | Pratik Marolia | Pasid based routing extension for scalable iov systems |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02183849A (en) * | 1989-01-11 | 1990-07-18 | Fujitsu Ltd | Invalidation processing system for address correspondence table |
JPH06139149A (en) * | 1992-10-29 | 1994-05-20 | Mitsubishi Electric Corp | Multiple virtual space control device |
US6175876B1 (en) | 1998-07-09 | 2001-01-16 | International Business Machines Corporation | Mechanism for routing asynchronous state changes in a 3-tier application |
US6779049B2 (en) * | 2000-12-14 | 2004-08-17 | International Business Machines Corporation | Symmetric multi-processing system with attached processing units being able to access a shared memory without being structurally configured with an address translation mechanism |
US7111145B1 (en) | 2003-03-25 | 2006-09-19 | Vmware, Inc. | TLB miss fault handler and method for accessing multiple page tables |
US7073043B2 (en) * | 2003-04-28 | 2006-07-04 | International Business Machines Corporation | Multiprocessor system supporting multiple outstanding TLBI operations per partition |
US7552254B1 (en) * | 2003-07-30 | 2009-06-23 | Intel Corporation | Associating address space identifiers with active contexts |
US7093100B2 (en) * | 2003-11-14 | 2006-08-15 | International Business Machines Corporation | Translation look aside buffer (TLB) with increased translational capacity for multi-threaded computer processes |
US7069389B2 (en) | 2003-11-26 | 2006-06-27 | Microsoft Corporation | Lazy flushing of translation lookaside buffers |
US7562179B2 (en) * | 2004-07-30 | 2009-07-14 | Intel Corporation | Maintaining processor resources during architectural events |
US7376807B2 (en) | 2006-02-23 | 2008-05-20 | Freescale Semiconductor, Inc. | Data processing system having address translation bypass and method therefor |
US7555628B2 (en) * | 2006-08-15 | 2009-06-30 | Intel Corporation | Synchronizing a translation lookaside buffer to an extended paging table |
US7917725B2 (en) | 2007-09-11 | 2011-03-29 | QNX Software Systems GmbH & Co., KG | Processing system implementing variable page size memory organization using a multiple page per entry translation lookaside buffer |
US8386745B2 (en) * | 2009-07-24 | 2013-02-26 | Advanced Micro Devices, Inc. | I/O memory management unit including multilevel address translation for I/O and computation offload |
US9535849B2 (en) | 2009-07-24 | 2017-01-03 | Advanced Micro Devices, Inc. | IOMMU using two-level address translation for I/O and computation offload devices on a peripheral interconnect |
US8364902B2 (en) | 2009-08-07 | 2013-01-29 | Via Technologies, Inc. | Microprocessor with repeat prefetch indirect instruction |
US8719547B2 (en) | 2009-09-18 | 2014-05-06 | Intel Corporation | Providing hardware support for shared virtual memory between local and remote physical memory |
US20130179971A1 (en) | 2010-09-30 | 2013-07-11 | Hewlett-Packard Development Company, L.P. | Virtual Machines |
JP5956754B2 (en) | 2012-01-06 | 2016-07-27 | 株式会社荏原製作所 | Vacuum exhaust system |
-
2011
- 2011-07-26 US US13/191,327 patent/US9916257B2/en active Active
-
2012
- 2012-07-24 CN CN201611013967.9A patent/CN106776379B/en not_active Expired - Fee Related
- 2012-07-24 CN CN201280031876.1A patent/CN103827839B/en not_active Expired - Fee Related
- 2012-07-24 GB GB1400358.6A patent/GB2506788B/en not_active Expired - Fee Related
- 2012-07-24 KR KR1020147002511A patent/KR101604929B1/en active IP Right Grant
- 2012-07-24 IN IN386CHN2014 patent/IN2014CN00386A/en unknown
- 2012-07-24 WO PCT/US2012/047991 patent/WO2013016345A2/en active Application Filing
- 2012-07-24 JP JP2014522944A patent/JP6032855B2/en not_active Expired - Fee Related
- 2012-07-25 TW TW101126812A patent/TWI489278B/en not_active IP Right Cessation
- 2012-07-26 DE DE202012007252U patent/DE202012007252U1/en not_active Expired - Lifetime
-
2016
- 2016-10-24 JP JP2016207724A patent/JP6378733B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
TW201333700A (en) | 2013-08-16 |
KR101604929B1 (en) | 2016-03-18 |
JP6378733B2 (en) | 2018-08-22 |
CN106776379A (en) | 2017-05-31 |
GB201400358D0 (en) | 2014-02-26 |
CN106776379B (en) | 2021-09-07 |
TWI489278B (en) | 2015-06-21 |
US9916257B2 (en) | 2018-03-13 |
GB2506788B (en) | 2020-05-27 |
CN103827839A (en) | 2014-05-28 |
JP6032855B2 (en) | 2016-11-30 |
JP2017037672A (en) | 2017-02-16 |
JP2014526102A (en) | 2014-10-02 |
WO2013016345A2 (en) | 2013-01-31 |
US20130031333A1 (en) | 2013-01-31 |
GB2506788A (en) | 2014-04-09 |
KR20140028137A (en) | 2014-03-07 |
CN103827839B (en) | 2016-12-21 |
DE202012007252U1 (en) | 2012-11-29 |
WO2013016345A3 (en) | 2013-04-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
IN2014CN00386A (en) | ||
WO2013167886A3 (en) | Data processing apparatus having cache and translation lookaside buffer | |
WO2010077885A3 (en) | Extending cache coherency protocols to support locally buffered data | |
WO2012040723A3 (en) | Apparatus, method, and system for implementing micro page tables | |
GB2518785A (en) | Concurrent control for a page miss handler | |
JP2017037672A5 (en) | ||
IN2015DN01261A (en) | ||
WO2012094481A3 (en) | Memory address translation | |
GB2485328A (en) | Cache partitioning in virtualized environments | |
WO2012068486A3 (en) | Load/store circuitry for a processing cluster | |
GB2484881A (en) | Transactional memory system with efficient cache support | |
WO2014031495A3 (en) | Translation look-aside buffer with prefetching | |
GB2528796A8 (en) | Instructions and logic to provide advanced paging capabilities for secure enclave page caches | |
GB201300525D0 (en) | Memory address translation-based data encryption/compression | |
EP2863607A3 (en) | System and method for improving internet communication by using intermediate nodes | |
WO2013067066A3 (en) | Intelligent caching for security trimming | |
JP2013257911A5 (en) | Processor | |
WO2012170954A3 (en) | Line based image processing and flexible memory system | |
MX2015006179A (en) | Memory segment remapping to address fragmentation. | |
GB2512784A (en) | Runtime optimization using meta data for dynamic programming languages | |
IN2012DN00934A (en) | ||
GB201119730D0 (en) | System, method and apparatus for cache flush of a range of a pages and TLB invalidation of a range of entries | |
GB2565495A (en) | Page fault resolution | |
EP2780831A4 (en) | Query summary generation using row-column data storage | |
GB201303300D0 (en) | Data Processing |