google / google/heir

Security Parameter Bundle Discussion for Connecting MAPLE with HEIR

Open
#2,875 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
MLIR
Stars
906
Forks
171
Avg merge
4d 12h
Merged PRs (30d)
32

Description

Issue 1: Security parameter exploration

MAPLE explicitly explores key CKKS parameter choices, including:

the maximum multiplicative depth, and
the number of slots.

Issue 2: Preventing large MLIR from dominating back-end compilation time

MAPLE’s lowering can generate extremely large MLIR. For instance, lowering MNIST produces 279 MB of IR because loops are explicitly unrolled. This substantially increases compilation time in downstream compilers such as OpenFHE.

Keeping loops in the generated MLIR would help, but bootstrapping complicates this design: bootstrap insertion depends on analyzing the remaining level budget, which currently relies on partially unrolled code.

A practical workaround is for MAPLE to manually split loops and insert bootstrap annotations via mgmt.bootstrap:
https://heir.dev/docs/dialects/mgmt/#mgmtbootstrap-heirmgmtbootstrapop

@j2kun @asraa @akashmadhu4
Suggestions are appreciated!

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.