mirror of https://github.com/Qiskit/qiskit.git
26 lines
1.4 KiB
YAML
26 lines
1.4 KiB
YAML
---
|
|
upgrade:
|
|
- |
|
|
The preset pass managers generated by :func:`~.level_1_pass_manager`,
|
|
:func:`~.level_2_pass_manager`, and :func:`~.level_3_pass_manager` and used
|
|
by the :func:`~.transpile` function's ``optimization_level`` argument at
|
|
1, 2, and 3 respectively no longer set a hard time limit on the
|
|
:class:`~.VF2Layout` transpiler pass. This means that the pass will no
|
|
longer stop trying to find a better alternative perfect layout up until a
|
|
fixed time limit (100ms for level 1, 10 sec for level 2, and 60 sec for
|
|
level 3) as doing this limited the reproducibility of compilation when a
|
|
perfect layout was available. This means that the output when using the pass
|
|
might be different than before, although in all cases it would only change
|
|
if a lower noise set of qubits can be found over the previous output. If
|
|
you wish to retain the previous behavior you can create a custom
|
|
:class:`~.PassManager` that sets the ``time_limit`` argument on the
|
|
constructor for the :class:`~VF2Layout` pass.
|
|
fixes:
|
|
- |
|
|
Fixed an issue with reproducibility of the :func:`~.transpile` function
|
|
when running with ``optimization_level`` 1, 2, and 3. Previously, under
|
|
some conditions when there were multiple perfect layouts (a layout that
|
|
doesn't require any SWAP gates) available the selected layout and output
|
|
circuit could vary regardless of whether the ``seed_transpiler`` argument
|
|
was set.
|