Skip to content
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
3 changes: 3 additions & 0 deletions .github/workflows/scripts/build_wheels.sh
Original file line number Diff line number Diff line change
Expand Up @@ -158,12 +158,15 @@ $python -m build --wheel

CUDAQ_EXCLUDE_LIST=$(for f in $(find $cudaq_prefix/lib -name "*.so" -printf "%P\n" | sort); do echo "--exclude $f"; done | tr '\n' ' ')

# We need to exclude a few libraries to prevent auditwheel from mistakenly grafting them into the wheel.
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$(pwd)/_skbuild/lib:$tensorrt_path/lib" \
$python -m auditwheel -v repair dist/*.whl $CUDAQ_EXCLUDE_LIST \
--wheel-dir /wheels \
--exclude libcudart.so.${cuda_version} \
--exclude libnvinfer.so.10 \
--exclude libnvonnxparser.so.10 \
--exclude libcudaq-qec.so \
--exclude libcudaq-qec-realtime-decoding.so \
${PLAT_STR}

# ==============================================================================
Expand Down
14 changes: 12 additions & 2 deletions Building.md
Original file line number Diff line number Diff line change
Expand Up @@ -55,12 +55,11 @@ export PYTHONPATH=${CUDAQ_INSTALL_PREFIX}:${CUDAQX_INSTALL_PREFIX}
export PATH="${CUDAQ_INSTALL_PREFIX}/bin:${CUDAQX_INSTALL_PREFIX}/bin:${PATH}"
ctest
# Run the python tests
# The --ignore option is to bypass tests that require additional packages not contained in
# The --ignore option is to bypass tests that require additional packages not contained in
# the standard docker container
cd ..
python3 -m pytest -v libs/qec/python/tests --ignore libs/qec/python/tests/test_tensor_network_decoder.py
python3 -m pytest -v libs/solvers/python/tests --ignore libs/solvers/python/tests/test_gqe.py

```

If you want to change which version of CUDA-Q that CUDA-QX is paired with, you
Expand All @@ -81,3 +80,14 @@ contributing to CUDA-QX, but it should be noted that while this environment
will have many GPU-accelerated simulators installed in it, it won't contain the
*highest* performing CUDA-Q simulators. See [this note](https://nvidia.github.io/cuda-quantum/latest/using/install/data_center_install.html)
for more details.

## Building CUDA-QX Documentation from Source

If you want to build and render our documentation from source, you can do this
with the same environment as above. In particular, after running `ninja install`,
you can run `ninja docs`. This places the documentation into the
`/workspaces/cudaqx/build/docs/build/` directory. From there, you can open
the `index.html` file in your browser, or if you are using VSCode or Cursor, you
can simply browse to the `index.html` file in the Explorer panel, right click on
the file, and select "Open with Live Server", and that will open your browser
with the main docs page loaded automatically.
4 changes: 1 addition & 3 deletions libs/qec/lib/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,4 @@ install(DIRECTORY ${CUDAQX_QEC_INCLUDE_DIR}/cudaq
FILES_MATCHING PATTERN "*.h"
)

if (NOT SKBUILD)
add_subdirectory(realtime)
endif()
add_subdirectory(realtime)
1 change: 1 addition & 0 deletions libs/qec/lib/realtime/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@ set_target_properties(cudaq-qec-realtime-decoding PROPERTIES


install(TARGETS cudaq-qec-realtime-decoding
COMPONENT qec-lib
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
)

Expand Down
2 changes: 2 additions & 0 deletions libs/qec/lib/realtime/quantinuum/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@ set_target_properties(cudaq-qec-realtime-decoding-quantinuum PROPERTIES
)

install(TARGETS cudaq-qec-realtime-decoding-quantinuum
COMPONENT qec-lib
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
)

Expand All @@ -65,5 +66,6 @@ set_target_properties(cudaq-qec-realtime-decoding-cudaq-stubs PROPERTIES
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)

install(TARGETS cudaq-qec-realtime-decoding-cudaq-stubs
COMPONENT qec-lib
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})

1 change: 1 addition & 0 deletions libs/qec/lib/realtime/simulation/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@ set_target_properties(cudaq-qec-realtime-decoding-simulation PROPERTIES


install(TARGETS cudaq-qec-realtime-decoding-simulation
COMPONENT qec-lib
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
)

6 changes: 6 additions & 0 deletions scripts/ci/test_wheels.sh
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,12 @@ elif [[ "$cuda_version" == "12" ]]; then
${python} -m pip install torch==2.9.0 --index-url https://download.pytorch.org/whl/cu126
fi

# Temporary hack until tensorrt-cu13 bumps its package version to accommodate
# for the breaking change in nvidia-cuda-runtime-cu13.
if [[ "$cuda_version" == "13" ]]; then
${python} -m pip install ${FIND_LINKS} "nvidia-cuda-runtime-cu13==0.0.0a0"
fi

# QEC library
# ======================================

Expand Down