Skip to content

Add documentation for quantum state tomography and performance features#107

Open
arnavk23 wants to merge 4 commits intoQuantumSavory:mainfrom
arnavk23:docs-quantum-state-tomography-examples
Open

Add documentation for quantum state tomography and performance features#107
arnavk23 wants to merge 4 commits intoQuantumSavory:mainfrom
arnavk23:docs-quantum-state-tomography-examples

Conversation

@arnavk23
Copy link
Copy Markdown
Contributor

This PR adds new documentation to the tutorials, focusing on:

  • Quantum State Tomography:
    Introduces a new section with an example of simulating homodyne measurements and reconstructing a Gaussian state from sampled data, including Wigner function visualization.

  • Performance Features:
    Adds sections on GPU Acceleration, Multithreading, and Benchmarking/Profiling, with practical examples and usage notes for each.

CHANGELOG notes:

  • Added quantum state tomography example to tutorials.
  • Added documentation for GPU acceleration, multithreading, and benchmarking/profiling.

Checklist:

  • The code is properly formatted and commented.
  • Substantial new functionality is documented within the docs.
  • All new functionality is tested.
  • All of the automated tests on github pass.
  • Formatting checks have been considered for new code.

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Mar 22, 2026

Benchmark Results (Julia v1)

Time benchmarks
main dfeed77... main / dfeed77...
operations/channel product/10 4.83 ± 1.1 μs 4.54 ± 0.73 μs 1.06 ± 0.29
operations/channel product/100 0.689 ± 0.063 ms 0.695 ± 0.048 ms 0.992 ± 0.11
operations/channel product/2 1.37 ± 0.11 μs 1.35 ± 0.1 μs 1.01 ± 0.11
operations/channel product/200 3.52 ± 0.19 ms 3.55 ± 1.5 ms 0.992 ± 0.43
operations/channel product/50 0.243 ± 0.019 ms 0.241 ± 0.022 ms 1.01 ± 0.12
operations/partial trace/10 1.29 ± 0.12 μs 1.34 ± 0.14 μs 0.962 ± 0.13
operations/partial trace/100 9.32 ± 1.5 μs 9.73 ± 1.3 μs 0.957 ± 0.2
operations/partial trace/2 0.932 ± 0.069 μs 0.902 ± 0.061 μs 1.03 ± 0.1
operations/partial trace/200 24.7 ± 3.2 μs 24.9 ± 3.1 μs 0.99 ± 0.18
operations/partial trace/50 5.25 ± 0.88 μs 5.24 ± 0.68 μs 1 ± 0.21
operations/tensor product/10 2.16 ± 0.4 μs 2.33 ± 0.32 μs 0.927 ± 0.21
operations/tensor product/100 0.152 ± 0.015 ms 0.152 ± 0.015 ms 1 ± 0.14
operations/tensor product/2 0.882 ± 0.051 μs 0.852 ± 0.059 μs 1.04 ± 0.093
operations/tensor product/200 0.797 ± 0.087 ms 0.809 ± 0.23 ms 0.985 ± 0.3
operations/tensor product/50 30.5 ± 11 μs 31.1 ± 11 μs 0.983 ± 0.5
operations/unitary product/10 3.64 ± 0.35 μs 3.66 ± 0.32 μs 0.994 ± 0.13
operations/unitary product/100 0.644 ± 0.029 ms 0.644 ± 0.025 ms 1 ± 0.06
operations/unitary product/2 1.2 ± 0.059 μs 1.16 ± 0.05 μs 1.04 ± 0.068
operations/unitary product/200 3.43 ± 0.092 ms 3.43 ± 0.097 ms 1 ± 0.039
operations/unitary product/50 0.225 ± 0.015 ms 0.226 ± 0.017 ms 0.997 ± 0.1
time_to_load 0.219 ± 0.0013 s 0.218 ± 0.0022 s 1.01 ± 0.012
Memory benchmarks
main dfeed77... main / dfeed77...
operations/channel product/10 17 allocs: 10.2 kB 17 allocs: 10.2 kB 1
operations/channel product/100 17 allocs: 0.919 MB 17 allocs: 0.919 MB 1
operations/channel product/2 14 allocs: 0.891 kB 14 allocs: 0.891 kB 1
operations/channel product/200 19 allocs: 3.67 MB 19 allocs: 3.67 MB 1
operations/channel product/50 17 allocs: 0.231 MB 17 allocs: 0.231 MB 1
operations/partial trace/10 14 allocs: 0.672 kB 14 allocs: 0.672 kB 1
operations/partial trace/100 15 allocs: 2.79 kB 15 allocs: 2.79 kB 1
operations/partial trace/2 14 allocs: 0.672 kB 14 allocs: 0.672 kB 1
operations/partial trace/200 15 allocs: 5.04 kB 15 allocs: 5.04 kB 1
operations/partial trace/50 14 allocs: 1.69 kB 14 allocs: 1.69 kB 1
operations/tensor product/10 9 allocs: 13.1 kB 9 allocs: 13.1 kB 1
operations/tensor product/100 10 allocs: 1.22 MB 10 allocs: 1.22 MB 1
operations/tensor product/2 8 allocs: 0.797 kB 8 allocs: 0.797 kB 1
operations/tensor product/200 10 allocs: 4.89 MB 10 allocs: 4.89 MB 1
operations/tensor product/50 9 allocs: 0.307 MB 9 allocs: 0.307 MB 1
operations/unitary product/10 14 allocs: 6.95 kB 14 allocs: 6.95 kB 1
operations/unitary product/100 14 allocs: 0.614 MB 14 allocs: 0.614 MB 1
operations/unitary product/2 12 allocs: 0.688 kB 12 allocs: 0.688 kB 1
operations/unitary product/200 16 allocs: 2.45 MB 16 allocs: 2.45 MB 1
operations/unitary product/50 14 allocs: 0.155 MB 14 allocs: 0.155 MB 1
time_to_load 0.145 k allocs: 11 kB 0.145 k allocs: 11 kB 1

@codecov
Copy link
Copy Markdown

codecov Bot commented Mar 22, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
⚠️ Please upload report for BASE (main@8a15976). Learn more about missing BASE report.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #107   +/-   ##
=======================================
  Coverage        ?   97.24%           
=======================================
  Files           ?       20           
  Lines           ?     2686           
  Branches        ?        0           
=======================================
  Hits            ?     2612           
  Misses          ?       74           
  Partials        ?        0           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant