Add PrecompileTools to speed up time-to-first-solve#967
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #967 +/- ##
==========================================
+ Coverage 93.71% 93.75% +0.03%
==========================================
Files 43 43
Lines 9635 9648 +13
==========================================
+ Hits 9029 9045 +16
+ Misses 606 603 -3
... and 1 file with indirect coverage changes Continue to review full report in Codecov by Sentry.
🚀 New features to boost your workflow:
|
|
Nice! @noahrhodes and I need to think a bit about the exact set of stuff that should go in |
|
Let's discuss next week |
|
With jump-dev/Ipopt.jl#487 I've got this down to EXIT: Optimal Solution Found.
4.780973 seconds (5.48 M allocations: 370.507 MiB, 8.31% gc time, 99.38% compilation time: 20% of which was recompilation)
Dict{String, Any} with 8 entries:
"solve_time" => 1.89057
"optimizer" => "Ipopt"
"termination_status" => LOCALLY_SOLVED
"dual_status" => FEASIBLE_POINT
"primal_status" => FEASIBLE_POINT
"objective" => 5906.88
"solution" => Dict{String, Any}("dcline"=>Dict{String, Any}("1"=>Dict{String, Any}("qf"=…
"objective_lb" => -Inf |
|
Nice! |
| # this must come last to support automated export | ||
| include("core/export.jl") | ||
|
|
||
| PrecompileTools.@setup_workload begin |
There was a problem hiding this comment.
@odow you should turn off the logger in this so that it doesn't print the logs when precompiling. It throws users off
There was a problem hiding this comment.
Hmm okay. Will do. I just assumed people ignored the stuff that happens during precompilation.
Closes #899
Speedup for this example is 20 seconds -> 7 seconds.
Before
This PR