Frequently asked questions

Common questions about Boulder Opal

Where can I find spec sheets for Boulder Opal?

Please contact us if you’d like to get a copy on our Boulder Opal spec sheets.

What hardware is Boulder Opal compatible with?

The two primary hardware considerations when using Boulder Opal are the underlying quantum technology being considered, and the type of controller being used.

Quantum hardware technologies

Boulder Opal is compatible with any quantum technology. This is because the underlying computational tools are not built for a specific hardware type, but rather use the system Hamiltonian and other mathematical properties to define the system. This makes it flexible for any hardware modality, such as superconducting, trapped ion, Rydberg atom, and spin qubit.

This also means that Boulder Opal can be used for quantum sensing applications. The same types of physics problems and optimization needs exist in quantum sensing as quantum computing. For more information specific to Boulder Opal for quantum sensing, reach out to us directly for more information.

Controller technologies

When Boulder Opal is used to run experiments or control tasks on real hardware, it must use a controller to interact with the actual quantum device. Because Boulder Opal is implemented via a local Python package, it can be integrated into any routine for any controller, mapped alongside the given controller's domain specific language. This includes all of the major controller brands, such as Qblox, Quantum Machines, Keysight, Zurich Instruments, and ARTIQ, as well as proprietary controller designs.

In some cases, Boulder Opal documentation also provides additional functions to help with this integration process. For more specific information on those functions, visit our integration page.

What are graphs for Boulder Opal?

Graphs, or computational graphs, are how Boulder Opal represents quantum systems and the desired computations on them. In fact, the foundation of Boulder Opal as a domain specific language is to define and execute these graphs. The graph itself is a combination of nodes and edges that together, describe a variety of computations, from simple arithmetic calculations to complex operations on high-dimensional quantum systems, including simulations and optimizations.

Does Boulder Opal offer a free tier?

You can sign up for a Boulder Opal Basic subscription, which is free, and choose to upgrade later on if needed. Boulder Opal Basic includes 4 vCPU, 32 GB RAM machine, 1 machine (1 calculation at a time), and 12 cloud machine hours. Learn more about the different Boulder Opal subscription plans.

What is the difference between a standard vs a Scale Up Boulder Opal license?

Standard and Scale Up are two complimentary Boulder Opal licenses.

A standard Boulder Opal license provides access to the suite of cloud-accelerated control capabilities. This allows users to create and run their own calculations and the freedom to solve any challenge at hand.

A Scale Up license instead provides access to a specifically designed control routine, that uses Boulder Opal to accomplish a predefined task on a piece of hardware. Because of this, Scale Up licenses are tied to custom-built functions developed by Q-CTRL in collaboration with a Scale Up user.

What is a “machine” as defined in a Boulder Opal license?

A “machine” is the cloud-based, compute resource used to run Boulder Opal calculations, similar to the concept of a virtual machine. Each machine can run one calculation at a time, and is defined by a certain number of processing power and memory. The various Boulder Opal licenses are defined by these machines. Higher tier licenses offer more machines (meaning more calculations in parallel), each with more processing power and more memory, and more hours of runtime access to those machines.

Learn more about specific Boulder Opal plans.

How are Boulder Opal machine hours calculated against my total?

The base unit of a Boulder Opal license is the machine hour. This is defined as the amount of time a Boulder Opal cloud-based resource is up and running. It is NOT only the time spent running calculations, but rather the entire time that a machine is “Online”.

This is because Boulder Opal resources are specifically provisioned to users on an as needed basis, to prevent broader queueing or delays in service. When a user needs to run a Boulder Opal workload, they must first spin up a machine, which will include the compute resources as defined by their Boulder Opal license. That machine is now “Online” and counting toward their machine hours total. If at one point in time, multiple machines are “Online” then each one will be counting toward the amount of available hours. (For example, one hour with four machines running at the same time, would use four machine hours of a Boulder Opal license).

In order to make this process easier, some automated actions occur related to machine states. First, if a calculation is submitted and no machine is online, one will be spun up automatically. Then, if no calculation is submitted for 15 minutes, it will be shut down automatically. However, to best utilize machine time, users can also shut down machines manually from the web-based Activity Monitor.

Learn more about Boulder Opal computation resources.

How are Boulder Opal machines and machine hours provisioned across an organization with multiple users?

In organizations with multiple users sharing the same license, they are all sharing the same pool of machines and machine hours. This means that a user can only bring up a Boulder Opal machine if there is one available in the license, and any machine used by any member counts toward the same bulk number of machine hours.

How can I increase my cloud machine hours?

Machine hours can be add in two ways:

  1. By upgrading your license to the next tier, which will come with a new lot of hours.
  2. By adding a certain number of hours to the current license tier based on a per/hour price. In both cases, reach out to us directly to make the change.

Where can I see how many machine hours I have used or have left?

All Boulder Opal usage is tracked within the Activity Monitor. This includes the amount of machines hours used and remaining, the amount of machines in different states, and a list of recent activity. All information on this page is tracked at the organizational level, rather than the user level.

How can I retrieve my results?

Each call to a Boulder Opal is assigned a unique action ID. These IDs are usually printed when you call the function, or you can find them in the Activity Monitor.

You can use boulderopal.cloud.get_result with an action_id to retrieve the result of that call. You can use this in case your connection dropped during a calculation or to retrieve results you forgot to save.

Learn how to retrieve results.

Where should I reach out if I have additional questions?

If your question is not addressed in this FAQ, you can contact us.

Was this useful?

cta background

New to Boulder Opal?

Get access to everything you need to automate and optimize quantum hardware performance at scale.