Skip to content

Fixing cache blocking transpiler for multi-chunk measure, save and kraus operations#1197

Merged
chriseclectic merged 5 commits into
Qiskit:masterfrom
doichanj:fix-cacheblock-swap
Mar 30, 2021
Merged

Fixing cache blocking transpiler for multi-chunk measure, save and kraus operations#1197
chriseclectic merged 5 commits into
Qiskit:masterfrom
doichanj:fix-cacheblock-swap

Conversation

@doichanj
Copy link
Copy Markdown
Contributor

@doichanj doichanj commented Mar 29, 2021

Summary

This PR fixes cache blocking transpiler bug if the circuit has measure operations in the middle of operation sequence (in case sampling measure can not be applied)
#1193

Details and comments

The measure operations (that can not be merged in sampling) is now applied without restoring qubit map caused by chunk swaps.
Also this PR includes fix for save amplitudes and kraus operator.
Kraus operator is transpiled when target qubits can be fit in chunk otherwise returns error.

@chriseclectic
Copy link
Copy Markdown
Member

This looks to have fixed the test failures with statevector, but after applying these changes in #1194 it looks like there are still some failures for the unitary chunk simulator for save unitary and multi-controlled gates.

@chriseclectic chriseclectic added this to the Aer 0.8 milestone Mar 30, 2021
Copy link
Copy Markdown
Member

@chriseclectic chriseclectic left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Rather than fix the unitary cache blocking I think it makes sense to just disable it for unitary simulation, since MPI based distributed simulation isn't practical for that method anyway. I will open a separate PR to do this

@chriseclectic chriseclectic merged commit eafc7e7 into Qiskit:master Mar 30, 2021
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.

2 participants