CLI¶
As part of the installation of the dwave-ocean-sdk a dwave executable is installed; for example, in a virtual environment it might be installed as <virtual_environment>\Scripts\dwave.exe. Running this file from your system’s console opens an interactive command line interface (CLI) that can help you set up and configure your development environment, communicate with D-Wave compute resources, and other useful actions.
Run dwave -- help
for information on all the CLI options. For SDK
version 4.0.0 the CLI provided the following commands and options
(see the output in your installation for the latest):
$ dwave
Usage: dwave [OPTIONS] COMMAND [ARGS]...
D-Wave Cloud Client interactive configuration tool.
Options:
--version Show the version and exit.
--debug Enable debug logging.
--trace Enable trace-level debug logging.
--log LEVEL Set custom numeric or symbolic log level.
--platform Show the platform tags and exit.
--help Show this message and exit.
Commands:
config Create, update or inspect cloud client configuration file(s).
install Install optional non-open-source Ocean packages.
ping Ping the QPU by submitting a single-qubit problem.
sample Submit Ising-formulated problem and return samples.
setup Setup optional Ocean packages and configuration file(s).
solvers Get solver details.
upload Multipart problem upload with cold restart support.
Note
If you work in a Bash shell and want command completion for dwave, add
eval "$(_DWAVE_COMPLETE=source <path>/dwave)"
to your shell’s .bashrc configuration file, where <path> is the absolute path to the installed dwave executable, for example /home/Mary/my-quantum-app/env/bin.
Below are shown example sessions for some of the commands:
Setup¶
The dwave setup
command optionally installs non-open-source packages
and configures your environment.
The output shown below includes the interactive prompts and placeholder replies for a full setup.
$ dwave setup
Optionally install non-open-source packages and configure your environment.
Do you want to select non-open-source packages to install (y/n)? [y]: ↵
D-Wave Drivers
These drivers enable some automated performance-tuning features.
This package is available under the 'D-Wave EULA' license.
The terms of the license are available online: https://docs.ocean.dwavesys.com/eula
Install (y/n)? [y]: ↵
Installing: D-Wave Drivers
Successfully installed D-Wave Drivers.
D-Wave Problem Inspector
This tool visualizes problems submitted to the quantum computer and the results returned.
This package is available under the 'D-Wave EULA' license.
The terms of the license are available online: https://docs.ocean.dwavesys.com/eula
Install (y/n)? [y]: ↵
Installing: D-Wave Problem Inspector
Successfully installed D-Wave Problem Inspector.
Creating the D-Wave configuration file.
Using the simplified configuration flow.
Try 'dwave config create --full' for more options.
Creating new configuration file: /home/jane/.config/dwave/dwave.conf
Profile [defaults]: ↵
Updating existing profile: defaults
Authentication token [skip]: ABC-1234567890abcdef1234567890abcdef ↵
Configuration saved.
Configure¶
The dwave config
command configures your environment.
The output shown below includes the interactive prompts and placeholder replies.
$ dwave config create
Using the simplified configuration flow.
Try 'dwave config create --full' for more options.
Creating new configuration file: /home/jane/.config/dwave/dwave.conf
Profile [defaults]: ↵
Updating existing profile: defaults
Authentication token [skip]: ABC-1234567890abcdef1234567890abcdef ↵
Configuration saved.
Ping¶
The dwave ping
command tests communications with the quantum computer
configured using the dwave setup
or dwave config
commands.
The example below, for a Bash Unix shell, pings only QPU solvers.
$ dwave ping --client qpu
Using endpoint: https://cloud.dwavesys.com/sapi
Using solver: DW_2000Q_6
Submitted problem ID: 34f773f7-77dc-7fa5-a7d5-7e397d90fc4a
Wall clock time:
* Solver definition fetch: 1888.499 ms
* Problem submit and results fetch: 1038.042 ms
* Total: 2926.541 ms
QPU timing:
* post_processing_overhead_time = 307.0 us
* qpu_access_overhead_time = 1185.96 us
* qpu_access_time = 10995.04 us
* qpu_anneal_time_per_sample = 20.0 us
* qpu_delay_time_per_sample = 20.54 us
* qpu_programming_time = 10756.1 us
* qpu_readout_time_per_sample = 198.4 us
* qpu_sampling_time = 238.94 us
* total_post_processing_time = 307.0 us
Solvers¶
The dwave solvers
command queries which D-Wave compute resources are
currently available to your account.
$ dwave solvers --list --all
DW_2000Q_6
hybrid_binary_quadratic_model_version2
hybrid_discrete_quadratic_model_version1
Advantage_system4.1
The example below lists which D-Wave compute resources are currently available to your account in a particular region (Europe).
$ dwave solvers --region eu-central-1 --list --all
Advantage_system5.1