CXL: Difference between revisions
Jump to navigation
Jump to search
(Add categories: Linux, Reference) |
(Phase 6.1: LLM-Optimized Wiki Template 적용) |
||
| Line 1: | Line 1: | ||
== | {{Status | ||
|status=Draft | |||
|owner=Knowledge Agent | |||
|last_update=2026-07-16 | |||
|review=Pending | |||
}} | |||
{{TOC}} | |||
== Overview == | |||
CXL(Coherent Extensible Link)은 고성능 컴퓨팅을 위한 CPU-장치 및 CPU-메모리 연결을 위한 고속 개방형 표준입니다. PCI Express([[PCIe]]) 물리 및 전기 인터페이스를 기반으로 하며, PCIe-bus와 호환됩니다. | |||
=== Summary === | |||
* 무엇인가? CPU-장치 및 CPU-메모리 간 고속 연결 개방형 표준 | |||
* 왜 필요한가? 데이터센터 및 HPC에서 메모리 확장성 및 성능 향상 | |||
* 언제 사용하는가? 서버, 데이터센터, HPC 시스템, AI/ML 인프라 | |||
--- | |||
=== | == Purpose == | ||
이 문서가 존재하는 이유 | |||
* Goal: CXL 표준의 개념, 프로토콜, 사용 사례 설명 | |||
* Scope: CXL 기본 개념, CXL.io/CXL.cache/CXL.mem 프로토콜 | |||
* Non-goals: CXL 하드웨어 설계 상세, PCIe 상세 | |||
--- | |||
== Key Concepts == | |||
{| class="wikitable" | |||
! 개념 | |||
! 설명 | |||
! Related | |||
|- | |||
| CXL | |||
| Coherent Extensible Link — CPU-장치/메모리 고속 연결 표준 | |||
| [[PCIe]] | |||
|- | |||
| CXL.io | |||
| I/O 프로토콜 — PCIe 호환 | |||
| [[CXL]] | |||
|- | |||
| CXL.cache | |||
| 캐시 일관성 프로토콜 — CPU 캐시 공유 | |||
| [[CXL]] | |||
|- | |||
| CXL.mem | |||
| 메모리 확장 프로토콜 — 메모리 원격 접근 | |||
| [[CXL]] | |||
|- | |||
| PCIe | |||
| Peripheral Component Interconnect Express | |||
| [[CXL]] | |||
|- | |||
| Cache Coherency | |||
| 캐시 일관성 — 여러 프로세서 간 데이터 일관성 유지 | |||
| [[CXL.cache]] | |||
|} | |||
--- | |||
== Architecture == | |||
CXL 프로토콜 아키텍처: | |||
<syntaxhighlight lang="mermaid"> | |||
graph TD | |||
A[CXL 표준] --> B[CXL.io] | |||
A --> C[CXL.cache] | |||
A --> D[CXL.mem] | |||
B --> E[PCIe 호환 I/O] | |||
C --> F[캐시 일관성] | |||
D --> G[메모리 확장] | |||
F --> H[CPU Cache] | |||
G --> I[원격 메모리] | |||
</syntaxhighlight> | |||
--- | |||
== Workflow == | |||
CXL 기본 워크플로우: | |||
# CXL 장치 연결 | |||
# PCIe 슬롯에 CXL 장치 삽입 | |||
# [[BIOS]]/UEFI에서 CXL 활성화 | |||
# OS에서 CXL 장치 인식 | |||
# CXL.mem으로 메모리 확장 사용 | |||
--- | |||
== Detailed Explanation == | |||
=== CXL 개요 === | |||
'''CXL(Coherent Extensible Link)'''은 고성능 컴퓨팅을 위한 고속, 대용량 CPU-장치 및 CPU-메모리 연결을 위한 개방형 표준입니다. CXL은 PCI Express([[PCIe]]) 물리 및 전기 인터페이스를 기반으로 하며, PCIe 버스 프로토콜과 호환됩니다. | |||
=== CXL 프로토콜 === | |||
CXL은 세 가지 프로토콜로 구성됩니다: | |||
'''1. CXL.io''' | |||
PCIe 호환 I/O 프로토콜입니다. 기존 PCIe 장치와 호환되며, I/O 작업에 사용됩니다. | |||
'''2. CXL.cache''' | |||
캐시 일관성(coherency) 프로토콜입니다. CPU 캐시를 장치와 공유하여 장치가 CPU 캐시에 직접 접근할 수 있습니다. 이를 통해 장치와 CPU 간 데이터 접근 속도가 크게 향상됩니다. | |||
'''3. CXL.mem''' | |||
메모리 확장 프로토콜입니다. 장치가 호스트 메모리에 직접 접근할 수 있어 메모리 용량을 확장할 수 있습니다. 이를 통해 시스템의 총 사용 가능 메모리를 증가시킬 수 있습니다. | |||
--- | |||
== Configuration == | |||
=== CXL 활성화 설정 === | |||
<syntaxhighlight lang="bash"> | |||
# CXL 지원 확인 | |||
lspci | grep -i cxl | |||
# BIOS/UEFI에서 CXL 활성화 | |||
# 시스템 BIOS 설정 → CXL Support → Enabled | |||
# 커널 모듈 로드 | |||
sudo modprobe cxl_pci | |||
</syntaxhighlight> | |||
--- | |||
== Examples == | |||
=== Example 1: CXL 장치 확인 === | |||
입력: | |||
<syntaxhighlight lang="bash"> | |||
# CXL 장치 확인 | |||
lspci | grep -i cxl | |||
# CXL 메모리 정보 | |||
cat /sys/devices/system/cxl/region/* | |||
</syntaxhighlight> | |||
--- | |||
== Best Practices == | |||
* '''BIOS 설정 확인''' — CXL 활성화 필수 | |||
* '''커널 버전 확인''' — CXL 지원 커널 버전 사용 | |||
* '''CXL.mem 활용''' — 대용량 메모리 워크로드에 CXL.mem 권장 | |||
* '''캐시 일관성''' — CXL.cache는 고성능 워크로드에 적합 | |||
--- | |||
== Limitations == | |||
* CXL 지원 하드웨어 필요 — 모든 시스템에서 사용 불가 | |||
* 최신 커널 필요 — 구형 커널에서는 지원 제한적 | |||
* CXL.mem은 메모리 확장 전용 — 성능 이점 제한적 | |||
--- | |||
== References == | |||
* (문서 내 참조) | |||
--- | |||
== Related Pages == | |||
* [[PCIe]] | |||
* [[CPU]] | |||
* [[GPU]] | |||
* [[Memory]] | |||
* [[Datacenter]] | |||
--- | |||
[[Category:Hardware]] | |||
[[Category:Reference]] | [[Category:Reference]] | ||
Revision as of 14:39, 16 July 2026
Overview
CXL(Coherent Extensible Link)은 고성능 컴퓨팅을 위한 CPU-장치 및 CPU-메모리 연결을 위한 고속 개방형 표준입니다. PCI Express(PCIe) 물리 및 전기 인터페이스를 기반으로 하며, PCIe-bus와 호환됩니다.
Summary
- 무엇인가? CPU-장치 및 CPU-메모리 간 고속 연결 개방형 표준
- 왜 필요한가? 데이터센터 및 HPC에서 메모리 확장성 및 성능 향상
- 언제 사용하는가? 서버, 데이터센터, HPC 시스템, AI/ML 인프라
---
Purpose
이 문서가 존재하는 이유
- Goal: CXL 표준의 개념, 프로토콜, 사용 사례 설명
- Scope: CXL 기본 개념, CXL.io/CXL.cache/CXL.mem 프로토콜
- Non-goals: CXL 하드웨어 설계 상세, PCIe 상세
---
Key Concepts
| 개념 | 설명 | Related |
|---|---|---|
| CXL | Coherent Extensible Link — CPU-장치/메모리 고속 연결 표준 | PCIe |
| CXL.io | I/O 프로토콜 — PCIe 호환 | CXL |
| CXL.cache | 캐시 일관성 프로토콜 — CPU 캐시 공유 | CXL |
| CXL.mem | 메모리 확장 프로토콜 — 메모리 원격 접근 | CXL |
| PCIe | Peripheral Component Interconnect Express | CXL |
| Cache Coherency | 캐시 일관성 — 여러 프로세서 간 데이터 일관성 유지 | CXL.cache |
---
Architecture
CXL 프로토콜 아키텍처:
graph TD
A[CXL 표준] --> B[CXL.io]
A --> C[CXL.cache]
A --> D[CXL.mem]
B --> E[PCIe 호환 I/O]
C --> F[캐시 일관성]
D --> G[메모리 확장]
F --> H[CPU Cache]
G --> I[원격 메모리]---
Workflow
CXL 기본 워크플로우:
- CXL 장치 연결
- PCIe 슬롯에 CXL 장치 삽입
- BIOS/UEFI에서 CXL 활성화
- OS에서 CXL 장치 인식
- CXL.mem으로 메모리 확장 사용
---
Detailed Explanation
CXL 개요
CXL(Coherent Extensible Link)은 고성능 컴퓨팅을 위한 고속, 대용량 CPU-장치 및 CPU-메모리 연결을 위한 개방형 표준입니다. CXL은 PCI Express(PCIe) 물리 및 전기 인터페이스를 기반으로 하며, PCIe 버스 프로토콜과 호환됩니다.
CXL 프로토콜
CXL은 세 가지 프로토콜로 구성됩니다:
1. CXL.io
PCIe 호환 I/O 프로토콜입니다. 기존 PCIe 장치와 호환되며, I/O 작업에 사용됩니다.
2. CXL.cache
캐시 일관성(coherency) 프로토콜입니다. CPU 캐시를 장치와 공유하여 장치가 CPU 캐시에 직접 접근할 수 있습니다. 이를 통해 장치와 CPU 간 데이터 접근 속도가 크게 향상됩니다.
3. CXL.mem
메모리 확장 프로토콜입니다. 장치가 호스트 메모리에 직접 접근할 수 있어 메모리 용량을 확장할 수 있습니다. 이를 통해 시스템의 총 사용 가능 메모리를 증가시킬 수 있습니다.
---
Configuration
CXL 활성화 설정
# CXL 지원 확인
lspci | grep -i cxl
# BIOS/UEFI에서 CXL 활성화
# 시스템 BIOS 설정 → CXL Support → Enabled
# 커널 모듈 로드
sudo modprobe cxl_pci
---
Examples
Example 1: CXL 장치 확인
입력:
# CXL 장치 확인
lspci | grep -i cxl
# CXL 메모리 정보
cat /sys/devices/system/cxl/region/*
---
Best Practices
- BIOS 설정 확인 — CXL 활성화 필수
- 커널 버전 확인 — CXL 지원 커널 버전 사용
- CXL.mem 활용 — 대용량 메모리 워크로드에 CXL.mem 권장
- 캐시 일관성 — CXL.cache는 고성능 워크로드에 적합
---
Limitations
- CXL 지원 하드웨어 필요 — 모든 시스템에서 사용 불가
- 최신 커널 필요 — 구형 커널에서는 지원 제한적
- CXL.mem은 메모리 확장 전용 — 성능 이점 제한적
---
References
- (문서 내 참조)
---
Related Pages
---