@@ -4,7 +4,7 @@ title: "Julia AD Benchmarks"
44---
55``` julia
66using DifferentiationInterface, DifferentiationInterfaceTest, DataFrames, DataFramesMeta
7- import Enzyme, Zygote, Tapir
7+ import Enzyme, Zygote, Mooncake
88import Markdown, PrettyTables, Printf
99
1010function paritytrig (x:: AbstractVector{T} ) where {T}
@@ -20,32 +20,42 @@ function paritytrig(x::AbstractVector{T}) where {T}
2020end
2121
2222backends = [
23- AutoEnzyme (mode = Enzyme. Reverse),
24- AutoTapir (safe_mode = false ),
25- AutoZygote ()
23+ AutoEnzyme (mode= Enzyme. Reverse),
24+ AutoMooncake (safe_mode= false ),
25+ AutoZygote (),
2626];
2727
2828scenarios = [
29- GradientScenario (paritytrig; x = rand (100 ), y = 0.0 , nb_args = 1 , place = :inplace ),
30- GradientScenario (paritytrig; x = rand (10_000 ), y = 0.0 , nb_args = 1 , place = :inplace )
29+ GradientScenario (paritytrig; x= rand (100 ), y= 0.0 , nb_args= 1 , place= :inplace ),
30+ GradientScenario (paritytrig; x= rand (10_000 ), y= 0.0 , nb_args= 1 , place= :inplace )
3131];
3232
33- data = benchmark_differentiation (backends, scenarios, logging = true );
33+ data = benchmark_differentiation (backends, scenarios, logging= true );
3434
3535table = PrettyTables. pretty_table (
3636 String,
3737 data;
38- backend = Val (:markdown ),
39- header = names (data),
40- formatters = PrettyTables. ft_printf (" %.1e" )
38+ backend= Val (:markdown ),
39+ header= names (data),
40+ formatters= PrettyTables. ft_printf (" %.1e" ),
4141)
4242
4343Markdown. parse (table)
4444```
4545
4646```
47- Error: ArgumentError: Package Tapir not found in current path.
48- - Run `import Pkg; Pkg.add("Tapir")` to install the Tapir package.
47+ Error: MethodError: no method matching ADTypes.AutoMooncake(; safe_mode::Bo
48+ ol)
49+
50+ Closest candidates are:
51+ ADTypes.AutoMooncake(; config) got unsupported keyword argument "safe_mod
52+ e"
53+ @ ADTypes /cache/julia-buildkite-plugin/depots/5b300254-1738-4989-ae0a-f
54+ 4d2d937f953/packages/ADTypes/Rjw6V/src/dense.jl:336
55+ ADTypes.AutoMooncake(!Matched::Tconfig) where Tconfig got unsupported key
56+ word argument "safe_mode"
57+ @ ADTypes /cache/julia-buildkite-plugin/depots/5b300254-1738-4989-ae0a-f
58+ 4d2d937f953/packages/ADTypes/Rjw6V/src/dense.jl:337
4959```
5060
5161
@@ -85,7 +95,7 @@ Environment:
8595Package Information:
8696
8797```
88- Status `/cache/build/exclusive-amdci1 -0/julialang/scimlbenchmarks-dot-jl/benchmarks/AutomaticDifferentiation/Project.toml`
98+ Status `/cache/build/exclusive-amdci3 -0/julialang/scimlbenchmarks-dot-jl/benchmarks/AutomaticDifferentiation/Project.toml`
8999 [6e4b80f9] BenchmarkTools v1.6.3
90100 [a93c6f00] DataFrames v1.8.1
91101 [1313f7d8] DataFramesMeta v0.15.6
@@ -94,15 +104,15 @@ Status `/cache/build/exclusive-amdci1-0/julialang/scimlbenchmarks-dot-jl/benchma
94104 [7da242da] Enzyme v0.13.129
95105 [6a86dc24] FiniteDiff v2.29.0
96106 [f6369f11] ForwardDiff v1.3.2
97- [da2b9cff] Mooncake v0.5.6
107+ [da2b9cff] Mooncake v0.5.8
98108 [1dea7af3] OrdinaryDiffEq v6.108.0
99109 [65888b18] ParameterizedFunctions v5.22.0
100110 [91a5bcdd] Plots v1.41.6
101111⌅ [08abe8d2] PrettyTables v2.4.0
102112 [37e2e3b7] ReverseDiff v1.16.2
103113 [31c91b34] SciMLBenchmarks v0.1.3
104114 [1ed8b502] SciMLSensitivity v7.96.0
105- [90137ffa] StaticArrays v1.9.16
115+ [90137ffa] StaticArrays v1.9.17
106116 [9f7883ad] Tracker v0.2.38
107117 [e88e6eb3] Zygote v0.7.10
108118 [37e2e46d] LinearAlgebra
@@ -115,7 +125,7 @@ Info Packages marked with ⌅ have new versions available but compatibility cons
115125And the full manifest:
116126
117127```
118- Status `/cache/build/exclusive-amdci1 -0/julialang/scimlbenchmarks-dot-jl/benchmarks/AutomaticDifferentiation/Manifest.toml`
128+ Status `/cache/build/exclusive-amdci3 -0/julialang/scimlbenchmarks-dot-jl/benchmarks/AutomaticDifferentiation/Manifest.toml`
119129 [47edcb42] ADTypes v1.21.0
120130 [621f4979] AbstractFFTs v1.5.0
121131 [6e696c72] AbstractPlutoDingetjes v1.3.2
@@ -134,7 +144,7 @@ Status `/cache/build/exclusive-amdci1-0/julialang/scimlbenchmarks-dot-jl/benchma
134144 [d1d4a3ce] BitFlags v0.1.9
135145 [62783981] BitTwiddlingConvenienceFunctions v0.1.6
136146 [8e7c35d0] BlockArrays v1.9.3
137- [70df07ce] BracketingNonlinearSolve v1.8 .0
147+ [70df07ce] BracketingNonlinearSolve v1.10 .0
138148 [fa961155] CEnum v0.5.0
139149 [2a0fbf3d] CPUSummary v0.2.7
140150 [7057c7e9] Cassette v0.3.14
@@ -167,7 +177,7 @@ Status `/cache/build/exclusive-amdci1-0/julialang/scimlbenchmarks-dot-jl/benchma
167177 [864edb3b] DataStructures v0.19.3
168178 [e2d170a0] DataValueInterfaces v1.0.0
169179 [8bb1440f] DelimitedFiles v1.9.1
170- [2b5f629d] DiffEqBase v6.205.1
180+ [2b5f629d] DiffEqBase v6.210.0
171181 [459566f4] DiffEqCallbacks v4.12.0
172182 [77a26b50] DiffEqNoiseProcess v5.27.0
173183 [163ba53b] DiffResults v1.1.0
@@ -228,7 +238,7 @@ Status `/cache/build/exclusive-amdci1-0/julialang/scimlbenchmarks-dot-jl/benchma
228238 [692b3bcd] JLLWrappers v1.7.1
229239⌅ [682c06a0] JSON v0.21.4
230240 [ae98c720] Jieko v0.2.1
231- [ccbc3e58] JumpProcesses v9.22.0
241+ ⌃ [ccbc3e58] JumpProcesses v9.22.1
232242 [63c18a36] KernelAbstractions v0.9.40
233243 [ba0b0d4f] Krylov v0.10.5
234244 [929cbde3] LLVM v9.4.6
@@ -237,20 +247,20 @@ Status `/cache/build/exclusive-amdci1-0/julialang/scimlbenchmarks-dot-jl/benchma
237247 [10f19ff3] LayoutPointers v0.1.17
238248 [87fe0de2] LineSearch v0.1.6
239249 [d3d80556] LineSearches v7.6.0
240- ⌃ [7ed4a6bd] LinearSolve v3.58.0
250+ [7ed4a6bd] LinearSolve v3.59.1
241251 [2ab3a3ac] LogExpFunctions v0.3.29
242252 [e6f89c97] LoggingExtras v1.2.0
243253 [1914dd2f] MacroTools v0.5.16
244254 [d125e4d3] ManualMemory v0.1.8
245255 [bb5d69b7] MaybeInplace v0.1.4
246- [739be429] MbedTLS v1.1.9
256+ [739be429] MbedTLS v1.1.10
247257 [442fdcdd] Measures v0.3.3
248258 [e1d29d7a] Missings v1.2.0
249259 [dbe65cb8] MistyClosures v2.1.0
250- ⌃ [961ee093] ModelingToolkit v11.10.0
251- ⌃ [7771a370] ModelingToolkitBase v1.13.1
252- [6bb917b9] ModelingToolkitTearing v1.3.1
253- [da2b9cff] Mooncake v0.5.6
260+ [961ee093] ModelingToolkit v11.11.1
261+ ⌃ [7771a370] ModelingToolkitBase v1.14.0
262+ [6bb917b9] ModelingToolkitTearing v1.4.0
263+ [da2b9cff] Mooncake v0.5.8
254264 [2e0e35c7] Moshi v0.3.7
255265 [46d2c3a1] MuladdMacro v0.2.4
256266 [102ac46a] MultivariatePolynomials v0.5.13
@@ -260,7 +270,7 @@ Status `/cache/build/exclusive-amdci1-0/julialang/scimlbenchmarks-dot-jl/benchma
260270 [872c559c] NNlib v0.9.33
261271 [77ba4419] NaNMath v1.1.3
262272⌃ [8913a72c] NonlinearSolve v4.15.0
263- [be0214bd] NonlinearSolveBase v2.12 .0
273+ [be0214bd] NonlinearSolveBase v2.14 .0
264274⌅ [5959db7a] NonlinearSolveFirstOrder v1.11.1
265275 [9a2c21bd] NonlinearSolveQuasiNewton v1.12.0
266276 [26075421] NonlinearSolveSpectralMethods v1.6.0
@@ -271,28 +281,28 @@ Status `/cache/build/exclusive-amdci1-0/julialang/scimlbenchmarks-dot-jl/benchma
271281 [bac558e1] OrderedCollections v1.8.1
272282 [1dea7af3] OrdinaryDiffEq v6.108.0
273283 [89bda076] OrdinaryDiffEqAdamsBashforthMoulton v1.9.0
274- [6ad6398a] OrdinaryDiffEqBDF v1.16 .0
275- [bbf590c4] OrdinaryDiffEqCore v3.5.2
284+ [6ad6398a] OrdinaryDiffEqBDF v1.21 .0
285+ [bbf590c4] OrdinaryDiffEqCore v3.9.0
276286 [50262376] OrdinaryDiffEqDefault v1.12.0
277- [4302a76b] OrdinaryDiffEqDifferentiation v2.0 .0
287+ [4302a76b] OrdinaryDiffEqDifferentiation v2.1 .0
278288 [9286f039] OrdinaryDiffEqExplicitRK v1.9.0
279289 [e0540318] OrdinaryDiffEqExponentialRK v1.13.0
280290 [becaefa8] OrdinaryDiffEqExtrapolation v1.15.0
281- [5960d6e9] OrdinaryDiffEqFIRK v1.22 .0
291+ [5960d6e9] OrdinaryDiffEqFIRK v1.23 .0
282292 [101fe9f7] OrdinaryDiffEqFeagin v1.8.0
283293 [d3585ca7] OrdinaryDiffEqFunctionMap v1.9.0
284294 [d28bc4f8] OrdinaryDiffEqHighOrderRK v1.9.0
285295 [9f002381] OrdinaryDiffEqIMEXMultistep v1.12.0
286296 [521117fe] OrdinaryDiffEqLinear v1.10.0
287297 [1344f307] OrdinaryDiffEqLowOrderRK v1.10.0
288298 [b0944070] OrdinaryDiffEqLowStorageRK v1.12.0
289- [127b3ac7] OrdinaryDiffEqNonlinearSolve v1.20 .0
299+ [127b3ac7] OrdinaryDiffEqNonlinearSolve v1.23 .0
290300 [c9986a66] OrdinaryDiffEqNordsieck v1.9.0
291301 [5dd0a6cf] OrdinaryDiffEqPDIRK v1.11.0
292302 [5b33eab2] OrdinaryDiffEqPRK v1.8.0
293303 [04162be5] OrdinaryDiffEqQPRK v1.8.0
294- [af6ede74] OrdinaryDiffEqRKN v1.9 .0
295- [43230ef6] OrdinaryDiffEqRosenbrock v1.23 .0
304+ [af6ede74] OrdinaryDiffEqRKN v1.10 .0
305+ [43230ef6] OrdinaryDiffEqRosenbrock v1.25 .0
296306 [2d112036] OrdinaryDiffEqSDIRK v1.12.0
297307 [669c94d9] OrdinaryDiffEqSSPRK v1.11.0
298308 [e3e12d00] OrdinaryDiffEqStabilizedIRK v1.11.0
@@ -316,7 +326,7 @@ Status `/cache/build/exclusive-amdci1-0/julialang/scimlbenchmarks-dot-jl/benchma
316326⌅ [08abe8d2] PrettyTables v2.4.0
317327 [27ebfcd6] Primes v0.5.7
318328 [92933f4c] ProgressMeter v1.11.0
319- [43287f4e] PtrArrays v1.3 .0
329+ [43287f4e] PtrArrays v1.4 .0
320330 [1fd47b50] QuadGK v2.11.2
321331 [e6cf234a] RandomNumbers v1.6.0
322332 [988b38a3] ReadOnlyArrays v0.2.0
@@ -334,10 +344,10 @@ Status `/cache/build/exclusive-amdci1-0/julialang/scimlbenchmarks-dot-jl/benchma
334344 [7e49a35a] RuntimeGeneratedFunctions v0.5.17
335345 [9dfe8606] SCCNonlinearSolve v1.11.0
336346 [94e857df] SIMDTypes v0.1.0
337- [0bca4576] SciMLBase v2.139 .0
347+ [0bca4576] SciMLBase v2.144 .0
338348 [31c91b34] SciMLBenchmarks v0.1.3
339349 [19f34311] SciMLJacobianOperators v0.1.12
340- ⌃ [a6db7da4] SciMLLogging v1.9.0
350+ [a6db7da4] SciMLLogging v1.9.1
341351 [c0aeaf25] SciMLOperators v1.15.1
342352 [431bcebd] SciMLPublic v1.0.1
343353 [1ed8b502] SciMLSensitivity v7.96.0
@@ -348,7 +358,7 @@ Status `/cache/build/exclusive-amdci1-0/julialang/scimlbenchmarks-dot-jl/benchma
348358 [efcf1570] Setfield v1.1.2
349359 [992d4aef] Showoff v1.0.3
350360 [777ac1f9] SimpleBufferStream v1.2.0
351- [727e6d20] SimpleNonlinearSolve v2.10 .0
361+ [727e6d20] SimpleNonlinearSolve v2.11 .0
352362 [699a6c99] SimpleTraits v0.9.5
353363 [a2af1166] SortingAlgorithms v1.2.2
354364 [dc90abb0] SparseInverseSubset v0.1.2
@@ -358,7 +368,7 @@ Status `/cache/build/exclusive-amdci1-0/julialang/scimlbenchmarks-dot-jl/benchma
358368 [64909d44] StateSelection v1.3.0
359369 [aedffcd0] Static v1.3.1
360370 [0d7ed370] StaticArrayInterface v1.9.0
361- [90137ffa] StaticArrays v1.9.16
371+ [90137ffa] StaticArrays v1.9.17
362372 [1e83bf80] StaticArraysCore v1.4.4
363373 [82ae8749] StatsAPI v1.8.0
364374 [2913bbd2] StatsBase v0.34.10
@@ -371,8 +381,8 @@ Status `/cache/build/exclusive-amdci1-0/julialang/scimlbenchmarks-dot-jl/benchma
371381 [3384d301] SymbolicCompilerPasses v0.1.2
372382⌃ [2efcf032] SymbolicIndexingInterface v0.3.44
373383 [19f23fe9] SymbolicLimits v1.1.0
374- [d1185830] SymbolicUtils v4.18.2
375- [0c5d862f] Symbolics v7.15.1
384+ [d1185830] SymbolicUtils v4.18.5
385+ ⌃ [0c5d862f] Symbolics v7.15.1
376386 [9ce81f87] TableMetadataTools v0.1.0
377387 [3783bdb8] TableTraits v1.0.1
378388 [bd369af6] Tables v1.12.1
@@ -440,9 +450,9 @@ Status `/cache/build/exclusive-amdci1-0/julialang/scimlbenchmarks-dot-jl/benchma
440450 [36c8627f] Pango_jll v1.57.0+0
441451⌅ [30392449] Pixman_jll v0.44.2+0
442452⌅ [c0090381] Qt6Base_jll v6.8.2+2
443- [629bc702] Qt6Declarative_jll v6.8.2+1
444- [ce943373] Qt6ShaderTools_jll v6.8.2+1
445- [e99dba38] Qt6Wayland_jll v6.8.2+2
453+ ⌅ [629bc702] Qt6Declarative_jll v6.8.2+1
454+ ⌅ [ce943373] Qt6ShaderTools_jll v6.8.2+1
455+ ⌃ [e99dba38] Qt6Wayland_jll v6.8.2+2
446456 [f50d1b31] Rmath_jll v0.5.1+0
447457 [a44049a8] Vulkan_Loader_jll v1.3.243+0
448458 [a2964d1f] Wayland_jll v1.24.0+0
0 commit comments