Support bootstrap in Mgmt/CKKS dialect and correctly determine MgmtAttr / RNS level
Open
dialect: ckks
dialect: mgmt
- Dominant language
- MLIR
- Stars
- 906
- Forks
- 171
- Avg merge
- 4d 12h
- Merged PRs (30d)
- 32
Description
Mainly from #1195, where a low-level `openfhe.bootstrap` is added but higher level of the compiler is not aware of how to manage it.
* mulDepth is now interwined with bootstrap, hence all the RNS instantiation need to change. and #1176 way could not handle this. Should introduce a `mgmt.bootstrap` op and implement a bootstrap management pass (possibly related to #289, #1166).
+ I think the naive one is to greedily insert it when all level consumed, to get the pipeline running, then we will take time to optimize it instead of starting from complex solutions.
* ckks does not have a bootstrap op for now.
Contributor guide
Assessment
This issue has not been assessed yet.