Scope CKKS parameter selection
- Dominant language
- MLIR
- Stars
- 906
- Forks
- 171
- Avg merge
- 4d 12h
- Merged PRs (30d)
- 32
Description
We have discussed CKKS parameter selection for a while, but I wanted to collect some thoughts in an issue to help us decide what to do next.
- CCH+23 noise model is drafted in https://github.com/google/heir/pull/1685
- BCMNT25 noise model/noise estimator discussed in #2011
- We have a SimFHE target from https://github.com/google/heir/pull/1913. if we reworked it a bit we could try to use SimFHE (repeatedly, inside a pass) for estimating cost of a particular choice of parameters, as the basis of a parameter search.
- We will need to find a solution to providing CKKS intermediate value range bounds (https://github.com/google/heir/issues/1700) but can probably get away with hard-coding bounds on the input IR for a specialized domain like ML inference. This is needed to provide an accurate noise estimate.
Maybe if we get a SimFHE-in-the-loop pass working, we could avoid requiring intermediate value bounds and do a naive-ish sweep over the parameter space. One question I have is: if we had intermediate value bounds and a noise model like CCH+23 merged in, would SimFHE still be useful? Or would the analogous parameter selection techniques for BGV/BFV suffice for CKKS?
Contributor guide
Assessment
This issue has not been assessed yet.