OrdinaryDiffEq Loading Time

I am wondering if it is usual for it to take ~30 seconds to load the OrdinaryDiffEq package. I am curious why there is so much recompilation when loading the package. Is there something I could do to reduce the load time?

I am on Julia 1.8.5 and OrdinaryDiffEq v6.43.1

               _
   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.8.5 (2023-01-08)
 _/ |\__'_|_|_|\__'_|  |  Official https://julialang.org/ release
|__/                   |

julia> @time using OrdinaryDiffEq
 35.232642 seconds (39.82 M allocations: 2.937 GiB, 4.53% gc time, 5.17% compilation time: 52% of which was recompilation)

(@v1.8) pkg> status
Status `C:\Users\prana\.julia\environments\v1.8\Project.toml`
  [6e4b80f9] BenchmarkTools v1.3.2
  [f6369f11] ForwardDiff v0.10.34
  [a98d9a8b] Interpolations v0.14.7
  [89398ba2] LocalRegistry v0.5.3
  [1dea7af3] OrdinaryDiffEq v6.43.1
  [e4faabce] PProf v2.2.2
  [91a5bcdd] Plots v1.38.4
  [3cdcf5f2] RecipesBase v1.3.3
  [189a3867] Reexport v1.2.2
  [295af30f] Revise v3.5.1
  [90137ffa] StaticArrays v1.5.13
  [3a884ed6] UnPack v1.0.2

(@v1.8) pkg>

A lot of those number are a lot higher than I would expect (e.g. 10 seconds for ExponentialUtils), What cpu do you have? Also, is this loading from a local disk or a network drive?

this is what I get when I do @time_imports using OrdinaryDiffEq

@time_imports using OrdinaryDiffEq
      7.1 ms  DocStringExtensions 67.08% compilation time
      0.3 ms  Reexport
      0.6 ms  Requires
    431.9 ms  Preferences
      0.3 ms  SnoopPrecompile
      5.5 ms  ArrayInterfaceCore
      5.8 ms  StaticArraysCore
   1069.5 ms  StaticArrays
     17.8 ms  FunctionWrappers
      0.3 ms  MuladdMacro
     13.3 ms  OrderedCollections
      0.3 ms  UnPack
      0.6 ms  Parameters
      0.2 ms  IfElse
     71.1 ms  Static
      1.5 ms  Compat
     20.0 ms  ArrayInterface
      3.1 ms  ManualMemory
    107.7 ms  ThreadingUtilities 79.04% compilation time
      0.6 ms  Adapt
    129.1 ms  OffsetArrays
      1.6 ms  ArrayInterfaceOffsetArrays
      0.7 ms  ArrayInterfaceStaticArraysCore
      2.5 ms  ArrayInterfaceStaticArrays
      0.4 ms  SIMDTypes
      9.1 ms  LayoutPointers
      9.3 ms  CloseOpenIntervals
    533.2 ms  StrideArraysCore 1.30% compilation time
      0.3 ms  BitTwiddlingConvenienceFunctions
      3.4 ms  CpuId
    451.6 ms  CPUSummary 94.07% compilation time
     40.0 ms  PolyesterWeave 81.13% compilation time
      1.3 ms  Polyester
      0.9 ms  FastBroadcast
    114.1 ms  ChainRulesCore
     82.0 ms  RecipesBase
      1.4 ms  SymbolicIndexingInterface
     61.9 ms  MacroTools
      0.4 ms  ZygoteRules
    303.2 ms  FillArrays
      0.3 ms  DataValueInterfaces
      2.2 ms  DataAPI
      0.3 ms  IteratorInterfaceExtensions
      0.3 ms  TableTraits
     29.5 ms  Tables
      5.1 ms  GPUArraysCore
    102.9 ms  RecursiveArrayTools 23.01% compilation time (76% recompilation)
      2.1 ms  ConstructionBase
     76.6 ms  Setfield
     12.4 ms  IrrationalConstants
      1.3 ms  DiffRules
      6.2 ms  DiffResults
      0.5 ms  OpenLibm_jll
      0.7 ms  NaNMath
      1.2 ms  ChangesOfVariables
      2.6 ms  InverseFunctions
      2.8 ms  LogExpFunctions
      0.8 ms  JLLWrappers
      5.5 ms  CompilerSupportLibraries_jll
    712.8 ms  OpenSpecFun_jll 99.07% compilation time (99% recompilation)
     32.1 ms  SpecialFunctions
      0.5 ms  CommonSubexpressions
    280.4 ms  ForwardDiff
    254.8 ms  PreallocationTools 5.17% compilation time (100% recompilation)
      1.5 ms  FunctionWrappersWrappers
      0.3 ms  CommonSolve
      0.6 ms  ExprTools
      1.9 ms  RuntimeGeneratedFunctions
      0.6 ms  EnumX
      1.0 ms  Tricks
     40.3 ms  Lazy
    444.9 ms  SciMLOperators
    446.6 ms  SciMLBase
    164.6 ms  DataStructures
      0.9 ms  SortingAlgorithms
     18.6 ms  Missings
      0.8 ms  StatsAPI
     52.9 ms  StatsBase
     47.0 ms  PDMats
      3.2 ms  Rmath_jll
    300.7 ms  Rmath 94.51% compilation time
      4.2 ms  Calculus
    117.2 ms  DualNumbers
      1.4 ms  HypergeometricFunctions
     13.1 ms  StatsFuns
      5.0 ms  QuadGK
      3.3 ms  DensityInterface
    474.9 ms  Distributions
    492.3 ms  DiffEqBase 16.75% compilation time
      0.5 ms  FastClosures
    542.1 ms  HostCPUFeatures 34.25% compilation time (100% recompilation)
   1415.7 ms  VectorizationBase
      7.1 ms  SLEEFPirates
   1035.1 ms  LoopVectorization
    265.4 ms  TriangularSolve 7.34% compilation time
    807.0 ms  RecursiveFactorization
     42.4 ms  IterativeSolvers
     52.2 ms  KLU
      9.7 ms  Sparspak
     20.9 ms  FastLapackInterface
     43.4 ms  Krylov
    447.4 ms  KrylovKit 5.61% compilation time (100% recompilation)
   1298.2 ms  LinearSolve 7.63% compilation time (100% recompilation)
     28.6 ms  FiniteDiff 49.59% compilation time (100% recompilation)
    869.0 ms  SimpleNonlinearSolve
      0.4 ms  ArrayInterfaceGPUArrays
     64.5 ms  GenericSchur
      0.4 ms  libblastrampoline_jll
  10033.9 ms  ExponentialUtilities
      4.3 ms  SimpleTraits
     13.6 ms  ArnoldiMethod
      1.2 ms  Inflate
    125.3 ms  Graphs
      1.8 ms  VertexSafeGraphs
    382.7 ms  SparseDiffTools 3.88% compilation time
    988.7 ms  NonlinearSolve
     16.1 ms  Distances
    380.8 ms  NLSolversBase
    366.6 ms  LineSearches
    447.3 ms  NLsolve
    464.3 ms  SciMLNLSolve
   4650.2 ms  OrdinaryDiffEq

I am running on an Intel(R) Core™ i7-7500U CPU @ 2.70GHz with 16 GB RAM. I am loading from a local disk (hard drive).

Wowza, that’s more than I see haha. Can you do that in isolation so we can see the breakdown?

This is what I got when I used @time_imports with ExponentialUtilities.

julia> @time_imports using ExponentialUtilities
   1019.3 ms  Preferences
      0.4 ms  SnoopPrecompile
      9.3 ms  ArrayInterfaceCore
      1.0 ms  Adapt
      9.9 ms  GPUArraysCore
      0.4 ms  ArrayInterfaceGPUArrays
    113.3 ms  GenericSchur
      0.5 ms  libblastrampoline_jll
   8354.7 ms  ExponentialUtilities

Interesting. Share versioninfo().

julia> versioninfo()
Julia Version 1.8.5
Commit 17cfb8e65e (2023-01-08 06:45 UTC)
Platform Info:
  OS: Windows (x86_64-w64-mingw32)
  CPU: 4 × Intel(R) Core(TM) i7-7500U CPU @ 2.70GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-13.0.1 (ORCJIT, skylake)
  Threads: 4 on 4 virtual cores
Environment:
  JULIA_NUM_THREADS = 4

Ok, I uninstalled 1.8.5, deleted all my artifacts, reinstalled 1.8.5, and instantiated the packages. Now, I am getting times as follows

julia> @time using OrdinaryDiffEq
 20.572666 seconds (39.84 M allocations: 2.938 GiB, 5.79% gc time, 5.33% compilation time: 56% of which was recompilation)
julia> @time_imports using OrdinaryDiffEq
      4.5 ms  DocStringExtensions 66.45% compilation time
      0.2 ms  Reexport
      0.3 ms  Requires
     26.4 ms  Preferences
      0.3 ms  SnoopPrecompile
      4.0 ms  ArrayInterfaceCore
      3.5 ms  StaticArraysCore
    773.8 ms  StaticArrays
     14.8 ms  FunctionWrappers
      0.3 ms  MuladdMacro
      8.4 ms  OrderedCollections
      0.3 ms  UnPack
      0.5 ms  Parameters
      0.2 ms  IfElse
     52.4 ms  Static
      1.4 ms  Compat
     11.3 ms  ArrayInterface
      2.2 ms  ManualMemory
     75.0 ms  ThreadingUtilities 78.68% compilation time
      0.5 ms  Adapt
     90.5 ms  OffsetArrays
      0.9 ms  ArrayInterfaceOffsetArrays
      0.4 ms  ArrayInterfaceStaticArraysCore
      2.0 ms  ArrayInterfaceStaticArrays
      0.3 ms  SIMDTypes
     10.5 ms  LayoutPointers
     10.8 ms  CloseOpenIntervals
    328.3 ms  StrideArraysCore 1.73% compilation time
      0.2 ms  BitTwiddlingConvenienceFunctions
      1.6 ms  CpuId
    302.4 ms  CPUSummary 93.89% compilation time
     23.9 ms  PolyesterWeave 74.82% compilation time
      1.1 ms  Polyester
      0.6 ms  FastBroadcast
     77.4 ms  ChainRulesCore
     56.3 ms  RecipesBase
      1.1 ms  SymbolicIndexingInterface
     39.5 ms  MacroTools
      0.3 ms  ZygoteRules
    199.3 ms  FillArrays
      0.2 ms  DataValueInterfaces
      1.8 ms  DataAPI
      0.2 ms  IteratorInterfaceExtensions
      0.2 ms  TableTraits
     19.1 ms  Tables
      4.0 ms  GPUArraysCore
     63.0 ms  RecursiveArrayTools 24.73% compilation time (73% recompilation)
      1.3 ms  ConstructionBase
     51.5 ms  Setfield
      9.9 ms  IrrationalConstants
      1.0 ms  DiffRules
      3.5 ms  DiffResults
      0.3 ms  OpenLibm_jll
      0.5 ms  NaNMath
      1.2 ms  ChangesOfVariables
      2.2 ms  InverseFunctions
      1.1 ms  LogExpFunctions
      0.5 ms  JLLWrappers
      1.2 ms  CompilerSupportLibraries_jll
    448.6 ms  OpenSpecFun_jll 99.64% compilation time (99% recompilation)
     20.5 ms  SpecialFunctions
      0.5 ms  CommonSubexpressions
    263.6 ms  ForwardDiff
     76.9 ms  PreallocationTools 11.63% compilation time (100% recompilation)
      1.1 ms  FunctionWrappersWrappers
      0.2 ms  CommonSolve
      0.9 ms  ExprTools
      1.4 ms  RuntimeGeneratedFunctions
      0.4 ms  EnumX
      0.3 ms  Tricks
     34.1 ms  Lazy
    253.9 ms  SciMLOperators
    278.3 ms  SciMLBase
     93.6 ms  DataStructures
      0.6 ms  SortingAlgorithms
     12.2 ms  Missings
      0.5 ms  StatsAPI
     33.2 ms  StatsBase
     27.3 ms  PDMats
      0.8 ms  Rmath_jll
    109.9 ms  Rmath 89.53% compilation time
      3.2 ms  Calculus
     72.6 ms  DualNumbers
      1.3 ms  HypergeometricFunctions
      9.9 ms  StatsFuns
      4.0 ms  QuadGK
      3.3 ms  DensityInterface
    276.3 ms  Distributions
    350.6 ms  DiffEqBase 9.33% compilation time
      0.4 ms  FastClosures
    272.6 ms  HostCPUFeatures 36.37% compilation time (100% recompilation)
    652.2 ms  VectorizationBase
      6.2 ms  SLEEFPirates
    563.9 ms  LoopVectorization
    219.2 ms  TriangularSolve 4.98% compilation time
    442.2 ms  RecursiveFactorization
     26.5 ms  IterativeSolvers
     40.1 ms  KLU
      5.9 ms  Sparspak
     14.5 ms  FastLapackInterface
     25.2 ms  Krylov
    276.4 ms  KrylovKit 5.67% compilation time (100% recompilation)
    821.5 ms  LinearSolve 7.39% compilation time (100% recompilation)
     19.9 ms  FiniteDiff 46.73% compilation time (100% recompilation)
    558.7 ms  SimpleNonlinearSolve
      0.3 ms  ArrayInterfaceGPUArrays
     35.0 ms  GenericSchur
      0.3 ms  libblastrampoline_jll
   5891.4 ms  ExponentialUtilities
      2.6 ms  SimpleTraits
      8.2 ms  ArnoldiMethod
      1.0 ms  Inflate
     64.8 ms  Graphs
      1.4 ms  VertexSafeGraphs
    221.2 ms  SparseDiffTools 4.11% compilation time
    606.0 ms  NonlinearSolve
      8.8 ms  Distances
    272.6 ms  NLSolversBase
    208.7 ms  LineSearches
    262.1 ms  NLsolve
    265.4 ms  SciMLNLSolve
   2595.5 ms  OrdinaryDiffEq

Is this more in the realm of what is to be expected?

I have mainly been working with OrdinaryDiffEq but just as a reference, this is how long it takes to load DifferentialEquations and ModelingToolkit on my setup.

julia> @time using DifferentialEquations
 35.537679 seconds (60.21 M allocations: 4.936 GiB, 5.21% gc time, 8.27% compilation time: 77% of which was recompilation)
julia> @time_imports using DifferentialEquations
      0.2 ms  Reexport
      0.4 ms  Requires
    284.8 ms  Preferences
      0.3 ms  SnoopPrecompile
      4.2 ms  ArrayInterfaceCore
      3.9 ms  StaticArraysCore
    661.0 ms  StaticArrays
      4.6 ms  DocStringExtensions 67.97% compilation time
     15.1 ms  FunctionWrappers
      0.3 ms  MuladdMacro
      9.5 ms  OrderedCollections
      0.2 ms  UnPack
      0.5 ms  Parameters
      0.1 ms  IfElse
     46.2 ms  Static
      1.0 ms  Compat
     10.0 ms  ArrayInterface
      2.4 ms  ManualMemory
     72.6 ms  ThreadingUtilities 80.56% compilation time
      0.5 ms  Adapt
    100.7 ms  OffsetArrays
      0.9 ms  ArrayInterfaceOffsetArrays
      0.4 ms  ArrayInterfaceStaticArraysCore
      1.8 ms  ArrayInterfaceStaticArrays
      0.3 ms  SIMDTypes
      6.1 ms  LayoutPointers
      6.0 ms  CloseOpenIntervals
    297.0 ms  StrideArraysCore 1.74% compilation time
      0.3 ms  BitTwiddlingConvenienceFunctions
      1.8 ms  CpuId
    267.8 ms  CPUSummary 93.67% compilation time
     23.6 ms  PolyesterWeave 74.82% compilation time
      1.1 ms  Polyester
      0.6 ms  FastBroadcast
     78.3 ms  ChainRulesCore
     55.0 ms  RecipesBase
      1.0 ms  SymbolicIndexingInterface
     41.3 ms  MacroTools
      0.4 ms  ZygoteRules
    189.1 ms  FillArrays
      0.2 ms  DataValueInterfaces
      2.0 ms  DataAPI
      0.2 ms  IteratorInterfaceExtensions
      0.3 ms  TableTraits
     29.6 ms  Tables
      4.1 ms  GPUArraysCore
     60.7 ms  RecursiveArrayTools 25.40% compilation time (76% recompilation)
      1.3 ms  ConstructionBase
    102.3 ms  Setfield
      9.4 ms  IrrationalConstants
      1.0 ms  DiffRules
      3.1 ms  DiffResults
      0.4 ms  OpenLibm_jll
      0.5 ms  NaNMath
      1.0 ms  ChangesOfVariables
      1.8 ms  InverseFunctions
      1.0 ms  LogExpFunctions
      0.4 ms  JLLWrappers
      1.4 ms  CompilerSupportLibraries_jll
    397.4 ms  OpenSpecFun_jll 99.45% compilation time (99% recompilation)
     21.0 ms  SpecialFunctions
      0.5 ms  CommonSubexpressions
    170.6 ms  ForwardDiff
     91.9 ms  PreallocationTools 14.41% compilation time (100% recompilation)
      1.3 ms  FunctionWrappersWrappers
      0.3 ms  CommonSolve
      0.5 ms  ExprTools
      2.2 ms  RuntimeGeneratedFunctions
      0.7 ms  EnumX
      0.4 ms  Tricks
     61.0 ms  Lazy
    507.7 ms  SciMLOperators
    322.9 ms  SciMLBase
    112.0 ms  DataStructures
      0.6 ms  SortingAlgorithms
     11.3 ms  Missings
      0.6 ms  StatsAPI
     30.3 ms  StatsBase
     26.0 ms  PDMats
      0.8 ms  Rmath_jll
    111.4 ms  Rmath 89.13% compilation time
      3.1 ms  Calculus
     78.8 ms  DualNumbers
      1.4 ms  HypergeometricFunctions
      9.6 ms  StatsFuns
      5.2 ms  QuadGK
      2.8 ms  DensityInterface
    267.6 ms  Distributions
    396.0 ms  DiffEqBase 9.02% compilation time
      2.3 ms  ResettableStacks
     28.6 ms  RandomNumbers 34.56% compilation time (100% recompilation)
      7.7 ms  Random123
      0.3 ms  PoissonRandom
     21.3 ms  FiniteDiff 45.83% compilation time (100% recompilation)
    194.2 ms  NLSolversBase
      1.6 ms  PositiveFactorizations
    188.2 ms  LineSearches
    184.2 ms  Optim
    244.2 ms  DiffEqNoiseProcess 3.52% compilation time
      7.2 ms  Distances
    180.1 ms  NLsolve
    168.4 ms  DiffEqCallbacks
    181.8 ms  SteadyStateDiffEq
      0.3 ms  FastClosures
    270.4 ms  HostCPUFeatures 37.53% compilation time (100% recompilation)
    663.4 ms  VectorizationBase
      6.2 ms  SLEEFPirates
    638.4 ms  LoopVectorization
    244.5 ms  TriangularSolve 4.53% compilation time
    678.3 ms  RecursiveFactorization
     44.1 ms  IterativeSolvers
     33.1 ms  KLU
      6.0 ms  Sparspak
     14.2 ms  FastLapackInterface
     27.8 ms  Krylov
    342.0 ms  KrylovKit 6.77% compilation time (100% recompilation)
    879.9 ms  LinearSolve 7.16% compilation time (100% recompilation)
    489.0 ms  SimpleNonlinearSolve
      0.3 ms  ArrayInterfaceGPUArrays
     36.2 ms  GenericSchur
      0.3 ms  libblastrampoline_jll
   6235.6 ms  ExponentialUtilities
      2.9 ms  SimpleTraits
      8.6 ms  ArnoldiMethod
      0.9 ms  Inflate
     77.3 ms  Graphs
      1.5 ms  VertexSafeGraphs
    233.6 ms  SparseDiffTools 3.94% compilation time
    700.8 ms  NonlinearSolve
    308.1 ms  SciMLNLSolve
   2880.5 ms  OrdinaryDiffEq
      2.2 ms  LevyArea
      0.4 ms  TreeViews
    316.7 ms  JumpProcesses
    888.8 ms  StochasticDiffEq
   1495.7 ms  ArrayLayouts
   1035.4 ms  BandedMatrices
    265.9 ms  BoundaryValueDiffEq
      9.2 ms  CEnum
      6.5 ms  OpenBLAS_jll 93.05% compilation time
      3.7 ms  SuiteSparse_jll
     11.6 ms  Sundials_jll
   1513.7 ms  Sundials
   1021.0 ms  DelayDiffEq
   3734.4 ms  DifferentialEquations
julia> @time using ModelingToolkit
 19.530918 seconds (32.78 M allocations: 2.071 GiB, 5.49% gc time, 13.16% compilation time: 69% of which was recompilation)
 @time_imports using ModelingToolkit
      5.4 ms  DocStringExtensions 65.67% compilation time
      1.0 ms  Compat
     17.8 ms  AbstractTrees
      0.4 ms  Requires
    255.2 ms  Preferences
      0.3 ms  SnoopPrecompile
      4.2 ms  ArrayInterfaceCore
      3.1 ms  StaticArraysCore
    705.8 ms  StaticArrays
     13.4 ms  FunctionWrappers
      0.5 ms  MuladdMacro
      8.4 ms  OrderedCollections
      0.2 ms  UnPack
      0.5 ms  Parameters
      0.2 ms  Reexport
      0.1 ms  IfElse
     45.3 ms  Static
     10.2 ms  ArrayInterface
      2.4 ms  ManualMemory
     68.9 ms  ThreadingUtilities 80.04% compilation time
      0.5 ms  Adapt
     78.9 ms  OffsetArrays
      0.9 ms  ArrayInterfaceOffsetArrays
      0.5 ms  ArrayInterfaceStaticArraysCore
      1.7 ms  ArrayInterfaceStaticArrays
      0.3 ms  SIMDTypes
      6.2 ms  LayoutPointers
      5.3 ms  CloseOpenIntervals
    322.4 ms  StrideArraysCore 1.62% compilation time
      0.2 ms  BitTwiddlingConvenienceFunctions
      1.5 ms  CpuId
    275.0 ms  CPUSummary 92.32% compilation time
     24.7 ms  PolyesterWeave 73.56% compilation time
      1.1 ms  Polyester
      0.6 ms  FastBroadcast
     77.6 ms  ChainRulesCore
     62.7 ms  RecipesBase
      1.0 ms  SymbolicIndexingInterface
     46.6 ms  MacroTools
      0.4 ms  ZygoteRules
    190.1 ms  FillArrays
      0.2 ms  DataValueInterfaces
      1.9 ms  DataAPI
      0.2 ms  IteratorInterfaceExtensions
      0.2 ms  TableTraits
     18.8 ms  Tables
      4.6 ms  GPUArraysCore
     67.4 ms  RecursiveArrayTools 30.31% compilation time (77% recompilation)
      1.8 ms  ConstructionBase
     47.9 ms  Setfield
      8.3 ms  IrrationalConstants
      1.2 ms  DiffRules
      3.8 ms  DiffResults
      0.3 ms  OpenLibm_jll
      0.7 ms  NaNMath
      1.0 ms  ChangesOfVariables
      1.9 ms  InverseFunctions
      1.2 ms  LogExpFunctions
      0.8 ms  JLLWrappers
      1.6 ms  CompilerSupportLibraries_jll
    421.7 ms  OpenSpecFun_jll 99.58% compilation time (99% recompilation)
     24.1 ms  SpecialFunctions
      0.6 ms  CommonSubexpressions
    241.6 ms  ForwardDiff
     83.2 ms  PreallocationTools 10.93% compilation time (100% recompilation)
      1.1 ms  FunctionWrappersWrappers
      0.2 ms  CommonSolve
      0.4 ms  ExprTools
      1.5 ms  RuntimeGeneratedFunctions
      0.4 ms  EnumX
      0.3 ms  Tricks
     28.5 ms  Lazy
    255.0 ms  SciMLOperators
    263.1 ms  SciMLBase
     91.8 ms  DataStructures
      0.6 ms  SortingAlgorithms
     11.2 ms  Missings
      0.7 ms  StatsAPI
     29.6 ms  StatsBase
     26.7 ms  PDMats
      0.8 ms  Rmath_jll
    118.5 ms  Rmath 87.13% compilation time
      3.0 ms  Calculus
     83.1 ms  DualNumbers
      1.3 ms  HypergeometricFunctions
      9.0 ms  StatsFuns
      4.6 ms  QuadGK
      2.4 ms  DensityInterface
    314.2 ms  Distributions
    467.4 ms  DiffEqBase 8.31% compilation time
    387.0 ms  LabelledArrays
      1.0 ms  LaTeXStrings
      0.9 ms  Formatting
   1443.1 ms  Latexify 96.42% compilation time (89% recompilation)
    831.2 ms  Unitful
     36.6 ms  RandomNumbers 41.25% compilation time (100% recompilation)
      0.4 ms  TreeViews
      0.3 ms  PoissonRandom
      3.5 ms  SimpleTraits
      6.2 ms  ArnoldiMethod
      0.8 ms  Inflate
     56.6 ms  Graphs
    231.3 ms  JumpProcesses
      7.5 ms  Distances
     22.9 ms  FiniteDiff 44.79% compilation time (100% recompilation)
    221.6 ms  NLSolversBase
    236.6 ms  LineSearches
    243.3 ms  NLsolve
    243.4 ms  DiffEqCallbacks
      7.9 ms  Combinatorics
      0.4 ms  Unityper
    262.3 ms  TimerOutputs 7.01% compilation time
    504.8 ms  MutableArithmetics
    128.0 ms  MultivariatePolynomials
     44.7 ms  DynamicPolynomials
      2.7 ms  Bijections
    542.7 ms  SymbolicUtils
    208.6 ms  Tokenize
    334.1 ms  CSTParser
      1.9 ms  Glob
     92.1 ms  Parsers 9.42% compilation time
     34.8 ms  JSON
      8.6 ms  URIs 75.02% compilation time
    172.1 ms  Crayons
   2074.0 ms  CommonMark
    764.9 ms  JuliaFormatter
     48.7 ms  IntervalSets
      5.0 ms  CompositeTypes
    207.4 ms  DomainSets
     37.6 ms  RandomExtensions
      8.3 ms  GroupsCore
    680.8 ms  AbstractAlgebra
      0.3 ms  IntegerMathUtils
     27.9 ms  Primes
     14.0 ms  Groebner
     40.7 ms  LambertW 49.09% compilation time
   1341.8 ms  Symbolics 0.79% compilation time
    701.9 ms  SimpleNonlinearSolve
    445.9 ms  ModelingToolkit

I am getting a 20 sec load time with OrdinaryDiffEq v6.44.0, on Julia 1.8.5, so very similar to you.

julia> @time_imports using OrdinaryDiffEq
      4.2 ms  DocStringExtensions 67.62% compilation time
      0.2 ms  Reexport
      0.3 ms  Requires
     22.3 ms  Preferences
      0.2 ms  SnoopPrecompile
      3.7 ms  ArrayInterfaceCore
      2.6 ms  StaticArraysCore
    687.0 ms  StaticArrays
     15.5 ms  FunctionWrappers
      0.3 ms  MuladdMacro
      0.2 ms  UnPack
      0.5 ms  Parameters
      0.1 ms  IfElse
     51.8 ms  Static
      1.1 ms  Compat
     10.1 ms  ArrayInterface
      2.1 ms  ManualMemory
     67.4 ms  ThreadingUtilities 81.14% compilation time
      0.4 ms  Adapt
    123.2 ms  OffsetArrays
      0.9 ms  ArrayInterfaceOffsetArrays
      0.4 ms  ArrayInterfaceStaticArraysCore
      1.6 ms  ArrayInterfaceStaticArrays
      0.2 ms  SIMDTypes
      4.3 ms  LayoutPointers
      4.3 ms  CloseOpenIntervals
    310.5 ms  StrideArraysCore 1.63% compilation time
      0.2 ms  BitTwiddlingConvenienceFunctions
      1.2 ms  CpuId
    260.7 ms  CPUSummary 93.87% compilation time
     24.1 ms  PolyesterWeave 77.20% compilation time
      1.0 ms  Polyester
      0.4 ms  FastBroadcast
     77.3 ms  ChainRulesCore
     52.8 ms  RecipesBase
      0.8 ms  SymbolicIndexingInterface
     37.5 ms  MacroTools
      0.3 ms  ZygoteRules
    203.1 ms  FillArrays
      0.2 ms  DataValueInterfaces
      1.5 ms  DataAPI
      0.1 ms  IteratorInterfaceExtensions
      0.1 ms  TableTraits
     16.5 ms  Tables
      3.6 ms  GPUArraysCore
     60.9 ms  RecursiveArrayTools 23.10% compilation time (78% recompilation)
      1.1 ms  ConstructionBase
     77.3 ms  Setfield
      7.7 ms  IrrationalConstants
      0.8 ms  DiffRules
      3.0 ms  DiffResults
      0.2 ms  OpenLibm_jll
      0.3 ms  NaNMath
      0.7 ms  ChangesOfVariables
      1.2 ms  InverseFunctions
      0.8 ms  LogExpFunctions
      0.3 ms  JLLWrappers
      1.0 ms  CompilerSupportLibraries_jll
    367.6 ms  OpenSpecFun_jll 99.64% compilation time (99% recompilation)
     18.7 ms  SpecialFunctions
      0.4 ms  CommonSubexpressions
    185.5 ms  ForwardDiff
     74.3 ms  PreallocationTools 12.01% compilation time (100% recompilation)
      0.9 ms  FunctionWrappersWrappers
      0.2 ms  CommonSolve
      0.4 ms  ExprTools
      0.9 ms  RuntimeGeneratedFunctions
      0.3 ms  EnumX
      0.2 ms  Tricks
     25.0 ms  Lazy
    269.8 ms  SciMLOperators
    256.6 ms  SciMLBase
     96.1 ms  DataStructures
      0.5 ms  SortingAlgorithms
     10.5 ms  Missings
      0.4 ms  StatsAPI
     29.4 ms  StatsBase
     26.6 ms  PDMats
      0.7 ms  Rmath_jll
    105.7 ms  Rmath 90.00% compilation time
      2.7 ms  Calculus
     72.4 ms  DualNumbers
      1.3 ms  HypergeometricFunctions
      8.9 ms  StatsFuns
      3.5 ms  QuadGK
      1.5 ms  DensityInterface
    287.6 ms  Distributions
    288.4 ms  DiffEqBase 12.28% compilation time
      0.3 ms  FastClosures
    295.6 ms  HostCPUFeatures 43.04% compilation time (100% recompilation)
    722.2 ms  VectorizationBase
      5.3 ms  SLEEFPirates
    615.2 ms  LoopVectorization
    183.9 ms  TriangularSolve 6.10% compilation time
    546.2 ms  RecursiveFactorization
     24.5 ms  IterativeSolvers
     30.8 ms  KLU
      5.0 ms  Sparspak
     12.6 ms  FastLapackInterface
     22.4 ms  Krylov
    275.9 ms  KrylovKit 5.70% compilation time (100% recompilation)
    746.7 ms  LinearSolve 8.77% compilation time (100% recompilation)
     18.0 ms  FiniteDiff 50.84% compilation time (100% recompilation)
    405.0 ms  SimpleNonlinearSolve
      0.2 ms  ArrayInterfaceGPUArrays
     34.9 ms  GenericSchur
      0.2 ms  libblastrampoline_jll
   5946.5 ms  ExponentialUtilities
      2.3 ms  SimpleTraits
      6.2 ms  ArnoldiMethod
      0.8 ms  Inflate
     63.0 ms  Graphs
      1.0 ms  VertexSafeGraphs
    221.6 ms  SparseDiffTools 3.90% compilation time
    586.6 ms  NonlinearSolve
      8.0 ms  Distances
    219.7 ms  NLSolversBase
    229.8 ms  LineSearches
    281.2 ms  NLsolve
    270.0 ms  SciMLNLSolve
   2365.9 ms  OrdinaryDiffEq

FWIW, on julia 1.6 it’s a little faster (with the same v6.44):

julia> @time using OrdinaryDiffEq # julia 1.6, OrdinaryDiffEq v6.44.0
 12.240812 seconds (21.14 M allocations: 1.550 GiB, 4.53% gc time, 5.21% compilation time)

although there has been a small regression since v6.41 (still on julia 1.6, might be a larger effect on 1.8):

julia> @time using OrdinaryDiffEq # julia 1.6, OrdinaryDiffEq v6.41.0
  8.949819 seconds (14.42 M allocations: 1.013 GiB, 4.50% gc time, 7.83% compilation time)

It’s hard to test at what version the time increased because precompilation takes so long…

Precompiling project...
  96 dependencies successfully precompiled in 329 seconds. 74 already precompiled.

It’s a bit better on 1.9, though the precompilation time is very long (95% of that time is OrdinaryDiffEq, the rest is precompiled quickly in parallel):

Precompiling environment...
  111 dependencies successfully precompiled in 518 seconds. 7 already precompiled.
  1 dependency had warnings during precompilation:
┌ SciMLOperators [c0aeaf25-5076-4817-a8d5-81caf7dfa961]
│  ┌ Warning: Replacing docs for `SciMLOperators.AbstractSciMLOperator :: Union{}` in module `SciMLOperators`
│  └ @ Base.Docs docs\Docs.jl:243
└

julia> @time using OrdinaryDiffEq
 10.159448 seconds (18.11 M allocations: 1.332 GiB, 6.29% gc time, 1.50% compilation time)