diff --git a/benchmarks/benchmarks-config.json b/benchmarks/benchmarks-config.json index bb8b28f5..85723534 100644 --- a/benchmarks/benchmarks-config.json +++ b/benchmarks/benchmarks-config.json @@ -20,6 +20,13 @@ "julia_arch": "x64", "runs_on": "[\"moonshot\"]", "runner": "self-hosted" + }, + { + "id": "core-midpoint", + "julia_version": "1.11", + "julia_arch": "x64", + "runs_on": "[\"midpoint\"]", + "runner": "github" } ] } diff --git a/benchmarks/core-midpoint.jl b/benchmarks/core-midpoint.jl new file mode 100644 index 00000000..a62bf348 --- /dev/null +++ b/benchmarks/core-midpoint.jl @@ -0,0 +1,33 @@ +# Benchmark script for core-midpoint +# Setup (Pkg.activate, instantiate, update, using CTBenchmarks) is handled by the workflow + +function run() + results = CTBenchmarks.benchmark(; + problems=[ + :beam, + :chain, + :double_oscillator, + # :ducted_fan, + :electric_vehicle, + :glider, + :insurance, + :jackson, + :robbins, + :robot, + :rocket, + :space_shuttle, + :steering, + :vanderpol, + ], + solver_models=[:ipopt => [:adnlp, :exa], :madnlp => [:adnlp, :exa]], + grid_sizes = [200, 500, 1000, 2000], + disc_methods = [:midpoint], + tol = 1e-8, + ipopt_mu_strategy = "adaptive", + print_trace = false, + max_iter = 1000, + max_wall_time = 500.0 + ) + println("✅ Benchmark completed successfully!") + return results +end \ No newline at end of file diff --git a/docs/src/core/cpu.md.template b/docs/src/core/cpu.md.template index 4445c941..1a92f74e 100644 --- a/docs/src/core/cpu.md.template +++ b/docs/src/core/cpu.md.template @@ -142,3 +142,70 @@ _print_benchmark_log("core-moonshot-cpu") # hide ``` + + +## Midpoint + + + +### 📈 Performance Profile CPU Time + + + + + +### 📈 Performance Profile CPU Time: two best combos + + + + + +### 📈 Performance Profile Iterations + + + + + +### 📊 Tables of Results + + + +```@raw html +
+ +
+``` + +```@example BENCH +_print_benchmark_log("core-midpoint") # hide +``` + +```@raw html +
+
+``` +