Building a quantum computer that surpasses the computational power of its classical counterpart is a great engineering challenge. Quantum software optimizations can provide an accelerated pathway to the first generation of quantum computing (QC) applications that might save years of engineering effort. Current quantum software stacks follow a layered approach similar to the stack of classical computers, which was designed to manage the complexity. In this review, we point out that greater efficiency of QC systems can be achieved by breaking the abstractions between these layers. Further, we review several works along this line, including two hardware-aware compilation optimizations that break the quantum instruction set architecture (ISA) abstraction and two error-correction/information-processing schemes that break the qubit abstraction. Last, we discuss several possible future directions.
Shi, Yunong, Gokhale, Pranav, Murali, Prakash, Baker, Jonathan M., Duckering, Casey, Ding, Yongshan, Brown, Natalie C., Chamberland, Christopher, Javadi-Abhari, Ali, Cross, Andrew W., Schuster, David I., Brown, Kenneth R., Martonosi, Margaret, & Chong, Frederic T. (2020). Resource-Efficient Quantum Computing by Breaking Abstractions. Proceedings of the IEEE, 108(8). https://doi.org/10.1109/jproc.2020.2994765
@article{osti_1907992,
author = {Shi, Yunong and Gokhale, Pranav and Murali, Prakash and Baker, Jonathan M. and Duckering, Casey and Ding, Yongshan and Brown, Natalie C. and Chamberland, Christopher and Javadi-Abhari, Ali and Cross, Andrew W. and others},
title = {Resource-Efficient Quantum Computing by Breaking Abstractions},
annote = {Building a quantum computer that surpasses the computational power of its classical counterpart is a great engineering challenge. Quantum software optimizations can provide an accelerated pathway to the first generation of quantum computing (QC) applications that might save years of engineering effort. Current quantum software stacks follow a layered approach similar to the stack of classical computers, which was designed to manage the complexity. In this review, we point out that greater efficiency of QC systems can be achieved by breaking the abstractions between these layers. Further, we review several works along this line, including two hardware-aware compilation optimizations that break the quantum instruction set architecture (ISA) abstraction and two error-correction/information-processing schemes that break the qubit abstraction. Last, we discuss several possible future directions.},
doi = {10.1109/jproc.2020.2994765},
url = {https://www.osti.gov/biblio/1907992},
journal = {Proceedings of the IEEE},
issn = {ISSN 0018-9219},
number = {8},
volume = {108},
place = {United States},
publisher = {Institute of Electrical and Electronics Engineers},
year = {2020},
month = {06}}
ASPLOS '19: Architectural Support for Programming Languages and Operating Systems, Proceedings of the Twenty-Fourth International Conference on Architectural Support for Programming Languages and Operating Systemshttps://doi.org/10.1145/3297858.3304007
ASPLOS '19: Architectural Support for Programming Languages and Operating Systems, Proceedings of the Twenty-Fourth International Conference on Architectural Support for Programming Languages and Operating Systemshttps://doi.org/10.1145/3297858.3304018
Murali, Prakash; Baker, Jonathan M.; Javadi-Abhari, Ali
ASPLOS '19: Architectural Support for Programming Languages and Operating Systems, Proceedings of the Twenty-Fourth International Conference on Architectural Support for Programming Languages and Operating Systemshttps://doi.org/10.1145/3297858.3304075
Gokhale, Pranav; Baker, Jonathan M.; Duckering, Casey
ISCA '19: The 46th Annual International Symposium on Computer Architecture, Proceedings of the 46th International Symposium on Computer Architecturehttps://doi.org/10.1145/3307650.3322253
Murali, Prakash; Linke, Norbert Matthias; Martonosi, Margaret
ISCA '19: The 46th Annual International Symposium on Computer Architecture, Proceedings of the 46th International Symposium on Computer Architecturehttps://doi.org/10.1145/3307650.3322273
MICRO '52: The 52nd Annual IEEE/ACM International Symposium on Microarchitecture, Proceedings of the 52nd Annual IEEE/ACM International Symposium on Microarchitecturehttps://doi.org/10.1145/3352460.3358257
MICRO '52: The 52nd Annual IEEE/ACM International Symposium on Microarchitecture, Proceedings of the 52nd Annual IEEE/ACM International Symposium on Microarchitecturehttps://doi.org/10.1145/3352460.3358313
Murali, Prakash; Mckay, David C.; Martonosi, Margaret
ASPLOS '20: Architectural Support for Programming Languages and Operating Systems, Proceedings of the Twenty-Fifth International Conference on Architectural Support for Programming Languages and Operating Systemshttps://doi.org/10.1145/3373376.3378477