[기획] 양자컴퓨터가 돌기도 전에 ‘수십억 게이트’에서 막힌다…데이터베이스로 1024비트 쇼어 회로까지 펼친 Pandora

김동현 기자 · 입력 2026.11.04 07:08
알토대 연구진, 게이트를 PostgreSQL 행으로 저장해 초대형 양자회로의 메모리·병렬처리 병목 완화
기사 대표 이미지
(사진 출처=Aalto University / Matti Ahlgren)

양자컴퓨터에 계산을 시키려면 먼저 실행 설명서를 만들어야 한다. 그런데 계산이 시작되기도 전에, 기계에 시킬 동작을 한 줄씩 풀어 쓰는 고전 컴퓨터가 수십억 개의 명령 앞에서 막힐 수 있다. 기존 방식이 수십억 줄짜리 원고를 RAM이라는 책상에 한꺼번에 펼치는 데 가깝다면, 핀란드 알토대학교 연구진이 개발한 ‘Pandora’는 각 줄을 색인된 서고에 넣고 필요한 부분만 찾아 여러 작업자가 동시에 고치는 방식이다.

Pandora는 양자컴퓨터도, 양자 시뮬레이터도 아니다. 이오아나 모플릭과 알렉산드루 팔레르 연구진이 고전 컴퓨터에서 초대형 양자회로를 저장·컴파일·변환·검사하도록 만든 오픈소스 소프트웨어다. 연구진은 최대 1024비트 입력 규모의 쇼어 알고리즘 회로를 ‘완전 컴파일’했다. 여기서 완전 컴파일은 논문이 정한 최대 3큐비트 게이트 집합까지의 전개를 뜻한다. 실제 양자 칩에서 계산을 실행했다는 의미는 아니다.

양자 계산보다 먼저 커지는 ‘명령서’

양자 알고리즘은 처음부터 장치가 이해하는 작은 동작들로 적혀 있지 않다. 큰 기능을 나타내는 고수준 명령을 더 작은 게이트로 계속 분해해야 한다. 게이트는 양자 상태에 가하는 기본 연산이다. 문제 규모가 커지면 이 설명서도 급격히 불어나며, 회로 전체를 메모리에 올려 고치던 고전 소프트웨어가 먼저 한계에 닿을 수 있다.

연구진이 다룬 쇼어 알고리즘은 정수를 인수분해하는 양자 알고리즘이다. 여기서 1024비트는 큐비트 수가 아니라 인수분해 대상 정수의 비트 길이다. 1024비트 양의 정수는 최대 309자리 십진수에 해당한다. Pandora가 이 정수를 실제로 인수분해한 것도, RSA-1024를 해독한 것도 아니다. 거대한 건축 도면을 저수준 단계까지 펼친 것이지, 그 도면대로 건물을 세운 것은 아니라는 구분이 필요하다.

연구진은 Google Qualtran으로 만든 고수준 쇼어 회로를 사용했다. 당시 Qualtran 0.6에는 반복 블록인 ‘CtrlScaleModAdd’를 필요한 수준까지 내리는 하위 분해가 없었기 때문에 pyLIQTR의 분해를 이용했다. CtrlScaleModAdd 한 종류를 CNOT·Toffoli·CSWAP·단일 큐비트 Clifford 게이트까지 분해해 Pandora에 저장한 뒤 전체 논리 회로를 구성할 때 재사용했다. 같은 ‘양념장 만들기’ 지시가 수없이 반복될 때 상세 레시피를 한 번 작성해 꺼내 쓰는 캐시 방식이다. 모든 반복 블록을 매번 처음부터 새로 분해한 것은 아니다.

게이트 하나가 데이터베이스의 한 행이 됐다

Pandora의 핵심은 양자 현상이 아니라 데이터베이스 설계다. PostgreSQL 14에서 게이트 하나를 테이블의 한 행으로 저장하고, 각 행에 같은 큐비트에서 바로 앞뒤에 놓인 게이트를 가리키는 PREV·NEXT 계열 포인터를 둔다. 이렇게 저장된 회로는 앞뒤 연결을 따라갈 수 있는 이중 연결 목록이자 그래프와 비슷한 구조가 된다. 현재 표현은 1·2·3큐비트 게이트를 지원하며, 3큐비트 게이트로 Toffoli를 명시적으로 다룬다.

게이트 검색·삽입·삭제·치환은 PL/pgSQL 저장 프로시저와 SQL 트랜잭션으로 처리한다. 여러 작업자는 바꾸려는 후보 행과 이웃 행에 잠금을 건 뒤 회로를 수정한다. 잠금을 얻지 못하면 그 후보를 건너뛰기 때문에 서로 다른 구간을 병렬로 다룰 수 있다. 입력과 출력도 고정 크기 배치로 스트리밍하고 처리한 배치를 메모리에서 해제한다. 회로 전체를 RAM에 동시에 펼쳐 둘 필요가 없는 이유다.

여러 HPC 노드에서는 각 노드의 데이터베이스 컨테이너로 일을 나누는 map-reduce형 구성도 지원한다. 연구진은 LUMI 슈퍼컴퓨터에서 관련 기능을 시험했다. Pandora는 이처럼 인덱스·트랜잭션·행 잠금·스트리밍·병렬처리라는 고전 소프트웨어 공학의 도구를 양자회로에 옮겼다.

77억 게이트를 다뤘지만 부담이 사라진 것은 아니다

별도의 Fermi–Hubbard 응용 사례에서는 pyLIQTR가 만든 100×100 회로 약 77억 개의 Clifford+T 게이트를 처리했다. 77억 개를 1초에 하나씩 읽는다고 단순 환산하면 약 244년이 걸리는 규모다. 한 페이지에 50개씩 적으면 약 1억5400만 페이지, 500쪽짜리 책 약 30만8000권에 해당한다. 이 수치는 크기를 체감하기 위한 단순 환산이며, 쇼어 회로의 게이트 수가 아니다.

50×50 Fermi–Hubbard 회로는 약 5억1400만 게이트였다. 연구진은 16코어에서 이를 데이터베이스에 저장하는 처리율로 최대 초당 27만 게이트를 제시했다. 이는 상한 저장 속도이지 평균 속도나 전체 컴파일 속도가 아니다. 논문은 100×100 파이프라인에서 pyLIQTR의 분해와 데이터베이스 삽입이 오래 걸렸다고 보고했다. 검색이 빨라져도 원천 소프트웨어의 분해와 디스크 입출력이 다음 병목이 될 수 있다는 뜻이다.

메모리 부담 역시 없어졌다기보다 일부가 저장장치로 이동했다. 저자 저장소의 운영 추정치는 게이트 10억 개당 약 100GB다. 이를 77억 게이트에 단순 비례하면 약 770GB지만, 실제 실험에서 측정한 점유량은 아니다. 회로 전체를 RAM에 올리지 않아도 수백GB급 저장장치와 데이터베이스 운영 비용은 남는다.

Qiskit·TKET와의 성능 비교도 범위를 좁혀 읽어야 한다. 연구진은 1만∼10만 개의 무작위 CNOT 회로에 특정 방향 반전 패턴을 0.1%·1%·10% 비율로 넣고 찾아 고치는 시험을 했다. Pandora는 1만 게이트를 넘는 특정 시험, 특히 희소한 패턴을 인덱스로 찾는 조건에서 강점을 보였다. 모든 회로 합성·최적화·라우팅에서 항상 빠르다는 결과는 아니다.

도면 다음에는 하드웨어라는 더 긴 길이 남는다

Pandora가 만든 결과는 물리적 양자 프로세서에 곧바로 투입할 수 있는 실행 파일이 아니다. 특정 칩의 큐비트 연결 구조에 맞춘 배치와 라우팅, 장치 고유의 네이티브 게이트 변환, 오류보정 코드 배치, 스케줄링과 펄스 생성은 포함하지 않았다. 등가성 검사 역시 동일 회로 또는 한쪽에서 CNOT 하나를 제거한 제한된 사례를 대상으로 했으며, 비동등성 검사는 확률적이다. 공개 코드와 일부 재현 안내는 있지만 제3자가 1024비트 쇼어와 77억 게이트 결과 전체를 같은 조건에서 독립 재현했다는 공개 보고도 확인되지 않았다.

그럼에도 의의는 분명하다. Pandora는 양자 효과를 새로 발견한 연구가 아니라, 초대형 양자회로 명세를 실제 데이터 구조로 저장하고 나눠 다룰 길을 넓힌 연구다. 논문은 2025년 8월 처음 공개됐고, 동료심사를 거쳐 2026년 9월 채택된 뒤 10월 30일 온라인 공개됐다. 현재 문서는 추가 편집 전 early accepted version이며, 코드는 MIT 라이선스로 공개됐다.

국내에서도 ETRI가 양자 컴파일과 회로 합성·최적화, 오류정정, 결함허용 양자컴퓨팅과 대규모 자원 분석을 연구 분야로 제시하고 있다. KISTI는 IonQ의 100큐비트급 Tempo를 도입해 국가 슈퍼컴퓨터와 연결하는 양자–고전 하이브리드 환경을 추진한다. 과학기술정보통신부의 제1차 양자종합계획도 양자컴퓨터·HPC·AI 통합 인프라를 제시하고, 2035년까지 양자 인재 1만명과 양자기업 2000개, 2030년까지 5개 분야 양자클러스터 조성을 정부 목표로 뒀다. 다만 국내 기관이 Pandora를 도입했거나 같은 결과를 재현했다는 공식 자료는 확인되지 않았다. 국내 계획과 Pandora는 초대형 양자 계산을 뒷받침할 고전 컴퓨팅 기반이 중요하다는 점에서 기술적으로 맞닿아 있을 뿐이다.

자료: 알토대학교, npj Quantum Information, ETRI, KISTI, 과학기술정보통신부

저작권자 © 한국R&D신문 — 무단 전재 및 재배포 금지
김동현 기자 dh.kim@k-rnd.net
전자·AI·소프트웨어 — 전자회로·통신·임베디드, 생성형 AI·머신러닝·데이터
댓글 0 최신순 추천순

첫 댓글을 남겨보세요.

0 / 400 · 회원 로그인 시 닉네임으로 작성 · 비회원 수정은 작성 후 1분 이내