qdk
qdk copied to clipboard
Partial evaluation support for binary operations
This change implements support for binary operations and binary assign operations in partial evaluation.
Benchmark for 48373ca
Click to view benchmark
| Test | Base | PR | % |
|---|---|---|---|
| Array append evaluation | 345.5±3.15µs | 359.9±4.39µs | +4.17% |
| Array literal evaluation | 202.9±6.77µs | 198.2±0.52µs | -2.32% |
| Array update evaluation | 428.6±2.68µs | 441.5±1.64µs | +3.01% |
| Core + Standard library compilation | 16.7±0.08ms | 16.9±0.52ms | +1.20% |
| Deutsch-Jozsa evaluation | 5.1±0.04ms | 5.0±0.07ms | -1.96% |
| Large file parity evaluation | 33.7±0.10ms | 33.7±0.31ms | 0.00% |
| Large input file compilation | 11.2±0.08ms | 11.5±0.43ms | +2.68% |
| Large input file compilation (interpreter) | 44.1±2.06ms | 44.8±2.07ms | +1.59% |
| Large nested iteration | 33.7±0.14ms | 35.4±0.76ms | +5.04% |
| Perform Runtime Capabilities Analysis (RCA) on Deutsch-Jozsa sample | 1551.2±35.37µs | 1543.8±26.76µs | -0.48% |
| Perform Runtime Capabilities Analysis (RCA) on large file sample | 7.7±0.07ms | 7.7±0.07ms | 0.00% |
| Perform Runtime Capabilities Analysis (RCA) on teleport sample | 1416.6±37.75µs | 1423.7±53.54µs | +0.50% |
| Perform Runtime Capabilities Analysis (RCA) on the core and std libraries | 27.5±0.95ms | 27.3±0.73ms | -0.73% |
| Teleport evaluation | 88.7±4.37µs | 87.8±3.46µs | -1.01% |
Benchmark for 1a0cf28
Click to view benchmark
| Test | Base | PR | % |
|---|---|---|---|
| Array append evaluation | 348.2±5.45µs | 392.1±11.53µs | +12.61% |
| Array literal evaluation | 199.4±2.64µs | 199.8±5.81µs | +0.20% |
| Array update evaluation | 430.4±4.29µs | 552.9±4.72µs | +28.46% |
| Core + Standard library compilation | 20.1±0.77ms | 16.8±0.14ms | -16.42% |
| Deutsch-Jozsa evaluation | 5.1±0.04ms | 5.3±0.17ms | +3.92% |
| Large file parity evaluation | 33.8±0.52ms | 34.0±1.13ms | +0.59% |
| Large input file compilation | 12.9±0.68ms | 11.8±0.80ms | -8.53% |
| Large input file compilation (interpreter) | 48.1±1.68ms | 46.7±2.35ms | -2.91% |
| Large nested iteration | 34.0±0.10ms | 38.1±0.73ms | +12.06% |
| Perform Runtime Capabilities Analysis (RCA) on Deutsch-Jozsa sample | 1564.8±78.11µs | 1545.4±35.98µs | -1.24% |
| Perform Runtime Capabilities Analysis (RCA) on large file sample | 7.9±0.23ms | 7.7±0.07ms | -2.53% |
| Perform Runtime Capabilities Analysis (RCA) on teleport sample | 1463.1±141.89µs | 1425.7±57.85µs | -2.56% |
| Perform Runtime Capabilities Analysis (RCA) on the core and std libraries | 28.3±0.74ms | 27.2±0.59ms | -3.89% |
| Teleport evaluation | 87.8±3.93µs | 91.7±3.39µs | +4.44% |
Benchmark for e4870f9
Click to view benchmark
| Test | Base | PR | % |
|---|---|---|---|
| Array append evaluation | 342.0±4.33µs | 341.4±4.47µs | -0.18% |
| Array literal evaluation | 187.0±7.23µs | 181.1±1.23µs | -3.16% |
| Array update evaluation | 423.6±2.34µs | 421.4±1.95µs | -0.52% |
| Core + Standard library compilation | 17.6±0.63ms | 17.6±1.08ms | 0.00% |
| Deutsch-Jozsa evaluation | 5.1±0.04ms | 5.1±0.20ms | 0.00% |
| Large file parity evaluation | 34.0±0.11ms | 33.7±0.13ms | -0.88% |
| Large input file compilation | 11.8±0.28ms | 13.0±0.51ms | +10.17% |
| Large input file compilation (interpreter) | 46.6±1.40ms | 47.9±1.58ms | +2.79% |
| Large nested iteration | 33.3±0.24ms | 33.4±0.26ms | +0.30% |
| Perform Runtime Capabilities Analysis (RCA) on Deutsch-Jozsa sample | 1562.5±91.54µs | 1559.3±81.74µs | -0.20% |
| Perform Runtime Capabilities Analysis (RCA) on large file sample | 7.8±0.43ms | 7.8±0.10ms | 0.00% |
| Perform Runtime Capabilities Analysis (RCA) on teleport sample | 1449.3±119.94µs | 1425.4±74.74µs | -1.65% |
| Perform Runtime Capabilities Analysis (RCA) on the core and std libraries | 27.8±0.50ms | 27.4±0.28ms | -1.44% |
| Teleport evaluation | 89.6±3.80µs | 87.1±3.69µs | -2.79% |
Benchmark for 5ee6840
Click to view benchmark
| Test | Base | PR | % |
|---|---|---|---|
| Array append evaluation | 341.2±3.24µs | 344.8±2.64µs | +1.06% |
| Array literal evaluation | 182.7±1.48µs | 198.7±1.24µs | +8.76% |
| Array update evaluation | 424.8±2.65µs | 427.7±8.03µs | +0.68% |
| Core + Standard library compilation | 17.7±1.46ms | 18.9±1.38ms | +6.78% |
| Deutsch-Jozsa evaluation | 5.1±0.05ms | 5.1±0.10ms | 0.00% |
| Large file parity evaluation | 33.8±0.63ms | 33.9±1.27ms | +0.30% |
| Large input file compilation | 12.5±0.81ms | 12.8±0.25ms | +2.40% |
| Large input file compilation (interpreter) | 46.7±2.51ms | 48.2±1.21ms | +3.21% |
| Large nested iteration | 33.3±0.19ms | 33.6±1.07ms | +0.90% |
| Perform Runtime Capabilities Analysis (RCA) on Deutsch-Jozsa sample | 1585.8±148.63µs | 1561.5±111.14µs | -1.53% |
| Perform Runtime Capabilities Analysis (RCA) on large file sample | 8.1±0.54ms | 7.6±0.06ms | -6.17% |
| Perform Runtime Capabilities Analysis (RCA) on teleport sample | 1421.9±43.15µs | 1449.9±125.22µs | +1.97% |
| Perform Runtime Capabilities Analysis (RCA) on the core and std libraries | 28.4±0.80ms | 28.1±1.30ms | -1.06% |
| Teleport evaluation | 88.9±3.59µs | 87.2±3.44µs | -1.91% |
Benchmark for 9bcbc11
Click to view benchmark
| Test | Base | PR | % |
|---|---|---|---|
| Array append evaluation | 344.2±2.97µs | 340.9±1.38µs | -0.96% |
| Array literal evaluation | 205.1±4.08µs | 180.6±2.45µs | -11.95% |
| Array update evaluation | 428.3±4.00µs | 421.7±1.52µs | -1.54% |
| Core + Standard library compilation | 17.4±0.43ms | 16.8±0.21ms | -3.45% |
| Deutsch-Jozsa evaluation | 5.1±0.05ms | 5.1±0.15ms | 0.00% |
| Large file parity evaluation | 33.6±0.12ms | 33.8±0.48ms | +0.60% |
| Large input file compilation | 11.8±0.43ms | 11.2±0.21ms | -5.08% |
| Large input file compilation (interpreter) | 43.4±1.21ms | 43.2±1.15ms | -0.46% |
| Large nested iteration | 34.1±2.10ms | 33.4±1.50ms | -2.05% |
| Perform Runtime Capabilities Analysis (RCA) on Deutsch-Jozsa sample | 1548.6±48.02µs | 1541.1±41.83µs | -0.48% |
| Perform Runtime Capabilities Analysis (RCA) on large file sample | 7.6±0.08ms | 7.6±0.10ms | 0.00% |
| Perform Runtime Capabilities Analysis (RCA) on teleport sample | 1411.2±41.14µs | 1413.7±30.51µs | +0.18% |
| Perform Runtime Capabilities Analysis (RCA) on the core and std libraries | 27.0±0.20ms | 27.2±0.28ms | +0.74% |
| Teleport evaluation | 88.2±3.39µs | 87.3±3.77µs | -1.02% |
Benchmark for ca3692b
Click to view benchmark
| Test | Base | PR | % |
|---|---|---|---|
| Array append evaluation | 353.9±1.78µs | 343.0±3.03µs | -3.08% |
| Array literal evaluation | 198.6±1.12µs | 198.5±1.51µs | -0.05% |
| Array update evaluation | 436.7±3.55µs | 424.2±1.95µs | -2.86% |
| Core + Standard library compilation | 17.5±0.87ms | 17.8±1.01ms | +1.71% |
| Deutsch-Jozsa evaluation | 5.1±0.06ms | 5.1±0.06ms | 0.00% |
| Large file parity evaluation | 34.2±0.28ms | 34.0±0.33ms | -0.58% |
| Large input file compilation | 12.4±0.82ms | 12.0±0.59ms | -3.23% |
| Large input file compilation (interpreter) | 47.8±3.06ms | 51.3±5.21ms | +7.32% |
| Large nested iteration | 34.5±0.19ms | 33.7±0.41ms | -2.32% |
| Perform Runtime Capabilities Analysis (RCA) on Deutsch-Jozsa sample | 1549.5±45.12µs | 1552.7±55.74µs | +0.21% |
| Perform Runtime Capabilities Analysis (RCA) on large file sample | 7.8±0.15ms | 7.7±0.17ms | -1.28% |
| Perform Runtime Capabilities Analysis (RCA) on teleport sample | 1422.6±61.28µs | 1429.8±84.74µs | +0.51% |
| Perform Runtime Capabilities Analysis (RCA) on the core and std libraries | 27.3±0.31ms | 27.8±1.21ms | +1.83% |
| Teleport evaluation | 90.4±3.46µs | 89.5±3.62µs | -1.00% |