KR100318789B1 - 멀티프로세서 데이타 처리 시스템에서의 캐쉬를 관리하는시스템과 방법 - Google Patents
멀티프로세서 데이타 처리 시스템에서의 캐쉬를 관리하는시스템과 방법 Download PDFInfo
- Publication number
- KR100318789B1 KR100318789B1 KR1020000010110A KR20000010110A KR100318789B1 KR 100318789 B1 KR100318789 B1 KR 100318789B1 KR 1020000010110 A KR1020000010110 A KR 1020000010110A KR 20000010110 A KR20000010110 A KR 20000010110A KR 100318789 B1 KR100318789 B1 KR 100318789B1
- Authority
- KR
- South Korea
- Prior art keywords
- cache
- data
- lower level
- memory
- request
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0811—Multiuser, multiprocessor or multiprocessing cache systems with multilevel cache hierarchies
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/1652—Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
- G06F13/1663—Access to shared memory
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/167—Interprocessor communication using a common memory, e.g. mailbox
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)
- Software Systems (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
Description
Claims (24)
- 메모리 접근들이 제 1 및 제 2 프로세서들에 의하여 생성되는 멀티프로세서 환경에서의 사용을 위한 메모리 캐쉬 시스템에 있어서,공유된 하위 레벨 기억 시스템,상기 하위 레벨 기억 시스템 및 상기 제 1 프로세서와 연결되어 구성되고, 상기 하위 레벨 기억 시스템내에 저장될 데이타 또는 상기 하위 레벨 기억 시스템으로부터 로드될 데이타를 식별하는 상기 제 1 프로세서 메모리 접근 명령들을 받으며, 상기 메모리 접근 명령들에 응답하여 상기 하위 레벨 기억 시스템으로부터 데이타를 로드 및 상기 하위 레벨 기억시스템으로 데이타를 저장하는 제 1 캐쉬,상기 하위 레벨 기억 시스템 및 상기 제 2 프로세서와 연결되어 구성되고, 상기 하위 레벨 기억 시스템내에 저장될 데이타 또는 상기 하위 레벨 기억 시스템으로부터 로드될 데이타를 식별하는 상기 제 2 프로세서 메모리 접근 명령들을 받으며, 상기 메모리 접근 명령들에 응답하여 상기 하위 레벨 기억 시스템으로부터 데이타를 로드 및 상기 하위 레벨 기억시스템으로 데이타를 저장하는 제 2 캐쉬, 및상기 하위 레벨 기억 시스템으로부터 상기 캐쉬들로의 데이타의 로드 또는 상기 캐쉬들로부터 상기 하위 레벨 기억 시스템으로의 데이타의 저장을 관리하는 캐쉬 기억 제어 회로를 포함하며,상기 제 2 프로세서에 의해 변경되었고 상기 제 2 캐쉬에 변경된 형태로 저장된 데이타를 위한 요청을 상기 제 1 캐쉬로부터 받으면, 상기 기억 제어 회로는, 상기 데이타를 상기 공유된 하위 레벨 기억 시스템으로 반환함이 없이, 상기 제 2 캐쉬로 하여금 상기 데이타를 상기 제 1 캐쉬로 전송하게 함으로써,제 1 및 제 2 프로세서들에 의한 동일한 데이타의 반복적인 쓰기들의 효과를 개선시키는 메모리 캐쉬 시스템.
- 제 1 항에 있어서, 상기 공유된 하위 레벨 기억 시스템은 하위 레벨 캐쉬 및 주 기억장치를 포함하고, 상기 하위 레벨 캐쉬는 주 기억장치의 데이타의 복사물들을 유지하며, 또한 제 1 또는 제 2 캐쉬들이 데이타의 복사물들을 저장하고 있는지 그리고 상기 복사물들이 변경되었는지의 표시를 유지하는 메모리 캐쉬 시스템.
- 제 2 항에 있어서,상기 기억 제어 회로는, 상기 제 1 또는 제 2 캐쉬로부터 특정한 데이타를 위한 요청을 받으면, 상기 요청을 상기 하위 레벨 캐쉬로 전달하고,상기 하위 레벨 캐쉬는, 상기 제 1 또는 제 2 캐쉬들중 하나가 상기 특정한 데이타의 변경된 복사물을 저장하고 있는지를 결정함으로써, 상기 특정한 데이타를 위한 상기 제 1 또는 제 2 캐쉬로부터의 요청에 응답하며, 만약 그렇다면, 상기 하위 레벨 캐쉬는 상기 기억 제어 회로 포인터를 상기 특정한 데이타의 변경된 복사물을 갖고 있는 상기 제 1 또는 상기 제 2 캐쉬로 반환하며,상기 기억 제어 유닛은, 만약 상기 제 2 캐쉬로부터의 특정한 데이타를 위한요청에 응답하여 상기 제 1 캐쉬로 포인터를 받는다면, 상기 제 1 캐쉬로 하여금 상기 특정한 데이타를, 상기 데이타를 상기 하위 레벨 캐쉬 또는 상기 주 기억자치로의 쓰지 않고, 상기 제 2 캐쉬로 전송하게 하는 메모리 캐쉬 시스템.
- 제 3 항에 있어서, 상기 하위 레벨 캐쉬는 데이타를 최소-최근-사용으로부터 최대-최근-사용의 순으로 큐내에 유지시키고, 포인터를 특정한 데이타의 변경된 복사물을 갖는 캐쉬로 반환할때, 상기 큐는 상기 하위 레벨 캐쉬내에서 상기 특정한 데이타의 복사물을 최대-최근-사용으로서 식별하기 위해서 업데이트되는 메모리 캐쉬 시스템.
- 제 2 항에 있어서, 상기 제 1 및 제 2 캐쉬들은 상기 제 1 또는 제 2 캐쉬에 저장된 데이타가 공유된 것인지 또는 변경된 것인지의 표시를 유지하고, 공유된 데이타를 다시 쓰기 전에, 상기 제 1 및 제 2 캐쉬는 소유권을 위한 요청을 상기 하위 레벨 캐쉬로 이송하는 메모리 캐쉬 시스템.
- 제 5 항에 있어서, 상기 하위 레벨 캐쉬는 상기 하위 레벨 캐쉬에 저장된 데이타가 공유된, 배타적인 또는 변경된 것인지의 표시를 유지하고, 만약 상기 특정한 데이타가 공유되었다면, 상기 하위 레벨 캐쉬는, 상기 제 1 또는 제 2 캐쉬로부터의 상기 특정한 데이타의 소유권을 위한 요청들을 부여하기 전에, 상기 주 기억장치에 연결된 시스템 버스로부터 특정한 데이타의 소유권을 요청하는 메모리 캐쉬시스템.
- 제 6 항에 있어서, 상기 하위 레벨 캐쉬는, 상기 제 1 또는 제 2 캐쉬로부터의 변경을 위해 데이타를 읽는 요청에 응답하기 전에, 상기 주 기억장치에 연결된 시스템 버스로부터 특정한 데이타의 소유권을 요청하는 메모리 캐쉬 시스템.
- 제 6 항에 있어서, 상기 제 1 또는 제 2 캐쉬로부터의 특정한 데이타의 소유권을 위한 요청을 부여하는 부분으로서, 그리고 변경을 위해 특정한 데이타를 읽는 요청에 응답하여 제 1 또는 제 2 캐쉬로 데이타를 전달하는 부분으로서, 상기 하위 레벨 캐쉬는 상기 특정한 데이타의 변경되지 않은 복사물들을 갖고 있는 다른 모든 캐쉬들로 하여금 상기 특정한 데이타를 플러쉬하게 하는 메모리 캐쉬 시스템.
- 제 6 항에 있어서, 상기 하위 레벨 캐쉬는, 특정한 데이타의 소유권을 위한 요청이 상기 제 1 또는 제 2 캐쉬로 부여될 때 또는 변경을 위해 특정한 데이타를 읽는 요청에 응답하여 상기 특정한 데이타가 상기 제 1 또는 제 2 캐쉬로 이송될 때마다, 상기 특정한 데이타를 '변경' 으로 표시하는 메모리 캐쉬 시스템.
- 제 2 항에 있어서, 상기 하위 레벨 캐쉬는, 에이징 또는 다른 프로세서 컴플렉스로의 특정한 데이타의 소유권의 상실에 기인하여 상기 특정한 데이타를 제거하는 부분으로서, 상기 특정한 데이타의 변경되지 않은 복사물을 갖는 임의의 캐쉬로하여금 상기 특정한 데이타의 변경되지 않은 복사물을 플러쉬하게하는 메모리 캐쉬 시스템.
- 제 2 항에 있어서, 상기 하위 레벨 캐쉬는, 에이징 또는 다른 프로세서 컴플렉스로의 특정한 데이타의 소유권의 상실에 기인하여 상기 특정한 데이타를 제거하는 부분으로서, 상기 특정한 데이타의 변경된 복사물을 갖는 상기 제 1 및 제 2 캐쉬들중 임의의 것으로 하여금 상기 특정한 데이타의 변경된 복사물을 주 기억장치에 쓰고 상기 특정한 데이타를 플러쉬하게 하는 메모리 캐쉬 시스템.
- 제 2 항에 있어서, 상기 하위 레벨 캐쉬는, 다른 프로세서 컴플렉스로부터의 특정한 데이타를 읽는 요청에 응답하여, 상기 특정한 데이타의 변경된 복사물을 갖는 임의의 캐쉬로 하여금 상기 특정한 데이타의 변경된 복사물을 주 기억장치 및 상기 하위 레벨 캐쉬에 쓰게하는 메모리 캐쉬 시스템.
- 공유된 하위 레벨 기억 시스템 및 상기 제 1 및 제 2 프로세서들에 각각 연결되고, 상기 하위 레벨 기억 시스템내에 저장될 데이타 또는 상기 하위 레벨 기억 시스템으로부터 로드될 데이타를 식별하는 상기 관련 프로세서 메모리 접근 명령들을 받는, 제 1 및 제 2 캐쉬들을 포함하는 캐쉬 시스템을 관리하는 방법으로서,상기 메모리 접근 명령들에 응답하여, 상기 하위 레벨 기억 시스템으로부터 데이타를 로드 및 상기 하위 레벨 기억시스템으로 데이타를 저장하는 단계, 및만약 상기 제 2 프로세서에 의해 변경되고 상기 제 2 캐쉬에 변경된 형태로 저장된 데이타를 위한 요청을 상기 제 1 캐쉬로부터 받으면, 상기 데이타를 상기 공유된 하위 레벨 기억 시스템에 반환함이 없이, 상기 제 2 캐쉬로하여금 상기 데이타를 상기 제 1 캐쉬로 전송하게 하는 단계를 구비함으로써,제 1 및 제 2 프로세서들에 의한 동일한 데이타의 반복적인 쓰기들의 효과를 개선시키는 단계를 포함하는 캐쉬 시스템을 관리하는 방법.
- 제 13 항에 있어서, 상기 공유된 하위 레벨 기억 시스템은 하위 레벨 캐쉬 및 주 기억장치를 포함하며, 상기 하위 레벨 캐쉬에 주 기억장치의 데이타의 복사물들을 유지하고, 제 1 또는 제 2 캐쉬들이 데이타의 복사물들을 저장하고 있는지 그리고 상기 복사물들이 변경되었는지의 표시를 유지하는 단계를 더 포함하는 캐쉬 시스템을 관리하는 방법.
- 제 14 항에 있어서, 만약 상기 제 1 또는 제 2 캐쉬로부터 특정한 데이타를 위한 요청을 받는다면, 상기 제 1 또는 제 2 캐쉬들중 하나가 상기 특정한 데이타의 변경된 복사물을 저장하고 있는지를 결정함으로써, 상기 하위 레벨 캐쉬내에서의 요청에 응답하는 단계를 포함하는 캐쉬 시스템을 관리하는 방법.
- 제 15 항에 있어서, 상기 하위 레벨 캐쉬는 데이타를 최소-최근-사용으로부터 최대-최근-사용의 순으로 큐내에 유지시키고, 만약 상기 제 1 또는 제 2 캐쉬들이 상기 특정한 데이타의 변경된 복사물을 저장하고 있다고 결정하면, 상기 큐는 상기 하위 레벨 캐쉬내에서 상기 특정한 데이타의 복사물을 최대-최근-사용으로서 식별하기 위해서 업데이트되는 단계를 포함하는 캐쉬 시스템을 관리하는 방법.
- 제 14 항에 있어서, 상기 제 1 및 제 2 캐쉬들은 상기 제 1 또는 제 2 캐쉬에 저장된 데이타가 공유된 것인지 또는 변경된 것인지의 표시를 유지하고, 공유된 데이타를 다시 쓰기 전에, 소유권을 위한 요청을 상기 하위 레벨 캐쉬로 이송하는 단계를 더 포함하는 캐쉬 시스템을 관리하는 방법.
- 제 17 항에 있어서, 상기 하위 레벨 캐쉬는 상기 하위 레벨 캐쉬에 저장된 데이타가 공유된, 배타적인 또는 변경된 것인지의 표시를 유지하고, 만약 상기 특정한 데이타가 공유되었다면, 상기 제 1 또는 제 2 캐쉬로부터의 특정한 데이타의 소유권을 위한 요청들을 부여하기 전에, 상기 주 기억장치에 연결된 시스템 버스로부터 특정한 데이타의 소유권을 요청하는 단계를 더 포함하는 캐쉬 시스템을 관리하는 방법.
- 제 18 항에 있어서, 상기 제 1 또는 제 2 캐쉬로부터의 변경을 위해 데이타를 읽는 요청에 응답하기 전에, 상기 주 기억장치에 연결된 시스템 버스로부터 상기 특정한 데이타의 소유권을 요청하는 단계를 더 포함하는 캐쉬 시스템을 관리하는 방법.
- 제 18 항에 있어서, 상기 제 1 또는 제 2 캐쉬로부터의 특정한 데이타의 소유권을 위한 요청을 부여하는 부분으로서, 그리고 변경을 위해 특정한 데이타를 읽는 요청에 응답하여 제 1 또는 제 2 캐쉬로 데이타를 이송하는 부분으로서, 상기 특정한 데이타의 변경되지 않은 복사물들을 갖고 있는 다른 모든 캐쉬들로 하여금 상기 특정한 데이타를 플러쉬하게 하는 단계를 더 포함하는 캐쉬 시스템을 관리하는 방법.
- 제 18 항에 있어서, 상기 특정한 데이타의 소유권을 위한 요청이 상기 제 1 또는 제 2 캐쉬에 부여될 때 또는 변경을 위해 특정한 데이타를 읽는 요청에 응답하여 상기 특정한 데이타가 상기 제 1 또는 제 2 캐쉬로 이송될 때마다, 상기 특정한 데이타를 상기 하위 레벨 캐쉬내에서 '변경' 으로 표시하는 단계를 더 포함하는 캐쉬 시스템을 관리하는 방법.
- 제 14 항에 있어서, 에이징 또는 다른 프로세서 컴플렉스로의 특정한 데이타의 소유권의 상실에 기인하여 상기 하위 레벨 캐쉬로부터 상기 특정한 데이타를 제거하는 부분으로서, 상기 특정한 데이타의 변경되지 않은 복사물을 갖는 임의의 캐쉬로 하여금 상기 특정한 데이타의 변경되지 않은 복사물을 플러쉬하게하는 단계를 더 포함하는 캐쉬 시스템을 관리하는 방법.
- 제 14 항에 있어서, 에이징 또는 다른 프로세서 컴플렉스로의 특정한 데이타의 소유권의 상실에 기인하여 상기 하위 레벨 캐쉬로부터 상기 특정한 데이타를 제거하는 부분으로서, 상기 특정한 데이타의 변경된 복사물을 갖는 임의의 캐쉬로 하여금 상기 특정한 데이타의 변경된 복사물을 주 기억장치에 쓰고 상기 특정한 데이타를 플러쉬하게 하는 단계를 더 포함하는 캐쉬 시스템을 관리하는 방법.
- 제 14 항에 있어서, 다른 프로세서 컴플렉스로부터의 특정한 데이타를 읽는 요청에 응답하여, 상기 특정한 데이타의 변경된 복사물을 갖는 임의의 캐쉬로 하여금 상기 특정한 데이타의 변경된 복사물을 주 기억장치 및 상기 하위 레벨 캐쉬에 쓰게하는 단계를 더 포함하는 캐쉬 시스템을 관리하는 방법.
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US09/259,950 | 1999-03-01 | ||
| US09/259,950 US6314491B1 (en) | 1999-03-01 | 1999-03-01 | Peer-to-peer cache moves in a multiprocessor data processing system |
| US9/259,950 | 1999-03-01 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| KR20000076752A KR20000076752A (ko) | 2000-12-26 |
| KR100318789B1 true KR100318789B1 (ko) | 2001-12-29 |
Family
ID=22987147
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020000010110A Expired - Fee Related KR100318789B1 (ko) | 1999-03-01 | 2000-02-29 | 멀티프로세서 데이타 처리 시스템에서의 캐쉬를 관리하는시스템과 방법 |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US6314491B1 (ko) |
| JP (1) | JP3533355B2 (ko) |
| KR (1) | KR100318789B1 (ko) |
| CN (1) | CN1142503C (ko) |
Families Citing this family (74)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7162699B1 (en) | 1999-04-02 | 2007-01-09 | Massachusetts Institute Of Technology | Mechanisms and artifacts to manage heterogeneous platform interfaces in a collaboration system |
| US6408348B1 (en) * | 1999-08-20 | 2002-06-18 | International Business Machines Corporation | System, method, and program for managing I/O requests to a storage device |
| US6374332B1 (en) * | 1999-09-30 | 2002-04-16 | Unisys Corporation | Cache control system for performing multiple outstanding ownership requests |
| US6629268B1 (en) * | 2000-01-25 | 2003-09-30 | International Business Machines Corporation | Method and apparatus for servicing a processing system through a test port |
| US6751705B1 (en) * | 2000-08-25 | 2004-06-15 | Silicon Graphics, Inc. | Cache line converter |
| US6681293B1 (en) * | 2000-08-25 | 2004-01-20 | Silicon Graphics, Inc. | Method and cache-coherence system allowing purging of mid-level cache entries without purging lower-level cache entries |
| US6857049B1 (en) * | 2000-08-30 | 2005-02-15 | Unisys Corporation | Method for managing flushes with the cache |
| US6631449B1 (en) | 2000-10-05 | 2003-10-07 | Veritas Operating Corporation | Dynamic distributed data system and method |
| US7725748B1 (en) | 2000-12-29 | 2010-05-25 | Intel Corporation | Low power subsystem for portable computers |
| US7188145B2 (en) | 2001-01-12 | 2007-03-06 | Epicrealm Licensing Llc | Method and system for dynamic distributed data caching |
| US7219122B1 (en) | 2001-04-23 | 2007-05-15 | Massachusetts Institute Of Technology | Software service handoff mechanism with a performance reliability improvement mechanism (PRIM) for a collaborative client-server system |
| JP3661614B2 (ja) | 2001-07-12 | 2005-06-15 | 日本電気株式会社 | キャッシュメモリ制御方法及びマルチプロセッサシステム |
| JPWO2003048955A1 (ja) * | 2001-12-03 | 2005-08-11 | 株式会社日立製作所 | マルチプロセッサシステム |
| US7058829B2 (en) * | 2002-08-14 | 2006-06-06 | Intel Corporation | Method and apparatus for a computing system having an active sleep mode CPU that uses the cache of a normal active mode CPU |
| US6965962B2 (en) * | 2002-12-17 | 2005-11-15 | Intel Corporation | Method and system to overlap pointer load cache misses |
| US7292585B1 (en) | 2002-12-20 | 2007-11-06 | Symantec Operating Corporation | System and method for storing and utilizing routing information in a computer network |
| US7467194B1 (en) | 2002-12-20 | 2008-12-16 | Symantec Operating Corporation | Re-mapping a location-independent address in a computer network |
| US7404006B1 (en) | 2002-12-20 | 2008-07-22 | Symantec Operating Corporation | Publishing a network address in a computer network |
| US8275864B1 (en) | 2002-12-20 | 2012-09-25 | Symantec Operating Corporation | Peer-to-peer network with recovery capability |
| US7327741B1 (en) | 2002-12-20 | 2008-02-05 | Symantec Operating Corporation | Detecting and breaking cycles in a computer network |
| US7653059B1 (en) | 2002-12-20 | 2010-01-26 | Symantec Operating Corporation | Communication sessions for a computer network |
| US8370523B1 (en) | 2002-12-20 | 2013-02-05 | Symantec Operating Corporation | Managing routing information for a computer network |
| US7406535B2 (en) * | 2002-12-20 | 2008-07-29 | Symantec Operating Corporation | Role-based message addressing for a computer network |
| US8886705B1 (en) | 2003-06-30 | 2014-11-11 | Symantec Operating Corporation | Goal-oriented storage management for a distributed data storage network |
| JP2005115603A (ja) * | 2003-10-07 | 2005-04-28 | Hitachi Ltd | 記憶デバイス制御装置及びその制御方法 |
| US7680950B1 (en) | 2003-11-07 | 2010-03-16 | Symantec Operating Corporation | Efficient search for storage objects in a network |
| US7555527B1 (en) | 2003-11-07 | 2009-06-30 | Symantec Operating Corporation | Efficiently linking storage object replicas in a computer network |
| US8060619B1 (en) | 2003-11-07 | 2011-11-15 | Symantec Operating Corporation | Direct connections to a plurality of storage object replicas in a computer network |
| US7570600B1 (en) | 2003-12-17 | 2009-08-04 | Symantec Operating Corporation | Overlay network with efficient routing and recovery |
| US9727468B2 (en) | 2004-09-09 | 2017-08-08 | Intel Corporation | Resolving multi-core shared cache access conflicts |
| US7689778B2 (en) * | 2004-11-30 | 2010-03-30 | Intel Corporation | Preventing system snoop and cross-snoop conflicts |
| US7386687B2 (en) * | 2005-01-07 | 2008-06-10 | Sony Computer Entertainment Inc. | Methods and apparatus for managing a shared memory in a multi-processor system |
| US7496712B1 (en) | 2005-06-17 | 2009-02-24 | Sun Microsystems, Inc. | Proximity communication-based off-chip cache memory architectures |
| US7562190B1 (en) * | 2005-06-17 | 2009-07-14 | Sun Microsystems, Inc. | Cache protocol enhancements in a proximity communication-based off-chip cache memory architecture |
| US7444473B1 (en) | 2005-06-17 | 2008-10-28 | Sun Microsystems, Inc. | Speculative memory accesses in a proximity communication-based off-chip cache memory architecture |
| US7941604B2 (en) * | 2006-02-01 | 2011-05-10 | Infineon Technologies Ag | Distributed memory usage for a system having multiple integrated circuits each including processors |
| JP2007265271A (ja) | 2006-03-29 | 2007-10-11 | Nec Corp | ストレージ装置、データ配置方法およびプログラム |
| US10741034B2 (en) | 2006-05-19 | 2020-08-11 | Apdn (B.V.I.) Inc. | Security system and method of marking an inventory item and/or person in the vicinity |
| US20070274230A1 (en) * | 2006-05-23 | 2007-11-29 | Werber Ryan A | System and method for modifying router firmware |
| US20080104333A1 (en) * | 2006-10-31 | 2008-05-01 | Veazey Judson E | Tracking of higher-level cache contents in a lower-level cache |
| JP2008118184A (ja) * | 2006-10-31 | 2008-05-22 | Fujitsu Ltd | 処理装置及び処理モジュール |
| ITMI20070787A1 (it) * | 2007-04-17 | 2008-10-18 | St Microelectronics Srl | Memoria non volatile |
| CN101546282B (zh) * | 2008-03-28 | 2011-05-18 | 国际商业机器公司 | 用于在处理器中执行写拷贝的方法和设备 |
| US20100057984A1 (en) * | 2008-08-26 | 2010-03-04 | Seagate Technology Llc | Memory hierarchy containing only non-volatile cache |
| TW201015321A (en) * | 2008-09-25 | 2010-04-16 | Panasonic Corp | Buffer memory device, memory system and data trnsfer method |
| US9672019B2 (en) | 2008-11-24 | 2017-06-06 | Intel Corporation | Systems, apparatuses, and methods for a hardware and software system to automatically decompose a program to multiple parallel threads |
| US10621092B2 (en) * | 2008-11-24 | 2020-04-14 | Intel Corporation | Merging level cache and data cache units having indicator bits related to speculative execution |
| US8380931B2 (en) * | 2010-03-12 | 2013-02-19 | Microsoft Corporation | Memory cache data center |
| WO2013048468A1 (en) | 2011-09-30 | 2013-04-04 | Intel Corporation | Instruction and logic to perform dynamic binary translation |
| US9411728B2 (en) | 2011-12-23 | 2016-08-09 | Intel Corporation | Methods and apparatus for efficient communication between caches in hierarchical caching design |
| WO2015142990A1 (en) | 2014-03-18 | 2015-09-24 | Apdn (B.V.I.) Inc. | Encryped optical markers for security applications |
| JP6055456B2 (ja) * | 2014-10-31 | 2016-12-27 | インテル・コーポレーション | 階層的キャッシュ設計におけるキャッシュ間の効率的通信のための方法および装置 |
| KR101629411B1 (ko) | 2015-02-03 | 2016-06-10 | 한국전자통신연구원 | 레벨0 캐시 제어 장치 및 방법 |
| KR20170109133A (ko) * | 2016-03-17 | 2017-09-28 | 에스케이하이닉스 주식회사 | 하이브리드 메모리 장치 및 그의 데이터 관리 방법 |
| US10637685B2 (en) | 2017-03-29 | 2020-04-28 | Fungible, Inc. | Non-blocking any-to-any data center network having multiplexed packet spraying within access node groups |
| CN110710139A (zh) | 2017-03-29 | 2020-01-17 | 芬基波尔有限责任公司 | 具有光置换器的无阻塞全网状数据中心网络 |
| CN110731070A (zh) | 2017-03-29 | 2020-01-24 | 芬基波尔有限责任公司 | 通过多个交替数据路径进行分组喷射的无阻塞的任意到任意数据中心网络 |
| CN110741356B (zh) | 2017-04-10 | 2024-03-15 | 微软技术许可有限责任公司 | 多处理器系统中的中继一致存储器管理 |
| WO2019014265A1 (en) | 2017-07-10 | 2019-01-17 | Fungible, Inc. | DATA PROCESSING UNIT FOR CALCULATION NODES AND STORAGE NODES |
| CN110892380B (zh) | 2017-07-10 | 2023-08-11 | 芬基波尔有限责任公司 | 用于流处理的数据处理单元 |
| US12212495B2 (en) | 2017-09-29 | 2025-01-28 | Microsoft Technology Licensing, Llc | Reliable fabric control protocol extensions for data center networks with unsolicited packet spraying over multiple alternate data paths |
| US10965586B2 (en) | 2017-09-29 | 2021-03-30 | Fungible, Inc. | Resilient network communication using selective multipath packet flow spraying |
| CN111201757B (zh) | 2017-09-29 | 2022-04-26 | 芬基波尔有限责任公司 | 在底层网络上动态配置的网络接入节点虚拟结构 |
| US12341687B2 (en) | 2017-09-29 | 2025-06-24 | Microsoft Technology Licensing, Llc | Reliable fabric control protocol extensions for data center networks with failure resilience |
| US12231353B2 (en) | 2017-09-29 | 2025-02-18 | Microsoft Technology Licensing, Llc | Fabric control protocol for data center networks with packet spraying over multiple alternate data paths |
| US12278763B2 (en) | 2017-09-29 | 2025-04-15 | Microsoft Technology Licensing, Llc | Fabric control protocol with congestion control for data center networks |
| US12294470B2 (en) | 2017-09-29 | 2025-05-06 | Microsoft Technology Licensing, Llc | Fabric control protocol for large-scale multi-stage data center networks |
| US10769068B2 (en) * | 2017-11-10 | 2020-09-08 | International Business Machines Corporation | Concurrent modification of shared cache line by multiple processors |
| WO2019104090A1 (en) | 2017-11-21 | 2019-05-31 | Fungible, Inc. | Work unit stack data structures in multiple core processor system for stream data processing |
| US10540288B2 (en) * | 2018-02-02 | 2020-01-21 | Fungible, Inc. | Efficient work unit processing in a multicore system |
| US10929175B2 (en) | 2018-11-21 | 2021-02-23 | Fungible, Inc. | Service chaining hardware accelerators within a data stream processing integrated circuit |
| CN113326335A (zh) * | 2020-06-29 | 2021-08-31 | 阿里巴巴集团控股有限公司 | 数据存储系统、方法、装置、电子设备及计算机存储介质 |
| US20240086076A1 (en) * | 2022-09-12 | 2024-03-14 | Samsung Electronics Co., Ltd. | Systems and methods for using a storage device as persistent memory |
| CN120233942A (zh) * | 2023-12-28 | 2025-07-01 | 华为云计算技术有限公司 | 处理数据的方法、处理系统及计算机可读存储介质 |
Family Cites Families (23)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP0389151A3 (en) | 1989-03-22 | 1992-06-03 | International Business Machines Corporation | System and method for partitioned cache memory management |
| US5307477A (en) | 1989-12-01 | 1994-04-26 | Mips Computer Systems, Inc. | Two-level cache memory system |
| US5649154A (en) | 1992-02-27 | 1997-07-15 | Hewlett-Packard Company | Cache memory system having secondary cache integrated with primary cache for use with VLSI circuits |
| US5394555A (en) | 1992-12-23 | 1995-02-28 | Bull Hn Information Systems Inc. | Multi-node cluster computer system incorporating an external coherency unit at each node to insure integrity of information stored in a shared, distributed memory |
| US5590310A (en) | 1993-01-14 | 1996-12-31 | Integrated Device Technology, Inc. | Method and structure for data integrity in a multiple level cache system |
| EP0608622A1 (en) | 1993-01-29 | 1994-08-03 | International Business Machines Corporation | Multiprocessor system with multilevel caches |
| US5522069A (en) * | 1993-04-30 | 1996-05-28 | Zenith Data Systems Corporation | Symmetric multiprocessing system with unified environment and distributed system functions |
| US5535116A (en) | 1993-05-18 | 1996-07-09 | Stanford University | Flat cache-only multi-processor architectures |
| US5604882A (en) | 1993-08-27 | 1997-02-18 | International Business Machines Corporation | System and method for empty notification from peer cache units to global storage control unit in a multiprocessor data processing system |
| US5510934A (en) | 1993-12-15 | 1996-04-23 | Silicon Graphics, Inc. | Memory system including local and global caches for storing floating point and integer data |
| US5671391A (en) | 1994-01-10 | 1997-09-23 | Ncr Corporation | Coherent copyback protocol for multi-level cache memory systems |
| US5680572A (en) | 1994-02-28 | 1997-10-21 | Intel Corporation | Cache memory system having data and tag arrays and multi-purpose buffer assembly with multiple line buffers |
| US5644752A (en) | 1994-06-29 | 1997-07-01 | Exponential Technology, Inc. | Combined store queue for a master-slave cache system |
| US5666514A (en) | 1994-07-01 | 1997-09-09 | Board Of Trustees Of The Leland Stanford Junior University | Cache memory containing extra status bits to indicate memory regions where logging of data should occur |
| US5617557A (en) | 1994-11-14 | 1997-04-01 | Compaq Computer Corporation | Using an address pin as a snoop invalidate signal during snoop cycles |
| US5584013A (en) | 1994-12-09 | 1996-12-10 | International Business Machines Corporation | Hierarchical cache arrangement wherein the replacement of an LRU entry in a second level cache is prevented when the cache entry is the only inclusive entry in the first level cache |
| US5651137A (en) | 1995-04-12 | 1997-07-22 | Intel Corporation | Scalable cache attributes for an input/output bus |
| US5713004A (en) * | 1995-05-18 | 1998-01-27 | Data General Corporation | Cache control for use in a multiprocessor to prevent data from ping-ponging between caches |
| US5652859A (en) | 1995-08-17 | 1997-07-29 | Institute For The Development Of Emerging Architectures, L.L.C. | Method and apparatus for handling snoops in multiprocessor caches having internal buffer queues |
| US5815648A (en) * | 1995-11-14 | 1998-09-29 | Eccs, Inc. | Apparatus and method for changing the cache mode dynamically in a storage array system |
| JP3269967B2 (ja) * | 1996-04-24 | 2002-04-02 | 株式会社日立製作所 | キャッシュコヒーレンシ制御方法、および、これを用いたマルチプロセッサシステム |
| JP3139392B2 (ja) * | 1996-10-11 | 2001-02-26 | 日本電気株式会社 | 並列処理システム |
| US6128677A (en) * | 1997-10-15 | 2000-10-03 | Intel Corporation | System and method for improved transfer of data between multiple processors and I/O bridges |
-
1999
- 1999-03-01 US US09/259,950 patent/US6314491B1/en not_active Expired - Fee Related
-
2000
- 2000-01-27 CN CNB001016938A patent/CN1142503C/zh not_active Expired - Fee Related
- 2000-02-23 JP JP2000046247A patent/JP3533355B2/ja not_active Expired - Fee Related
- 2000-02-29 KR KR1020000010110A patent/KR100318789B1/ko not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| CN1267023A (zh) | 2000-09-20 |
| US6314491B1 (en) | 2001-11-06 |
| JP3533355B2 (ja) | 2004-05-31 |
| CN1142503C (zh) | 2004-03-17 |
| JP2000250812A (ja) | 2000-09-14 |
| KR20000076752A (ko) | 2000-12-26 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR100318789B1 (ko) | 멀티프로세서 데이타 처리 시스템에서의 캐쉬를 관리하는시스템과 방법 | |
| US7827354B2 (en) | Victim cache using direct intervention | |
| US8015365B2 (en) | Reducing back invalidation transactions from a snoop filter | |
| US6304945B1 (en) | Method and apparatus for maintaining cache coherency in a computer system having multiple processor buses | |
| US6460114B1 (en) | Storing a flushed cache line in a memory buffer of a controller | |
| US7076613B2 (en) | Cache line pre-load and pre-own based on cache coherence speculation | |
| JP3888769B2 (ja) | データ供給方法及びコンピュータ・システム | |
| US6345342B1 (en) | Cache coherency protocol employing a read operation including a programmable flag to indicate deallocation of an intervened cache line | |
| US7305523B2 (en) | Cache memory direct intervention | |
| KR100274771B1 (ko) | Smp 버스의 공유 상태에서의 캐시 라인들의 공유 개입 방법 | |
| KR100273039B1 (ko) | 멀티프로세서 데이터 처리 시스템의 캐쉬 일관성을 유지하기위한 캐쉬 일관성 프로토콜 제공 방법 및시스템 | |
| US20070136535A1 (en) | System and Method for Reducing Unnecessary Cache Operations | |
| US6321306B1 (en) | High performance multiprocessor system with modified-unsolicited cache state | |
| KR19980079663A (ko) | Smp 버스의 최근 판독 상태에서의 캐시 라인들의 공유 개입 방법 | |
| US20020169935A1 (en) | System of and method for memory arbitration using multiple queues | |
| US6560681B1 (en) | Split sparse directory for a distributed shared memory multiprocessor system | |
| US7281092B2 (en) | System and method of managing cache hierarchies with adaptive mechanisms | |
| US7024520B2 (en) | System and method enabling efficient cache line reuse in a computer system | |
| US6336169B1 (en) | Background kill system bus transaction to optimize coherency transactions on a multiprocessor system bus | |
| US6345344B1 (en) | Cache allocation mechanism for modified-unsolicited cache state that modifies victimization priority bits | |
| US6385702B1 (en) | High performance multiprocessor system with exclusive-deallocate cache state | |
| US6658536B1 (en) | Cache-coherency protocol with recently read state for extending cache horizontally | |
| US6374333B1 (en) | Cache coherency protocol in which a load instruction hint bit is employed to indicate deallocation of a modified cache line supplied by intervention | |
| US6484241B2 (en) | Multiprocessor computer system with sectored cache line system bus protocol mechanism | |
| JP2002116954A (ja) | キャッシュシステム |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A201 | Request for examination | ||
| PA0109 | Patent application |
St.27 status event code: A-0-1-A10-A12-nap-PA0109 |
|
| PA0201 | Request for examination |
St.27 status event code: A-1-2-D10-D11-exm-PA0201 |
|
| PG1501 | Laying open of application |
St.27 status event code: A-1-1-Q10-Q12-nap-PG1501 |
|
| R17-X000 | Change to representative recorded |
St.27 status event code: A-3-3-R10-R17-oth-X000 |
|
| E701 | Decision to grant or registration of patent right | ||
| PE0701 | Decision of registration |
St.27 status event code: A-1-2-D10-D22-exm-PE0701 |
|
| GRNT | Written decision to grant | ||
| PR0701 | Registration of establishment |
St.27 status event code: A-2-4-F10-F11-exm-PR0701 |
|
| PR1002 | Payment of registration fee |
St.27 status event code: A-2-2-U10-U11-oth-PR1002 Fee payment year number: 1 |
|
| PG1601 | Publication of registration |
St.27 status event code: A-4-4-Q10-Q13-nap-PG1601 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 4 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 5 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
| FPAY | Annual fee payment |
Payment date: 20061122 Year of fee payment: 6 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 6 |
|
| LAPS | Lapse due to unpaid annual fee | ||
| PC1903 | Unpaid annual fee |
St.27 status event code: A-4-4-U10-U13-oth-PC1903 Not in force date: 20071214 Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE |
|
| PC1903 | Unpaid annual fee |
St.27 status event code: N-4-6-H10-H13-oth-PC1903 Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE Not in force date: 20071214 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
| P22-X000 | Classification modified |
St.27 status event code: A-4-4-P10-P22-nap-X000 |