or
or
By clicking below, you agree to our terms of service.
New to HackMD? Sign up
Syntax | Example | Reference | |
---|---|---|---|
# Header | Header | 基本排版 | |
- Unordered List |
|
||
1. Ordered List |
|
||
- [ ] Todo List |
|
||
> Blockquote | Blockquote |
||
**Bold font** | Bold font | ||
*Italics font* | Italics font | ||
~~Strikethrough~~ | |||
19^th^ | 19th | ||
H~2~O | H2O | ||
++Inserted text++ | Inserted text | ||
==Marked text== | Marked text | ||
[link text](https:// "title") | Link | ||
 | Image | ||
`Code` | Code |
在筆記中貼入程式碼 | |
```javascript var i = 0; ``` |
|
||
:smile: | ![]() |
Emoji list | |
{%youtube youtube_id %} | Externals | ||
$L^aT_eX$ | LaTeX | ||
:::info This is a alert area. ::: |
This is a alert area. |
On a scale of 0-10, how likely is it that you would recommend HackMD to your friends, family or business associates?
Please give us some advice and help us improve HackMD.
Do you want to remove this version name and description?
Syncing
xxxxxxxxxx
Assignment 1
Paper
Term
LLVM
https://llvm.org/
LLVM IR
https://blog.gopheracademy.com/advent-2018/llvm-ir-and-go/
LLVM IR is a low-level intermediate representation used by the LLVM compiler framework.
You can think of LLVM IR as a platform-independent assembly language with an infinite number of function local registers.
SSA
https://www.geeksforgeeks.org/static-single-assignment-with-relevant-examples/
Static Single Assignment is a means of structuring the IR (intermediate representation) such that every variable is allotted a value only once and every variable is defined before it’s use.
https://azure.microsoft.com/en-us/resources/cloud-computing-dictionary/what-is-a-qubit/#qubit-vs-bit
Main
A MLIR Dialect for Quantum Assembly Languages
Extend MLIR with a new quantum dialect that enables the expression and compilation of common quantum assembly languages.
Intro
The utility of this dialect -> ability to be lowered to the LLVM intermediate representation in a manner that is adherent to the QIR specification.
Provide a unified representation that quantum languages and compilers can map to in an effort to promote resurability of common quantum compilation tools, strategies, and backend runtime implementations.
Background
We put forward an extension to the MLIR infrastructure specifically for quantum computing, with the intention that any and all quantum languages are able to be parsed and mapped to an instance of this representation.
A Quantum MLIR Dialect
assembly -> Quantum co-processors by MLIR compiler framework
MLIR provides a mechanism for mapping IR down to assembly and object code via LLVM IR.
LLVM
source 1
https://llvm.org/
The LLVM Project is a collection of modular and reusable compiler and toolchain technologies.
Despite its name, LLVM has little to do with traditional virtual machines.
The name "LLVM" itself is not an acronym ; it is the full name of the project.
The goal of providing a modern, SSA-based compilation strategy capable of supporting both static and dynamic compilation of arbitrary programming languages.
SSA
wiki
SSA is a property of an intermediate representation (IR) that requires each variable to be assigned exactly once and defined before it is used. Existing variables in the original IR are split into versions, new variables typically indicated by the original name with a subscript in textbooks, so that every definition gets its own version. In SSA form, use-def chains are explicit and each contains a single element.
Install qcor and test with case
installation
Can not be install on Ubuntu 22.04.
either use script provided by Github:qcor or build everythings from source
Ubuntu 20.04 can just run the script and the installation will be complete.
Test
1
The sample code provided by the main paper can be compiled but can't run on linux.
The code from QASMBench cannot be compiled.
2
When trying to linked to qcor c++ code, it seems the include_qcor_qasm(bell) needed to be provided.
Code