0

我将 Qiskittranspileoptimization_level=3. 我想知道 CSP 布局选择器是否总是 Qiskit 尝试的第一个算法,如果我设置为layout_method='noise_adaptive'或其他方法。

如果不是,如何强制转译器使用 CSP 布局选择器?我尝试使用layout_method='csp_layout',但出现以下异常:

qiskit.transpiler.exceptions.TranspilerError: 'Invalid layout method csp_layout.
4

1 回答 1

0

对于 Qiskit 0.23 或更早版本 (qiskit-terra 0.16)

答案是肯定的,CSPLayout将在优化级别 2 或更高级别运行,即使layout_method提供了 a。

此文件构造优化级别 3 的传递管理器: https ://github.com/Qiskit/qiskit-terra/blob/master/qiskit/transpiler/preset_passmanagers/level3.py

目前,布局选择器的首选始终是, (如果 CSP 布局没有找到解决方案)CSPLayout(coupling_map, call_limit=10000, time_limit=60)的可能选项是、、和。layout_method'trivial''dense''noise_adaptive''sabre'


对于 Qiskit 0.24 或更高版本 (qiskit-terra 0.17)

随着PR #5495的合并,答案是视情况而定。CSPLayout在 2 级和 3 级运行。如果layout_method提供,则将使用该方法。

于 2020-11-26T16:35:58.560 回答