Qubit Allocation
Carregando...
Arquivos
Data
Autor(es)
Título da Revista
ISSN da Revista
Título de Volume
Editor
Universidade Federal de Minas Gerais
Descrição
Tipo
Dissertação de mestrado
Título alternativo
Primeiro orientador
Membros da banca
Vinicius Fernandes dos Santos
Sebastián Alberto Urrutia
Juliana Kaizer Vizzotto
Sylvain Collange
Sebastián Alberto Urrutia
Juliana Kaizer Vizzotto
Sylvain Collange
Resumo
Em Maio de 2016, a IBM lançou publicamente uma plataforma na nuvem que disponibilizava um computador quântico. A ideia de programar um computador quântico despertou muito entusiasmo. Porém, a programação em computadores quânticos ainda carece de compiladores e abstrações que linguagens de programações modernas usufruem. Para programar computadores quânticos universais, como o da IBM, o programador deve projetar circuitos de baixo nível. Em particular, é preciso mapear qubits lógicos em qubits físicos, os quais devem respeitar algumas restrições de conectividade. Essa tarefa lembra o começo da programação em computadores clássicos, onde o software era sintetizado em linguagem de máquina. Neste trabalho, iremos apresentar o problema de alocação de qubits, assim como apresentaremos uma solução exata para resolvê-lo. É possível utilizar esse algoritmo ótimo com computadores quânticos atuais, os quais não apresentam muitos qubits, não sendo escalável para próximas arquiteturas que estão por vir. Dessa forma, apresentamos também duas heurísticas para resolver esse problema. Uma delas é rápida, porém não muito eficiênte. A outra heurística é melhor que os algoritmos estado da arte existentes, porém apresenta um maior tempo de alocação.
Abstract
In May of 2016, IBM Research has made a quantum processor available in the cloud to the general public. The possibility of programming an actual quantum device has elicited much enthusiasm. Yet, quantum programming still lacks the compiler support that modern programming languages enjoy today. To use universal quantum computers like IBM's, programmers must design low-level circuits. In particular, they must map logical qubits into physical qubits that need to obey connectivity constraints. In this work, we shall formally introduce the qubit allocation problem and provide an exact solution to it. This optimal algorithm deals with the simple quantum machinery available today; however, it cannot scale up to the more complex architectures scheduled to appear. Thus, we will also provide heuristics to solve qubit allocation, one of which is faster, and another one that performs better than the current solutions already implemented to deal with this problem.
Assunto
Alocação de Registradores, Compiladores, Alocação de Qubits, Computação, Computação Quântica
Palavras-chave
Quantum Computing, Register Allocation, Qubit Allocation, Compilers