Update to latest simulator, new benchmark #2690
Merged
+86
−3
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This change updates to the latest sparse simulator, which includes performance improvements. The change also adds a new benchmark taken from the old qsharp-runtime repo to help with evaluating simulator updates on a more complex program.
Here are how the execution benchmarks (including the new one) change with the latest simulator:

Smaller programs like Teleport receive a minor boost, slightly bigger programs like Deutsch-Jozsa get a bigger boost, and the new benchmark shows a significant improvement. Certain programs like the Large File Parity sample incurr a small penalty, but the trade-offs seem well worthwhile.
For very large programs, like the Ising samples on 25 qubits, this has shown significant performance boost, taking only 25% of the time after update.