Skip to content

Quantum branch#40

Draft
leios wants to merge 1 commit into
mainfrom
quantum
Draft

Quantum branch#40
leios wants to merge 1 commit into
mainfrom
quantum

Conversation

@leios
Copy link
Copy Markdown
Owner

@leios leios commented May 21, 2026

Ok, I am going to thought dump a bit here to make sure I understand the scope.

The ultimate goal is to create a method for users to create and submit quantum graphics jobs. Ideally, they should be able to emulate things on their own computer (CPU / GPU) and also submit it to some quantum device that exists somewhere on earth. For now, the only API that has C compatability and can also submit to a quantum device seems to be qiskit.

I also have a deadline and need to get this more or less done in 3 weeks.

Discussion on other APIs

  1. PennyLane: I have collaborators here, but I don't think python is flexible enough for what I want and don't believe that I can rewrite everything in 3 weeks.
  2. Bloqade: Again, python only for job submission. Also specific for QuEra's analog stack, which makes it a little difficult to create abstractions off of.
  3. Julia (in-general): c'mon dawg, you tried Julia for years. If it doesn't work classically, it won't work with quantum. There is a chance for things to work out if I build everything off of SPIRV.jl and find something similar for quantum, but that's a lot of ifs
  4. QLLVM (https://github.com/QCFlow/QLLVM): is not actually LLVM for quantum, so we cannot just OpenCL -> PoCL -> LLVM
  5. OpenCLQPU (https://github.com/jorgevazquezperez/OpenCLQPU): This actually does not allow for OpenCL -> QPU, but instead does OpenCL -> Qulacs(.cl) and does emulation on a local computer. It doesn't have the ability to submit jobs and the abstractions used are a bit... well, different than what I am doing here.

What do I need to do?

I expect these all to take a few hours (minimum), with the majority of the time spent on the generation of the AST for parsing the quibble scribbles.

Known limitations of the quantum API
No matter what, the quantum and classical APIs must diverge simply because the way in which people program quantum computers is different than classical. In the demo we are shooting for, it is most likely that we will do point movement on a quantum device and then histogramming on a classical one.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant