Simulação quântica com compilação just-in-time

Nó Fonte: 1677644

Stavros Efthymiou1, Marco Lazzarin1, Andrea Pasquale1,2, e Stefano Carrazza1,2,3

1Quantum Research Center, Technology Innovation Institute, Abu Dhabi, Emirados Árabes Unidos.
2TIF Lab, Dipartimento di Fisica, Università degli Studi di Milano e INFN Sezione di Milano, Milão, Itália.
3CERN, Departamento de Física Teórica, CH-1211 Genebra 23, Suíça.

Acha este artigo interessante ou deseja discutir? Scite ou deixe um comentário no SciRate.

Sumário

As tecnologias quânticas estão se movendo em direção ao desenvolvimento de novos dispositivos de hardware baseados em bits quânticos (qubits). Paralelamente ao desenvolvimento de dispositivos quânticos, são necessárias ferramentas de simulação eficientes para projetar e comparar algoritmos e aplicativos quânticos antes da implantação em hardware quântico. Nesse contexto, apresentamos uma primeira tentativa de realizar simulação quântica baseada em circuitos usando a técnica de compilação just-in-time (JIT) em várias arquiteturas e configurações de hardware baseadas em unidades de processamento central (CPUs) de nó único e unidades de processamento gráfico ( GPU). Um dos maiores desafios no desenvolvimento de código científico é equilibrar o nível de complexidade entre algoritmos e técnicas de programação sem perder desempenho ou degradar a legibilidade do código. Nesse contexto, desenvolvemos $texttt{qibojit}$: um novo módulo para o framework de computação quântica Qibo, que usa uma abordagem de compilação just-in-time por meio do Python. Realizamos benchmarks de desempenho sistemáticos entre nossa abordagem JIT e um subconjunto de bibliotecas relevantes publicamente disponíveis para computação quântica. Mostramos que nossa nova abordagem simplifica os aspectos complexos da implementação sem deteriorar o desempenho.

As tecnologias quânticas estão se movendo em direção ao desenvolvimento de novos dispositivos de hardware baseados em bits quânticos (qubits). Paralelamente ao desenvolvimento de dispositivos quânticos, são necessárias ferramentas de simulação eficientes para projetar e comparar algoritmos e aplicativos quânticos antes da implantação em hardware quântico. Nesse contexto, apresentamos uma primeira tentativa de realizar simulação quântica baseada em circuitos usando a técnica de compilação just-in-time (JIT) em várias arquiteturas e configurações de hardware baseadas em unidades de processamento central (CPUs) de nó único e unidades de processamento gráfico ( GPU).

► dados BibTeX

► Referências

[1] J. Preskill, Quantum 2, 79 (2018).
https:/​/​doi.org/​10.22331/​q-2018-08-06-79

[2] F. Arute et al., Nature 574, 505 (2019).
https:/​/​doi.org/​10.1038/​s41586-019-1666-5

[3] H.-S. Zhong, H. Wang, Y.-H. Deng, M.‑C. Chen, L.‑C. Peng, Y.-H. Luo, J. Qin, D. Wu, X. Ding, Y. Hu, et al., Science 370, 1460 (2020).
https: / / doi.org/ 10.1126 / science.abe8770

[4] Pesquisa do Google, Google AI Quantum (2017).
https://​/​research.google/​teams/​applied-science/​quantum/​

[5] Pesquisa IBM, IBM Quantum Experience (2016).
https://www.ibm.com/​quantum-computing/​

[6] Rigetti, Rigetti Computação (2017).
https://www.rigetti.com/​

[7] Intel Corporation, Intel Quantum Computing (2017).
https://www.intel.com/​content/​www/​us/​en/​research/​quantum-computing.html

[8] Sistemas D-Wave, The Quantum Computing Company (2011).
https://www.dwavesys.com/​

[9] Sistemas D-Wave, D-Wave Neal.
https://github.com/​dwavesystems/​dwave-neal

[10] IL Markov, A. Fatima, SV Isakov e S. Boixo, arXiv preprint arXiv:1807.10749 (2018a).
arXiv: 1807.10749

[11] J. Chen et al., Simulação clássica de circuitos quânticos de tamanho intermediário (2018), arXiv:1805.01450 [quant-ph].
arXiv: 1805.01450

[12] S. Efthymiou, S. Ramos-Calderer, C. Bravo-Prieto, A. Pérez-Salinas, D. García-Martín, A. Garcia-Saez, JI Latorre e S. Carrazza, Quantum Science and Technology 7, 015018 ( 2021).
https:/​/​doi.org/​10.1088/​2058-9565/​ac39f5

[13] A equipe Qibo, qiboteam/​qibo: Qibo.
https: / / doi.org/ 10.5281 / zenodo.3997194

[14] S. Carrazza, S. Efthymiou, M. Lazzarin e A. Pasquale, no 20º Workshop Internacional sobre Computação Avançada e Técnicas de Análise em Pesquisa Física: IA Decodificada – Rumo a uma Computação Científica Sustentável, Diversificada, de Desempenho e Eficaz (2022) arXiv:2202.07017 [quant-ph].
arXiv: 2202.07017

[15] A equipe Qibo (2022).

[16] S. Carrazza, S. Efthymiou, M. Lazzarin e A. Pasquale, qiboteam/​qibojit: qibojit.
https: / / doi.org/ 10.5281 / zenodo.5071354

[17] SK Lam, A. Pitrou e S. Seibert, em Proceedings of the Second Workshop on the LLVM Compiler Infrastructure in HPC (2015), pp. 1–6.

[18] R. Okuta, Y. Unno, D. Nishino, S. Hido e C. Loomis, em Proceedings of Workshop on Machine Learning Systems (LearningSys) na Trigésima Primeira Conferência Anual sobre Sistemas de Processamento de Informações Neurais (NIPS) (2017) .
http://​/​learningsys.org/​nips17/​assets/​papers/​paper_16.pdf

[19] G. Aleksandrowicz et al., Qiskit: Uma estrutura de código aberto para computação quântica (2019).
https: / / doi.org/ 10.5281 / ZENODO.2562110

[20] Cirq Developers, Cirq (2021), Veja a lista completa de autores no Github: https:/​/​github .com/​quantumlib/​Cirq/​graphs/​contributors.
https: / / doi.org/ 10.5281 / zenodo.5182845

[21] Equipe e colaboradores da Quantum AI, qsim (2020).
https: / / doi.org/ 10.5281 / zenodo.4023103

[22] DS Steiger, T. Häner e M. Troyer, Quantum 2, 49 (2018).
https:/​/​doi.org/​10.22331/​q-2018-01-31-49

[23] T. Häner, DS Steiger, K. Svore e M. Troyer, Quantum Science and Technology 3, 020501 (2018).
https: / / doi.org/ 10.1088 / 2058-9565 / aaa5cc

[24] S. Mandrà, J. Marshall, EG Rieffel e R. Biswas, em 2021 IEEE/​ACM Second International Workshop on Quantum Computing Software (QCS) (2021) pp.
https://​/​doi.org/​10.1109/​QCS54837.2021.00015

[25] Y. Suzuki, Y. Kawase, Y. Masumura, Y. Hiraga, M. Nakadai, J. Chen, KM Nakanishi, K. Mitarai, R. Imai, S. Tamiya, T. Yamamoto, T. Yan, T. Kawakubo , YO Nakagawa, Y. Ibe, Y. Zhang, H. Yamashita, H. Yoshimura, A. Hayashi e K. Fujii, Quantum 5, 559 (2021).
https:/​/​doi.org/​10.22331/​q-2021-10-06-559

[26] A. Kelly, preprint arXiv arXiv:1805.00988 (2018).
arXiv: 1805.00988

[27] T. Oliphant, Guia para NumPy (2006).

[28] https://​/​pypi.org/​project/​qibo.
https://​/​pypi.org/​project/​qibo

[29] https://​/​anaconda.org/​conda-forge/​qibo.
https://​/​anaconda.org/​conda-forge/​qibo

[30] M. Abadi, A. Agarwal, P. Barham, E. Brevdo, Z. Chen, C. Citro, GS Corrado, A. Davis, J. Dean, M. Devin, S. Ghemawat, I. Goodfellow, A. Harp , G. Irving, M. Isard, Y. Jia, R. Jozefowicz, L. Kaiser, M. Kudlur, J. Levenberg, D. Mané, R. Monga, S. Moore, D. Murray, C. Olah, M Schuster, J. Shlens, B. Steiner, I. Sutskever, K. Talwar, P. Tucker, V. Vanhoucke, V. Vasudevan, F. Viégas, O. Vinyals, P. Warden, M. Wattenberg, M. Wicke , Y. Yu e X. Zheng, TensorFlow: Aprendizado de máquina em larga escala em sistemas heterogêneos (2015), software disponível em tensorflow.org.
https: / / www.tensorflow.org/

[31] https://​/​github.com/​qiboteam/​qibotf.
https://​/​github.com/​qiboteam/​qibotf

[32] https://​/​github.com/​qiboteam/​qibojit.
https://​/​github.com/​qiboteam/​qibojit

[33] N. Metropolis, AW Rosenbluth, MN Rosenbluth, AH Teller e E. Teller, J. Chem. Física 21, 1087 (1953).
https: / / doi.org/ 10.1063 / 1.1699114

[34] J. Bradbury, R. Frostig, P. Hawkins, MJ Johnson, C. Leary, D. Maclaurin, G. Necula, A. Paszke, J. VanderPlas, S. Wanderman-Milne e Q. Zhang, JAX: transformações combináveis de programas Python+NumPy (2018).
http://​/​github.com/​google/​jax

[35] G. Guennebaud, B. Jacob, et al., Eigen v3, http://eigen.tuxfamily.org (2010).
http: // eigen.tuxfamily.org

[36] K. Rupp, P. Tillet, F. Rudolf, J. Weinbub, A. Morhammer, T. Grasser, A. Jüngel e S. Selberherr, SIAM Journal on Scientific Computing 38, S412 (2016), https:/​/ ​doi.org/​10.1137/​15M1026419.
https: / / doi.org/ 10.1137 / 15M1026419
arXiv: https://doi.org/10.1137/15M1026419

[37] NVIDIA, Impulso (2020).
https://​/​developer.nvidia.com/​thrust

[38] NVIDIA, nvcc (2022).
https://​/​docs.nvidia.com/​cuda/​cuda-compiler-driver-nvcc/​index.html

[39] NVIDIA, SDK cuQuantum (2021).
https://​/​developer.nvidia.com/​cuquantum-sdk

[40] S. Efthymiou, M. Lazzarin, S. Carrazza e A. Pasquale, qiboteam/​qibojit-benchmarks: benchmarks v0.0.1 (2022).
https: / / doi.org/ 10.5281 / zenodo.6363155

[41] AW Cross, LS Bishop, JA Smolin e JM Gambetta, arXiv e-prints, arXiv:1707.03429 (2017), arXiv:1707.03429 [quant-ph].
arXiv: 1707.03429

[42] AW Cross, A. Javadi-Abhari, T. Alexander, N. de Beaudrap, LS Bishop, S. Heidel, CA Ryan, J. Smolin, JM Gambetta e BR Johnson, arXiv preprint arXiv:2104.14722 (2021).
https: / / doi.org/ 10.1145 / 3505636
arXiv: 2104.14722

[43] https:/​/​github.com/​quantumlib/​Cirq/​blob/​master/​cirq-core/​cirq/​experiments/​random_quantum_circuit_generation.py.
https:/​/​github.com/​quantumlib/​Cirq/​blob/​master/​cirq-core/​cirq/​experiments/​random_quantum_circuit_generation.py

[44] https://​/​qiskit.org/​documentation/​stubs/​qiskit.circuit.library.QuantumVolume.html.
https://​/​qiskit.org/​documentation/​stubs/​qiskit.circuit.library.QuantumVolume.html

[45] D. Coppersmith, Uma transformada aproximada de Fourier útil na fatoração quântica (2002), arXiv:quant-ph/​0201067 [quant-ph].
arXiv: quant-ph / 0201067

[46] Circuito que consiste em camadas alternadas de rotações RY parametrizadas e portas CZ emaranhadas.

[47] IL Markov, A. Fatima, SV Isakov e S. Boixo, arXiv preprint arXiv:1807.10749 10.48550/​arXiv.1807.10749 (2018b).
https://​/​doi.org/​10.48550/​arXiv.1807.10749
arXiv: 1807.10749

[48] AW Cross, LS Bishop, S. Sheldon, PD Nation e JM Gambetta, Physical Review A 100, 10.1103/​physreva.100.032328 (2019).
https: / / doi.org/ 10.1103 / physreva.100.032328

[49] E. Bernstein e U. Vazirani, SIAM Journal on Computing 26, 1411 (1997), https:/​/​doi.org/​10.1137/​S0097539796300921.
https: / / doi.org/ 10.1137 / S0097539796300921
arXiv: https://doi.org/10.1137/S0097539796300921

[50] ATOS, Máquina de Aprendizagem Quântica.
https:/​/​atos.net/​en/​solutions/​quantum-learning-machine

[51] Equipe NVIDIA, NVIDIA DGX Station.
https://www.nvidia.com/​en-us/​data-center/​dgx-station/​

[52] Qiskit-aer 0.10.3, qiskit-aer-gpu 0.10.2.

[53] M. Smelyanskiy, NPD Sawaya e A. Aspuru-Guzik, qHiPSTER: O ambiente de teste de software de alto desempenho quântico (2016), arXiv:arXiv:1601.07195 [quant-ph].
arXiv: arXiv: 1601.07195

[54] MB et al., TensorFlow Quantum: Uma estrutura de software para aprendizado de máquina quântica (2020), arXiv:arXiv:2003.02989 [quant-ph].
arXiv: arXiv: 2003.02989

[55] SVI et al., Simulações de circuitos quânticos com ruído aproximado usando qsim e Cirq (2021), arXiv:arXiv:2111.02396 [quant-ph].
arXiv: arXiv: 2111.02396

[56] T. Kadowaki e H. Nishimori, Physical Review E 58, pp. 5355–5363 (1998).
https: / / doi.org/ 10.1103 / physreve.58.5355

[57] E. Crosson e AW Harrow, 2016 IEEE 57º Simpósio Anual sobre Fundamentos da Ciência da Computação (FOCS) 10.1109/​focs.2016.81 (2016).
https: / / doi.org/ 10.1109 / focs.2016.81

[58] S. Paeckel et al., Annals of Physics 411, pp. 167998 (2019).
https: / / doi.org/ 10.1016 / j.aop.2019.167998

Citado por

[1] Stefano Carrazza, Stavros Efthymiou, Marco Lazzarin e Andrea Pasquale, “Uma estrutura modular de código aberto para computação quântica”, arXiv: 2202.07017.

As citações acima são de SAO / NASA ADS (última atualização com êxito 2022-09-22 15:02:57). A lista pode estar incompleta, pois nem todos os editores fornecem dados de citação adequados e completos.

Não foi possível buscar Dados citados por referência cruzada durante a última tentativa 2022-09-22 15:02:55: Não foi possível buscar os dados citados por 10.22331 / q-2022-09-22-814 do Crossref. Isso é normal se o DOI foi registrado recentemente.

Carimbo de hora:

Mais de Diário Quântico