diff --git a/test/Project.toml b/test/Project.toml index da81f119..e6ae782e 100644 --- a/test/Project.toml +++ b/test/Project.toml @@ -1,5 +1,4 @@ [deps] -Enzyme = "7da242da-08ed-463a-9acd-ee780be4f1d9" ForwardDiff = "f6369f11-7733-5829-9624-2563aa707210" LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e" ManualNLPModels = "30dfa513-9b2f-4fb3-9796-781eabac1617" diff --git a/test/enzyme.jl b/test/enzyme.jl index 0d1a9df6..faab8247 100644 --- a/test/enzyme.jl +++ b/test/enzyme.jl @@ -57,26 +57,6 @@ end test_autodiff_backend_error() -push!( - ADNLPModels.predefined_backend, - :enzyme_backend => Dict( - :gradient_backend => ADNLPModels.EnzymeReverseADGradient, - :jprod_backend => ADNLPModels.EnzymeReverseADJprod, - :jtprod_backend => ADNLPModels.EnzymeReverseADJtprod, - :hprod_backend => ADNLPModels.EnzymeReverseADHvprod, - :jacobian_backend => ADNLPModels.SparseEnzymeADJacobian, - :hessian_backend => ADNLPModels.SparseEnzymeADHessian, - :ghjvprod_backend => ADNLPModels.ForwardDiffADGHjvprod, - :jprod_residual_backend => ADNLPModels.EnzymeReverseADJprod, - :jtprod_residual_backend => ADNLPModels.EnzymeReverseADJtprod, - :hprod_residual_backend => ADNLPModels.EnzymeReverseADHvprod, - :jacobian_residual_backend => ADNLPModels.SparseEnzymeADJacobian, - :hessian_residual_backend => ADNLPModels.SparseEnzymeADHessian, - ), -) - -const test_enzyme = true - include("sparse_jacobian.jl") include("sparse_jacobian_nls.jl") include("sparse_hessian.jl") @@ -124,18 +104,18 @@ include("nls/basic.jl") include("nlp/nlpmodelstest.jl") include("nls/nlpmodelstest.jl") -@testset "Basic NLP tests using enzyme_backend" begin - test_autodiff_model("enzyme_backend", backend = :enzyme_backend) +@testset "Basic NLP tests using enzyme" begin + test_autodiff_model("enzyme", backend = :enzyme) end -@testset "Basic NLS tests using enzyme_backend" begin - autodiff_nls_test("enzyme_backend", backend = :enzyme_backend) +@testset "Basic NLS tests using enzyme" begin + autodiff_nls_test("enzyme", backend = :enzyme) end -@testset "Checking NLPModelsTest (NLP) tests with enzyme_backend" begin - nlp_nlpmodelstest(:enzyme_backend) +@testset "Checking NLPModelsTest (NLP) tests with enzyme" begin + nlp_nlpmodelstest(:enzyme) end -@testset "Checking NLPModelsTest (NLS) tests with enzyme_backend" begin - nls_nlpmodelstest(:enzyme_backend) +@testset "Checking NLPModelsTest (NLS) tests with enzyme" begin + nls_nlpmodelstest(:enzyme) end diff --git a/test/nlp/nlpmodelstest.jl b/test/nlp/nlpmodelstest.jl index 9f260bc1..6be6611a 100644 --- a/test/nlp/nlpmodelstest.jl +++ b/test/nlp/nlpmodelstest.jl @@ -18,7 +18,7 @@ function nlp_nlpmodelstest(backend) @testset "Check multiple precision" begin multiple_precision_nlp(nlp_from_T, exclude = [], linear_api = true) end - if backend != :enzyme && backend != :enzyme_backend + if backend != :enzyme @testset "Check view subarray" begin view_subarray_nlp(nlp_ad, exclude = []) end diff --git a/test/nls/nlpmodelstest.jl b/test/nls/nlpmodelstest.jl index 07217013..f6b29882 100644 --- a/test/nls/nlpmodelstest.jl +++ b/test/nls/nlpmodelstest.jl @@ -42,7 +42,7 @@ function nls_nlpmodelstest(backend) @testset "Check multiple precision" begin multiple_precision_nls(nls_from_T, exclude = exclude, linear_api = true) end - if backend != :enzyme && backend != :enzyme_backend + if backend != :enzyme @testset "Check view subarray" begin view_subarray_nls.(nlss, exclude = exclude) end diff --git a/test/sparse_hessian.jl b/test/sparse_hessian.jl index 4ab16d82..f9e6d37d 100644 --- a/test/sparse_hessian.jl +++ b/test/sparse_hessian.jl @@ -1,5 +1,6 @@ function sparse_hessian(backend, info, kw) @testset "Basic Hessian derivative with backend=$(backend) -- $info -- T=$(T)" for T in ( + Float32, Float64, ) c!(cx, x) = begin @@ -33,7 +34,6 @@ function sparse_hessian(backend, info, kw) # Test also the implementation of the backends b = nlp.adbackend.hessian_backend - @show b obj_weight = 0.5 @test nlp.meta.nnzh == ADNLPModels.get_nln_nnzh(b, nvar) ADNLPModels.hess_structure!(b, nlp, rows, cols) @@ -70,17 +70,8 @@ function sparse_hessian(backend, info, kw) function f(x) n = length(x) sum(100 * (x[i + 1] - x[i]^2)^2 + (x[i] - 1)^2 for i = 1:(n - 1)) - # res = 0 - # n = length(x) - # for i in 1:(n-1) - # res += 100 * (x[i + 1] - x[i]^2)^2 + (x[i] - 1)^2 - # end - # res end nlp = ADNLPModel( - # x -> sum(100 * (x[i + 1] - x[i]^2)^2 + (x[i] - 1)^2 for i = 1:(n - 1)), - # x -> sum(100 * (x[i + 1] - x[i]^2)^2 + (x[i] - 1)^2 for i = 1:3), - # x -> 100 * (x[2] - x[1]^2)^2 + (x[1] - 1)^2, f, x0, hessian_backend = backend,