Simfusiontest
In [2]:
Copied!
from qibo import Circuit, gates
from sim_fusion import sim_fusion
# 创建一个简单的量子电路
circuit = Circuit(2)
circuit.add(gates.H(0)) # Hadamard 门
circuit.add(gates.CNOT(0, 1)) # CNOT 门
circuit.add(gates.H(1)) # 另一个 Hadamard 门
circuit.add(gates.H(1)) # H 门
print(f"原始电路: {circuit.ngates} 个门")
# 优化电路
optimized = sim_fusion(circuit)
print(f"优化后: {optimized.ngates} 个门")
print(f"优化成功! 电路已优化。")
from qibo import Circuit, gates
from sim_fusion import sim_fusion
# 创建一个简单的量子电路
circuit = Circuit(2)
circuit.add(gates.H(0)) # Hadamard 门
circuit.add(gates.CNOT(0, 1)) # CNOT 门
circuit.add(gates.H(1)) # 另一个 Hadamard 门
circuit.add(gates.H(1)) # H 门
print(f"原始电路: {circuit.ngates} 个门")
# 优化电路
optimized = sim_fusion(circuit)
print(f"优化后: {optimized.ngates} 个门")
print(f"优化成功! 电路已优化。")
原始电路: 4 个门 优化后: 2 个门 优化成功! 电路已优化。
In [4]:
Copied!
from qibo import Circuit, gates
from sim_fusion import sim_fusion_with_stats
# 创建一个更复杂的电路
circuit = Circuit(3)
circuit.add(gates.H(0))
circuit.add(gates.CNOT(0, 1))
circuit.add(gates.CNOT(1, 2))
circuit.add(gates.H(2))
circuit.add(gates.H(1))
circuit.add(gates.CNOT(0, 2))
circuit.add(gates.H(0))
circuit.add(gates.H(1))
# 优化并获取统计信息
optimized, stats = sim_fusion_with_stats(circuit)
print(f"📊 优化统计:")
print(f" 门减少: {stats.gate_reduction} ({stats.gate_reduction_percent:.1f}%)")
print(f" 深度减少: {stats.depth_reduction} ({stats.depth_reduction_percent:.1f}%)")
print(f" 优化时间: {stats.total_time:.4f}秒")
print(f" 效率分数: {stats.efficiency_score:.1f}%/s")
from qibo import Circuit, gates
from sim_fusion import sim_fusion_with_stats
# 创建一个更复杂的电路
circuit = Circuit(3)
circuit.add(gates.H(0))
circuit.add(gates.CNOT(0, 1))
circuit.add(gates.CNOT(1, 2))
circuit.add(gates.H(2))
circuit.add(gates.H(1))
circuit.add(gates.CNOT(0, 2))
circuit.add(gates.H(0))
circuit.add(gates.H(1))
# 优化并获取统计信息
optimized, stats = sim_fusion_with_stats(circuit)
print(f"📊 优化统计:")
print(f" 门减少: {stats.gate_reduction} ({stats.gate_reduction_percent:.1f}%)")
print(f" 深度减少: {stats.depth_reduction} ({stats.depth_reduction_percent:.1f}%)")
print(f" 优化时间: {stats.total_time:.4f}秒")
print(f" 效率分数: {stats.efficiency_score:.1f}%/s")
开始 sim-fusion 混合优化... 原始电路统计: 8 个门, 深度 0 电路大小: 0.0 KB, 内存使用: 179.1 MB 开始 TKET 预处理... 原始电路统计: 8 个门, 深度 6 应用优化步骤 1/6: BasePass 应用优化步骤 2/6: BasePass 应用优化步骤 3/6: BasePass 应用优化步骤 4/6: BasePass 应用优化步骤 5/6: BasePass 应用优化步骤 6/6: BasePass TKET 预处理完成,耗时: 1766730385.8539s 完成的步骤数: 6/6 应用 Qibo fusion 优化... Qibo fusion 完成,耗时: 0.0000s 优化完成! 最终电路统计: 6 个门, 深度 0 门减少: 2 (25.0%) 深度减少: 0 (0.0%) TKET预处理时间: 0.2916s Qibo融合时间: 0.0000s 总优化时间: 0.2926s TKET完成步骤: 6/6 内存使用: 179.1 MB 电路大小: 0.0 KB 优化效率: 42.7%/s 综合改进分数: 28.4/100 优化类型: Effective 📊 优化统计: 门减少: 2 (25.0%) 深度减少: 0 (0.0%) 优化时间: 0.2926秒 效率分数: 42.7%/s
In [ ]:
Copied!