vswhere
python-qubit-setup
vswhere | python-qubit-setup | |
---|---|---|
5 | 4 | |
899 | 8 | |
0.7% | - | |
4.5 | 10.0 | |
1 day ago | over 6 years ago | |
C++ | C++ | |
MIT License | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
vswhere
-
how does this work?
But often maintainers also upload Releases with builds of their software, e.g. like here: https://github.com/microsoft/vswhere/releases
-
Extending Python with Rust
Finding where & how to use an installed VS instance (or selecting one) in automated tooling is solved by the criminally unknown, MIT licensed, MS supported, redistributable, vswhere tool: https://github.com/microsoft/vswhere
-
microsoft_craziness.h (2018)
/ // This file was about 400 lines before we started adding these comments. // You might think that's way too much code to do something as simple // as finding a few library and executable paths. I agree. However, // Microsoft's own solution to this problem, called "vswhere", is a // mere EIGHT THOUSAND LINE PROGRAM, spread across 70 files, // that they posted to github unironically. // // I am not making this up: https://github.com/Microsoft/vswhere
- Microsoft_craziness.h
python-qubit-setup
-
Interfaces for Prototyping Hardware
I wrote the whole UI for controlling my quantum computing experiments in PyQT, it was super easy and very performant, my former lab is still using it to control all their quantum mechanics experiments. Before that they used LabView but even though Python is a bit more cumbersome to write interfaces in it's much more powerful for data analysis and management, so it quickly replaced LabView. The code's on Github [1,2]. Also, it's quite easy to write low-level libraries in C or C++ (or Rust, I guess) for stuff that needs to be really fast, you can e.g. easily share a memory buffer with numpy to pass data to Python, which we did for data acquisition tasks that were not performant enough in Python.
1: https://github.com/adewes/python-qubit-setup
-
Ask HN: How are quantum circuits constructed on cloud-based quantum computers?
Here's some code I wrote 12 years ago, which implements Grover's algorithm on a superconducting quantum computer [1]. This is not using a quantum algorithm compiler (which didn't exist at the time), all pulses are handcrafted. In principle it's rather simple, for each operation you want to perform you add the necessary pulse sequence, which can be either microwave pulses on each of the qubits (which drive the qubits along the x- or y-axis Bloch sphere), or voltage pulses in the qubit fluxlines (which drive the qubits along the z-axis of the Bloch sphere and/or put them in resonance with each other so they can interact). Finally, you would add readout pulses to read the qubit state at the end of the algorithm.
The pulse sequences then get loaded into arbitrary waveform generators and many other parameters are set like microwave generator frequencies. Typically you also perform a tune-up of the system to determine the correct timings and qubit frequencies (as all microwave components and the qubits themselves tend to slightly drift over time).
Today it's much more complicated as you can optimize each gate sequence individually and in conjunction to get higher fidelity, but in principle you can build up any algorithm uses these basic blocks above.
1: https://github.com/adewes/python-qubit-setup/blob/master/scr...
-
Extending Python with Rust
A long time (10 years) ago I wrote some custom C++ code to perform relatively simple arithmetic operations on very large arrays, which was considerably slower in numpy for some reason [1]. As I said that was long ago so maybe Numpy has improved by now, but back then there was a significant penalty when doing these operations directly in Python using Numpy, even though they were only a handful of things (e.g. calculate asin(x)+bcos(y) on some large array), so I didn't expect much overhead from going back and forth between F.
1: https://github.com/adewes/python-qubit-setup/blob/master/lib...
- Ask HN: Should I publish my research code?
What are some alternatives?
fastplotlib - Next-gen fast plotting library running on WGPU using the pygfx rendering engine
zig - General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.
crux - Software toolkit for molecular phylogenetic inference
graphics_wgpu
pygfx - A python render engine running on wgpu.
tundra - Tundra is a code build system that tries to be accurate and fast for incremental builds
numexpr - Fast numerical array expression evaluator for Python, NumPy, Pandas, PyTables and more
builder - Simple build system for Visual C++
superconductor - A tool to simulate superconducting circuits, comparable to SPICE.