nutblog

실무 기반 반도체 지식과 취업·직무 경험을 공유하는 엔지니어링 Blog 입니다.

  • 2025. 4. 12.

    by. nutblog

    CPU는 점점 빨라지는데, 데이터는 왜 느리게 따라올까?

    AI, 머신러닝, 고성능 컴퓨팅(HPC), 빅데이터, 클라우드 등 현대 IT 산업은 ‘엄청난 연산량’보다도 ‘그 연산을 위한 데이터 접근 속도’가 더 중요해진 시대에 접어들었습니다. CPU나 GPU는 이제 거의 실시간으로 수십억 개의 연산을 수행할 수 있지만, 그들이 데이터를 받아오기까지의 지연은 여전히 큰 병목으로 작용하고 있습니다.

    이 병목을 극복하기 위한 새로운 메모리-CPU 연결 방식, 그리고 차세대 인터커넥트 표준이 바로 CXL(Compute Express Link)입니다. 단순한 고속 버스가 아니라, CPU와 메모리 간의 효율적인 공유 및 캐시 일관성을 유지하면서도 확장 가능한 구조라는 점에서 매우 혁신적인 기술이죠.

    이번 글에서는 CXL이 등장한 배경, 기존 인터페이스와의 차이점, 구조, 실무에서의 도입 사례까지 ‘쉽게, 실무 중심으로’ 정리해보겠습니다.


    CXL의 정의 – PCIe 기반의 차세대 메모리·연산 연결 규격

    CXL은 Compute Express Link의 약자로, PCI Express(PCIe) 기반에서 동작하는 고속 인터커넥트 표준입니다.

    기존의 PCIe는 주로 장치와의 데이터 교환(예: GPU, SSD, 네트워크 카드)에 사용되었지만, CXL은 이를 넘어 CPU와 메모리 장치 간의 캐시 일관성(Coherency)을 유지하면서 고속 통신을 가능하게 하는 기술입니다.

    CXL의 주요 특징은 다음과 같습니다:

    • CPU ↔ 메모리 장치 ↔ 가속기 간의 고속 저지연 연결
    • 캐시 일관성 유지(Coherent Memory Access)
    • PCIe 5.0과 물리 레벨 호환 → 호환성 확보
    • 동적 메모리 공유 및 확장 가능

    즉, 단순한 인터페이스가 아니라 ‘메모리 중심 컴퓨팅’이라는 새로운 아키텍처를 가능하게 하는 연결 규격입니다.


    왜 CXL이 필요한가? – 기존 구조의 한계 극복

    기존 시스템 구조에서는 CPU가 직접 사용할 수 있는 메모리는 자신의 메인 메모리뿐이고, 가속기(GPU, FPGA)나 SSD 등과는 PCIe 버스나 메모리 매핑을 통해 비효율적으로 데이터를 주고받아야 했습니다.

    이 구조는 다음과 같은 문제를 유발합니다:

    • CPU, GPU가 각자 자신의 메모리만 활용 가능 → 중복된 데이터 필요
    • 메모리 확장이 어려움 → 슬롯 부족, 메모리 한계 도달
    • 서로 다른 장치 간 캐시 일관성 유지가 불가능
    • 지연(Latency) 발생 → 연산 성능 저하

    CXL은 이러한 한계를 해결합니다. CPU가 외부 메모리 장치를 자기 메모리처럼 직접 접근할 수 있게 하며, 캐시 일관성 유지도 가능해져 연산 효율이 비약적으로 높아집니다.


    CXL의 구조 – 세 가지 프로토콜로 나뉜다

    CXL은 내부적으로 세 가지 프로토콜을 포함하고 있습니다:

    Protocol 설명
    CXL.io PCIe와 동일한 레벨로, 장치 초기화 및 제어용
    CXL.cache CPU가 외부 장치의 메모리를 캐시처럼 접근 가능
    CXL.mem CPU가 외부 메모리를 메인 메모리처럼 직접 읽고 쓰기 가능

    이 세 가지 프로토콜을 유연하게 조합함으로써, CXL은 장치의 역할에 따라 가속기 메모리 확장, 공유 메모리 풀 구성, 메모리 계층화 등 다양한 응용이 가능해집니다.

    CXL이란? – CPU와 메모리를 잇는 새로운 연결

    실무에서 기대되는 효과 – 메모리 확장과 고속 연산의 두 마리 토끼

    CXL은 실무적으로 다음과 같은 효과를 기대할 수 있습니다:

    1. 메모리 확장성 대폭 향상
      → DRAM 슬롯 부족 문제 해결, CPU 외부의 DRAM 확장 가능
    2. 고속 연산 가속기와의 협업 향상
      → GPU, FPGA 등의 가속기와 CPU가 메모리를 공유하면서 연산 가능
    3. 메모리 풀링(Memory Pooling)
      → 여러 CPU가 하나의 공유 메모리를 동시에 활용
    4. 시스템 유연성 증가
      → 필요에 따라 메모리, 연산 장치의 동적 배치 가능

    예를 들어, AI 학습을 위한 대규모 모델에서는 GPU 메모리 한계가 성능의 병목이 됩니다. CXL을 활용하면 GPU가 CPU 메모리까지 실시간으로 활용할 수 있어 모델 크기를 대폭 늘릴 수 있게 됩니다.


    CXL과 경쟁하는 기술들 – CCIX, Gen-Z, OpenCAPI

    CXL은 단독 기술이 아니며, 유사한 목적을 가진 여러 기술들이 존재합니다. 대표적으로는:

    • CCIX (Cache Coherent Interconnect for Accelerators)
      ARM 기반 시스템에서 많이 사용, 범용성 부족
    • Gen-Z
      메모리 중심 컴퓨팅을 목표로 하지만, PCIe 기반이 아니라 도입 장벽 존재
    • OpenCAPI
      IBM이 주도, 강력한 성능이지만 채택 제한적

    이 중에서도 CXL은 인텔과 AMD, 마이크론, 삼성, 마이크로소프트, 구글 등 주요 반도체/클라우드 기업들이 참여한 표준이며, PCIe와 호환성을 갖추고 있어 실질적인 채택률이 가장 높습니다.


    실제 적용 사례 – CXL 2.0부터는 상용화 본격 시작

    CXL 1.1까지는 개념 검증 단계였지만, CXL 2.0부터는 메모리 풀링, 멀티 호스트 지원이 가능해지면서 실제 서버 플랫폼에 적용되고 있습니다.

    • 인텔 Sapphire Rapids CPU
      CXL 1.1/2.0 지원 → 메모리 확장 슬롯 탑재
    • 삼성전자 CXL 메모리 모듈 발표
      기존 DDR 대비 2배 이상의 확장성을 확보 가능
    • 마이크로소프트 Azure
      CXL 기반 메모리 공유 기술을 통한 AI 학습 효율성 극대화 연구 진행 중

    앞으로의 CXL 3.0에서는 장치 간 직접 통신, Non-volatile 메모리(NAND, 3D XPoint 등)와의 통합까지 가능해져 더욱 진화된 메모리 중심 구조가 구현될 예정입니다.


    CXL은 단순한 연결이 아니라, 컴퓨팅 패러다임의 전환

    CXL은 단순히 더 빠른 버스가 아닙니다. 연산 장치와 메모리의 개념을 재정의하고, 시스템 설계의 자유도를 획기적으로 넓혀주는 기술입니다.

    향후에는 CPU, GPU, DPU, 메모리가 분산된 구조에서 유기적으로 연결되어 하나의 거대한 메모리 공간을 공유하는 시대가 올 것입니다. CXL은 그 중심에 서 있는 인터페이스 표준이며, 미래 시스템 구조에 반드시 등장할 핵심 기술입니다.

    이제는 'CPU 옆에 꽂히는 램'을 넘어서, 메모리 자체가 하나의 독립된 자원으로서 분산되고, 연결되고, 조율되는 시대. 그 시작점이 바로 CXL입니다.