-
Notifications
You must be signed in to change notification settings - Fork 5
Unit testing code cleanup #193
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
Conversation
Benchmark Results (Julia v1.10)Time benchmarks
Memory benchmarks
|
|
Weird. GitHub CI indicates test failures (no error) on MeshIntegrals.jl/test/utils.jl Line 44 in c04420f
and MeshIntegrals.jl/test/utils.jl Line 49 in c04420f
but these pass (error) on my local computer. |
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
|
Interesting. Do you also use Julia v1.10 and the same versions of Enzyme.jl and Enzyme_jll.jl as in CI? |
That test run was in |
|
Tests from my local machine:
Config A: No errors thrown on Config B: Errors (" I'm not sure how to check the Enzyme jll versions to see if those are different. This does seem like some kind of regression, but I've got no idea from where. |
|
this is a julia version issue, Julia emits different code in the two cases |
So I guess technically not a bug or regression in that the newer version of Julia is compiling the code differently and seems to be using something that Enzyme doesn't know how to handl? |
|
yeah pretty much |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #193 +/- ##
=========================================
Coverage 100.00% 100.00%
=========================================
Files 19 19
Lines 190 198 +8
=========================================
+ Hits 190 198 +8 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Co-authored-by: Joshua Lampert <[email protected]>
Changes
letblocks to constrain scope of test geometriesContext
The original intent of this PR was to implement some
@test_throwscoverage for geometry type cases whereEnzyme.jacobianAD is known to error (requiring fallback toFiniteDifference) so that we could monitor for improved future support.That turned out to be more complicated than expected. The Meshes.jl (v0.54.2) parametric functions for
CylinderandCylinderSurfaceactually seem toEnzyme.jacobianwithout issue in Julia v1.10.10 but then error when tested in Julia v1.11.6. The likely cause seems to be Julia compiling the same code down to different LLVM with instructions that Enzyme can't differentiate.