Closed ranocha closed 1 year ago
This is Octavian.jl from this branch with CPUSummary v0.2.1 but on Julia v1.8.3
Julia v1.9.0-beta2 yields
julia> @time_imports using Octavian
0.3 ms Requires
0.2 ms SuiteSparse
2.1 ms ArrayInterfaceCore
0.1 ms IfElse
34.7 ms Static
0.2 ms Compat
4.4 ms ArrayInterface
0.3 ms Adapt
44.6 ms OffsetArrays
0.6 ms ArrayInterfaceOffsetArrays
1.0 ms Statistics
2.6 ms StaticArraysCore
456.8 ms StaticArrays
0.3 ms ArrayInterfaceStaticArraysCore
1.0 ms ArrayInterfaceStaticArrays
0.1 ms SIMDTypes
1.3 ms ManualMemory
10.5 ms LayoutPointers
0.7 ms CpuId
102.6 ms CPUSummary 97.78% compilation time
0.2 ms BitTwiddlingConvenienceFunctions
12.0 ms HostCPUFeatures
361.9 ms VectorizationBase
3.1 ms SLEEFPirates
0.1 ms UnPack
7.4 ms ThreadingUtilities
4.3 ms PolyesterWeave
1.3 ms DocStringExtensions
2.9 ms CloseOpenIntervals
0.1 ms SnoopPrecompile
69.5 ms ChainRulesCore
5.0 ms IrrationalConstants
0.5 ms DiffRules
1.8 ms DiffResults
17.6 ms Preferences
0.2 ms OpenLibm_jll
0.2 ms NaNMath
0.8 ms ChangesOfVariables
0.9 ms InverseFunctions
0.5 ms LogExpFunctions
0.2 ms JLLWrappers
3.0 ms OpenSpecFun_jll 86.22% compilation time
14.8 ms SpecialFunctions
14.2 ms MacroTools
0.4 ms CommonSubexpressions
106.4 ms ForwardDiff
3.0 ms SIMDDualNumbers
180.0 ms LoopVectorization
649.4 ms Octavian 24.69% compilation time
on Octavian master
Base: 86.64% // Head: 86.44% // Decreases project coverage by -0.19%
:warning:
Coverage data is based on head (
af0174d
) compared to base (5c30e4a
). Patch has no changes to coverable lines.
:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.
I basically followed the recipe of https://timholy.github.io/SnoopCompile.jl/dev/snoop_pc.
Not necessarily related to this PR: Do you know why we get so much compilation (and recompilation!) when
using Octavian
? With this branch on Julia v1.8.3, I getafter everything has been precompiled. It seems to get better with Julia v1.9.0-beta2, so there is no need to dig too deep if there is no obvious answer for you.