Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Relationship between parameters and multiplication depth #661

Open
LiangqinRen opened this issue Sep 18, 2023 · 1 comment
Open

Relationship between parameters and multiplication depth #661

LiangqinRen opened this issue Sep 18, 2023 · 1 comment

Comments

@LiangqinRen
Copy link

Hello there! Thanks for the fantastic library.
I have a project that needs to use the CKKS mode with about 11 consecutive multiplications. I have read examples and implemented my project. I want to make sure my thinking is correct.
To my understanding, since I need 11 consecutive multiplications, I need a large poly_modulus_degree(32768) and coeff_modulus({60, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 60}). At the same time, poly_modulus_degree also enables 16384 batch operations, but I don't need that much, so it is a little bit wasteful for me. Therefore, is there any method to accelerate the process? Such as any method to avoid the large parameters but support 11 consecutive multiplications.
Thanks for any helps.

@minnow54426
Copy link

Hello, if you can tolerate lower precision, the modulus can be set smaller than 60(40) bit, then you get poly_modulus_degree(16384) for better performance.
The detailed relation between polynomial length and total bits of modulus can be found in Tables of Recommended Parameters in Homomorphic Standand, you can also refer to #373 for help.
If you want to try a parameter combination which doesn't satisfy the standard, refer to #453.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants