저는 미카엘라 아이힝거(퀀텀 머신 소속)가 QPU의 의미에 대해 훌륭하고도 적절한 질문을 던진 링크드인 게시물을 우연히 발견했습니다. 그 질문은 아래와 같습니다.

회로 기판에 연결된 양자 칩 - 사진 제공: QUtech

양자 처리 장치(QPU)는 단순히 칩 하나만을 의미하는 것이 아닙니다. 기존 반도체에서 CPU는 테이프 출력 후의 실리콘 다이 그 이상입니다. 패키징, 클록 분배, 메모리 계층 구조 및 마이크로코드가 없다면, 그 다이는 고도로 설계된 모래에 불과합니다.

양자 프로세서(QPU)에도 똑같은 시스템 엔지니어링의 엄격함이 적용됩니다. 양자 칩 자체는 아무런 기능도 하지 못합니다. 논리 게이트를 실제로 실행하려면 적절한 패키징과 환경(예: 희석 냉장고 또는 진공 챔버)은 물론 제어 회로 및 인프라가 필요합니다.

용어 Link to heading

이 질문에 대한 여러 의견 중에서 올리비에 에즈라티(Olivier Ezratty)의 의견이 특히 실용적이었습니다. 그는 이해를 돕기 위해 “양자 컴퓨터"와 “양자 컴퓨팅 시스템"이라는 두 가지 핵심 용어를 정의할 것을 제안했습니다.

  • 양자 컴퓨터: 미리 정의된 양자 회로를 여러 번 실행하여 유용한 결과를 제공합니다. 따라서 컴파일, 최적화, QEC/FTQC 구현(필요한 경우), 모든 고전 시스템 구동(전자 장치, 광자 장치), 회로 중간 측정, 고전 최적화 도구(NISQ 변분 회로용) 및 후처리 등이 포함됩니다. 또한 극저온 기술을 포함한 모든 관련 기술도 포함됩니다.

  • 양자 컴퓨팅 시스템: 양자 컴퓨터를 사용하여 사용자 문제를 해결합니다. 양자 회로 생성에 필요한 모든 기존 컴퓨팅 자원(필요한 경우 고성능 컴퓨팅(HPC) 포함)과 사용되는 양자 컴퓨터를 포함해야 합니다.

오른쪽 그림은 그 두 가지 정의를 나타냅니다.

시스템 관점: [ QPU || GPU ] Link to heading

흥미로운 부분은 바로 양자 컴퓨팅 시스템입니다. 저는 다음 그림에서처럼 QPU와 GPU 스택을 비교해 보는 것을 좋아합니다.

시스템적인 관점에서 볼 때, QPU는 GPU와 크게 다르지 않습니다. QPU와 GPU 스택의 여러 계층 사이에는 유사점이 있습니다.

양자 컴퓨터의 일부이긴 하지만, 어떤 부분이 양자 하드웨어에서 작동하고 어떤 논리적 구성 요소가 기존 컴퓨터에서 실행되는지 식별하는 것도 유용합니다.

올리비에 에르자티는 제가 링크드인에 올린 원본 다이어그램에 대해 유용한 피드백을 주었습니다.

  • 상호 연결: 최소 두 개의 상호 연결이 있습니다. 양자 상호 연결은 얽힌 양자 개체를 전달합니다. NVQLink 용어로 실시간 상호 연결(RTI)이라고 하는 실시간 고전 상호 연결도 있습니다. 이 다이어그램에는 표시되지 않았지만 CPU를 연결하는 표준 고전 네트워크도 있습니다.

  • 보정: 이상적으로 보정은 실시간으로 이루어져야 하지만, 대부분의 경우 아직은 그렇지 않습니다. 현재 보정 방식에는 두 가지 유형이 있습니다. 하나는 온보드 NPU와 판독 또는 신드롬 데이터를 사용하여 양자 하드웨어 내에서 실행되는 실시간 보정이고, 다른 하나는 Ising과 같은 고급 vLLM 모델을 사용하여 CPU 또는 GPU에서 실행되는 저속 보정입니다. 이 두 가지 접근 방식은 결국 통합될 수 있지만, 몇 년이 걸릴 수 있습니다.

  • 가속: 첫 번째 다이어그램에서는 양자 회로가 QPU 없이도 GPU 가속 시뮬레이터에서 실행될 수 있음을 강조하기 위해 “양자 하드웨어 가속"이라는 용어를 사용했습니다. 그러나 올리비에가 지적했듯이 QML과 같은 일부 양자 분야에서는 속도 향상이 아닌 결과 개선을 위해 양자 솔루션을 사용합니다. 혼동을 피하기 위해 양자 하드웨어에 특화된 부분(시퀀서, 컨트롤러, 펄서, 극저온 장치 및 양자 칩)을 “양자 하드웨어"라고 부릅니다.

시스템 계층 구조 Link to heading

이는 올리비에가 제안한 것과 유사한 다음과 같은 계층 구조로 이어집니다.

  1. 양자 시스템: GPU, CPU, QPU를 함께 작동시키는 이기종 하이브리드 시스템. 2. 양자 컴퓨터: 양자 회로를 실행하고 확률적 출력을 생성하는 시스템. 3. 양자 하드웨어: QPU, 극저온 장치 및 PPU가 위치하는 물리적 부분.

다음은 몇 가지 유의사항입니다.

  • xPU: “GPU, CPU, QPU"를 언급했지만, 시스템에서 TPU와 NPU도 사용할 수 있으므로 모든 처리 장치를 포괄하는 일반적인 용어로 “xPU“를 사용할 수도 있었습니다.

  • PPU: PPU는 “펄스 처리 장치(Pulse Processing Unit)“의 약자입니다. 펌웨어가 실행되는 구성 요소로, 펄서의 제어 및 판독, (중간 회로) 시퀀싱, QEC 및 RTI 네트워킹을 담당합니다.

  • GPU vs PPU: GPU 또는 PPU에서 커널을 실행하는 것은 정보 전송 비용과 컴퓨팅 성능 간의 절충점을 고려해야 하며, 특히 PPU가 극저온 장치 내부에 배치될 경우 더욱 그렇습니다.

결론 Link to heading

이 짧은 메모는 QPU를 구동하는 양자 컴퓨팅 시스템의 다양한 구성 요소를 명확히 하는 데 도움이 되었습니다. QPU 관련 구성 요소를 더 쉽게 이해할 수 있도록 GPU 비유를 의도적으로 사용했습니다.

물론, 이것은 단순화된 설명이며, 많은 세부 사항은 의도적으로 생략했습니다. 이러한 세부 사항은 향후 메모에서 다루겠습니다. 그동안 관심 있으신 분들은 엔비디아의 CudaQ를 확인해 보세요. 이 다이어그램 상단에 나타난 설계상의 어려움들을 이미 상당 부분 해결해 놓았습니다.

또한 피드백을 주신 올리버 에르자티와 항상 통찰력 있는 질문과 게시물을 올려주시는 미카엘라 아이힝거께 감사드립니다.


References:

  • NVQLink: Real-time accelerated computing for every quantum processor
  • CudaQ: NVIDIA’s open platform for quantum computing and the foundation for accelerated quantum supercomputing
  • PPU: Real-Time Quantum Control at the Pulse Level
  • NVIDIA Ising

For reference, this is the initial diagram posted on LinkedIn:

Hybrid Quantum Computing System (incomplete version)

DrawIO diagrams used in this memo:


.drawio .webp .svg
gpu vs qpu stack v2

.drawio .webp .svg
gpu vs qpu stack v1

.drawio .webp .svg
gpu vs qpu stack v0