Presented by

  • Matthew Treinish

    Matthew Treinish
    https://blog.kortar.org/

    Matthew has been working on and contributing to Open Source software for most of his career. Matthew currently works for IBM Research developing open source software for quantum computing. He is also a long time OpenStack contributor and a former member of the OpenStack TC (Technical Committee) and was previously the PTL (project technical lead) of the OpenStack community's QA program. He has previously been a speaker at linux.conf.au, OpenStack summits, LinuxCons Japan, China, and North America, Open Source Summit Europe, SeaGL, OpenWest, and FOSSASIA.

Abstract

Just as with classical computers we need tools to convert the programs we write into something that can actually be run on computers. For classical computers this normally involves converting a higher level language into machine code, but with quantum computing the programs are written at a much lower level, the equivalent of assembly code. However, because of limitations with the current quantum computers available today even programs written at this low a level have to be adapted and optimized for each specific backend to be able to run successfully. Making this compilation processes effective and efficient directly impacts how a program will perform, and whether you're able to get a meaningful result or not. This talk will explain what is involved in compiling software to run on a quantum computer and why it is necessary. It will cover how it works, different optimization techniques that are available, and how it can effect the results from running your program. It will also cover how you can customize the compiler optimizations used to try and better optimize your program to get better results, and how a bad compiler output can result in getting a noisy result, or even lead to you getting no meaningful result at all.