Julia Environments / Nov 10 2020
Julia DifferentialEquations
Setup
Install DiffEq Packages
VERSION
0.4s
Julia DifferentialEquations (Julia)
v"1.5.2"
]up
12.6s
Julia DifferentialEquations (Julia)
]add DifferentialEquations BoundaryValueDiffEq DelayDiffEq DiffEqBase DiffEqCallbacks DiffEqFinancial DiffEqJump DiffEqNoiseProcess DiffEqPhysics DimensionalPlotRecipes OrdinaryDiffEq SteadyStateDiffEq StochasticDiffEq
18.2s
Julia DifferentialEquations (Julia)
]build
33.7s
Julia DifferentialEquations (Julia)
]precompile
625.8s
Julia DifferentialEquations (Julia)
Build a new System Image
Precompilation code in a Code Listing, mounted as a file to the runtime.
pc_pkgs = "Parameters, GR, Plots, StatsBase, StatsPlots, WGLMakie, ProgressMeter, BenchmarkTools, DifferentialEquations, BoundaryValueDiffEq, DelayDiffEq, DiffEqBase, DiffEqCallbacks, DiffEqFinancial, DiffEqJump, DiffEqNoiseProcess, DiffEqPhysics, DimensionalPlotRecipes, OrdinaryDiffEq, SteadyStateDiffEq, StochasticDiffEq"
for pkg in split(pc_pkgs, ",")
pkg = String(strip(pkg))
ps = Base.find_package(pkg)
if !isnothing(ps)
psym = Symbol(pkg)
eval(:(using $psym))
try
include(abspath(joinpath(dirname(ps), "../test/runtests.jl")))
catch; end
end
end
Plots.plot([1,2,3])
precompile.jl
Julia
Target Broadwell CPUs, as those are the oldest we could possibly get allocated on GCE.
using PackageCompiler
pc_pkgs = "Parameters, GR, Plots, StatsBase, StatsPlots, WGLMakie, ProgressMeter, BenchmarkTools, DifferentialEquations, BoundaryValueDiffEq, DelayDiffEq, DiffEqBase, DiffEqCallbacks, DiffEqFinancial, DiffEqJump, DiffEqNoiseProcess, DiffEqPhysics, DimensionalPlotRecipes, OrdinaryDiffEq, SteadyStateDiffEq, StochasticDiffEq"
create_sysimage([Symbol(String(strip(pkg))) for pkg in split(pc_pkgs, ",")],
replace_default=true,
precompile_execution_file="/root/precompile.jl",
cpu_target="broadwell")
1657.4s
Julia DifferentialEquations (Julia)
Test
"$VERSION"
0.7s
Test DiffEq (Julia)
Julia DifferentialEquations
"1.5.2"
Should be fast:
using Parameters, GR, Plots, StatsBase, StatsPlots, WGLMakie, ProgressMeter, BenchmarkTools, DifferentialEquations, BoundaryValueDiffEq, DelayDiffEq, DiffEqBase, DiffEqCallbacks, DiffEqFinancial, DiffEqJump, DiffEqNoiseProcess, DiffEqPhysics, DimensionalPlotRecipes, OrdinaryDiffEq, SteadyStateDiffEq, StochasticDiffEq
0.2s
Test DiffEq (Julia)
Julia DifferentialEquations