Skip to content

Add experimental support for cuStateVecEx. - #965

Merged
mhucka merged 3 commits into
mainfrom
add-custatevecex
Jan 5, 2026
Merged

Add experimental support for cuStateVecEx.#965
mhucka merged 3 commits into
mainfrom
add-custatevecex

Conversation

@sergeisakov

Copy link
Copy Markdown
Collaborator

No description provided.

@github-actions github-actions Bot added the size: XL lines changed >1000 label Dec 16, 2025

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request adds experimental support for cuStateVecEx, which is a great addition for multi-GPU and multi-node simulations. The changes are extensive, touching build systems, the Python interface, and adding a significant amount of new C++ code.

I've found several critical issues in the build files (Makefile, CMakeLists.txt, BUILD) that will prevent the code from compiling or linking correctly. There's also a compilation error in apps/qsim_base_custatevecex.cu.

Additionally, there are several violations of the C++ style guide regarding C-style casts, which should be replaced with C++-style casts (static_cast, reinterpret_cast). I've pointed out one instance per file and requested that all occurrences be fixed. There's also a code smell with const_cast that could be improved with a better design.

Please address these issues to ensure the new functionality is robust and maintainable. The addition of tests for the new backend is much appreciated.

Comment thread apps/Makefile Outdated
Comment thread apps/qsim_base_custatevecex.cu Outdated
Comment thread lib/BUILD Outdated
Comment thread pybind_interface/custatevecex/CMakeLists.txt
Comment thread tests/Makefile
Comment thread lib/multiprocess_custatevecex.h Outdated
Comment thread lib/run_custatevecex.h Outdated
Comment thread lib/simulator_custatevecex.h Outdated
Comment thread lib/statespace_custatevecex.h Outdated
Comment thread lib/vectorspace_custatevecex.h Outdated
@sergeisakov
sergeisakov requested a review from mhucka December 22, 2025 19:35
@mhucka mhucka self-assigned this Dec 29, 2025

@mhucka mhucka left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is fantastic work (as usual)! Everything builds and all tests pass on a GCP Ubuntu VM with CUDA 13, the new cuQuantum 25.11.1, and NVIDIA L4 GPU.

@mhucka
mhucka added this pull request to the merge queue Jan 5, 2026
Merged via the queue into main with commit f79fc3f Jan 5, 2026
34 of 35 checks passed
@mhucka
mhucka deleted the add-custatevecex branch January 5, 2026 06:42
mhucka pushed a commit to mhucka/qsim that referenced this pull request Jan 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size: XL lines changed >1000

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants