diff --git a/README.md b/README.md index 7542cd0..58c7e30 100644 --- a/README.md +++ b/README.md @@ -44,14 +44,37 @@ Single-core `SAFSimSimple` on 1024 patterns (baseline): | OS, CPU, RAM | `tests/c6288.bench` | `polito-itc99-b15-sky130` | |--------------|---------------------|---------------------------| +| | **2.4k gates, 7.7k SAF** | **17k gates, 24k SAF** | | MacOS, M3 Max, 32GiB (Stefan) | 1.52G | 1.97G | | WSL, i7-14650HX, 15GiB (Zhang) | 1.68G | 2.03G | | Ubuntu, Xeon E5-1650, 251GiB (Nosaka) | 0.94G | 1.18G | -| WSL2, ?, ? (Kawachi) | 0.82G | ? | +| WSL2, i5-8250U, 8GiB (Kawachi) | 0.82G | 0.94G | | GH Codespace, EPYC 7763 (Kelvin) | 1.03G | ? | | Ubuntu, i5-8265U, 8GiB (Kelvin) | 0.77G | ? | +Single-core `SAFSimIncremental` on 1024 patterns: +| OS, CPU, RAM | `tests/c6288.bench` | `polito-itc99-b15-sky130` | +|--------------|---------------------|---------------------------| +| | **2.4k gates, 7.7k SAF** | **17k gates, 24k SAF** | +| MacOS, M3 Max, 32GiB (Stefan) | 2.83G | 7.71G | +| WSL, i7-14650HX, 15GiB (Zhang) | ? | ? | +| Ubuntu, Xeon E5-1650, 251GiB (Nosaka) | ? | ? | +| WSL2, i5-8250U, 8GiB (Kawachi) | 1.98G | 4.74G | +| GH Codespace, EPYC 7763 (Kelvin) | ? | ? | +| Ubuntu, i5-8265U, 8GiB (Kelvin) | ? | ? | + +Single-core `SAFSimPPSFP` on 1024 patterns: + +| OS, CPU, RAM | `tests/c6288.bench` | `polito-itc99-b15-sky130` | +|--------------|---------------------|---------------------------| +| | **2.4k gates, 7.7k SAF** | **17k gates, 24k SAF** | +| MacOS, M3 Max, 32GiB (Stefan) | 14.7G | 77.0G | +| WSL, i7-14650HX, 15GiB (Zhang) | ? | ? | +| Ubuntu, Xeon E5-1650, 251GiB (Nosaka) | ? | ? | +| WSL2, i5-8250U, 8GiB (Kawachi) | 7.33G | 38.1G | +| GH Codespace, EPYC 7763 (Kelvin) | ? | ? | +| Ubuntu, i5-8265U, 8GiB (Kelvin) | ? | ? | ## Notes diff --git a/kyupy b/kyupy index 7a69ce9..ed9b5c6 160000 --- a/kyupy +++ b/kyupy @@ -1 +1 @@ -Subproject commit 7a69ce901680164ad392a303f11b9f8067df5728 +Subproject commit ed9b5c6cd67e78876c105643cd107ca9f32dcee2 diff --git a/src/fsim/simple.py b/src/fsim/simple.py index 1ee2b15..42a66de 100644 --- a/src/fsim/simple.py +++ b/src/fsim/simple.py @@ -31,14 +31,7 @@ class SAFSimSimple: fault_site = fault//2 fault_polarity = fault&1 p.update((fidx+1) / len(faults), f'DS:{len(fclass_DS)} NO:{len(fclass_NO)}') - for bo, bs in batchrange(patterns.shape[1], self.sim.sims): - self.sim.s_assign[:, :bs] = patterns[:, bo:bo+bs] - self.sim.s_to_c() - with self.timers['sim_prop']: - self.sim.c_prop(fault_line=fault_site, fault_model=fault_polarity) - with self.timers['sim_eval']: - self.sim.c_to_s() - syndrome[:, bo:bo+bs] = self.sim.s_result[:,:bs] + self.sim.simulate(patterns, syndrome, fault_line=fault_site, fault_model=fault_polarity) with self.timers['sim_eval2']: if np.allclose(golden, syndrome): fclass_NO.add(fault)