Skip to content

Commit 5d917ce

Browse files
🤖 Format .jl files (#319)
Co-authored-by: amontoison <[email protected]>
1 parent e63cb70 commit 5d917ce

File tree

11 files changed

+64
-60
lines changed

11 files changed

+64
-60
lines changed

src/enzyme.jl

Lines changed: 29 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -243,7 +243,6 @@ end
243243

244244
@init begin
245245
@require Enzyme = "7da242da-08ed-463a-9acd-ee780be4f1d9" begin
246-
247246
function ADNLPModels.gradient(::EnzymeReverseADGradient, f, x)
248247
g = similar(x)
249248
Enzyme.gradient!(Enzyme.Reverse, g, Enzyme.Const(f), x)
@@ -262,7 +261,7 @@ end
262261
n = length(x)
263262
hess = zeros(T, n, n)
264263
fill!(b.seed, zero(T))
265-
for i in 1:n
264+
for i = 1:n
266265
b.seed[i] = one(T)
267266
Enzyme.hvp!(b.Hv, Enzyme.Const(f), x, b.seed)
268267
view(hess, :, i) .= b.Hv
@@ -272,12 +271,22 @@ end
272271
end
273272

274273
function Jprod!(b::EnzymeReverseADJprod, Jv, c!, x, v, ::Val)
275-
Enzyme.autodiff(Enzyme.Forward, Enzyme.Const(c!), Enzyme.Duplicated(b.cx, Jv), Enzyme.Duplicated(x, v))
274+
Enzyme.autodiff(
275+
Enzyme.Forward,
276+
Enzyme.Const(c!),
277+
Enzyme.Duplicated(b.cx, Jv),
278+
Enzyme.Duplicated(x, v),
279+
)
276280
return Jv
277281
end
278282

279283
function Jtprod!(b::EnzymeReverseADJtprod, Jtv, c!, x, v, ::Val)
280-
Enzyme.autodiff(Enzyme.Reverse, Enzyme.Const(c!), Enzyme.Duplicated(b.cx, Jtv), Enzyme.Duplicated(x, v))
284+
Enzyme.autodiff(
285+
Enzyme.Reverse,
286+
Enzyme.Const(c!),
287+
Enzyme.Duplicated(b.cx, Jtv),
288+
Enzyme.Duplicated(x, v),
289+
)
281290
return Jtv
282291
end
283292

@@ -366,7 +375,7 @@ end
366375
Enzyme.Forward,
367376
Enzyme.Const(c!),
368377
Enzyme.Duplicated(b.cx, b.compressed_jacobian),
369-
Enzyme.Duplicated(x, b.v)
378+
Enzyme.Duplicated(x, b.v),
370379
)
371380

372381
# Update the columns of the Jacobian that have the color `icol`
@@ -459,29 +468,34 @@ end
459468
Enzyme.Duplicated(x, dx),
460469
Enzyme.Const(y),
461470
Enzyme.Const(obj_weight),
462-
Enzyme.Duplicated(cx, dcx)
471+
Enzyme.Duplicated(cx, dcx),
463472
)
464473
return nothing
465474
end
466475

467476
function _hvp!(res, ℓ, x, v, y, obj_weight, cx)
468477
dcx = Enzyme.make_zero(cx)
469478
Enzyme.autodiff(
470-
Enzyme.Forward,
471-
_gradient!,
472-
res,
473-
Enzyme.Const(ℓ),
474-
Enzyme.Duplicated(x, v),
475-
Enzyme.Const(y),
476-
Enzyme.Const(obj_weight),
477-
Enzyme.Duplicated(cx, dcx),
479+
Enzyme.Forward,
480+
_gradient!,
481+
res,
482+
Enzyme.Const(ℓ),
483+
Enzyme.Duplicated(x, v),
484+
Enzyme.Const(y),
485+
Enzyme.Const(obj_weight),
486+
Enzyme.Duplicated(cx, dcx),
478487
)
479488
return nothing
480489
end
481490

482491
_hvp!(
483492
Enzyme.DuplicatedNoNeed(b.grad, b.compressed_hessian_icol),
484-
b.ℓ, x, b.v, y, obj_weight, b.cx
493+
b.ℓ,
494+
x,
495+
b.v,
496+
y,
497+
obj_weight,
498+
b.cx,
485499
)
486500

487501
if b.coloring_mode == :direct

src/forward.jl

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -144,14 +144,7 @@ function ForwardDiffADJtprod(
144144
return ForwardDiffADJtprod(cfg, ψ, temp, sol)
145145
end
146146

147-
function Jtprod!(
148-
b::ForwardDiffADJtprod{Tag, GT, S},
149-
Jtv,
150-
c!,
151-
x,
152-
v,
153-
::Val,
154-
) where {Tag, GT, S}
147+
function Jtprod!(b::ForwardDiffADJtprod{Tag, GT, S}, Jtv, c!, x, v, ::Val) where {Tag, GT, S}
155148
ncon = length(v)
156149
nvar = length(x)
157150

src/predefined_backend.jl

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -73,11 +73,13 @@ zygote_backend = Dict(
7373
:hessian_residual_backend => ZygoteADHessian,
7474
)
7575

76-
predefined_backend = Dict(:default => default_backend,
77-
:optimized => optimized_backend,
78-
:generic => generic_backend,
79-
:enzyme => enzyme_backend,
80-
:zygote => zygote_backend)
76+
predefined_backend = Dict(
77+
:default => default_backend,
78+
:optimized => optimized_backend,
79+
:generic => generic_backend,
80+
:enzyme => enzyme_backend,
81+
:zygote => zygote_backend,
82+
)
8183

8284
"""
8385
get_default_backend(meth::Symbol, backend::Symbol; kwargs...)

src/sparsity_pattern.jl

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -79,11 +79,7 @@ end
7979

8080
function get_sparsity_pattern(model::ADModel, ::Val{:jacobian})
8181
backend = model.adbackend.jacobian_backend
82-
validate_sparse_backend(
83-
backend,
84-
Union{SparseADJacobian, SparseEnzymeADJacobian},
85-
"Jacobian",
86-
)
82+
validate_sparse_backend(backend, Union{SparseADJacobian, SparseEnzymeADJacobian}, "Jacobian")
8783
m = model.meta.ncon
8884
n = model.meta.nvar
8985
colptr = backend.colptr

test/enzyme.jl

Lines changed: 4 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -54,22 +54,8 @@ function test_autodiff_backend_error()
5454
gradient!(adbackend.gradient_backend, [1.0], sum, [1.0])
5555
jacobian(adbackend.jacobian_backend, sum, [1.0])
5656
hessian(adbackend.hessian_backend, sum, [1.0])
57-
Jprod!(
58-
adbackend.jprod_backend,
59-
[1.0],
60-
sum!,
61-
[1.0],
62-
[1.0],
63-
Val(:c),
64-
)
65-
Jtprod!(
66-
adbackend.jtprod_backend,
67-
[1.0],
68-
mysum!,
69-
[1.0],
70-
[1.0],
71-
Val(:c),
72-
)
57+
Jprod!(adbackend.jprod_backend, [1.0], sum!, [1.0], [1.0], Val(:c))
58+
Jtprod!(adbackend.jtprod_backend, [1.0], mysum!, [1.0], [1.0], Val(:c))
7359
end
7460
end
7561

@@ -90,7 +76,8 @@ list_sparse_jac_backend = ((ADNLPModels.SparseEnzymeADJacobian, Dict()),)
9076
end
9177

9278
list_sparse_hess_backend = (
93-
( ADNLPModels.SparseEnzymeADHessian,
79+
(
80+
ADNLPModels.SparseEnzymeADHessian,
9481
Dict(:coloring_algorithm => GreedyColoringAlgorithm{:direct}()),
9582
),
9683
(

test/nlp/nlpmodelstest.jl

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
function nlp_nlpmodelstest(backend)
2-
@testset "Checking NLPModelsTest tests on problem $problem" for problem in NLPModelsTest.nlp_problems
2+
@testset "Checking NLPModelsTest tests on problem $problem" for problem in
3+
NLPModelsTest.nlp_problems
34
nlp_from_T = eval(Meta.parse(lowercase(problem) * "_autodiff"))
45
nlp_ad = nlp_from_T(; backend = backend)
56
nlp_man = eval(Meta.parse(problem))()

test/nls/nlpmodelstest.jl

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
function nls_nlpmodelstest(backend)
2-
@testset "Checking NLPModelsTest tests on problem $problem" for problem in NLPModelsTest.nls_problems
2+
@testset "Checking NLPModelsTest tests on problem $problem" for problem in
3+
NLPModelsTest.nls_problems
34
nls_from_T = eval(Meta.parse(lowercase(problem) * "_autodiff"))
45
nls_ad = nls_from_T(; backend = backend)
56
nls_man = eval(Meta.parse(problem))()

test/runtests.jl

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,8 @@ include("sparse_jacobian_nls.jl")
2828
include("sparse_hessian.jl")
2929
include("sparse_hessian_nls.jl")
3030

31-
list_sparse_jac_backend = ((ADNLPModels.SparseADJacobian, Dict()),
32-
(ADNLPModels.ForwardDiffADJacobian, Dict()))
31+
list_sparse_jac_backend =
32+
((ADNLPModels.SparseADJacobian, Dict()), (ADNLPModels.ForwardDiffADJacobian, Dict()))
3333

3434
@testset "Sparse Jacobian" begin
3535
for (backend, kw) in list_sparse_jac_backend
@@ -81,7 +81,8 @@ include("nls/nlpmodelstest.jl")
8181
test_autodiff_model("$backend", backend = backend)
8282
end
8383

84-
@testset "Checking NLPModelsTest (NLP) tests with $backend" for backend in keys(ADNLPModels.predefined_backend)
84+
@testset "Checking NLPModelsTest (NLP) tests with $backend" for backend in
85+
keys(ADNLPModels.predefined_backend)
8586
(backend == :zygote) && continue
8687
(backend == :enzyme) && continue
8788
nlp_nlpmodelstest(backend)
@@ -93,7 +94,8 @@ end
9394
autodiff_nls_test("$backend", backend = backend)
9495
end
9596

96-
@testset "Checking NLPModelsTest (NLS) tests with $backend" for backend in keys(ADNLPModels.predefined_backend)
97+
@testset "Checking NLPModelsTest (NLS) tests with $backend" for backend in
98+
keys(ADNLPModels.predefined_backend)
9799
(backend == :zygote) && continue
98100
(backend == :enzyme) && continue
99101
nls_nlpmodelstest(backend)

test/sparse_hessian_nls.jl

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
function sparse_hessian_nls(backend, kw)
2-
@testset "Basic Hessian of residual derivative with backend=$(backend) and T=$(T)" for T in (Float32, Float64)
2+
@testset "Basic Hessian of residual derivative with backend=$(backend) and T=$(T)" for T in (
3+
Float32,
4+
Float64,
5+
)
36
F!(Fx, x) = begin
47
Fx[1] = x[1] - 1
58
Fx[2] = 10 * (x[2] - x[1]^2)

test/sparse_jacobian.jl

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
function sparse_jacobian(backend, kw)
2-
@testset "Basic Jacobian derivative with backend=$(backend) and T=$(T)" for T in (Float32, Float64)
2+
@testset "Basic Jacobian derivative with backend=$(backend) and T=$(T)" for T in
3+
(Float32, Float64)
34
c!(cx, x) = begin
45
cx[1] = x[1] - 1
56
cx[2] = 10 * (x[2] - x[1]^2)
@@ -54,7 +55,8 @@ function sparse_jacobian(backend, kw)
5455
])
5556
end
5657

57-
nlp = ADNLPModel!(x -> sum(x), x0, c!, zeros(T, ncon), zeros(T, ncon), matrix_free = true; kw...)
58+
nlp =
59+
ADNLPModel!(x -> sum(x), x0, c!, zeros(T, ncon), zeros(T, ncon), matrix_free = true; kw...)
5860
@test nlp.adbackend.jacobian_backend isa ADNLPModels.EmptyADbackend
5961
end
6062
end

0 commit comments

Comments
 (0)