Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] Updates and de-orphaning of circuit-execution.mdx #1345

Merged
merged 8 commits into from
May 14, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
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()

abbycross marked this conversation as resolved.
Show resolved Hide resolved
# 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
abbycross marked this conversation as resolved.
Show resolved Hide resolved
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>
Loading