microsoft / qsharp

Azure Quantum Development Kit, including the Q# programming language, resource estimator, and Quantum Katas
https://microsoft.github.io/qsharp/
MIT License
367 stars 73 forks source link

Migrate the KeyDistribution_BB84 kata #1624

Closed tcNickolas closed 2 weeks ago

tcNickolas commented 2 weeks ago

I call it "Quantum Key Distribution" rather than name after a specific protocol in case we get to adding E91 protocol soon - they're small enough that they don't warrant separate katas for each one. I also trimmed the tasks a bit to streamline the discussion, they looked a bit repetitive in the old kata.

github-actions[bot] commented 2 weeks ago

Benchmark for 75ff5cb

Click to view benchmark | Test | Base | PR | % | |------|--------------|------------------|---| | Array append evaluation | **330.1±9.73µs** | 333.0±2.27µs | **+0.88%** | | Array literal evaluation | 189.4±0.87µs | **171.9±0.94µs** | **-9.24%** | | Array update evaluation | **408.7±2.56µs** | 413.1±1.14µs | **+1.08%** | | Core + Standard library compilation | 19.2±0.52ms | 19.6±0.66ms | +2.08% | | Deutsch-Jozsa evaluation | 5.1±0.05ms | 5.1±0.08ms | 0.00% | | Large file parity evaluation | **33.9±0.10ms** | 34.1±0.37ms | **+0.59%** | | Large input file compilation | 12.9±0.39ms | 12.8±0.45ms | -0.78% | | Large input file compilation (interpreter) | 49.5±1.37ms | 49.6±1.52ms | +0.20% | | Large nested iteration | **32.6±0.53ms** | 32.9±0.18ms | **+0.92%** | | Perform Runtime Capabilities Analysis (RCA) on Deutsch-Jozsa sample | 1603.3±93.79µs | 1589.3±42.91µs | -0.87% | | Perform Runtime Capabilities Analysis (RCA) on large file sample | 7.9±0.11ms | 8.0±0.16ms | +1.27% | | Perform Runtime Capabilities Analysis (RCA) on teleport sample | 1447.6±36.11µs | 1452.9±79.59µs | +0.37% | | Perform Runtime Capabilities Analysis (RCA) on the core and std libraries | 28.3±0.18ms | 28.4±0.44ms | +0.35% | | Teleport evaluation | 89.0±3.62µs | 89.8±3.34µs | +0.90% |
github-actions[bot] commented 2 weeks ago

Benchmark for 99cb1ea

Click to view benchmark | Test | Base | PR | % | |------|--------------|------------------|---| | Array append evaluation | 333.0±6.61µs | **327.7±2.90µs** | **-1.59%** | | Array literal evaluation | 192.8±16.76µs | **190.6±1.47µs** | **-1.14%** | | Array update evaluation | 412.9±1.89µs | **408.3±2.02µs** | **-1.11%** | | Core + Standard library compilation | **18.7±0.18ms** | 19.2±0.72ms | **+2.67%** | | Deutsch-Jozsa evaluation | 5.1±0.04ms | 5.1±0.04ms | 0.00% | | Large file parity evaluation | 34.0±0.29ms | 34.0±0.32ms | 0.00% | | Large input file compilation | 13.2±0.33ms | **12.5±0.17ms** | **-5.30%** | | Large input file compilation (interpreter) | 47.7±1.15ms | 48.1±1.31ms | +0.84% | | Large nested iteration | 32.8±0.15ms | **32.6±0.72ms** | **-0.61%** | | Perform Runtime Capabilities Analysis (RCA) on Deutsch-Jozsa sample | 1576.6±40.28µs | 1589.9±48.82µs | +0.84% | | Perform Runtime Capabilities Analysis (RCA) on large file sample | 7.9±0.16ms | 7.9±0.12ms | 0.00% | | Perform Runtime Capabilities Analysis (RCA) on teleport sample | 1433.0±33.74µs | 1443.8±46.76µs | +0.75% | | Perform Runtime Capabilities Analysis (RCA) on the core and std libraries | 28.3±0.26ms | 28.4±0.44ms | +0.35% | | Teleport evaluation | 88.8±5.50µs | 88.2±3.89µs | -0.68% |
github-actions[bot] commented 2 weeks ago

Benchmark for be25e93

Click to view benchmark | Test | Base | PR | % | |------|--------------|------------------|---| | Array append evaluation | 333.3±4.38µs | 334.5±15.78µs | +0.36% | | Array literal evaluation | 171.6±1.01µs | 172.1±3.73µs | +0.29% | | Array update evaluation | 412.3±3.62µs | 414.9±16.54µs | +0.63% | | Core + Standard library compilation | 18.6±0.28ms | 18.6±0.49ms | 0.00% | | Deutsch-Jozsa evaluation | 5.1±0.05ms | 5.1±0.08ms | 0.00% | | Large file parity evaluation | 33.9±0.10ms | 33.9±0.29ms | 0.00% | | Large input file compilation | 12.5±0.30ms | **12.3±0.13ms** | **-1.60%** | | Large input file compilation (interpreter) | 47.5±1.19ms | 47.1±1.47ms | -0.84% | | Large nested iteration | **32.9±0.18ms** | 33.1±1.73ms | **+0.61%** | | Perform Runtime Capabilities Analysis (RCA) on Deutsch-Jozsa sample | 1566.3±30.82µs | 1575.7±71.67µs | +0.60% | | Perform Runtime Capabilities Analysis (RCA) on large file sample | 7.8±0.10ms | 7.8±0.08ms | 0.00% | | Perform Runtime Capabilities Analysis (RCA) on teleport sample | 1428.4±33.41µs | 1432.0±41.96µs | +0.25% | | Perform Runtime Capabilities Analysis (RCA) on the core and std libraries | 28.1±0.14ms | 28.1±0.23ms | 0.00% | | Teleport evaluation | 88.5±3.80µs | 88.5±4.30µs | 0.00% |