바로가기 메뉴
본문 바로가기
대메뉴 바로가기

TECH M

양자컴퓨터는 안나왔는데 프로그래밍 언어는 속속 등장

2017-12-26황치규 기자

양자(quantum) 컴퓨팅 기술은 아직 초기 단계다. 몇몇 대기업과 연구소들이 양자컴퓨팅에 대한 기술 개발을 진행중이다. 

이런 가운데 양자 컴퓨팅을 지원하는 프로그래밍 언어들은 속속 등장하고 있어 주목된다.

마이크로소프트도 최근 양자 컴퓨팅용 고수준 프로그래밍 언어 큐샵(Q#)과 관련 도구를 공개했다. 고수준 프로그래밍 언어는 추상적이어서 하드웨어에 대해 몰라도 프로그래밍을 할 수 있다.

MIT테크놀로지리뷰에 따르면 양자컴퓨터가 상용화되지 않았음에도 관련 프로그래밍 언어를 먼저 내놓은 것에 대해 마이크로소프트의 크리스타 스보어 연구원은  "현재 컴퓨터용으로 짜여진 프로그램들은 양자 컴퓨터에서 돌아가지 않기 때문"이라고 설명했다. 프로그래밍 언어가 있어야, 개발자들이 양자 컴퓨팅을 접할 수 있게 되고,  상용화도 그만큼 빨라질 수 있다는 얘기다.

 양자 컴퓨터의 핵심은 양자 비트 또는 큐빗(qubit)이라고 부르는 정보의 기본 단위에 있다. 기존 컴퓨터에서 0과 1을 의미하는 트랜지스터에 대응하는 것이다.

큐빗은 0과 1로 이뤄진 비트와 다른 두 가지 특성을 갖는다.  0과 1을 동시에 가질 수 있고 양자 얽힘(quantum entanglement)이라는 현상에 의해 다른 큐빗에 영향을 줄  수 있다. 이 두 가지 성질은 특정 계산에서 양자컴퓨터가 정답을 빠르게 구할 수 있도록 만든다

이를 통해 대규모 병렬 프로세싱 파워를 구현할 수 있고, 이것은 재료과학에서부터 인공지능에 이르기까지 중요한 기술 혁신으로 이어질 수 있다. 양자 컴퓨팅에 대한 관심이 커지는 이유다. 

양자 컴퓨팅을 어떻게 활용할지 파악하려면 이를 지원하는 프로그래밍 언어가 필요하다. 양자 컴퓨팅용 프로그래밍에는 현재 컴퓨터 프로그래밍에서는 없는 제약이 따른다. 일련의 지시를 반복하는 루프 없이 컴플리션을 통해 바로 실행해야 하는 것도 그중 하나다.

마이크로소프트는 이같은 문제에 대응하기 위해 현재 나와 있는 몇몇 프로그래밍 언어와 큐샵을 함께 쓸 수 있도록 했다.

양자컴퓨터에 대해 잘 모르는 개발자들은 기존에 쓰던 프로그래밍 언어로 프로그램을 만들고 양자 컴퓨팅과 관련된 상황에선 큐샵 언어를 사용할 수 있다.

마이크로소프트는  개발자들이 큐샵으로 개발한 프로그램을 데스크톱이나 애저 클라우드 서비스에서 테스트할 수 있게 해주는 시뮬레이터도 선보였다. 마이크로소프트 외에 IBM도 유사한 시뮬레이터를 제공하고 있다.  일부 개발자들은 개발한 소프트웨어를 양자 컴퓨터에서 직접 돌려볼 수도 있다.

메릴랜드대학 양자 프로그래밍 언어 전문가인 샤오디 우는 양자컴퓨팅용 고수준 프로그래밍 언어는 보다 많은 사람들이 양자컴퓨터를 사용하도록 하는 것은 물론 관련 분야 새로운 연구를 이끌 것으로 기대했다.

일각에선 양자컴퓨팅 프로그래밍 언어를 오픈소스로 풀어야 한다는 목소리도 들린다. 그래야 광범위한 개발자 커뮤니티의 참여가 가능해지고 리눅스가 인터넷에 가져다 준 것과 같은 효과를 낼 수 있다는 설명이다.

[테크M=황치규 기자(delight@techm.kr)]