Skip to content

Commit b6635bf

Browse files
Automatic build\nPublished by build of: SciML/SciMLBenchmarks.jl@dffd72f
1 parent cbb80dc commit b6635bf

8 files changed

Lines changed: 75 additions & 50 deletions

File tree

-771 Bytes
Loading
391 Bytes
Loading
529 Bytes
Loading
20.5 KB
Loading
2.54 KB
Loading
657 Bytes
Loading

markdown/SimpleHandwrittenPDE/ks_fdm_wpd.md

Lines changed: 51 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ plt = heatmap(xs, tslices, ys', xlabel="x", ylabel="t")
8787
```
8888

8989
```
90-
17.137453 seconds (16.55 M allocations: 2.154 GiB, 5.05% gc time, 53.07% c
90+
17.965191 seconds (16.54 M allocations: 2.154 GiB, 3.99% gc time, 54.33% c
9191
ompilation time)
9292
```
9393

@@ -130,8 +130,8 @@ IMEXEuler
130130
CNAB2
131131
CNLF2
132132
SBDF2
133-
67.222792 seconds (59.96 M allocations: 27.375 GiB, 4.30% gc time, 17.13%
134-
compilation time)
133+
73.287431 seconds (60.06 M allocations: 27.382 GiB, 10.67% gc time, 17.46%
134+
compilation time)
135135
```
136136

137137

@@ -175,8 +175,8 @@ NorsettEuler (m=20)
175175
ETDRK2 (caching)
176176
ETDRK2 (m=5)
177177
ETDRK2 (m=20)
178-
256.758478 seconds (145.20 M allocations: 111.863 GiB, 6.91% gc time, 3.43%
179-
compilation time)
178+
263.221534 seconds (145.17 M allocations: 111.860 GiB, 11.61% gc time, 3.54
179+
% compilation time)
180180
```
181181

182182

@@ -197,8 +197,8 @@ setups = [
197197
Dict(:alg => ETDRK2(), :dts => 1e-4 * multipliers),
198198
]
199199
labels = hcat(
200-
"CNAB2 (dense linsolve)",
201-
"CNAB2 (Krylov linsolve)",
200+
"CNAB2 (dense)",
201+
"CNAB2 (Krylov)",
202202
"ETDRK2 (caching)",
203203
)
204204
@time wp = WorkPrecisionSet(prob, abstols, reltols, setups;
@@ -209,10 +209,10 @@ plot(wp, label=labels, markershape=:auto, title="Between Families, High Toleranc
209209
```
210210

211211
```
212-
CNAB2 (dense linsolve)
213-
CNAB2 (Krylov linsolve)
212+
CNAB2 (dense)
213+
CNAB2 (Krylov)
214214
ETDRK2 (caching)
215-
64.014218 seconds (40.55 M allocations: 34.591 GiB, 10.80% gc time, 3.11%
215+
70.109623 seconds (34.75 M allocations: 28.427 GiB, 23.75% gc time, 3.12%
216216
compilation time)
217217
```
218218

@@ -225,27 +225,31 @@ compilation time)
225225

226226
#### Implicit-Explicit Methods
227227

228-
229-
Krylov linear solvers.
228+
Dense and Krylov linear solvers.
230229
```julia
231-
abstols = 0.1 .^ (7:13)
232-
reltols = 0.1 .^ (4:10)
230+
abstols = 0.1 .^ (8:12)
231+
reltols = 0.1 .^ (5:9)
233232
setups = [
234-
# KenCarp methods take forever with adaptive timestepping for some reason
235-
# Dict(:alg => KenCarp3(linsolve=KrylovJL_GMRES())),
236-
# Dict(:alg => KenCarp4(linsolve=KrylovJL_GMRES())),
237-
# Dict(:alg => KenCarp5(linsolve=KrylovJL_GMRES())),
233+
Dict(:alg => KenCarp3()),
234+
Dict(:alg => KenCarp4()),
235+
Dict(:alg => KenCarp5()),
236+
Dict(:alg => KenCarp3(linsolve=KrylovJL_GMRES())),
237+
Dict(:alg => KenCarp4(linsolve=KrylovJL_GMRES())),
238+
Dict(:alg => KenCarp5(linsolve=KrylovJL_GMRES())),
238239
Dict(:alg => ARKODE(Sundials.Implicit(), order=3, linear_solver=:GMRES)),
239240
Dict(:alg => ARKODE(Sundials.Implicit(), order=4, linear_solver=:GMRES)),
240241
Dict(:alg => ARKODE(Sundials.Implicit(), order=5, linear_solver=:GMRES)),
241242
]
242243
labels = hcat(
243-
# "KenCarp3",
244-
# "KenCarp4",
245-
# "KenCarp5",
246-
"ARKODE3",
247-
"ARKODE4",
248-
"ARKODE5",
244+
"KenCarp3 (dense)",
245+
"KenCarp4 (dense)",
246+
"KenCarp5 (dense)",
247+
"KenCarp3 (Krylov)",
248+
"KenCarp4 (Krylov)",
249+
"KenCarp5 (Krylov)",
250+
"ARKODE3 (Krylov)",
251+
"ARKODE4 (Krylov)",
252+
"ARKODE5 (Krylov)",
249253
)
250254
@time wp = WorkPrecisionSet(prob, abstols, reltols, setups;
251255
print_names=true, names=labels, numruns=5, error_estimate=:l2,
@@ -255,10 +259,16 @@ plot(wp, label=labels, markershape=:auto, title="IMEX Methods, Krylov Linsolve,
255259
```
256260

257261
```
258-
ARKODE3
259-
ARKODE4
260-
ARKODE5
261-
128.340745 seconds (261.02 M allocations: 41.002 GiB, 3.48% gc time, 1.47%
262+
KenCarp3 (dense)
263+
KenCarp4 (dense)
264+
KenCarp5 (dense)
265+
KenCarp3 (Krylov)
266+
KenCarp4 (Krylov)
267+
KenCarp5 (Krylov)
268+
ARKODE3 (Krylov)
269+
ARKODE4 (Krylov)
270+
ARKODE5 (Krylov)
271+
426.726592 seconds (198.17 M allocations: 29.443 GiB, 1.79% gc time, 4.05%
262272
compilation time)
263273
```
264274

@@ -294,7 +304,7 @@ plot(wp, label=labels, markershape=:auto, title="ExpRK Methods, Low Tolerances")
294304
ETDRK3 (caching)
295305
ETDRK4 (caching)
296306
HochOst4 (caching)
297-
131.857690 seconds (11.45 M allocations: 18.307 GiB, 0.71% gc time, 4.68% c
307+
138.101421 seconds (11.44 M allocations: 19.659 GiB, 0.78% gc time, 4.76% c
298308
ompilation time)
299309
```
300310

@@ -314,7 +324,11 @@ setups = [
314324
Dict(:alg => ETDRK3(), :dts => 1e-2 * multipliers),
315325
Dict(:alg => ETDRK4(), :dts => 1e-2 * multipliers),
316326
]
317-
labels = hcat("ARKODE (Krylov linsolve)", "ETDRK3 ()", "ETDRK4 ()")
327+
labels = hcat(
328+
"ARKODE5 (Krylov)",
329+
"ETDRK3 (caching)",
330+
"ETDRK4 (caching)"
331+
)
318332
@time wp = WorkPrecisionSet(prob, abstols, reltols, setups;
319333
print_names=true, names=labels, numruns=5, error_estimate=:l2,
320334
save_everystep=false, appxsol=test_sol, maxiters=Int(1e5));
@@ -323,10 +337,10 @@ plot(wp, label=labels, markershape=:auto, title="Between Families, Low Tolerance
323337
```
324338

325339
```
326-
ARKODE (Krylov linsolve)
327-
ETDRK3 ()
328-
ETDRK4 ()
329-
131.804965 seconds (35.36 M allocations: 17.681 GiB, 1.34% gc time, 0.06% c
340+
ARKODE5 (Krylov)
341+
ETDRK3 (caching)
342+
ETDRK4 (caching)
343+
96.038497 seconds (35.33 M allocations: 17.679 GiB, 2.57% gc time, 0.01% c
330344
ompilation time)
331345
```
332346

@@ -358,7 +372,7 @@ Platform Info:
358372
WORD_SIZE: 64
359373
LIBM: libopenlibm
360374
LLVM: libLLVM-15.0.7 (ORCJIT, znver2)
361-
Threads: 1 default, 0 interactive, 1 GC (on 128 virtual cores)
375+
Threads: 128 default, 0 interactive, 64 GC (on 128 virtual cores)
362376
Environment:
363377
JULIA_CPU_THREADS = 128
364378
JULIA_DEPOT_PATH = /cache/julia-buildkite-plugin/depots/5b300254-1738-4989-ae0a-f4d2d937f953
@@ -381,6 +395,7 @@ Status `/cache/build/exclusive-amdci3-0/julialang/scimlbenchmarks-dot-jl/benchma
381395
[c3572dad] Sundials v4.28.0
382396
[37e2e46d] LinearAlgebra
383397
[2f01184e] SparseArrays v1.10.0
398+
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.
384399
```
385400

386401
And the full manifest:
@@ -777,5 +792,6 @@ Status `/cache/build/exclusive-amdci3-0/julialang/scimlbenchmarks-dot-jl/benchma
777792
[8e850ede] nghttp2_jll v1.52.0+1
778793
[3f19e933] p7zip_jll v17.4.0+2
779794
Info Packages marked with ⌅ have new versions available but compatibility constraints restrict them from upgrading. To see why use `status --outdated -m`
795+
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.
780796
```
781797

script/SimpleHandwrittenPDE/ks_fdm_wpd.jl

Lines changed: 24 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -106,8 +106,8 @@ setups = [
106106
Dict(:alg => ETDRK2(), :dts => 1e-4 * multipliers),
107107
]
108108
labels = hcat(
109-
"CNAB2 (dense linsolve)",
110-
"CNAB2 (Krylov linsolve)",
109+
"CNAB2 (dense)",
110+
"CNAB2 (Krylov)",
111111
"ETDRK2 (caching)",
112112
)
113113
@time wp = WorkPrecisionSet(prob, abstols, reltols, setups;
@@ -117,24 +117,29 @@ labels = hcat(
117117
plot(wp, label=labels, markershape=:auto, title="Between Families, High Tolerances")
118118

119119

120-
abstols = 0.1 .^ (7:13)
121-
reltols = 0.1 .^ (4:10)
120+
abstols = 0.1 .^ (8:12)
121+
reltols = 0.1 .^ (5:9)
122122
setups = [
123-
# KenCarp methods take forever with adaptive timestepping for some reason
124-
# Dict(:alg => KenCarp3(linsolve=KrylovJL_GMRES())),
125-
# Dict(:alg => KenCarp4(linsolve=KrylovJL_GMRES())),
126-
# Dict(:alg => KenCarp5(linsolve=KrylovJL_GMRES())),
123+
Dict(:alg => KenCarp3()),
124+
Dict(:alg => KenCarp4()),
125+
Dict(:alg => KenCarp5()),
126+
Dict(:alg => KenCarp3(linsolve=KrylovJL_GMRES())),
127+
Dict(:alg => KenCarp4(linsolve=KrylovJL_GMRES())),
128+
Dict(:alg => KenCarp5(linsolve=KrylovJL_GMRES())),
127129
Dict(:alg => ARKODE(Sundials.Implicit(), order=3, linear_solver=:GMRES)),
128130
Dict(:alg => ARKODE(Sundials.Implicit(), order=4, linear_solver=:GMRES)),
129131
Dict(:alg => ARKODE(Sundials.Implicit(), order=5, linear_solver=:GMRES)),
130132
]
131133
labels = hcat(
132-
# "KenCarp3",
133-
# "KenCarp4",
134-
# "KenCarp5",
135-
"ARKODE3",
136-
"ARKODE4",
137-
"ARKODE5",
134+
"KenCarp3 (dense)",
135+
"KenCarp4 (dense)",
136+
"KenCarp5 (dense)",
137+
"KenCarp3 (Krylov)",
138+
"KenCarp4 (Krylov)",
139+
"KenCarp5 (Krylov)",
140+
"ARKODE3 (Krylov)",
141+
"ARKODE4 (Krylov)",
142+
"ARKODE5 (Krylov)",
138143
)
139144
@time wp = WorkPrecisionSet(prob, abstols, reltols, setups;
140145
print_names=true, names=labels, numruns=5, error_estimate=:l2,
@@ -171,7 +176,11 @@ setups = [
171176
Dict(:alg => ETDRK3(), :dts => 1e-2 * multipliers),
172177
Dict(:alg => ETDRK4(), :dts => 1e-2 * multipliers),
173178
]
174-
labels = hcat("ARKODE (Krylov linsolve)", "ETDRK3 ()", "ETDRK4 ()")
179+
labels = hcat(
180+
"ARKODE5 (Krylov)",
181+
"ETDRK3 (caching)",
182+
"ETDRK4 (caching)"
183+
)
175184
@time wp = WorkPrecisionSet(prob, abstols, reltols, setups;
176185
print_names=true, names=labels, numruns=5, error_estimate=:l2,
177186
save_everystep=false, appxsol=test_sol, maxiters=Int(1e5));

0 commit comments

Comments
 (0)