최근 연세대학교 국제캠퍼스의 양자컴퓨터 ‘IBM 퀀텀 원’이 가동을 시작하면서 한국도 양자컴퓨터 시대를 맞이했다. 기존 컴퓨터보다 비교할 수 없을 정도로 빠르고, 그동안 풀기 어려웠던 문제를 해결할 수 있다는 점에서 양자컴퓨팅은 큰 기대를 받고 있다. 과연 언제쯤 양자컴퓨팅이 기존 컴퓨팅을 대체할 수 있을까에 대한 관심도 계속 높아지고 있다.
양자컴퓨팅이 상용화되면, 비트코인 채굴이 순식간에 끝나고, 각종 암호화도 해제돼 무력화될 것이란 얘기가 많다. 사실 이는 너무 지나친 기대다. 양자컴퓨팅의 이론적 토대인 양자 역학도 아직 일부만 검증됐을 뿐 초기 단계에 머물러 있고, 양자컴퓨팅의 발전도 아직 걸음마 수준이다. 일단 IBM, 구글, 마이크로소프트 같은 기업은 2030년 이전을 양자컴퓨팅의 일반 상용화 시점 목표로 삼았다. 다만, 아직 진정한 상용화까지 넘어야 할 산이 많다. 하드웨어 개선에도 불구하고 초전도체 상태를 계속 유지하는 비용이 너무 비싼 게 대표적이다.
양자컴퓨팅의 개념과 이론적 토대를 일반 대중이 모두 이해할 필요는 없다. 현대적인 컴퓨터의 등장 후 프로그래밍과 알고리즘, 그리고 각종 툴이 발전하면서, 일반인의 컴퓨팅 접근성을 계속 낮춰온 것처럼 양자컴퓨팅의 발전도 그렇게 흘러갈 것이다. 물론 그런 대중화의 시점이 언제일지도 불투명하다.
양자컴퓨터와 양자컴퓨팅의 구분
먼저, 양자컴퓨터와 양자컴퓨팅이란 용어를 구분할 필요가 있다.
양자컴퓨터는 하드웨어를 가리킨다. 양자컴퓨터는 양자 역학 현상을 이용하는 컴퓨터로, 물리적 물질에서 나타나는 입자와 파동의 특성을 특수한 하드웨어를 사용해 활용한다. 현재 초전도체나 이온 트랩 등의 기술로 구현되고 있다.
현대 컴퓨터의 기본 정보 단위인 비트 대신 ‘큐비트(Qbit)’란 단위를 사용한다. 큐비트는 양자 중첩과 양자 얽힘 같은 특성을 활용한다.
양자컴퓨팅은 이런 양자컴퓨터를 활용해 연산을 수행하는 계산 방법론이다. 양자컴퓨터에서 실행되는 이론, 알고리즘 등을 가리킨다. 양자컴퓨터란 특수 하드웨어 없이 양자역학의 특성을 활용한 시뮬레이션을 고전 컴퓨터에서 수행하면 그것도 양자컴퓨팅이다.
중첩과 얽힘
양자컴퓨팅은 고전적 이진법을 사용하지만, 큐비트란 전혀 다른 정보 단위를 사용한다. 일반 컴퓨터에서 사용하는 비트는 0과 1이란 값 중 하나만 갖는다. 반면 큐비트는 0과 1을 함께 갖고 있으며, 두 특성을 동시에 가질 수 있는 ′중첩’ 특성이 나타난다.
두 개 이상의 큐비트가 먼 거리에서도 연결돼 상호작용하는 현상이 나타나는데, 이를 양자 얽힘이라 한다. 이 양자 얽힘을 활용하면 복잡한 연산을 더 빠르게 수행할 수 있다.
이런 양자 중첩과 얽힘의 상태를 활용하는 방식에 초전도, 이온트랩, 광학, 스핀 등이 있다. 어떤 방식을 활용하느냐로 양자컴퓨터 하드웨어가 구분된다.
양자 우위(quantum supremacy)
양자컴퓨팅의 대중화를 가늠하는 단어는 ‘양자 우위(quantum supremacy)’ 혹은 ‘양자 이점(quantum advantage)’으로 불린다.
양자 우위는 쉽게 말해 고전 컴퓨터보다 양자컴퓨터가 어떤 문제에서도 월등한 우월성을 입증한 것을 말한다. 위키피디아는 프로그래밍 가능한 양자컴퓨터가 어떤 고전적 컴퓨터로도 해결 못한 문제를 월등하게 해결할 수 있다는 것을 입증하는 목표라고 설명한다.
양자 우위란 말은 2012년 이론물리학자 존 프레스킬이 만들었다. 그리고 그 개념은 1980년 유리 마닌에 의해 수립됐다.
양자 우위는 하드웨어와 알고리즘 등 모든 작업에서 고전 컴퓨터를 앞서는 단계다. 이 때는 양자컴퓨팅 비용이 고전 컴퓨터보다 싸져서 쓰지 않을 수 없는 상태기도 하다.
양자 우위를 달성했다는 선언은 상용화, 대중화로 갈 수 있다는 게 된다. 그래서 양자 우위 달성이 마케팅, 과대광고 등으로 사용되거나, 경쟁자 간 비판거리가 된다.
문제는 양자 우위를 어떻게 판단, 입증할 것이냐다. 그래서 양자 우위 벤치마크가 다양하게 제안됐다. 현재까지 확정적인 양자 우위 입증법은 없다. 방법에 따라 결과가 달라지기도 하기에 많은 논쟁이 일어난다.
지난 2019년 구글이 ‘시카모어 프로세서’란 양자컴퓨터로 당시 세계에서 가장 빠른 슈퍼컴퓨터인 ‘IBM 서밋’ 성능을 압도했다고 발표했다. 54개 큐비트 배열로 서밋 컴퓨터로 1만년 걸릴 계산을 200초만에 완료했다는 것이었다.
이에 IBM은 서밋으로 2.5일이면 완료할 수 있는 작업이라고 반박했고, 여러 연구자가 시카모어 프로세서와 서밋 간 격차를 줄이는 연구 성과를 내놨다. 급기야 고전 컴퓨터로 시카모어 프로세서를 능가하기도 했다.
양자 우위 단계는 아직까지 달성됐다고 보긴 힘들다. 구글 시카모어 프로세서의 사례는 특정 작업에서만 양자 우위를 달성했다는 점에서 한계를 갖는다. 양자 우위를 달성하는 방법으로 큐비트 개수를 늘리는 큐비트 프로세서의 개발과 함께, 양자 오류를 줄이는 방법이 제안됐는데 아직 어느 하나 확실히 달성되지 않았다.
양자 오류(Quantum error)
양자컴퓨터의 핵심인 양자 중첩은 확정된 답을 주지 않는다는 근본적인 특징을 갖는다. 어느 땐 0일수도, 어느 땐 1일수도 있어서 연산마다 다른 답을 낸다. 이를 수없이 행하면 일정 수준의 확률이 나온다. 양자컴퓨팅은 그래서 명확한 답을 제시하는 대신 어느정도의 확률을 답으로 내놓는다.
만약 특정한 중첩 상태를 유지한다면 그것은 결국 중첩을 손상시키는 게 된다.
양자 오류는 양자컴퓨팅의 노이즈로 통하며, 양자컴퓨팅의 상용화를 가로막는 주요 요인이다.
이런 양자 오류를 해소하는 기법으로 양자 오류 억제, 오류 완화, 오류 정정 등의 방법이 고안돼 개발되고 있다. 이런 오류 해소 기법은 다시 하드웨어 한계에 부딪치는데, 향후 하드웨어적인 큐비트 수가 충분히 늘어나면 오류를 줄이고 정정하는 어려움도 줄어들 것으로 기대되고 있다.
현재 1000개 이상의 큐비트 프로세서로 양자 오류를 해소할 수 있을 것으로 예상된다. IBM은 1000 큐비트 이상의 프로세서를 이미 선보였고, 2025년 4000 큐비트의 하드웨어를 공개하겠다고 밝히고 있다.
양자 유용성(Quantum Utility)
양자 우위가 과대광고란 비판에 직면하면서 관련 업계는 타협안을 제시하고 있다.
IBM은 ‘양자 유용성’이란 개념을 제시했다. 2023년 IBM은 네이처에 게재한 논문에서 IBM 이글 프로세서가 기존 컴퓨팅을 사용한 무차별 대입 시뮬레이션 방식으로는 불가능했던 정확한 계산을 수행할 수 있는 성능을 보유했다고 발표했다. 그리고 이 성능을 ‘양자 유용성 단계’라고 표현했다.
양자 유용성은 양자컴퓨터가 정확한 솔루션을 제공하는 고전 컴퓨팅 방법을 넘어서는 규모에서 신뢰할 수 있는 계산을 수행할 수 있을 때로 설명된다. 고전 컴퓨팅의 대안으로 양자컴퓨팅을 사용할 수 있다는 것이다.
특정 속도를 달성했다는 양자 우위와 달리 양자 유용성은 특정 과학적 연구에서 유용한 도구로 활용될 수 있는 수준이란 표현을 쓴다. 이런 양자 유용성 단계를 거쳐 점진적으로 양자 우위 단계에 도달하게 될 것이란 설명이다.
마이크로소프트는 양자 우위보다 실용적 측면을 강조하는 ‘양자 이점’ ‘양자 실용성’이란 목표를 추구해야 한다는 입장이다. 양자컴퓨팅이 여러 난제를 풀 수 있겠지만, 모든 문제를 해결할 정도의 환상적 물건은 아니다는 것이다.
때문에 양자컴퓨팅을 활용했을 때 이익을 얻을 수 있는 분야를 찾아서 역량을 투입해야 한다고 주장한다.
양자컴퓨팅을 향상시키려면 알고리즘과 하드웨어 전반에 걸친 개선이 필요하다. 현재 상황에서 양자컴퓨팅을 무조건 사용하자는 주장은 지나친 낙관주의란 게 요지다.
큐비트를 가상화한다, 양자 논리 큐비트
마이크로소프트는 지난달 개최한 ‘마이크로소프트 이그나이트2024’에서 아톰컴퓨팅과 함께 중성 원자로 만든 24개의 논리적 큐비트 기반의 양자컴퓨터를 상용화한다고 발표했다.
물리적인 큐비트 대신 논리적으로 큐비트를 구현해 연산의 신뢰성을 높일 수 있다고 설명했다. 아톰컴퓨팅은 중성 원자를 큐비트로 사용해 빛의 펄스로 조작함으로써 양자 정보를 저장하고 처리한다고 한다. 마이크로소프트는 큐비트 가상화 시스템을 아톰컴퓨팅의 중성원자 큐비트에 적용해 24개의 논리적 큐비트를 생성했다고 밝혔다.
마이크로소프트는 애저 퀀텀 컴퓨팅 플랫폼을 통해 큐비트 가상화 시스템 기반의 양자컴퓨터를 내년부터 제공할 예정이다.
글. 바이라인네트워크
<김우용 기자>yong2@byline.network