Skip to content

Commit

Permalink
[WIP] Updates and de-orphaning of circuit-execution.mdx (#1345)
Browse files Browse the repository at this point in the history
Closes #937
  • Loading branch information
abbycross authored May 14, 2024
1 parent f4bf88a commit be09a6c
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 4 deletions.
7 changes: 6 additions & 1 deletion docs/run/_toc.json
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,8 @@
{
"title": "Introduction to execution modes",
"url": "/run/execution-modes"
},{
},
{
"title": "About sessions",
"url": "/run/sessions"
},
Expand All @@ -58,6 +59,10 @@
"title": "Run jobs in a batch",
"url": "/run/run-jobs-batch"
},
{
"title": "Fixed and dynamic repetition rate execution",
"url": "/run/circuit-execution"
},
{
"title": "FAQs",
"url": "/run/execution-modes-faq"
Expand Down
31 changes: 28 additions & 3 deletions docs/run/circuit-execution.mdx
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
---
title: System circuit execution
title: Fixed and dynamic repetition rate execution
description: Explanatory content on fixed and dynamic repetition rate execution

---

# System circuit execution
# Fixed and dynamic repetition rate execution

## Fixed repetition rate execution

Expand All @@ -26,4 +26,29 @@ Therefore, each circuit is equal in duration to the longest circuit in the batch

## Dynamic repetition rate execution

Some IBM Quantum systems allow for dynamic repetition rate execution. These systems are identified in Qiskit using `backend.configuration().dynamic_reprate_enabled`, and return a value of `True`. On these systems, it is possible to manually set the above idle time by setting the `rep_delay` of the submitted job. One can see from the above figures that by reducing the idle time one can potentially see a greater throughput of circuits on the systems that support dynamic repetition rates. See the the next section on conditional reset for more detailed usage examples.
Some IBM Quantum systems allow for dynamic repetition rate execution. These systems are identified in Qiskit using `backend.configuration().dynamic_reprate_enabled`, and return a value of `True`. On these systems, it is possible to manually set the above idle time by setting the `rep_delay` of the submitted job. One can see from the above figures that by reducing the idle time one can potentially see a greater throughput of circuits on the systems that support dynamic repetition rates.

## Specify rep_delay for a primitive job

```python
from qiskit_ibm_runtime import QiskitRuntimeService, SamplerV2 as Sampler

service = QiskitRuntimeService()

# Make sure your backend supports it
backend = service.least_busy(operational=True, min_num_qubits=100, dynamic_reprate_enabled=True)

# Determine the allowable range
backend.rep_delay_range
sampler = Sampler(backend=backend)

#Specify a value in the supported range
sampler.options.execution.rep_delay = 0.0005
```

## Next steps

<Admonition type="tip" title="Recommendations">
- Try an example in the [Quantum approximate optimization algorithm (QAOA)](https://learning.quantum.ibm.com/tutorial/quantum-approximate-optimization-algorithm) tutorial.
- Review how to [get started with primitives.](primitives-get-started)
</Admonition>

0 comments on commit be09a6c

Please sign in to comment.