Skip to content

Conversation

@SoraSuegami
Copy link
Member

No description provided.

SoraSuegami and others added 19 commits December 18, 2025 20:16
* add cuda

* compile worked

* GpuDCRTPoly tests worked

* update build.rs

* Add gpu_dcrt_poly matrix

* add multi pipelines optimizations

* fix compile errors

* Revert "fix compile errors"

This reverts commit d3bc55a.

* Revert "add multi pipelines optimizations"

This reverts commit 2ea09ec.

* add tests

* gpu matrix tests passed

* Add gpu samplers

* test_gpu_dcrtpoly~ and test_gpu_matrix~ tests passed

* all gpu tests passed

* use rayon more

* cuda optimizations

* Add test_arithmetic_circuit_operations_gpu_ggh15

* minor optimizations

* optimize matrix mul and add benchmark codes

* remove unused codes

* fix clone of GpuDCRTPoly

* optimize mul kernel

* Add available_gpu_ids

* CI: disable OpenMP in CMake configuration; remove memory logging for optimization

* fix compile error

* Feat/gpu without pipeline (#31)

* Revert "fix compile errors"

This reverts commit d3bc55a.

* Revert "add multi pipelines optimizations"

This reverts commit 2ea09ec.

* add tests

* gpu matrix tests passed

* Add gpu samplers

* test_gpu_dcrtpoly~ and test_gpu_matrix~ tests passed

* all gpu tests passed

* use rayon more

* cuda optimizations

* Add test_arithmetic_circuit_operations_gpu_ggh15

* minor optimizations

* optimize matrix mul and add benchmark codes

* remove unused codes

* fix clone of GpuDCRTPoly

* optimize mul kernel

* Add available_gpu_ids

* CI: disable OpenMP in CMake configuration; remove memory logging for optimization

* fix compile error

* make all tests sequential

* fix compile errors
Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: f47dc8fd9d

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +20 to +24
// Input is assumed to be a constant polynomial; use its constant coefficient as the key.
let const_coeff = input
.coeffs()
.first()
.cloned()

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Reject or handle non-constant LUT inputs

The new plaintext LUT evaluator derives the lookup key from only the first coefficient and always returns a constant polynomial. If any circuit applies public_lookup to a non-constant input (e.g., packed plaintext with multiple coefficients), the remaining coefficients are silently ignored and the lookup result becomes incorrect. This is a behavioral regression from the earlier “whole polynomial” lookup and will corrupt results unless all LUT inputs are guaranteed constant; consider validating constness or applying the LUT per coefficient instead.

Useful? React with 👍 / 👎.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We assume all LUT inputs are constant.
Can you add debug_assert lines to ensure that all inputs to the LUT is constant?

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

Successfully merging this pull request may close these issues.

2 participants