Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Change to GPUArraysCore #654

Merged
merged 1 commit into from
Jun 22, 2022
Merged

Change to GPUArraysCore #654

merged 1 commit into from
Jun 22, 2022

Conversation

ChrisRackauckas
Copy link
Member

No description provided.

@ChrisRackauckas
Copy link
Member Author

The OrdinaryDiffEq result is so yummy haha:

@time_imports using OrdinaryDiffEq

Before:

11.2 ms ┌ MacroTools
20.1 ms ┌ ZygoteRules
16.0 ms ┌ Preferences
17.7 ms ┌ JLLWrappers
68.4 ms ┌ Rmath_jll
134.5 ms ┌ Rmath
3.7 ms ┌ Compat
1.5 ms ┌ NaNMath
3.5 ms ┌ Calculus
52.7 ms ┌ ChainRulesCore
55.6 ms ┌ ChangesOfVariables
1.3 ms ┌ OpenLibm_jll
2.3 ms ┌ InverseFunctions
4.8 ms ┌ DocStringExtensions
5.4 ms ┌ IrrationalConstants
1.5 ms ┌ CompilerSupportLibraries_jll
2.0 ms ┌ LogExpFunctions
1.7 ms ┌ OpenSpecFun_jll
29.7 ms ┌ SpecialFunctions
13.7 ms ┌ DualNumbers
121.9 ms ┌ HypergeometricFunctions
1.0 ms ┌ Reexport
281.1 ms ┌ StatsFuns
2.0 ms ┌ CpuId
412.8 ms ┌ StaticArrays
1.1 ms ┌ SIMDTypes
1.2 ms ┌ IfElse
35.6 ms ┌ Static
3.5 ms ┌ ArrayInterfaceCore
56.2 ms ┌ ArrayInterface
1.7 ms ┌ Adapt
45.7 ms ┌ OffsetArrays
48.9 ms ┌ ArrayInterfaceOffsetArrays
3.6 ms ┌ ArrayInterfaceStaticArrays
3.0 ms ┌ ManualMemory
538.4 ms ┌ LayoutPointers
57.3 ms ┌ CPUSummary
1.0 ms ┌ BitTwiddlingConvenienceFunctions
67.9 ms ┌ HostCPUFeatures
1038.9 ms ┌ VectorizationBase
0.9 ms ┌ IteratorInterfaceExtensions
2.6 ms ┌ TableTraits
41.7 ms ┌ ThreadingUtilities
59.1 ms ┌ PolyesterWeave
3.6 ms ┌ DiffResults
13.8 ms ┌ FunctionWrappers
1.8 ms ┌ CommonSubexpressions
2.0 ms ┌ DiffRules
113.9 ms ┌ ForwardDiff
6.1 ms ┌ SLEEFPirates
155.3 ms ┌ SIMDDualNumbers
7.8 ms ┌ OrderedCollections
74.5 ms ┌ DataStructures
1.4 ms ┌ MuladdMacro
13.6 ms ┌ KLU
26.2 ms ┌ LabelledArrays
30.2 ms ┌ PreallocationTools
1.7 ms ┌ Requires
1.2 ms ┌ StatsAPI
6.9 ms ┌ Distances
0.9 ms ┌ UnPack
144.2 ms ┌ FillArrays
1.3 ms ┌ DataValueInterfaces
113.2 ms ┌ LLVMExtra_jll
6.0 ms ┌ CEnum
121.8 ms ┌ LLVM
4.3 ms ┌ GPUArraysCore
825.5 ms ┌ GPUArrays
28.6 ms ┌ RecipesBase
1039.7 ms ┌ RecursiveArrayTools
2.8 ms ┌ DataAPI
1.5 ms ┌ SortingAlgorithms
8.4 ms ┌ Missings
38.7 ms ┌ StatsBase
1.6 ms ┌ ArrayInterfaceGPUArrays
5.0 ms ┌ CloseOpenIntervals
27.6 ms ┌ StrideArraysCore
37.6 ms ┌ Polyester
15.7 ms ┌ Tables
1.2 ms ┌ CommonSolve
2.5 ms ┌ ConstructionBase
1.0 ms ┌ TreeViews
294.0 ms ┌ SciMLBase
74.2 ms ┌ Setfield
348.4 ms ┌ LoopVectorization
14.0 ms ┌ FiniteDiff
89.4 ms ┌ TriangularSolve
22.0 ms ┌ IterativeSolvers
179.2 ms ┌ RecursiveFactorization
1074.1 ms ┌ NonlinearSolve
1.4 ms ┌ libblastrampoline_jll
24.6 ms ┌ GenericSchur
1.7 ms ┌ Parameters
23.7 ms ┌ PDMats
14.2 ms ┌ Krylov
7.9 ms ┌ NLSolversBase
20.0 ms ┌ LineSearches
1.8 ms ┌ Inflate
3.1 ms ┌ DensityInterface
5.6 ms ┌ QuadGK
243.1 ms ┌ Distributions
55.2 ms ┌ KrylovKit
66.9 ms ┌ LinearSolve
1.5 ms ┌ FastClosures
2.6 ms ┌ FastBroadcast
6.2 ms ┌ NLsolve
3.0 ms ┌ SimpleTraits
7.0 ms ┌ ArnoldiMethod
55.6 ms ┌ Graphs
62.5 ms ┌ VertexSafeGraphs
82.7 ms ┌ SparseDiffTools
131.3 ms ┌ DiffEqBase
7.3 ms ┌ ExponentialUtilities
5809.3 ms OrdinaryDiffEq

After:

SciML/RecursiveArrayTools.jl#213
JuliaArrays/ArrayInterface.jl#320
SciML/DiffEqNoiseProcess.jl#106
SciML/LinearSolve.jl#146
SciML/ExponentialUtilities.jl#91

@time_imports using OrdinaryDiffEq

10.4 ms ┌ MacroTools
17.7 ms ┌ ZygoteRules
15.6 ms ┌ Preferences
17.3 ms ┌ JLLWrappers
163.2 ms ┌ Rmath_jll
252.5 ms ┌ Rmath
3.0 ms ┌ Compat
1.3 ms ┌ NaNMath
2.8 ms ┌ Calculus
49.3 ms ┌ ChainRulesCore
51.3 ms ┌ ChangesOfVariables
1.2 ms ┌ OpenLibm_jll
2.1 ms ┌ InverseFunctions
4.1 ms ┌ DocStringExtensions
4.6 ms ┌ IrrationalConstants
1.3 ms ┌ CompilerSupportLibraries_jll
1.8 ms ┌ LogExpFunctions
1.7 ms ┌ OpenSpecFun_jll
15.0 ms ┌ SpecialFunctions
11.5 ms ┌ DualNumbers
98.0 ms ┌ HypergeometricFunctions
0.9 ms ┌ Reexport
372.3 ms ┌ StatsFuns
1.6 ms ┌ CpuId
413.5 ms ┌ StaticArrays
1.2 ms ┌ SIMDTypes
0.9 ms ┌ IfElse
34.7 ms ┌ Static
2.8 ms ┌ ArrayInterfaceCore
52.9 ms ┌ ArrayInterface
1.7 ms ┌ Adapt
40.4 ms ┌ OffsetArrays
43.5 ms ┌ ArrayInterfaceOffsetArrays
3.1 ms ┌ ArrayInterfaceStaticArrays
3.3 ms ┌ ManualMemory
529.6 ms ┌ LayoutPointers
56.7 ms ┌ CPUSummary
1.0 ms ┌ BitTwiddlingConvenienceFunctions
95.7 ms ┌ HostCPUFeatures
1036.7 ms ┌ VectorizationBase
0.8 ms ┌ IteratorInterfaceExtensions
2.4 ms ┌ TableTraits
41.7 ms ┌ ThreadingUtilities
59.5 ms ┌ PolyesterWeave
3.7 ms ┌ DiffResults
12.7 ms ┌ FunctionWrappers
1.3 ms ┌ CommonSubexpressions
2.0 ms ┌ DiffRules
116.5 ms ┌ ForwardDiff
6.1 ms ┌ SLEEFPirates
157.1 ms ┌ SIMDDualNumbers
7.0 ms ┌ OrderedCollections
71.3 ms ┌ DataStructures
1.3 ms ┌ MuladdMacro
13.7 ms ┌ KLU
25.4 ms ┌ LabelledArrays
28.3 ms ┌ PreallocationTools
1.5 ms ┌ Requires
1.2 ms ┌ StatsAPI
6.5 ms ┌ Distances
1.1 ms ┌ UnPack
141.8 ms ┌ FillArrays
1.2 ms ┌ DataValueInterfaces
24.0 ms ┌ RecipesBase
3.2 ms ┌ GPUArraysCore
60.3 ms ┌ RecursiveArrayTools
2.6 ms ┌ DataAPI
1.7 ms ┌ SortingAlgorithms
8.5 ms ┌ Missings
36.1 ms ┌ StatsBase
1.7 ms ┌ ArrayInterfaceGPUArrays
6.1 ms ┌ CloseOpenIntervals
25.8 ms ┌ StrideArraysCore
36.7 ms ┌ Polyester
15.5 ms ┌ Tables
1.1 ms ┌ CommonSolve
1.8 ms ┌ ConstructionBase
1.0 ms ┌ TreeViews
277.6 ms ┌ SciMLBase
71.2 ms ┌ Setfield
312.5 ms ┌ LoopVectorization
14.2 ms ┌ FiniteDiff
85.5 ms ┌ TriangularSolve
20.6 ms ┌ IterativeSolvers
111.1 ms ┌ RecursiveFactorization
945.4 ms ┌ NonlinearSolve
1.2 ms ┌ libblastrampoline_jll
24.0 ms ┌ GenericSchur
23.2 ms ┌ PDMats
1.4 ms ┌ Parameters
13.4 ms ┌ Krylov
6.4 ms ┌ NLSolversBase
16.7 ms ┌ LineSearches
1.3 ms ┌ Inflate
2.2 ms ┌ DensityInterface
4.0 ms ┌ QuadGK
297.9 ms ┌ Distributions
53.6 ms ┌ KrylovKit
63.2 ms ┌ LinearSolve
1.3 ms ┌ FastClosures
2.3 ms ┌ FastBroadcast
4.9 ms ┌ NLsolve
2.5 ms ┌ SimpleTraits
5.4 ms ┌ ArnoldiMethod
48.2 ms ┌ Graphs
53.2 ms ┌ VertexSafeGraphs
71.7 ms ┌ SparseDiffTools
59.6 ms ┌ DiffEqBase
136.5 ms ┌ ExponentialUtilities
4685.2 ms OrdinaryDiffEq

@ChrisRackauckas ChrisRackauckas merged commit 4a40964 into master Jun 22, 2022
@ChrisRackauckas ChrisRackauckas deleted the gpuarrayscore branch June 22, 2022 13:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant