Skip to content

Conversation

@gdalle
Copy link
Member

@gdalle gdalle commented May 29, 2024

No description provided.

@gdalle gdalle linked an issue May 29, 2024 that may be closed by this pull request
@codecov-commenter
Copy link

codecov-commenter commented May 29, 2024

Codecov Report

Attention: Patch coverage is 66.03774% with 18 lines in your changes are missing coverage. Please review.

Project coverage is 95.14%. Comparing base (dfe017f) to head (8d03c96).

Files Patch % Lines
...ace/ext/DifferentiationInterfaceEnzymeExt/utils.jl 28.57% 10 Missing ⚠️
...ifferentiationInterfaceEnzymeExt/reverse_onearg.jl 22.22% 7 Missing ⚠️
...DifferentiationInterfaceEnzymeExt/common_onearg.jl 94.44% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #280      +/-   ##
==========================================
- Coverage   96.63%   95.14%   -1.49%     
==========================================
  Files          72       74       +2     
  Lines        3769     3812      +43     
==========================================
- Hits         3642     3627      -15     
- Misses        127      185      +58     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@gdalle
Copy link
Member Author

gdalle commented May 29, 2024

Very worryingly, the tests pass when I run the Enzyme test file in the REPL, but fail when it happens in the pkg> test pipeline.

@adrhill could you try the two ways below, to check that I'm not the only one?

First step is to checkout the PR branch of the repo.

Working

In the test environment of DifferentiationInterface (activated with TestEnv):

using Pkg; Pkg.add(["Enzyme", "DifferentiationInterfaceTest"])
LOGGING = true
include("test/Single/Enzyme.jl")
Env
julia> using TestEnv; TestEnv.activate()
Precompiling project...
  1 dependency successfully precompiled in 2 seconds. 11 already precompiled.
"/tmp/jl_H3T52I/Project.toml"

julia> using Pkg; Pkg.add(["Enzyme", "DifferentiationInterfaceTest"])
   Resolving package versions...
    Updating `/tmp/jl_H3T52I/Project.toml`
  [a82114a7] + DifferentiationInterfaceTest v0.4.1
  [7da242da] + Enzyme v0.12.9
    Updating `/tmp/jl_H3T52I/Manifest.toml`
  [79e6a3ab] + Adapt v4.0.4
  [4fba245c] + ArrayInterface v7.10.0
  [fa961155] + CEnum v0.5.0
  [d360d2e6] + ChainRulesCore v1.23.0
  [0ca39b1e] + Chairmarks v1.2.1
  [bbf7d656] + CommonSubexpressions v0.3.0
  [b0b7db55] + ComponentArrays v0.15.13
  [163ba53b] + DiffResults v1.1.0
  [b552c78f] + DiffRules v1.15.1
  [a82114a7] + DifferentiationInterfaceTest v0.4.1
  [7da242da] + Enzyme v0.12.9
  [f151be2c] + EnzymeCore v0.7.3
  [e2ba6199] + ExprTools v0.1.10
  [f6369f11] + ForwardDiff v0.10.36
  [d9f16b24] + Functors v0.4.10
  [0c68f7d7] + GPUArrays v10.1.1
  [46192b85] + GPUArraysCore v0.1.6
  [61eb1bfa] + GPUCompiler v0.26.5
  [615f187c] + IfElse v0.1.1
  [92d709cd] + IrrationalConstants v0.2.2
  [27aeb0d3] + JLArrays v0.1.4
  [692b3bcd] + JLLWrappers v1.5.0
  [929cbde3] + LLVM v7.1.0
  [2ab3a3ac] + LogExpFunctions v0.3.27
  [77ba4419] + NaNMath v1.0.2
  [d8793406] + ObjectFile v0.4.1
  [92933f4c] + ProgressMeter v1.10.0
  [6c6a2e73] + Scratch v1.2.1
  [276daf66] + SpecialFunctions v2.4.0
  [aedffcd0] + Static v0.8.10
  [0d7ed370] + StaticArrayInterface v1.5.0
  [90137ffa] + StaticArrays v1.9.4
  [1e83bf80] + StaticArraysCore v1.4.2
  [53d494c1] + StructIO v0.3.0
  [a759f4b9] + TimerOutputs v0.5.24
  [7cc45869] + Enzyme_jll v0.0.117+0
  [dad2f222] + LLVMExtra_jll v0.0.29+0
  [efe28fd5] + OpenSpecFun_jll v0.5.5+0
  [8ba89e20] + Distributed
  [4af54fe1] + LazyArtifacts
  [4607b0f0] + SuiteSparse
  [05823500] + OpenLibm_jll v0.8.1+2
Precompiling project...
  4 dependencies successfully precompiled in 6 seconds. 114 already precompiled.

(jl_H3T52I) pkg> st -m
Status `/tmp/jl_H3T52I/Manifest.toml`
  [47edcb42] ADTypes v1.2.1
  [79e6a3ab] Adapt v4.0.4
  [4c88cf16] Aqua v0.8.7
  [4fba245c] ArrayInterface v7.10.0
  [fa961155] CEnum v0.5.0
  [00ebfdb7] CSTParser v3.4.3
  [d360d2e6] ChainRulesCore v1.23.0
  [0ca39b1e] Chairmarks v1.2.1
  [da1fd8a2] CodeTracking v1.3.5
  [a80b9123] CommonMark v0.8.12
  [bbf7d656] CommonSubexpressions v0.3.0
  [34da2185] Compat v4.15.0
  [b0b7db55] ComponentArrays v0.15.13
  [a8cc5b0e] Crayons v4.1.1
  [9a962f9c] DataAPI v1.16.0
  [a93c6f00] DataFrames v1.6.1
  [864edb3b] DataStructures v0.18.20
  [e2d170a0] DataValueInterfaces v1.0.0
  [163ba53b] DiffResults v1.1.0
  [b552c78f] DiffRules v1.15.1
  [a0c0ee7d] DifferentiationInterface v0.5.1 `~/Work/GitHub/Julia/DifferentiationInterface.jl/DifferentiationInterface`
  [a82114a7] DifferentiationInterfaceTest v0.4.1
  [ffbed154] DocStringExtensions v0.9.3
  [7da242da] Enzyme v0.12.9
  [f151be2c] EnzymeCore v0.7.3
  [e2ba6199] ExprTools v0.1.10
  [1a297f60] FillArrays v1.11.0
  [f6369f11] ForwardDiff v0.10.36
  [d9f16b24] Functors v0.4.10
  [0c68f7d7] GPUArrays v10.1.1
  [46192b85] GPUArraysCore v0.1.6
  [61eb1bfa] GPUCompiler v0.26.5
  [c27321d9] Glob v1.3.1
  [615f187c] IfElse v0.1.1
  [842dd82b] InlineStrings v1.4.0
  [41ab1584] InvertedIndices v1.3.0
  [92d709cd] IrrationalConstants v0.2.2
  [82899510] IteratorInterfaceExtensions v1.0.0
  [c3a54625] JET v0.9.2
  [27aeb0d3] JLArrays v0.1.4
  [692b3bcd] JLLWrappers v1.5.0
  [682c06a0] JSON v0.21.4
  [98e50ef6] JuliaFormatter v1.0.56
  [aa1ae85d] JuliaInterpreter v0.9.31
  [929cbde3] LLVM v7.1.0
  [b964fa9f] LaTeXStrings v1.3.1
  [2ab3a3ac] LogExpFunctions v0.3.27
  [6f1432cf] LoweredCodeUtils v2.4.6
  [1914dd2f] MacroTools v0.5.13
  [e1d29d7a] Missings v1.2.0
  [77ba4419] NaNMath v1.0.2
  [d8793406] ObjectFile v0.4.1
  [bac558e1] OrderedCollections v1.6.3
  [65ce6f38] PackageExtensionCompat v1.0.2
  [69de0a69] Parsers v2.8.1
  [2dfb63ee] PooledArrays v1.4.3
  [aea7be01] PrecompileTools v1.2.1
  [21216c6a] Preferences v1.4.3
  [08abe8d2] PrettyTables v2.3.2
  [92933f4c] ProgressMeter v1.10.0
  [189a3867] Reexport v1.2.2
  [ae029012] Requires v1.3.0
  [6c6a2e73] Scratch v1.2.1
  [91c51154] SentinelArrays v1.4.3
  [a2af1166] SortingAlgorithms v1.2.1
⌅ [9f842d2f] SparseConnectivityTracer v0.4.2
  [0a514795] SparseMatrixColorings v0.3.2
  [276daf66] SpecialFunctions v2.4.0
  [aedffcd0] Static v0.8.10
  [0d7ed370] StaticArrayInterface v1.5.0
  [90137ffa] StaticArrays v1.9.4
  [1e83bf80] StaticArraysCore v1.4.2
  [892a3eda] StringManipulation v0.3.4
  [53d494c1] StructIO v0.3.0
  [3783bdb8] TableTraits v1.0.1
  [bd369af6] Tables v1.11.1
  [a759f4b9] TimerOutputs v0.5.24
  [0796e94c] Tokenize v0.5.29
  [5c2747f8] URIs v1.5.1
  [7cc45869] Enzyme_jll v0.0.117+0
  [dad2f222] LLVMExtra_jll v0.0.29+0
  [efe28fd5] OpenSpecFun_jll v0.5.5+0
  [0dad84c5] ArgTools v1.1.1
  [56f22d72] Artifacts
  [2a0f44e3] Base64
  [ade2ca70] Dates
  [8ba89e20] Distributed
  [f43a241f] Downloads v1.6.0
  [7b1f6079] FileWatching
  [9fa8497b] Future
  [b77e0a4c] InteractiveUtils
  [4af54fe1] LazyArtifacts
  [b27032c2] LibCURL v0.6.4
  [76f85450] LibGit2
  [8f399da3] Libdl
  [37e2e46d] LinearAlgebra
  [56ddb016] Logging
  [d6f4376e] Markdown
  [a63ad114] Mmap
  [ca575930] NetworkOptions v1.2.0
  [44cfe95a] Pkg v1.10.0
  [de0858da] Printf
  [3fa0cd96] REPL
  [9a3f8284] Random
  [ea8e919c] SHA v0.7.0
  [9e88b42a] Serialization
  [6462fe0b] Sockets
  [2f01184e] SparseArrays v1.10.0
  [10745b16] Statistics v1.10.0
  [4607b0f0] SuiteSparse
  [fa267f1f] TOML v1.0.3
  [a4e569a6] Tar v1.10.0
  [8dfed614] Test
  [cf7118a7] UUIDs
  [4ec0a83e] Unicode
  [e66e0078] CompilerSupportLibraries_jll v1.1.1+0
  [deac9b47] LibCURL_jll v8.4.0+0
  [e37daf67] LibGit2_jll v1.6.4+0
  [29816b5a] LibSSH2_jll v1.11.0+1
  [c8ffd9c3] MbedTLS_jll v2.28.2+1
  [14a3606d] MozillaCACerts_jll v2023.1.10
  [4536629a] OpenBLAS_jll v0.3.23+4
  [05823500] OpenLibm_jll v0.8.1+2
  [bea87d4a] SuiteSparse_jll v7.2.1+1
  [83775a58] Zlib_jll v1.2.13+1
  [8e850b90] libblastrampoline_jll v5.8.0+1
  [8e850ede] nghttp2_jll v1.52.0+1
  [3f19e933] p7zip_jll v17.4.0+2
Info Packages marked with ⌅ have new versions available but compatibility constraints restrict them from upgrading. To see why use `status --outdated -m`

Failing

First modify line 14 in DifferentiationInterface/test/runtests.jl to the following:

GROUP = get(ENV, "JULIA_DI_TEST_GROUP", "Single/Enzyme")

Then run pkg> test on DifferentiationInterface.

Env
(DifferentiationInterface) pkg> test
     Testing DifferentiationInterface
      Status `/tmp/jl_8JT3oS/Project.toml`
  [47edcb42] ADTypes v1.2.1
  [4c88cf16] Aqua v0.8.7
  [34da2185] Compat v4.15.0
  [a93c6f00] DataFrames v1.6.1
  [a0c0ee7d] DifferentiationInterface v0.5.1 `~/Work/GitHub/Julia/DifferentiationInterface.jl/DifferentiationInterface`
  [ffbed154] DocStringExtensions v0.9.3
  [1a297f60] FillArrays v1.11.0
  [c3a54625] JET v0.9.2
  [98e50ef6] JuliaFormatter v1.0.56
  [65ce6f38] PackageExtensionCompat v1.0.2
⌅ [9f842d2f] SparseConnectivityTracer v0.4.2
  [0a514795] SparseMatrixColorings v0.3.2
  [37e2e46d] LinearAlgebra
  [44cfe95a] Pkg v1.10.0
  [2f01184e] SparseArrays v1.10.0
  [8dfed614] Test
      Status `/tmp/jl_8JT3oS/Manifest.toml`
  [47edcb42] ADTypes v1.2.1
  [4c88cf16] Aqua v0.8.7
  [00ebfdb7] CSTParser v3.4.3
  [da1fd8a2] CodeTracking v1.3.5
  [a80b9123] CommonMark v0.8.12
  [34da2185] Compat v4.15.0
  [a8cc5b0e] Crayons v4.1.1
  [9a962f9c] DataAPI v1.16.0
  [a93c6f00] DataFrames v1.6.1
  [864edb3b] DataStructures v0.18.20
  [e2d170a0] DataValueInterfaces v1.0.0
  [a0c0ee7d] DifferentiationInterface v0.5.1 `~/Work/GitHub/Julia/DifferentiationInterface.jl/DifferentiationInterface`
  [ffbed154] DocStringExtensions v0.9.3
  [1a297f60] FillArrays v1.11.0
  [c27321d9] Glob v1.3.1
  [842dd82b] InlineStrings v1.4.0
  [41ab1584] InvertedIndices v1.3.0
  [82899510] IteratorInterfaceExtensions v1.0.0
  [c3a54625] JET v0.9.2
  [682c06a0] JSON v0.21.4
  [98e50ef6] JuliaFormatter v1.0.56
  [aa1ae85d] JuliaInterpreter v0.9.31
  [b964fa9f] LaTeXStrings v1.3.1
  [6f1432cf] LoweredCodeUtils v2.4.6
  [1914dd2f] MacroTools v0.5.13
  [e1d29d7a] Missings v1.2.0
  [bac558e1] OrderedCollections v1.6.3
  [65ce6f38] PackageExtensionCompat v1.0.2
  [69de0a69] Parsers v2.8.1
  [2dfb63ee] PooledArrays v1.4.3
  [aea7be01] PrecompileTools v1.2.1
  [21216c6a] Preferences v1.4.3
  [08abe8d2] PrettyTables v2.3.2
  [189a3867] Reexport v1.2.2
  [ae029012] Requires v1.3.0
  [91c51154] SentinelArrays v1.4.3
  [a2af1166] SortingAlgorithms v1.2.1
⌅ [9f842d2f] SparseConnectivityTracer v0.4.2
  [0a514795] SparseMatrixColorings v0.3.2
  [892a3eda] StringManipulation v0.3.4
  [3783bdb8] TableTraits v1.0.1
  [bd369af6] Tables v1.11.1
  [0796e94c] Tokenize v0.5.29
  [5c2747f8] URIs v1.5.1
  [0dad84c5] ArgTools v1.1.1
  [56f22d72] Artifacts
  [2a0f44e3] Base64
  [ade2ca70] Dates
  [f43a241f] Downloads v1.6.0
  [7b1f6079] FileWatching
  [9fa8497b] Future
  [b77e0a4c] InteractiveUtils
  [b27032c2] LibCURL v0.6.4
  [76f85450] LibGit2
  [8f399da3] Libdl
  [37e2e46d] LinearAlgebra
  [56ddb016] Logging
  [d6f4376e] Markdown
  [a63ad114] Mmap
  [ca575930] NetworkOptions v1.2.0
  [44cfe95a] Pkg v1.10.0
  [de0858da] Printf
  [3fa0cd96] REPL
  [9a3f8284] Random
  [ea8e919c] SHA v0.7.0
  [9e88b42a] Serialization
  [6462fe0b] Sockets
  [2f01184e] SparseArrays v1.10.0
  [10745b16] Statistics v1.10.0
  [fa267f1f] TOML v1.0.3
  [a4e569a6] Tar v1.10.0
  [8dfed614] Test
  [cf7118a7] UUIDs
  [4ec0a83e] Unicode
  [e66e0078] CompilerSupportLibraries_jll v1.1.1+0
  [deac9b47] LibCURL_jll v8.4.0+0
  [e37daf67] LibGit2_jll v1.6.4+0
  [29816b5a] LibSSH2_jll v1.11.0+1
  [c8ffd9c3] MbedTLS_jll v2.28.2+1
  [14a3606d] MozillaCACerts_jll v2023.1.10
  [4536629a] OpenBLAS_jll v0.3.23+4
  [bea87d4a] SuiteSparse_jll v7.2.1+1
  [83775a58] Zlib_jll v1.2.13+1
  [8e850b90] libblastrampoline_jll v5.8.0+1
  [8e850ede] nghttp2_jll v1.52.0+1
  [3f19e933] p7zip_jll v17.4.0+2
        Info Packages marked with ⌅ have new versions available but compatibility constraints restrict them from upgrading.
Precompiling project...
  1 dependency successfully precompiled in 2 seconds. 52 already precompiled.
     Testing Running tests...
   Resolving package versions...
    Updating `/tmp/jl_8JT3oS/Project.toml`
  [a82114a7] + DifferentiationInterfaceTest v0.4.1 `~/Work/GitHub/Julia/DifferentiationInterface.jl/DifferentiationInterfaceTest`
    Updating `/tmp/jl_8JT3oS/Manifest.toml`
  [79e6a3ab] + Adapt v4.0.4
  [4fba245c] + ArrayInterface v7.10.0
  [fa961155] + CEnum v0.5.0
  [d360d2e6] + ChainRulesCore v1.23.0
  [0ca39b1e] + Chairmarks v1.2.1
  [bbf7d656] + CommonSubexpressions v0.3.0
  [b0b7db55] + ComponentArrays v0.15.13
  [163ba53b] + DiffResults v1.1.0
  [b552c78f] + DiffRules v1.15.1
  [a82114a7] + DifferentiationInterfaceTest v0.4.1 `~/Work/GitHub/Julia/DifferentiationInterface.jl/DifferentiationInterfaceTest`
  [f6369f11] + ForwardDiff v0.10.36
  [d9f16b24] + Functors v0.4.10
  [0c68f7d7] + GPUArrays v10.1.1
  [46192b85] + GPUArraysCore v0.1.6
  [615f187c] + IfElse v0.1.1
  [92d709cd] + IrrationalConstants v0.2.2
  [27aeb0d3] + JLArrays v0.1.4
  [692b3bcd] + JLLWrappers v1.5.0
  [929cbde3] + LLVM v7.1.0
  [2ab3a3ac] + LogExpFunctions v0.3.27
  [77ba4419] + NaNMath v1.0.2
  [92933f4c] + ProgressMeter v1.10.0
  [276daf66] + SpecialFunctions v2.4.0
  [aedffcd0] + Static v0.8.10
  [0d7ed370] + StaticArrayInterface v1.5.0
  [90137ffa] + StaticArrays v1.9.4
  [1e83bf80] + StaticArraysCore v1.4.2
  [dad2f222] + LLVMExtra_jll v0.0.29+0
  [efe28fd5] + OpenSpecFun_jll v0.5.5+0
  [8ba89e20] + Distributed
  [4af54fe1] + LazyArtifacts
  [4607b0f0] + SuiteSparse
  [05823500] + OpenLibm_jll v0.8.1+2
[ Info: Testing Single/Enzyme
   Resolving package versions...
    Updating `/tmp/jl_8JT3oS/Project.toml`
  [7da242da] + Enzyme v0.12.9
    Updating `/tmp/jl_8JT3oS/Manifest.toml`
  [7da242da] + Enzyme v0.12.9
  [f151be2c] + EnzymeCore v0.7.3
  [e2ba6199] + ExprTools v0.1.10
  [61eb1bfa] + GPUCompiler v0.26.5
  [d8793406] + ObjectFile v0.4.1
  [6c6a2e73] + Scratch v1.2.1
  [53d494c1] + StructIO v0.3.0
  [a759f4b9] + TimerOutputs v0.5.24
  [7cc45869] + Enzyme_jll v0.0.117+0
Precompiling project...
  4 dependencies successfully precompiled in 8 seconds. 114 already precompiled.

@adrhill
Copy link
Collaborator

adrhill commented May 29, 2024

Can replicate with a lot of circular dependency warnings.

Tests pass when including the file in a TestEnv:

julia> include("test/Single/Enzyme.jl")
┌ Warning: The project dependencies or compat requirements have changed since the manifest was last resolved.
│ It is recommended to `Pkg.resolve()` or consider `Pkg.update()` if necessary.
└ @ Pkg.API /Applications/Julia-1.10.app/Contents/Resources/julia/share/julia/stdlib/v1.10/Pkg/src/API.jl:1807
┌ Warning: Circular dependency detected. Precompilation will be skipped for:
│   DifferentiationInterface [a0c0ee7d-e4b9-4e03-894e-1c5f64a51d63]
│   DifferentiationInterfaceTest [a82114a7-5aa3-49a8-9643-716bb13727a3]
└ @ Pkg.API /Applications/Julia-1.10.app/Contents/Resources/julia/share/julia/stdlib/v1.10/Pkg/src/API.jl:1239
Precompiling DifferentiationInterfaceTest
  1 dependency successfully precompiled in 1 seconds. 70 already precompiled. 2 skipped due to circular dependency.
[ Info: Precompiling DifferentiationInterfaceTest [a82114a7-5aa3-49a8-9643-716bb13727a3]
┌ Warning: The project dependencies or compat requirements have changed since the manifest was last resolved.
│ It is recommended to `Pkg.resolve()` or consider `Pkg.update()` if necessary.
└ @ Pkg.API /Applications/Julia-1.10.app/Contents/Resources/julia/share/julia/stdlib/v1.10/Pkg/src/API.jl:1807
┌ Warning: Circular dependency detected. Precompilation will be skipped for:
│   DifferentiationInterface [a0c0ee7d-e4b9-4e03-894e-1c5f64a51d63]
│   DifferentiationInterfaceTest [a82114a7-5aa3-49a8-9643-716bb13727a3]
└ @ Pkg.API /Applications/Julia-1.10.app/Contents/Resources/julia/share/julia/stdlib/v1.10/Pkg/src/API.jl:1239
[ Info: Precompiling ReviseExt [08c3a254-6768-59bc-8e27-c66d568e569c]
┌ Warning: The project dependencies or compat requirements have changed since the manifest was last resolved.
│ It is recommended to `Pkg.resolve()` or consider `Pkg.update()` if necessary.
└ @ Pkg.API /Applications/Julia-1.10.app/Contents/Resources/julia/share/julia/stdlib/v1.10/Pkg/src/API.jl:1807
┌ Warning: Circular dependency detected. Precompilation will be skipped for:
│   DifferentiationInterface [a0c0ee7d-e4b9-4e03-894e-1c5f64a51d63]
│   DifferentiationInterfaceTest [a82114a7-5aa3-49a8-9643-716bb13727a3]
└ @ Pkg.API /Applications/Julia-1.10.app/Contents/Resources/julia/share/julia/stdlib/v1.10/Pkg/src/API.jl:1239
[ Info: Precompiling DifferentiationInterfaceEnzymeExt [55327dd7-aa92-56e5-a3d3-d077748ab7c0]
Test Summary:              | Pass  Total     Time
Testing correctness        | 2838   2838  1m00.7s
  Enzyme (forward|reverse) |  946    946    41.4s
  Enzyme (forward)         |  946    946     9.7s
  Enzyme (reverse)         |  946    946     9.6s
Test Summary:              | Pass  Total  Time
Testing correctness        |   72     72  3.6s
  Enzyme (forward|reverse) |   72     72  3.6s
Test Summary:       | Pass  Total  Time
Testing correctness |   22     22  0.2
  Enzyme (forward)  |   22     22  0.2
Test Summary:      | Pass  Total   Time
Testing types      |  120    120  10.4
  Enzyme (forward) |  120    120  10.4
Test Summary:                     | Pass  Total   Time
Testing correctness               |  360    360  12.3s
  Sparse Enzyme (forward|reverse) |  120    120   5.7s
  Sparse Enzyme (forward)         |  120    120   4.4s
  Sparse Enzyme (reverse)         |  120    120   2.2s
Test Summary:                     | Pass  Total   Time
Testing correctness + sparsity    |  456    456  16.2s
  Sparse Enzyme (forward|reverse) |  152    152   7.3s
  Sparse Enzyme (forward)         |  152    152   2.6s
  Sparse Enzyme (reverse)         |  152    152   6.3s

Running pkg> test:

 Warning: Circular dependency detected. Precompilation will be skipped for:
│   DifferentiationInterface [a0c0ee7d-e4b9-4e03-894e-1c5f64a51d63]
│   DifferentiationInterfaceTest [a82114a7-5aa3-49a8-9643-716bb13727a3]
│   DifferentiationInterfaceForwardDiffExt [9b811ce9-db61-5a34-8340-8bb6e57a7c74]
│   DifferentiationInterfaceEnzymeExt [55327dd7-aa92-56e5-a3d3-d077748ab7c0]
│   DifferentiationInterfaceChainRulesCoreExt [9dc9f1db-29b2-5863-acb4-b3b6c4880d6a]
└ @ Pkg.API /Applications/Julia-1.10.app/Contents/Resources/julia/share/julia/stdlib/v1.10/Pkg/src/API.jl:1239

...
 
Test Summary:                                                                    | Pass  Error  Total     Time
DifferentiationInterface.jl                                                      | 3842     12   3854  2m52.8s
  Single/Enzyme                                                                  | 3842     12   3854  2m52.7s
    Testing correctness                                                          | 2838          2838  1m03.1s
      Enzyme (forward|reverse)                                                   |  946           946    43.3s
      Enzyme (forward)                                                           |  946           946    10.0s
      Enzyme (reverse)                                                           |  946           946     9.8s
    Testing correctness                                                          |   34     12     46     8.1s
      Enzyme (forward|reverse)                                                   |   34     12     46     8.1s
        HessianScenario                                                          |           4      4     3.7s
          HessianScenario{1,outofplace}(arr_to_num : Vector{Float64} -> Float64) |           1      1     2.2s
            Correctness                                                          |           1      1     2.2s
          HessianScenario{1,inplace}(arr_to_num : Vector{Float64} -> Float64)    |           1      1     0.2s
            Correctness                                                          |           1      1     0.2s
          HessianScenario{1,outofplace}(arr_to_num : Matrix{Float64} -> Float64) |           1      1     1.0s
            Correctness                                                          |           1      1     1.0s
          HessianScenario{1,inplace}(arr_to_num : Matrix{Float64} -> Float64)    |           1      1     0.2s
            Correctness                                                          |           1      1     0.2s
        SecondDerivativeScenario                                                 |   22            22     1.1s
        HVPScenario                                                              |   12      8     20     3.3s
          HVPScenario{1,outofplace}(arr_to_num : Vector{Float64} -> Float64)     |    3      2      5     1.1s
            Correctness                                                          |    3      2      5     1.1s
              Different point                                                    |           1      1     0.3s
              Same point                                                         |           1      1     0.2s
              Scenario intact                                                    |    3             3     0.0s
          HVPScenario{1,inplace}(arr_to_num : Vector{Float64} -> Float64)        |    3      2      5     0.4s
            Correctness                                                          |    3      2      5     0.4s
              Different point                                                    |           1      1     0.2s
              Same point                                                         |           1      1     0.2s
              Scenario intact                                                    |    3             3     0.0s
          HVPScenario{1,outofplace}(arr_to_num : Matrix{Float64} -> Float64)     |    3      2      5     1.2s
            Correctness                                                          |    3      2      5     1.2s
              Different point                                                    |           1      1     0.3s
              Same point                                                         |           1      1     0.2s
              Scenario intact                                                    |    3             3     0.0s
          HVPScenario{1,inplace}(arr_to_num : Matrix{Float64} -> Float64)        |    3      2      5     0.5s
            Correctness                                                          |    3      2      5     0.5s
              Different point                                                    |           1      1     0.2s
              Same point                                                         |           1      1     0.2s
              Scenario intact                                                    |    3             3     0.0s
    Testing correctness                                                          |   22            22     0.2s
      Enzyme (forward)                                                           |   22            22     0.2s
    Testing types                                                                |  120           120     5.0s
      Enzyme (forward)                                                           |  120           120     5.0s
    Testing correctness                                                          |  360           360     9.8s
      Sparse Enzyme (forward|reverse)                                            |  120           120     2.9s
      Sparse Enzyme (forward)                                                    |  120           120     1.7s
      Sparse Enzyme (reverse)                                                    |  120           120     5.1s
    Testing correctness + sparsity                                               |  456           456    25.2s
      Sparse Enzyme (forward|reverse)                                            |  152           152    15.7s
      Sparse Enzyme (forward)                                                    |  152           152     2.6s
      Sparse Enzyme (reverse)                                                    |  152           152     6.9s
ERROR: LoadError: Some tests did not pass: 3842 passed, 0 failed, 12 errored, 0 broken.
in expression starting at /Users/hill/Developer/DifferentiationInterface.jl/DifferentiationInterface/test/runtests.jl:14
ERROR: Package DifferentiationInterface errored during testing

@gdalle
Copy link
Member Author

gdalle commented May 30, 2024

Superseded by #285

@gdalle gdalle closed this May 30, 2024
@gdalle gdalle deleted the gd/enzyme_second_order branch May 30, 2024 09:41
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.

Use autodiff_deferred for the inner gradient in Enzyme hessian

4 participants