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.
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.
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:
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.
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.
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
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