Name: ThreeQ.jl
Owner: Los Alamos National Laboratory
Description: Julia interface to D-Wave quantum annealing hardware
Created: 2016-08-22 22:58:50.0
Updated: 2018-05-22 20:20:21.0
Pushed: 2018-05-22 20:20:19.0
Size: 327
Language: Julia
GitHub Committers
User | Most Recent Commit | # Commits |
---|
Other Committers
User | Most Recent Commit | # Commits |
---|
ThreeQ is a Julia module that includes several macros which effectively extend the syntax of Julia to enable rapid prototyping of codes for D-Wave hardware. ThreeQ uses various tools from D-Wave's software suite (including the Python SAPI, qbsolv, and dw) as backends to access D-Wave hardware.
A number of examples are including that illustrate how to use ThreeQ. These examples include solving systems of linear equations, factoring integers, PDE-constrained optimization, and map coloring.
First, Julia must be installed. Julia binaries can be obtained here. In order to actually use the D-Wave, D-Wave hardware must be available and at least part of D-Wave's software stack must also be installed. D-Wave's qbsolv tool can be used without D-Wave hardware. Other components (the Python SAPI and dw) must be obtained from D-Wave, if needed.
Second, this repo must be cloned into a place where Julia can find it. You can tell Julia where to look for it by adding a line to your .juliarc.jl file like
!(LOAD_PATH, "/dir/where/this/repo/is")
For instance, my .juliarc.jl file contains
!(LOAD_PATH, "$(homedir())/codes")
and within ~/codes, there is a directory containing this repo called “ThreeQ.jl” or “ThreeQ”.
ThreeQ is provided under a BSD-ish license with a “modifications must be indicated” clause. See LICENSE.md file for the full text.
This package is part of the Hybrid Quantum-Classical Computing suite, known internally as LA-CC-16-032.
Daniel O'Malley, omalled@lanl.gov