왜 하드웨어 용어가 필요한가
양자 회로는 이상적인 유니터리 연산처럼 보이지만 실제 장비에서는 제한된 연결, 제한된 native gate, 잡음, 측정 오류, calibration 상태에 묶입니다. 그래서 같은 알고리즘이라도 어떤 장비에서 돌리느냐에 따라 결과가 크게 달라집니다.
Coherence time, T1, T2
coherence time은 큐비트가 양자상태의 유용한 정보를 유지할 수 있는 시간척도입니다. 가장 많이 보는 값은 T1과 T2입니다.
| 용어 | 의미 | 회로설계에서의 영향 |
|---|---|---|
| T1 | 에너지 완화 시간 | 회로가 길면 |1\rangle 성분이 사라질 위험이 커집니다. |
| T2 | 위상 보존 시간 | 간섭 기반 알고리즘에서 상대 위상이 흐려집니다. |
회로 깊이를 줄이는 이유는 단순히 빠르게 실행하기 위해서가 아니라, 큐비트가 정보를 잃기 전에 계산을 끝내기 위해서입니다.
Gate fidelity와 error rate
gate fidelity는 실제 게이트가 이상적인 게이트와 얼마나 가까운지 나타냅니다. error rate는 그 반대 방향의 지표로 읽으면 됩니다.
$$
\text{high fidelity} \approx \text{low gate error}
$$
단일 큐비트 게이트보다 2큐비트 게이트가 보통 더 비싸고 오류율도 큽니다. 따라서 회로설계에서는 CX 개수, 회로 깊이, 2큐비트 게이트 배치를 줄이는 것이 중요합니다.
Readout error와 shots
측정은 마지막에 고전 비트열을 얻는 과정입니다. readout error는 실제 상태와 측정 결과가 어긋나는 오류입니다.
shots는 같은 회로를 반복 실행한 횟수입니다. 양자컴퓨터는 확률분포를 샘플링하므로 한 번 실행해서 답을 확정하는 경우는 드뭅니다.
$$
\hat{p}(x)= { \text{count}(x) \over \text{shots} }
$$
shots를 늘리면 샘플링 오차는 줄지만 실행 시간이 늘어납니다. readout error가 크면 shots를 늘려도 편향된 결과가 반복될 수 있으므로 readout mitigation이 필요할 수 있습니다.
Calibration
calibration은 장비가 현재 어떤 상태인지 측정하고 제어 파라미터를 조정하는 과정입니다. 큐비트 주파수, pulse shape, gate duration, readout threshold 등이 시간에 따라 드리프트할 수 있습니다.
소프트웨어 사용자 입장에서는 같은 회로라도 실행 날짜, 장비 상태, calibration 직후인지 여부에 따라 결과가 달라질 수 있다는 점을 기억해야 합니다.
Connectivity와 topology
모든 큐비트 쌍에 바로 CX를 걸 수 있는 것은 아닙니다. 장비는 보통 제한된 연결 그래프를 가집니다.
회로가 연결되지 않은 큐비트 사이의 2큐비트 게이트를 요구하면 transpiler는 SWAP을 추가해서 상태를 이동시킵니다.
$$
\text{nonlocal CX}
\quad\Rightarrow\quad
\text{SWAP insertion}
\quad\Rightarrow\quad
\text{more depth and errors}
$$
따라서 회로설계에서는 논리 큐비트를 물리 큐비트에 어떻게 배치할지, 어떤 큐비트 쌍에 2큐비트 게이트가 집중되는지 확인해야 합니다.
Native gate와 transpilation
우리가 회로에 쓰는 H, CX, Rz 같은 게이트가 장비에서 그대로 실행되는 것은 아닙니다. 각 하드웨어는 native gate set을 갖고, transpiler가 회로를 그 집합으로 변환합니다.
좋은 회로는 수학적으로 짧은 회로가 아니라, 대상 하드웨어의 native gate와 topology로 변환했을 때도 짧고 안정적인 회로입니다.
Job, queue, backend
backend는 실행 대상 장비나 simulator입니다. 실제 장비는 queue가 있고, job으로 제출한 회로는 calibration 상태와 대기열 상황에 영향을 받습니다.
실험 로그에는 backend 이름, 실행 시각, shots, transpiler 설정, seed, calibration snapshot을 남기는 것이 좋습니다.
회로설계 체크리스트
- 2큐비트 게이트 수가 과도하게 많지 않은가?
- 회로 깊이가 T1/T2에 비해 너무 길지 않은가?
- 장비 topology 때문에 SWAP이 많이 추가되지 않는가?
- 측정해야 하는 큐비트의 readout error가 큰 편은 아닌가?
- shots 수가 샘플링 오차를 줄이기에 충분한가?
- 실행한 backend와 calibration 정보를 기록했는가?
참고자료
- IBM Quantum Documentation, backends, transpiler, noise and measurement topics.
- Google Quantum AI documentation, Cirq devices and operations.
- Nielsen and Chuang, Quantum Computation and Quantum Information.