Skip to content
Open
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
2 changes: 2 additions & 0 deletions docs/sphinx/api/qec/cpp_api.rst
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,8 @@ Real-Time Decoding

.. include:: cpp_realtime_decoding_api.rst

.. include:: realtime_pipeline_api.rst

.. _parity_check_matrix_utilities:

Parity Check Matrix Utilities
Expand Down
72 changes: 72 additions & 0 deletions docs/sphinx/api/qec/realtime_pipeline_api.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
.. _realtime_pipeline_api:

Realtime Pipeline API
=====================

The realtime pipeline API provides the reusable host-side runtime for
low-latency QEC pipelines that combine GPU inference with optional CPU
post-processing. The published reference is generated from
``cudaq/qec/realtime/pipeline.h``.

.. note::

This API is experimental and subject to change.


Configuration
-------------

.. doxygenstruct:: cudaq::qec::realtime::experimental::core_pinning
:members:

.. doxygenstruct:: cudaq::qec::realtime::experimental::pipeline_stage_config
:members:


GPU Stage
---------

.. doxygenstruct:: cudaq::qec::realtime::experimental::gpu_worker_resources
:members:

.. doxygentypedef:: cudaq::qec::realtime::experimental::gpu_stage_factory


CPU Stage
---------

.. doxygenstruct:: cudaq::qec::realtime::experimental::cpu_stage_context
:members:

.. doxygentypedef:: cudaq::qec::realtime::experimental::cpu_stage_callback

.. doxygenvariable:: cudaq::qec::realtime::experimental::DEFERRED_COMPLETION


Completion
----------

.. doxygenstruct:: cudaq::qec::realtime::experimental::completion
:members:

.. doxygentypedef:: cudaq::qec::realtime::experimental::completion_callback


Ring Buffer Injector
--------------------

.. doxygenclass:: cudaq::qec::realtime::experimental::ring_buffer_injector
:members:


Pipeline
--------

.. doxygenclass:: cudaq::qec::realtime::experimental::realtime_pipeline
:members:

.. doxygenstruct:: cudaq::qec::realtime::experimental::realtime_pipeline::Stats
:members:

.. doxygenstruct:: cudaq::qec::realtime::experimental::realtime_pipeline::ring_buffer_bases
:members:
3 changes: 3 additions & 0 deletions docs/sphinx/components/qec/introduction.rst
Original file line number Diff line number Diff line change
Expand Up @@ -861,6 +861,9 @@ Additional quantum gates can be applied, and only when `get_corrections` is call
For detailed information on real-time decoding, see:

* :doc:`/examples_rst/qec/realtime_decoding` - Complete Guide with Examples
* :doc:`/examples_rst/qec/realtime_predecoder_pymatching` - Realtime AI Predecoder Pipeline
* :doc:`/examples_rst/qec/realtime_predecoder_fpga` - Realtime AI Predecoder Pipeline with FPGA
* :ref:`realtime_pipeline_api` - Realtime Pipeline C++ API
* :doc:`/api/qec/cpp_api` - C++ API Reference (see Real-Time Decoding section)
* :doc:`/api/qec/python_api` - Python API Reference (see Real-Time Decoding section)

Expand Down
3 changes: 2 additions & 1 deletion docs/sphinx/examples_rst/qec/examples.rst
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,5 @@ Examples that illustrate how to use CUDA-QX for application development are avai
Code-Capacity QEC <code_capacity_noise.rst>
Circuit-Level QEC <circuit_level_noise.rst>
Decoders <decoders.rst>
Real-Time Decoding <realtime_decoding.rst>
Real-Time Decoding <realtime_decoding.rst>
Realtime AI Predecoder Pipeline <realtime_predecoder_pymatching.rst>
Loading
Loading