본문 바로가기
일/Compression

(ISCA,2025) The XOR Cache: A Catalyst for Compression : 논문리뷰

by 멜랑멀리 2025. 12. 5.
반응형
SMALL

이 논문은 현대 컴퓨팅 시스템의 Last-Level Cache (LLC)가 차지하는 막대한 자원(면적, 전력) 문제를 해결하기 위해, 캐시 계층 구조 내에 존재하는 활용되지 않은 중복성(redundancy)을 효율적으로 활용하는 새로운 압축 기법인 XOR Cache를 제안합니다.

---

### 1. Summary (요약)

*   **Background**:
    현대 컴퓨팅 시스템은 L3 캐시(LLC)와 같은 캐싱을 위해 막대한 양의 SRAM을 할당하며, 이는 다이 면적의 상당 부분을 차지하고 전력 소비를 증가시킵니다. 데이터셋 크기의 증가와 메모리 월(memory wall) 문제로 인해 캐시 계층 구조에 대한 자원 요구는 계속 늘어날 것입니다. 하지만 단순히 캐시 크기를 늘리는 것은 비용과 높은 접근 지연 시간을 초래하며 비효율적일 수 있습니다. 캐시 압축 [3, 8-10, 16, 24, 41, 42, 45-47, 49, 51, 54]은 이러한 효율성 간극을 메울 유망한 연구 분야입니다.

*   **Issue**:
    기존의 캐시 압축 방식들은 주로 단일 캐시 라인 내의 값 중복성(intra-line redundancy)만을 활용했습니다. 그러나, 오늘날 시스템에 흔히 사용되는 포함성(inclusion) 및 사설 캐싱(private caching)으로 인한 캐시 계층 간의 중복성은 대부분 간과되거나 제대로 활용되지 못했습니다 [15, 26, 37, 40, 48, 55]. 이러한 계층 간 중복성(inter-line redundancy)은 LLC의 유효 용량을 감소시키는 단점으로 여겨져 왔습니다.

*   **Method**:
    본 논문은 XOR Cache를 도입하여 이 간과된 중복성을 활용합니다. XOR Cache는 두 개의 캐시 라인(예: A와 B)의 비트별 XOR 연산 결과인 "A XOR B"를 LLC에 저장함으로써, 단일 물리적 슬롯에 두 라인을 co-locate 시키고 2:1의 인터-라인 압축을 달성합니다. 더 나아가, 만약 XOR 연산 대상인 두 라인 A와 B가 유사한 값을 가질 경우, 그 결과인 "A XOR B"는 엔트로피가 낮아져 기존의 인트라-라인 압축 방식(예: BΔI, BPC)에 의해 추가적으로 더 높은 압축률을 얻을 수 있습니다. 유사한 라인을 찾기 위해 맵 테이블(map table)과 맵 함수(map function)를 사용하며, 데이터의 복구 가능성을 보장하기 위해 캐시 일관성 프로토콜을 재설계합니다. (참조: Figure 1)

*   **Performance**:
    평가 결과, XOR Cache는 LLC 면적을 1.93배, 전력을 1.92배 절약하는 효과를 보였습니다. 이는 더 큰 압축되지 않은 캐시와 비교했을 때 2.06%의 낮은 성능 오버헤드만을 발생시키며, 에너지-지연 곱(Energy-Delay Product, EDP)을 26.3% 감소시키는 뛰어난 전반적 효율성을 달성했습니다.

---

### 2. Target Area (구체적 기술분야)

본 연구는 `컴퓨터 시스템 구조` (Computer systems organization) 분야, 특히 `멀티코어 아키텍처` (Multicore architectures) 내의 `캐시 계층` (Cache hierarchy) 및 `캐시 압축` (Cache compression) 기술에 중점을 둡니다. 궁극적으로 `저전력 아키텍처` (Low-power architecture)를 구현하는 데 기여합니다. 주요 타겟은 `마지막 레벨 캐시` (Last-Level Cache, LLC)입니다.

---

### 3. Concerned Key factors (개선하고자하는 주요 지표 및 요인)

본 논문은 다음과 같은 주요 지표 및 요인들을 개선하고자 합니다:

*   **LLC 면적 (Area)**: 현대 시스템에서 LLC는 다이 면적의 상당 부분을 차지하므로, 이를 줄이는 것은 하드웨어 비용 절감에 중요합니다 [38].
*   **전력 소비 (Power Consumption)**: 캐시는 전체 시스템 전력 소비의 큰 부분을 차지하므로, 캐시의 전력 효율성을 높이는 것은 시스템의 에너지 효율성을 향상시키는 데 필수적입니다.
*   **유효 용량 (Effective Capacity)**: 물리적인 캐시 크기는 줄이면서도 압축을 통해 더 큰 용량의 캐시와 유사한 효과를 얻는 것을 목표로 합니다.
*   **성능 (Performance)**: 캐시 크기 감소로 인한 성능 저하를 최소화하거나, 경우에 따라서는 더 나은 성능을 달성하고자 합니다. 특히 캐시 접근 지연 시간에 미치는 영향을 관리합니다.
*   **에너지-지연 곱 (Energy-Delay Product, EDP)**: 전력 효율성과 성능을 동시에 고려하는 종합적인 지표로서, 낮은 EDP는 더 효율적인 시스템을 의미합니다.

---

### 4. Main Issues (기존 연구에서 해결되지 않은 주요 문제)

기존 연구에서 해결되지 않았거나 간과된 주요 문제점들은 다음과 같습니다:

*   **미활용된 계층 간(Inter-line) 중복성**: 기존의 캐시 압축 기법들은 주로 단일 캐시 라인 내의 데이터 중복성(intra-line redundancy)에 초점을 맞췄습니다. 그러나 캐시 계층 간, 특히 `포함성` (inclusion) 정책으로 인해 상위 레벨 캐시(L1, L2)의 데이터가 하위 레벨 캐시(LLC)에 중복되어 저장되거나, `사설 캐싱` (private caching)으로 인해 여러 코어의 사설 캐시에 동일한 데이터가 존재하는 등, 계층 간에 발생하는 `중복성` (redundancy)은 대부분 압축 기회로 활용되지 못했습니다 [15, 26, 37, 40, 48, 55].
*   **유효 용량 감소**: 포함성 정책을 유지하는 inclusive LLC는 상위 캐시의 내용을 포함해야 하므로, 실제 저장 공간의 일부가 이미 상위 캐시에 있는 데이터로 채워져 `유효 용량` (effective capacity)이 줄어드는 문제점이 있었습니다.
*   **기존 압축 기법의 한계**: 인트라-라인 압축 기법들은 단일 라인 내의 중복성만을 활용하기 때문에, 데이터가 충분히 유사하지 않거나 엔트로피가 높은 경우에는 압축률 향상에 한계가 있었습니다.

---

### 5. Opportunity (기존에 활용되지 않았거나 문제해결에 기여할수 있는 요인)

본 논문이 문제 해결에 기여할 수 있다고 본 주요 기회 요인은 다음과 같습니다:

*   **캐시 계층 간 중복성 활용**: `포함성` (inclusion)과 `사설 캐싱` (private caching)으로 인해 발생하는 캐시 계층 간의 데이터 `중복성`을 압축 기회로 적극적으로 활용합니다. 이는 기존 압축 기법들이 주로 단일 캐시 레벨 내의 중복성에만 초점을 맞췄던 것과 차별화됩니다. (참조: Figure 1b)
*   **XOR 연산의 특성**: `XOR 연산`은 간단하고 대칭적이며 역변환이 가능(A XOR B XOR A = B)하다는 특성을 가집니다. 이를 통해 두 라인을 하나의 슬롯에 압축하여 저장하면서도 쉽게 복원할 수 있습니다.
*   **XOR 연산을 통한 엔트로피 감소**: 유사한 `엔트로피` (entropy)를 가진 두 캐시 라인 A와 B를 `XOR` 했을 때, 결과값 "A XOR B"는 종종 더 낮은 엔트로피(즉, 더 많은 0 비트)를 갖게 됩니다. (참조: Figure 4) 이는 기존의 `인트라-라인 압축` (intra-line compression) 기법들이 이 XORed 된 데이터를 더 효과적으로 압축할 수 있도록 '촉매(catalyst)' 역할을 합니다.
*   **데이터 스파시티(sparsity) 및 지역성(locality)**: 캐시 라인 내의 바이트 수준 `엔트로피` 분포 (하위 비트에서 높은 엔트로피)와 `공간-값 지역성` (spatio-value locality)을 활용하여 유사한 라인을 식별하고 `XOR 정책` (XOR policy)을 최적화할 수 있습니다. (참조: Figure 5, Figure 9)

---

### 6. Idea (논문의 핵심 idea)

논문의 핵심 아이디어는 `XOR Cache`입니다. 이는 다음과 같은 원리로 작동합니다.

1.  **인터-라인 압축 (Inter-Line Compression)으로서의 XOR**:
    *   XOR Cache는 두 개의 캐시 라인, 예를 들어 L1 캐시에 이미 존재하는 라인 A와 LLC에 삽입될 라인 B가 있을 때, 라인 B를 그대로 저장하는 대신 라인 A와 B의 비트별 `XOR 연산` 결과인 "A XOR B"를 LLC에 저장합니다.
    *   이를 통해 하나의 물리적 캐시 슬롯에 두 개의 캐시 라인을 효과적으로 `co-locate`시켜 2:1의 압축률을 달성합니다. 이는 특히 `포함성` (inclusion) 특성으로 인한 상위-하위 캐시 간의 `중복성`과 `사설 캐싱` (private caching)으로 인한 중복성을 활용합니다. (참조: Figure 1b)
    *   데이터 복원을 위해서는 "A XOR B" 값과 원본 라인 A (L1에 이미 존재)만 있으면 A XOR B XOR A = B 연산을 통해 라인 B를 쉽게 복원할 수 있습니다.

2.  **인트라-라인 압축 촉매 (Catalyst for Intra-Line Compression)**:
    *   `XOR 정책` (XOR policy)을 통해 서로 `유사한 값`을 가진 두 캐시 라인(A와 B)을 지능적으로 선택하여 XOR 연산을 수행합니다.
    *   유사한 라인들을 XOR하면, 결과값 "A XOR B"의 `엔트로피` (entropy)가 현저히 낮아지고(즉, 많은 0을 포함하게 됨), 이는 기존의 `인트라-라인 압축` (intra-line compression) 기법(예: BΔI, BPC)이 이 XORed 된 데이터를 훨씬 더 효과적으로 압축할 수 있는 기회를 제공합니다. 이는 XOR Cache가 다른 압축 기법의 효율성을 `촉매`하는 역할을 하는 것입니다. (참조: Figure 2, Figure 4)

요약하자면, XOR Cache는 `XOR 압축` (XOR compression)을 통해 `인터-라인 압축`을 달성하고, 유사한 라인의 선택적 XOR 연산을 통해 데이터의 `엔트로피`를 낮춰 `인트라-라인 압축`의 효율성을 극대화하는 `시너지` (synergy) 효과를 창출하는 것이 핵심 아이디어입니다.

---

### 7. Challenges of the idea and solution (아이디어의 기술적 난관 및 해결방법)

XOR Cache 아이디어의 주요 기술적 난관과 그 해결 방법은 다음과 같습니다:

1.  **난관 1: XOR 정책 설계 (XOR Policy Design)**
    *   **문제**: 어떤 두 캐시 라인을 XOR할지 결정하는 `XOR 정책`을 설계하는 것은 핵심적인 난관입니다. 단순히 무작위로 선택하는 것보다는, 데이터 유사성을 고려하여 `엔트로피`를 효과적으로 낮출 수 있는 라인 쌍을 찾는 것이 중요합니다. 이상적인 정책(`idealBank`와 `idealSet`)은 높은 압축률을 보이지만, 하드웨어 구현 비용이 비현실적으로 높습니다. (참조: Figure 2)
    *   **해결 방법**: 실용적인 구현을 위해 `맵 테이블` (map table) 기반의 `시너지 XOR 정책` (synergistic XOR policy)을 제안합니다. (참조: Figure 8a)
        *   `맵 함수` (map function)를 사용하여 캐시 라인 데이터로부터 `맵 값` (map value, 일종의 시그니처)을 생성합니다. (참조: Figure 11)
        *   이 맵 값을 인덱스로 `맵 테이블`에 접근하여 유사한 `XOR 후보` (XOR candidate) 라인을 찾습니다.
        *   LSH-RP, LSH-BS, BL, SBL과 같은 맵 함수 후보들을 평가하며, `SBL` (Sparse Byte Labeling) 맵 함수와 7비트 맵 값을 사용하여 압축 커버리지와 정확도 사이의 균형점을 찾습니다. (참조: Figure 12) 이는 하드웨어 복잡성을 관리 가능한 수준으로 유지하면서도 좋은 압축률을 달성합니다.

2.  **난관 2: 캐시 일관성 프로토콜 (Coherence Protocol)**
    *   **문제**: XOR 압축은 단일 캐시 레벨의 경계를 넘어섭니다. 데이터는 XOR된 형태로 저장되고, 필요한 경우 L1 캐시와 같은 상위 레벨의 복사본을 사용하여 원본을 복원해야 하므로, 기존의 `캐시 일관성 프로토콜` (coherence protocol)은 `데이터 복구 가능성` (data recoverability)을 보장하고 `교착 상태` (deadlock)를 피하도록 재설계되어야 합니다.
    *   **해결 방법**:
        *   **압축 및 압축 해제**: 캐시 삽입 시 XOR 압축을 시도하고, `getS` (read) 요청 시 `압축 해제`를 수행합니다. 압축 해제는 요청자(requestor)의 상태와 XOR 파트너 라인의 존재 여부에 따라 `로컬 복구` (local recovery), `직접 포워딩` (direct forwarding), `원격 복구` (remote recovery)의 세 가지 방식으로 유연하게 처리됩니다. (참조: Figure 7, Table 2)
        *   **UnXORing**: 데이터의 `복구 가능성`을 유지하기 위해 특정 상황(예: 라인 A 또는 B가 Modified 상태로 전환되거나, XOR 쌍 중 한 라인의 마지막 공유자가 사라지는 경우)에서는 `unXORing` (압축 해제 후 원본 라인을 다시 저장)을 수행합니다. (참조: Figure 6의 빨간색 전환들)
        *   **교착 상태 방지**: `Murphi` [19]를 이용한 모델 검증과 분석을 통해 프로토콜이 `요청 간 순환 의존성` (cyclic dependence between requests)이 없으며, `가상 네트워크` (virtual network) 측면에서도 추가적인 가상 네트워크가 필요 없음을 논증하여 `교착 상태가 없음` (deadlock freedom)을 보장합니다.

---

### 8. Evaluation methodology (평가 방법론)

XOR Cache의 성능을 평가하기 위해 다음과 같은 방법론을 사용했습니다.

*   **시뮬레이터**: `gem5 시뮬레이터` [36]의 `Ruby 메모리 모델`을 사용하여 XOR Cache와 그 `일관성 프로토콜`을 구현하고 시뮬레이션했습니다.
*   **하드웨어 구성**:
    *   **CPU**: 4코어, 3GHz x86-64 시스템을 사용했습니다. (참조: Table 3)
    *   **캐시 계층**: 3단계 캐시 계층 구조 (L1I, L1D, L2, L3/LLC)를 모델링했습니다. 특히 LLC는 1MiB/bank, 16-way, 40 cycles 지연 시간을 가집니다.
    *   **메모리**: DualChannel DDR4-2400을 사용했습니다.
    *   **LLC 구성**: 압축되지 않은 `baseline`, `BΔI`, `BPC`, `Thesaurus`와 같은 기존 압축 기법을 적용한 `compressed baselines`를 비교 대상으로 설정했습니다. (참조: Table 4) XOR Cache는 BΔI와 시너지 효과를 내는 구성으로 평가되었습니다.
    *   **하드웨어 모델링**: `CACTI 7.0` [11]을 사용하여 메모리 구조의 면적, 전력, 지연 시간을 평가하고, `Synopsys design compiler`를 사용하여 압축기 하드웨어의 합성(synthesis)을 수행했습니다 (32nm 기술 노드).
*   **벤치마크**: 세 가지 종류의 벤치마크 스위트를 `full-system simulation`으로 평가했습니다.
    *   **멀티스레드 워크로드**: `PERFECT` [12] (OpenMP 버전, 이미지 처리) 및 `PARSEC 3.0` [13] (`simlarge` 데이터셋)을 사용했습니다.
    *   **멀티프로그램드 워크로드**: `SPEC CPU 2017` [14] (`multi-programmed` 랜덤 조합)을 사용했습니다. (참조: Table 5)
    *   **시뮬레이션 방식**: 멀티프로그램드 벤치마크의 경우, 100억 명령어를 `fast-forward`하고 이후 10억 명령어에 대해 상세 통계를 수집했습니다.
*   **평가 지표**:
    *   **압축률**: `LLC 프로파일링`을 통해 `인터-라인` 및 `인트라-라인` 압축률을 분석했습니다. (참조: Figure 2, Figure 13)
    *   **면적 및 전력**: LLC 면적 및 전체 캐시 계층의 전력 소비를 분석했습니다. (참조: Figure 14)
    *   **성능**: 멀티스레드 워크로드의 경우 `정규화된 런타임` (normalized runtime), 멀티프로그램드 워크로드의 경우 `정규화된 CPI` (normalized CPI)의 기하 평균을 사용하여 측정했습니다. (참조: Figure 15)
    *   **Iso-storage 성능**: 동일한 저장 공간을 가질 때의 성능을 비교했습니다. (참조: Figure 16)
    *   **에너지-지연 곱 (EDP)**: `정규화된 EDP`를 통해 전반적인 효율성을 종합적으로 평가했습니다. (참조: Figure 18)
    *   **민감도 분석**: 코어 수, LLC 크기에 따른 성능 및 압축률 변화를 분석했습니다. (참조: Figure 17)

---

### 9. Your thoughts (개인의견)

이 논문은 캐시 계층 구조의 근본적인 특성인 `포함성` (inclusion)에서 발생하는 `중복성`을 문제점이 아닌 기회로 전환했다는 점에서 매우 통찰력 있는 접근 방식을 제시합니다. 기존의 캐시 압축 연구들이 주로 단일 캐시 라인 내의 `인트라-라인` 중복성에 집중했던 것과 달리, XOR Cache는 L1/L2와 LLC 사이의 `인터-라인` 중복성, 나아가 코어 간 `사설 캐싱`의 중복성까지 활용하여 압축 효율을 극대화한다는 점이 인상적입니다.

특히, `XOR 압축`을 통해 단순히 2:1 압축률을 얻는 것을 넘어, 유사한 데이터를 `XOR`함으로써 `엔트로피`를 낮춰 다른 `인트라-라인 압축` 기법들의 성능을 `촉매`한다는 아이디어는 매우 독창적이며 `시너지` 효과를 창출하는 영리한 설계라고 생각합니다. 이는 개별 기술들의 단순한 합이 아닌, 상호작용을 통한 새로운 가치 창출이라는 점에서 연구의 중요한 방향성을 제시합니다.

`XOR 정책`을 위한 `맵 테이블` 및 `맵 함수`의 설계와 `캐시 일관성 프로토콜`의 복잡한 재설계는 실용적인 시스템 구현을 위한 깊이 있는 고민이 있었음을 보여줍니다. 특히 `deadlock-free`를 증명하는 부분은 프로토콜의 견고성을 강조하여 신뢰성을 높입니다. `면적`과 `전력`을 크게 절감하면서도 `성능 오버헤드`가 미미하다는 결과는 XOR Cache의 잠재력을 강력하게 시사합니다.

이러한 접근 방식은 향후 `chiplet-based systems` [17]이나 `메모리 중심 컴퓨팅` (memory-centric computing) 환경에서 데이터 이동 및 저장 비용을 줄이는 데 중요한 역할을 할 수 있을 것 같습니다. 캐시 압축은 단순히 하드웨어 비용 절감을 넘어, 데이터 이동량 감소를 통해 전체 시스템의 `에너지 효율성`을 높이고 병목 현상을 완화하는 데도 기여할 수 있는 파급력 있는 기술입니다.

---

### 10. Limitations and Weakness (논문의 약점및 한계)

본 논문의 약점 및 한계는 다음과 같습니다:

1.  **제한적인 XOR 기회**:
    *   XOR Cache의 `인터-라인 압축` 기회는 `LLC-to-private cache size ratio`와 `Modified` 라인 수, 그리고 `공유 라인` (`S` 상태 라인)의 분포에 따라 제한될 수 있습니다. (참조: Figure 13c, 13d) 논문에서 평가한 설정 (Table 3의 4:1 L3-to-L2 비율)은 `XOR 압축` 기회가 제한적인 다소 비관적인 구성이라고 저자들이 스스로 인정하고 있습니다.
    *   대부분의 LLC 라인이 `S0` (Shared0, 즉 상위 레벨 캐시에 공유자가 없는 상태) 상태일 경우, `최소 공유자 불변성` (minimum sharer invariant) 때문에 XOR 기회가 제한되어 압축률 상한에 도달하지 못할 수 있습니다.
    *   특히 `멀티프로그램드 워크로드`의 경우 `멀티스레드` 워크로드보다 공유가 적어 `XOR 압축` 기회가 더 제한될 수 있습니다.

2.  **데이터 `확장` (Expansion) 및 `변동성`**:
    *   다른 압축 캐시와 마찬가지로, `XOR Cache` 역시 라인 업데이트 시 데이터 크기 변화로 인한 `확장`이 발생할 수 있습니다. `unXORing`이 트리거되거나, `인트라-라인 압축`과 결합될 경우 데이터 확장의 가능성이 증가합니다.
    *   `co-eviction` 시 데이터 확장이 발생해도 트랜잭션 버퍼 공간만 차지하고 실제 캐시 공간을 차지하지 않아 추가적인 eviction을 유발하지 않는다고 설명하지만, 여전히 압축된 데이터의 `가변적인 크기`는 관리가 필요하며, 이는 캐시 디자인의 복잡성을 가중시킬 수 있습니다.

3.  **네트워크 트래픽 증가**:
    *   `XOR Cache`는 `데이터 포워딩` (data forwarding)을 위한 추가 메시지로 인해 `네트워크 트래픽`이 23.4% 증가한다고 언급합니다. (참조: Figure 14b) 이는 `Exclusive LLC`의 트래픽 증가(24.6%)보다는 적지만, `scaled-out system`에서는 `대역폭 오버헤드`로 이어질 수 있습니다. 저자들은 `chiplet-based systems`의 대역폭 스케일링 추세를 언급하며 큰 문제가 아닐 것이라고 추정하지만, 이는 특정 시스템 아키텍처에 대한 가정이며 항상 유효하지 않을 수 있습니다.

4.  **2-way XORing에 대한 제한**:
    *   본 연구에서는 `2-way XORing` (정확히 두 라인만 XOR하는 것)에만 초점을 맞추고 `다른 가역 함수`나 `다중 라인 XORing`에 대한 탐색은 `향후 연구` 과제로 남겨두었습니다. 이는 현재 제시된 압축률이 더 확장될 여지가 있음을 시사하는 동시에, 현 논문의 범위 내에서는 2-way XORing의 한계를 가지고 있음을 의미합니다.

5.  **성능 오버헤드 (특히 멀티프로그램드 워크로드)**:
    *   전반적인 성능 오버헤드는 2.06%로 낮지만, `멀티프로그램드 워크로드`에서는 2.95%로 `멀티스레드 워크로드`의 1.45%보다 더 높은 오버헤드를 보입니다. 이는 `원격 복구` (remote recovery) 경로를 따르는 LLC 히트가 많기 때문입니다. (참조: Figure 15) 최악의 경우를 더욱 최적화할 필요가 있을 수 있습니다.

---
각주:
[3] Alameldeen and Wood. 2004. Frequent Pattern Compression: A Significance-Based Compression Scheme for L2 Caches.
[8] Arelakis et al. 2015. HyComp: a hybrid cache compression method for selection of data-type-specific compression methods.
[9] Arelakis and Stenstrom. 2014. SC2: a statistical compression cache scheme.
[10] Arelakis and Stenstrom. 2014. SC2: a statistical compression cache scheme.
[11] Balasubramonian et al. 2017. CACTI 7: New Tools for Interconnect Exploration in Innovative Off-Chip Memories.
[12] Barker et al. 2013. PERFECT (Power Efficiency Revolution For Embedded Computing Technologies) Benchmark Suite Manual.
[13] Bienia et al. 2008. The PARSEC benchmark suite: Characterization and architectural implications.
[14] Bucek et al. 2018. SPEC CPU2017: Next-Generation Compute Benchmark.
[15] Chaudhuri. 2021. Zero Inclusion Victim: Isolating Core Caches from Inclusive Last-level Cache Evictions.
[16] Chen et al. 2010. C-pack: a high-performance microprocessor cache compression algorithm.
[17] Chirkov and Wentzlaff. 2023. Seizing the Bandwidth Scaling of On-Package Interconnect in a Post-Moore’s Law World.
[19] Dill. 1996. The Murfi verification system.
[24] Ghasemazar et al. 2020. Thesaurus: Efficient Cache Compression via Dynamic Clustering.
[26] Jaleel et al. 2010. Achieving Non-Inclusive Cache Performance with Inclusive Caches: Temporal Locality Aware (TLA) Cache Management Policies.
[36] Lowe-Power et al. 2020. The gem5 simulator: Version 20.0+.
[37] Martin et al. 2012. Why On-Chip Cache Coherence is Here to Stay.
[38] Mujtaba. 2020. AMD Ryzen 5000 Zen 3 ’Vermeer’ Undressed, First Ever High-Res Die Shots Close Ups Pictured & Detailed.
[40] Nagarajan et al. 2020. A Primer on Memory Consistency and Cache Coherence, Second Edition.
[41] Nguyen and Wentzlaff. 2015. MORC: a manycore-oriented compressed cache.
[42] Panda and Seznec. 2016. Dictionary sharing: An efficient cache compression scheme for compressed caches.
[45] Pekhimenko et al. 2012. Base-delta-immediate compression: practical data compression for on-chip caches.
[46] San Miguel et al. 2016. The Bunker Cache for spatio-value approximation.
[47] San Miguel et al. 2015. Doppelgänger: A cache for approximate computing.
[48] Tian et al. 2013. Temporal-Based Multilevel Correlating Inclusive Cache Replacement.
[49] Tian et al. 2014. Last-level cache deduplication.
[51] Wang et al. 2021. Cache Compression with Efficient in-SRAM Data Comparison.
[54] Yang et al. 2000. Frequent value compression in data caches.
[55] Zhao et al. 2010. NCID: A Non-Inclusive Cache, Inclusive Directory Architecture for Flexible and Efficient Cache Hierarchies.

반응형
SMALL

' > Compression' 카테고리의 다른 글

Data Distribution  (0) 2025.04.25