주간동아 1224

2020.01.31

궤도 밖의 과학

현실이 되어버린 공상, 양자컴퓨터

1만 년의 세월을 200초로 압축하다

  • 과학 커뮤니케이터 궤도

    nasabolt@gmail.com

    입력2020-01-29 15:02:44

  • 글자크기 설정 닫기
    양자우위를 달성했다고 발표된 구글의 양자컴퓨터 시카모어 [구글]

    양자우위를 달성했다고 발표된 구글의 양자컴퓨터 시카모어 [구글]

    홍콩의 영화배우 주성치 주연의 영화 ‘서유기’에 이런 대사가 등장한다. ‘진정한 사랑이 눈앞에 나타났을 때, 난 이를 소중히 여기지 않았지. 만약 하늘에서 다시 기회를 준다면, 사랑한다 말하겠소. 기한을 정하라고 한다면, 1만 년으로 하겠소.’ 사랑의 기한을 무려 1만 년으로 설정하면서, 진심을 담은 고백을 전하는 상황이다. 하지만 양자컴퓨터가 등장하면서 그 기한도 우스워지고 있다. 현존 최고 성능의 슈퍼컴퓨터로 최소 1만 년 이상 걸리는 계산을 단 200초 만에 풀어냈기 때문이다. 

    더 빠른 속도를 원하는 인간의 욕망은 끝이 없다. 컴퓨터도 마찬가지다. 데스크톱이나 노트북처럼 상용 컴퓨터로는 근본적으로 넘을 수 없는 속도가 존재한다. 그래서 등장한 것이 바로 슈퍼컴퓨터다. 컴퓨터의 성능을 나타내기 위해 플롭스(FLOPS, FLoating point Operations Per Second)라는 단위를 사용하는데, 1초 동안 수행할 수 있는 부동소수점 연산 횟수를 말한다. 

    컴퓨터는 모든 언어를 0과 1, 두 가지로만 이해하는 2진법을 사용한다. 우리가 쓰는 10진법의 모든 숫자를 단 두 가지의 숫자로만 표현한다는 소리다. 하지만 소수점 이하의 숫자 대부분은 이진법으로 전환할 경우 무한하게 순환하는 수가 돼버린다. 예를 들어 0.3을 이진법으로 표기하면 ‘0.01001100110011…’이 된다. 그래서 이를 근사하는 과정에서 소수점의 위치를 고정하지 않고, 그 위치를 나타내는 수를 따로 적게 된다. 이렇게 하면 컴퓨터가 10진법을 이해하기가 편해지며, 이걸 빨리해야 컴퓨터 연산속도도 빨라진다. 

    특히 2018년에 IBM에서 개발한 서밋(summit)은 무료 143페타플롭스의 성능을 자랑하는데, 1페타플롭스가 초당 1000조 번 연산이 가능하다는 뜻이라, 가정용 컴퓨터에 비하면 대충 1억5000 배 정도 빠르다. 엄청난 속도다. 그럼 이렇게 빠른 슈퍼컴퓨터의 원리는 무엇일까. 우선 일반적인 컴퓨터에 대해서 먼저 이야기해보자.

    컴퓨터와 슈퍼컴퓨터

    슈퍼컴퓨터 IBM서밋 [네이처]

    슈퍼컴퓨터 IBM서밋 [네이처]

    음식점을 예로 들어보자. 메뉴가 10개 이상인 분식집은 주문이 잘못 들어가는 경우가 꽤 있다. 하지만 메뉴가 하나뿐인 식당이라면, 주문하거나 하지 않은 경우만 고려하기에 실수가 거의 없다. 우리가 쓰는 10진법을 컴퓨터도 쓴다면 편할 텐데, 굳이 2진법을 쓰는 이유가 여기에 있다. 10진법이라면 전기신호를 10단계로 나누어서 각 숫자에 대응하는 전압을 줘야겠지만, 2진법이라면 들어오는 모든 명령을 전압이 있거나 없거나 단 두 가지로 처리할 수 있어서 오류가 확 준다. 



    주어진 모든 상황을 0과 1, 단 두 가지의 경우로 이해하고, 각각 계산하여 최적의 결과를 찾아내는 것이다. 그리고 이때 사용되는 정보 단위를 비트(bit)라고 부른다. 비트는 각각의 경우에서 0과 1 둘 중 하나를 표현하게 된다. 하지만 상황이 복잡해질수록 처리할 계산이 늘어나고, 대규모 연산을 훨씬 빠르게 해야 할 필요성이 생겼다. 그래서 슈퍼컴퓨터가 등장했다. 

    처음에는 인간의 뇌에 해당하는 중앙처리장치(CPU) 속도를 높여봤다. 그러다 한 명의 천재보다 집단지성이 낫지 않을까 하는 기대로 CPU 여러 개를 병렬로 연결하기 시작했다. 문제를 여러 명이 동시에 나누어 계산하고 나중에 합치는 방식이었다. 속도는 빨라졌지만, 과도하게 사용되는 전기와 엄청난 발열이 문제가 됐다. CPU가 늘어나다 보니 나누어 계산한 결과를 검산하는 시간도 점점 늘어났다. 

    더 빨라질 수 있는 다른 방법은 없을까? 이걸 고민하다가, 근본적인 질문으로 돌아갔던 과학자가 있었으니 영국의 이론물리학자 데이비드 도이치였다. 그는 생각했다. 과연 우리는 지금 컴퓨터를 제대로 만든 것일까? 지금의 컴퓨터는 0과 1로 계산을 하지만, 양자역학적으로 보면 정보의 상태는 0과 1 오직 두 가지만 존재하는 것이 아니다. 0이면서도 동시에 1인 중첩 상태도 고려해야 하지 않을까? 그리하여 양자컴퓨터의 기본 단위인 큐비트(qubit, quantum bit)가 등장했다.

    양자역학의 원리로 만들어진 컴퓨터

    시카모어 속 53개 큐비트 결맞음 상태도 [네이처]

    시카모어 속 53개 큐비트 결맞음 상태도 [네이처]

    정보의 중첩 상태, 관측하기 전까지 양자역학적으로 정보는 0이거나 1인 상태를 동시에 갖는다. 정보가 중첩된 것이 도대체 속도와 무슨 관계가 있을까? 목적지에 도착하는 가장 빠른 길을 찾고 싶어서 각각의 경로마다 걸리는 시간을 계산해야 한다고 가정하자. 만약 도달방법이 10가지라면, 가장 빠른 길을 찾기 위해서는 반드시 10개의 경로를 하나씩 계산해봐야 한다. 열 번의 계산이 끝난 후에야 비트에 저장된 각각의 결과를 비교하여, 비로소 가장 빠른 길이 일곱 번째 경로임을 알 수가 있다. 이게 기존 컴퓨터의 방식이다. 

    양자컴퓨터는 다르다. 정보가 중첩돼 있어서, 10가지 경로가 모두 중첩됐다고 가정해보자. 계산을 시작하면 결과가 관측되기 전까지 10개의 상태는 동시에 출발하고, 가장 먼저 목적지에 도달한 일곱 번째 경로가 관측되는 순간, 큐비트에 결과가 결정된다. 한 번의 계산으로 끝나는 것이다. 

    만약 중첩된 큐비트의 숫자 적다면, 그리 많은 계산을 한 번에 해내는 것은 불가능하다. 하지만 큐비트가 꽤 많이 중첩돼 있다면, 복잡한 상태를 동시에 계산할 수 있고, 연산이 훨씬 간단해진다. 닥터 스트레인지가 양자컴퓨터를 사용할 수 있었다면, 굳이 1400만605개의 미래를 하나씩 보고 올 필요가 없었을지도 모른다. 중첩된 모든 미래 중에서 승리한 하나의 미래가 바로 나왔을 테니까 말이다. 

    큐비트는 모든 것은 확률적으로 존재한다는 양자역학의 특성을 반영해 만들어졌다. 양자컴퓨터도 기존 컴퓨터처럼 이진법으로 두 자리 숫자(01,10, 11, 00)일 때는 2개의 큐비트가 필요하다. 하지만 단순히 개수만큼 정보가 저장되는 것이 아니라 4개의 상태가 나올 수 있는 각각의 확률 정보가 저장되기 때문에 저장된 정보는 4개가 된다. 큐비트가 3개라면 8개, 10개라면 무려 1024개의 정보가 들어있다는 말이다. 한 번에 처리하는 정보량이 기존 컴퓨터의 100배가 넘는다. 

    하지만 작동 원리가 달라서 이렇게 비교하는 건 쉽지 않다. 연산 횟수가 적고 한꺼번에 많은 정보를 처리할 수 있다고 해서 무조건 빠르다고 볼 수도 없다. 오히려 연산을 한 번 하는데 걸리는 시간이 기존 컴퓨터보다 훨씬 길면, 쓸모가 없다. 찢어버릴 종이 100장이 있을 때, 이걸 단숨에 자를 수 있는 칼을 쓴다면 좋겠지만, 한 번 써는데 걸리는 시간이 1시간이라면, 차라리 손으로 한 장씩 찢는 게 더 빠를 거라는 뜻이다. 

    1994년 미국의 컴퓨터과학자 피터 쇼어는 소인수 분해를 하다가 생각에 잠겼다. 만약 분해할 숫자가 매우 크다면, 양자컴퓨터가 기존 컴퓨터보다 훨씬 빠른 성능을 보이지 않을까? 찢어버릴 종이가 1억 장이라면, 1시간 걸리는 칼을 쓰는 게 낫다는 것이다. 막대한 계산이 필요한 물리학이나 수학은 월등한 계산 속도가 필요하다. 특히 암호 분야는 소수의 곱으로 만들어진 큰 수를 다시 분해하기 어렵다는 원리를 이용하기 때문에, 소인수 분해 속도가 빨라진다면 기존 보안 체계가 무력화될 가능성도 있었다. 

    하지만 쉽진 않았다. 우선 큐비트를 조작하기 위해서는 입자 수준의 정밀한 제어가 필요하며, 일정 시간 동안 서로 잘 맞아서(quantum coherence·결맞음) 중첩된 상태로 전부 얽혀 있어야 하는데, 큐비트의 숫자가 늘어나거나 온도가 올라가면 주변과 상호 작용하는 관측이 일어나서 어긋나고(quantum decoherence·결어긋남) 붕괴해버린다. 결과가 나오기 전에 연산이 엉망이 되는 것이다.

    ‘양자 우위’를 넘어 ‘양자 협업’으로

    피터 쇼어 [MIT]

    피터 쇼어 [MIT]

    양자컴퓨터가 기존 컴퓨터의 성능을 뛰어넘는 게 입증된 상태를 양자 우위(quantum supremacy)라고 한다. 이를 달성하기 위해서는 최소한 50개 이상의 큐비트가 필요한데, 현실적으로는 한자리수의 큐비트를 결맞음 상태로 유지하는 것조차도 쉬운 일이 아니었다. 기업들은 계속 미디어나 시연회를 통해 양자컴퓨터를 개발했다고 주장했지만, 구체적인 원리를 제대로 설명한 곳은 없었다. 

    2019년 10월 23일, 세계에서 가장 저명한 학술지인 영국의 네이처에 한 편의 논문이 올라왔다. 구글이 초전도소자를 이용해 개발한 53개 큐비트의 양자컴퓨터 시카모어(Sycamore)가 슈퍼컴퓨터로 1만 년 이상 걸리는 연산을 단 200초 만에 풀어냈다는 것이다. 보도자료가 아닌 논문으로 발표됐다는 것은 치밀한 검증과정을 통과했다는 뜻이다. 

    양자 중첩은 만들기도 어렵고, 유지하기도 힘들어서 양자컴퓨터는 절대 불가능하다는 과학자도 있다. 맞는 말이다. 양자역학의 세계에서 일어나는 일을 우리 뜻대로 다루는 건 쉽지 않다. 하지만 구글은 양자역학의 논리로 돌아가는 인공적인 양자계를 만드는 데 성공했다. 아주 복잡하고 의미 없는 계산일 수도 있다. 그렇지만 고전적인 컴퓨터로 할 수 없는 걸 해냈다. 이걸 아무 의미가 없다고 할 수 있을까. 

    양자컴퓨터 때문에 일반적인 컴퓨터가 사라지진 않을 것이다. 마치 우리가 라면을 끓여 먹고 나온 냄비 하나를 설거지할 때는 굳이 식기세척기를 사용하지 않는 것처럼 말이다. 양자 우위도 중요하지만, 양자 협업도 중요하다. 집에서 사용하는 가정용 컴퓨터에 도달할 때까지 큐비트가 결맞음 상태를 유지할 수 있다면, 미래에는 온라인으로 주요 연산 과정만 중앙의 양자컴퓨터를 이용하는 양자 클라우드 서비스를 사용하게 될지도 모른다. 

    무려 805번이나 실패를 했고, 첫 비행에서 고작 12초를 날았다. 라이트형제와 그들의 비행기 ‘라이트 플라이어’ 얘기다. 하지만 지금 우리는 그 비행기로 10시간을 넘게 태평양을 가로지른다. 양자 결맞음을 유지할 수 있는 시간이 지금은 짧을지 몰라도 영원히 짧은 채로 남아있지는 않을 거라고 본다. 우리는 그렇게 공상과학을 통해 발전해 왔고, 앞으로도 비슷하게 한 걸음씩 나아가리라.

    궤도_연세대 천문우주학과 학부 및 대학원을 졸업하고 한국천문연구원 우주감시센터와 연세대 우주비행제어연구실에서 근무했다. ‘궤도’라는 예명으로 팟캐스트 ‘과장창’, 유튜브 ‘안될과학’과 ‘투머치사이언스’를 진행 중이며, 저서로는 ‘궤도의 과학 허세’가 있다.



    댓글 0
    닫기