Skip to content
Merged
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:`/examples_rst/qec/realtime_relay_bp` - Relay BP Decoding with CUDA-Q Realtime
* :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 @@ -11,4 +11,5 @@ Examples that illustrate how to use CUDA-QX for application development are avai
Circuit-Level QEC <circuit_level_noise.rst>
Decoders <decoders.rst>
Real-Time Decoding <realtime_decoding.rst>
Relay BP Decoding with CUDA-Q Realtime <realtime_relay_bp.rst>
Realtime AI Predecoder Pipeline <realtime_predecoder_pymatching.rst>
Relay BP Decoding with CUDA-Q Realtime <realtime_relay_bp.rst>
Loading
Loading