Skip to main content

OpenCL-based design of an FPGA accelerator for quantum annealing simulation

Abstract

Quantum annealing (QA) is a method to find the global optimum for a combinatorial optimization problem by using quantum fluctuations. QA can be simulated on a computer using quantum Monte Carlo (QMC) simulation of the Ising model, while sacrificing a huge processing time. It has been shown that the processing time of QMC simulation on a CPU scales similarly to that of QA on the D-wave 2X quantum annealer, although the latter is over \(10^8\) times faster than the former. However, large problems should be partitioned into sub-problems and solved separately, and this reduces the processing speed of the quantum annealer. Since the access to a quantum annealer is also limited, acceleration of QA simulations using conventional computers is regarded as a very important topic. If we can reduce the huge computational time, it is possible to use QA simulations to solve combinatorial optimization problems. We propose an FPGA accelerator for QA simulations designed using “open computing language.” We achieved up to 12.6 times speed-up for single FPGA implementation and 23.8 times speed-up for two-FPGA implementation compared to a CPU. We also achieved over 9-times large energy efficiency compared to a CPU-based system.

This is a preview of subscription content, access via your institution.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10

References

  1. Schrijver A (2003) Combinatorial optimization: polyhedra and efficiency, vol 24. Springer, Berlin

    MATH  Google Scholar 

  2. Lawler EL, Lenstra JK, Rinnooy Kan AHG, Shmoys DB (1985) The traveling salesman problem: a guided tour of combinatorial optimization. Wiley, Hoboken

    MATH  Google Scholar 

  3. Garey MR, Johnson DS (1979) Computers and intractability: a guide to the theory of NP-completeness. Freeman, San Fransisco

    MATH  Google Scholar 

  4. Kirkpatrick S, Gelatt CD, Vecchi MP (1983) Optimization by simulated annealing. Science 220(4598):671–680

    Article  MathSciNet  MATH  Google Scholar 

  5. Denchev VS, Boixo S, Isakov SV, Ding N, Babbush R, Smelyanskiy V, Martinis J, Neven H (2016) What is the computational value of finite-range tunneling? Phys Rev X 6(3):031015

    Google Scholar 

  6. Kadowaki T, Nishimori H (1998) Quantum annealing in the transverse Ising model. Phys Rev E 58(5):5355

    Article  Google Scholar 

  7. Kadowaki T (1998) Study of optimization problems by quantum annealing. PhD thesis, Department of Physics, Tokyo Institute of Technology

  8. Lanting T, Przybysz AJ, Smirnov AY, Spedalieri FM, Amin MH, Berkley AJ, Harris R, Altomare F, Boixo S, Bunyk P, Dickson N (2014) Entanglement in a quantum annealing processor. Phys Rev X 4(2):021041

    Google Scholar 

  9. Yamaoka M, Yoshimura C, Hayashi M, Okuyama T, Aoki H, Mizuno H (2016) A 20k-spin Ising chip to solve combinatorial optimization problems with CMOS annealing. IEEE J Solid-State Circuits 51(1):303–309

    Article  Google Scholar 

  10. Okuyama T, Masato H, Yamaoka M (2017) An Ising computer based on simulated quantum annealing by path integral Monte Carlo method. In: IEEE International Conference on in Rebooting Computing (ICRC), pp 1–6

  11. Yang C, Sheng J, Patel R, Sanaullah A, Sachdeva V, Herbordt MC (2017) OpenCL for HPC with FPGAs: case study in molecular electrostatics. In: High Performance Extreme Computing Conference (HPEC), pp 1–8

  12. Reconfigurable computing in exascale, SC17. https://sc17.supercomputing.org/SC17%20Archive/bof/bof_pages/bof148.html. Accessed 2019

  13. Czajkowski TS, Neto D, Kinsner M, Aydonat U, Wong J, Denisenko D, Yiannacouras P, Freeman J, Singh DP, Brown SD (2012) OpenCL for FPGAs: prototyping a compiler. In: Proceedings of the International Conference on Engineering of Reconfigurable Systems and Algorithms (ERSA), No. 1

  14. Intel FPGA SDK for OpenCL (2016) https://www.intel.com/content/www/us/en/software/programmable/sdk-for-opencl/overview.html. Accessed 2018

  15. Intel FPGA SDK for OpenCL programming guide. https://www.altera.com/documentation/mwh1391807965224.html. Accessed 2018

  16. D-wave systems. https://www.dwavesys.com/home. Accessed 2018

  17. Quantum computing and AI start a new era. Fujitsu Journal, 2018. http://journal.jp.fujitsu.com/en/2017/12/13/01/. Accessed 2018

  18. Takesue H, Inagaki T, Inaba K, Honjo T (2017) Quantum neural network for solving complex combinatorial optimization problems. NTT Tech. Rev. 15(7):1–5

    Google Scholar 

  19. The D-wave 2X quantum computer technology overview. https://www.dwavesys.com/sites/default/files/D-Wave%202X%20Tech%20Collateral_0915F.pdf. Accessed 2018

  20. The D-wave 2000Q quantum computer technology overview. https://www.dwavesys.com/sites/default/files/D-Wave%202000Q%20Tech%20Collateral_0117F.pdf. Accessed 2018

  21. Weigel M (2012) Performance potential for simulating spin models on GPU. J Comput Phys 231(8):3064–3082

    Article  MATH  Google Scholar 

  22. Chase C, Zhao H, Sato T, Hiromoto M, Tan SXD (2018) GPU based parallel Ising computing for combinatorial optimization problems in VLSI physical design, pp 1–8. arXiv preprint arXiv:1807.10750

  23. Nallatech 385A accelerator card. http://www.nallatech.com/store/fpga-accelerated-computing/pcie-accelerator-cards/nallatech-385a-arria10-1150-fpga/. Accessed 2018

  24. Intel FPGA SDK for OpenCL best practices guide. https://www.altera.com/documentation/mwh1391807516407.html. Accessed 2018

  25. Waidyasooriya HM, Hariyama M, Uchiyama K (2018) Design of FPGA-based computing systems with OpenCL. Springer, Berlin

    Book  Google Scholar 

  26. Lucas A (2014) Ising formulations of many NP problems. Front Phys 2:5

    Article  Google Scholar 

  27. Zaribafiyan A, Marchand DJJ, Rezaei SSC (2017) Systematic and deterministic graph minor embedding for Cartesian products of graphs. Quantum Inf Process 16:136

    Article  MathSciNet  MATH  Google Scholar 

  28. Ushijima-Mwesigwa H, Negre CFA, Mniszewski SM (2017) Graph partitioning using quantum annealing on the D-wave system. In: Proceedings of the Second International Workshop on Post Moores Era Supercomputing, pp 22–29

  29. Neukart F, Von Dollen D, Compostella G, Seidel C, Yarkoni S, Parney B (2017) Traffic flow optimization using a quantum annealer. Front ICT 4:29

    Article  Google Scholar 

  30. Booth M, Reinhardt SP, Roy A (2017) Partitioning optimization problems for hybrid classical/quantum execution. D-wave technical report series

  31. Martonak R, Santoro GE, Tosatti E (2004) Quantum annealing of the traveling-salesman problem. Phys Rev E 70(5):057701

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Hasitha Muthumala Waidyasooriya.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and Permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Waidyasooriya, H.M., Hariyama, M., Miyama, M.J. et al. OpenCL-based design of an FPGA accelerator for quantum annealing simulation. J Supercomput 75, 5019–5039 (2019). https://doi.org/10.1007/s11227-019-02778-w

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11227-019-02778-w

Keywords

  • Simulated quantum annealing
  • OpenCL for FPGA
  • Quantum Monte Carlo simulation
  • FPGA accelerator