> ## Documentation Index
> Fetch the complete documentation index at: https://prod-mint.classiq.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Execution on IBM Quantum Cloud

The Classiq executor supports execution on IBM simulators and hardware.

## Usage

### Execution on IBM Simulators

<Tabs>
  <Tab title="SDK">
    [comment]: DO_NOT_TEST

    ```python theme={null}
    from classiq import IBMBackendPreferences

    preferences = IBMBackendPreferences(backend_name="Name of requested quantum simulator")
    ```
  </Tab>

  <Tab title="IDE">
    <img src="https://mintcdn.com/classiq/-HteUcA8EdiLEZzU/user-guide/resources/execution_ibm_simulation_login.png?fit=max&auto=format&n=-HteUcA8EdiLEZzU&q=85&s=fecd4ac5793a4645fd26f68c87a0dfbd" alt="Opening info tab" width="599" height="423" data-path="user-guide/resources/execution_ibm_simulation_login.png" />
  </Tab>
</Tabs>

The supported simulators are fake hardware simulators.

### Execution on IBM Hardware

Execution on IBM hardware requires a valid IBM Quantum Cloud API access token, and access to the requested hardware with an IBM Quantum hub, group, and project name.
The access token is the API token that appears at the top of the [IBM Quantum Cloud page](https://quantum.cloud.ibm.com/), when you are logged in. You must create an account with IBM quantum if you do not have one already.

IBM Backend Preferences configuration options are described in the sections above and in [IBM hardware noise simulation (emulate)](#ibm-hardware-noise-simulation-emulate).

<Tabs>
  <Tab title="SDK">
    [comment]: DO_NOT_TEST

    ```python theme={null}
    from classiq import (
        IBMBackendPreferences,
    )

    preferences = IBMBackendPreferences(
        backend_name="Name of requsted quantum hardware",
        access_token="A Valid API access token to IBM Quantum",
        channel="IBM Cloud Channel",
        instance_crn="IBM Cloud Instance CRN",
        emulate=False,
    )
    ```
  </Tab>

  <Tab title="IDE">
    <img src="https://mintcdn.com/classiq/-HteUcA8EdiLEZzU/user-guide/resources/execution_ibm_hardware_login.png?fit=max&auto=format&n=-HteUcA8EdiLEZzU&q=85&s=00a40e682c17503d3223f2572072ab29" alt="Opening info tab" width="886" height="1174" data-path="user-guide/resources/execution_ibm_hardware_login.png" />
  </Tab>
</Tabs>

## IBM hardware noise simulation (emulate)

Set `emulate=True` on [`IBMBackendPreferences`](/sdk-reference/providers/IBM) to run a simulator with a **Qiskit noise model** inferred from a **real IBM Quantum device** name (for example `ibm_pittsburgh`, `ibm_boston`). You do not pass a separate noise model; `backend_name` must be one of the IBM backends supported for this path in the SDK (see validation errors if the name is not supported).

**Requirements and limitations**

* Use **real** IBM hardware backend names (not `fake_*` simulators); fake backends already run locally and cannot be combined with `emulate=True`.
* With `emulate=True`, execution does not use IBM Quantum hardware; it uses IBM's Hardware noise model profile on Classiq’s resources.

[comment]: DO_NOT_TEST

```python theme={null}
from classiq import IBMBackendPreferences

preferences = IBMBackendPreferences(
    backend_name="ibm_pittsburgh",
    access_token="…",
    channel="ibm_cloud",
    instance_crn="…",
    emulate=True,
)
```

## Supported Backends

Included hardware:

* "ibm\_kingston"
* "ibm\_boston"
* "ibm\_marrakesh"
* "ibm\_torino"
* "ibm\_fez"
* "ibm\_pittsburg"
