lattice-estimator icon indicating copy to clipboard operation
lattice-estimator copied to clipboard

Hybrid-dual running time

Open bencrts opened this issue 2 years ago • 0 comments

The change to Matzov has slowed down the hybrid-dual significantly (in terms of run-time) e.g.:

params = LWE.Parameters(n=700, q=2**64, Xs=ND.UniformMod(2), Xe=ND.Uniform
....: Mod(2**64//2**5))
# old dual-hybrid
sage: from estimator.lwe_dual import dual, dual_hybrid, matzov
sage: dh = partial(dual_hybrid, mitm_optimization=False)
sage: %time dh(params)
CPU times: user 2.31 s, sys: 20.8 ms, total: 2.33 s
Wall time: 2.33 s
rop: ≈2^239.9, mem: ≈2^237.7, m: 377, β: 749, d: 970, ↻: 1, ζ: 107, tag: dual_hybrid

# new dual-hybrid
sage: %time LWE.dual_hybrid(params)
CPU times: user 35.8 s, sys: 386 ms, total: 36.2 s
Wall time: 36.3 s
rop: ≈2^242.7, red: ≈2^241.7, guess: ≈2^241.7, β: 699, p: 2, ζ: 5, t: 215, β': 683, N: ≈2^157.3, m: 700

I think I can see why (the loops for the parameter optimization), I'll need to check the paper to cut the search space a bit -- opening the issue to track it.

bencrts avatar Mar 19 '24 15:03 bencrts