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

Idan/add sumcheck tests #800

Open
wants to merge 13 commits into
base: main
Choose a base branch
from
Open

Idan/add sumcheck tests #800

wants to merge 13 commits into from

Conversation

idanfr-ingo
Copy link
Contributor

This PR add some tests for sumcheck, and change an undefined behaviour at transcript creation in the tests.
The additional tests should check few more cases:

  • when not polys is the max allowed value (on device)
  • when degree of combine polynomial is the max allowed value (on device)
  • non-default transcript config
  • validate that the separators are created properly

cuda-backend-branch: idan/hotfix_sumcheck

}
}

MlePoly max_allowed_nof_polys_comine(const std::vector<MlePoly>& inputs)
Copy link
Collaborator

@yshekel yshekel Mar 6, 2025

Choose a reason for hiding this comment

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

(1) Where are those restrictions defined?
(2) When reaching those restrictions, we must make sure to have clear error messages and not some vague error that doesn't help the user understand the problem. It must say what the problem is, what the limit is and what he used. I noticed some errors (From CUDA backend but maybe CPU is the same) that was not clear about too complex combine but not saying why too complex.

@@ -444,24 +681,27 @@ TEST_F(FieldTestBase, SumcheckCudaShouldFailCases)

ASSERT_EQ(error, eIcicleError::INVALID_ARGUMENT);
};
for (const auto& device : s_registered_devices) {
if (device == "CPU") continue;
Copy link
Collaborator

Choose a reason for hiding this comment

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

So every backend has different limitations? Seems like there is some minimum and then some backends can support more? Is it documented somewhere? It means CPU code can work but then moving to GPU wouldn't. Maybe it's not a good idea even it it works. @mickeyasa @idanfr-ingo

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