-
Notifications
You must be signed in to change notification settings - Fork 2.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Pulse benchmarks #10573
Comments
how about adding error mitigation as a potential target? it requires stretching of pulses and may have a different aspect from others. |
We don't currently have an error mitigation module so this would be infeasible to add as a benchmark. All of the benchmarks above already have code for circuit generation. |
Yes. This is why I said potential, just for future plan. I agree the list you have is enough to cover many practical situations. |
Discussing with @kdk and @mtreinish it appears the current benchmarks are already taking a significant fraction of a day to run, we may wish to pare down the list. Any suggestions for what to cut @nkanazawa1989? |
In that sense, benchmarks that has less dependency on circuit transpiler, ie benchmarks that don't intend to evaluate connectivity, are good candidate. There are two reasons:
For example, QV and random hex may insert many SWAP operations, depending on topology, and end to end performance depends on the result of qubit routing and basis gates (if swap exists) rather than scheduling algorithm. If the purpose of pulse benchmark is to evaluate the performance of scheduling algorithm, I think 2q RB is good candidate. |
I think it is still important to have some end to end benchmarks that have interdependency. This is valuable to show realistic performance numbers. QV is a great example I think. |
Partially fixes #794. * first commit * Fixed some typos * More fixes * Add benchmark to insert instruction from left to right * Fix Lints * Add hardcorded parametic pulse and sample pulse * reduce params * Fix lint * review suggestions * Instruction to schedule * review suggestions * Rename due to lint restrictions number_of_unique_pulses -> unique_pulses and number_of_channels -> channels * review suggestions * Seperate inst_add and sched.union * Remove unwanted imports * lint * Update code * Fix lint * separate instruction to sched conversion and union of sched * uncomment code * Lint * move benchmark functions with similar setup.py to a different file * lint * Move time_union_of_schedules to schedule construction class * Add Open Pulse backend in backends/ * lint * Add Play * Add Play * Remove union union is deprecated * lint
@mtreinish, I don't think this should have been closed as this is an epic with follow up issues coming. |
It automatically got closed because, in that PR, I added the summary as "partially fixes" this issue. |
Partially fixes Qiskit/qiskit-metapackage#794. * first commit * Fixed some typos * More fixes * Add benchmark to insert instruction from left to right * Fix Lints * Add hardcorded parametic pulse and sample pulse * reduce params * Fix lint * review suggestions * Instruction to schedule * review suggestions * Rename due to lint restrictions number_of_unique_pulses -> unique_pulses and number_of_channels -> channels * review suggestions * Seperate inst_add and sched.union * Remove unwanted imports * lint * Update code * Fix lint * separate instruction to sched conversion and union of sched * uncomment code * Lint * move benchmark functions with similar setup.py to a different file * lint * Move time_union_of_schedules to schedule construction class * Add Open Pulse backend in backends/ * lint * Add Play * Add Play * Remove union union is deprecated * lint
@nkanazawa1989: I've moved this from the metapackage to Terra, since after #10546 it'll be here. Could you see if this is still something you'll be wanting to do, or close the issue if not? |
What is the expected behavior?
The circuit, transpilation and circuit assembly modules are well benchmarked. There should be associated benchmarks for the pulse path and an associated integration benchmark from the construction of a relatively sophisticated quantum circuit, default backend transpilation and scheduling.
Benchmarks:
number of uses of each pulseThe text was updated successfully, but these errors were encountered: