Skip to content

Commit a00e050

Browse files
authored
fix: speed up sparse preparation for GPU arrays (#818)
* fix: speed up sparse preparation for GPU arrays * Remove conditional GPU tests
1 parent ea4536c commit a00e050

File tree

4 files changed

+14
-7
lines changed

4 files changed

+14
-7
lines changed

.buildkite/pipeline.yml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
steps:
22
- label: "DI GPU tests"
3-
if: build.pull_request.labels includes "gpu"
43
plugins:
54
- JuliaCI/julia#v1:
65
version: "1"

DifferentiationInterface/CHANGELOG.md

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [Unreleased]
99

10+
## [0.7.2]
11+
1012
### Feat
1113

1214
- Backend switching for Mooncake ([#768])
1315

16+
### Fixed
17+
18+
- Speed up sparse preparation for GPU arrays ([#818])
19+
1420
## [0.7.1]
1521

1622
### Feat
@@ -42,12 +48,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
4248

4349
- Allocate Enzyme shadow memory during preparation ([#782])
4450

45-
[unreleased]: https://github.com/JuliaDiff/DifferentiationInterface.jl/compare/DifferentiationInterface-v0.7.1...main
51+
[unreleased]: https://github.com/JuliaDiff/DifferentiationInterface.jl/compare/DifferentiationInterface-v0.7.2...main
52+
[0.7.2]: https://github.com/JuliaDiff/DifferentiationInterface.jl/compare/DifferentiationInterface-v0.7.1...DifferentiationInterface-v0.7.2
4653
[0.7.1]: https://github.com/JuliaDiff/DifferentiationInterface.jl/compare/DifferentiationInterface-v0.7.0...DifferentiationInterface-v0.7.1
4754
[0.7.0]: https://github.com/JuliaDiff/DifferentiationInterface.jl/compare/DifferentiationInterface-v0.6.54...DifferentiationInterface-v0.7.0
4855
[0.6.54]: https://github.com/JuliaDiff/DifferentiationInterface.jl/compare/DifferentiationInterface-v0.6.53...DifferentiationInterface-v0.6.54
4956
[0.6.53]: https://github.com/JuliaDiff/DifferentiationInterface.jl/compare/DifferentiationInterface-v0.6.52...DifferentiationInterface-v0.6.53
5057

58+
[#818]: https://github.com/JuliaDiff/DifferentiationInterface.jl/pull/818
5159
[#812]: https://github.com/JuliaDiff/DifferentiationInterface.jl/pull/812
5260
[#810]: https://github.com/JuliaDiff/DifferentiationInterface.jl/pull/810
5361
[#809]: https://github.com/JuliaDiff/DifferentiationInterface.jl/pull/809

DifferentiationInterface/Project.toml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name = "DifferentiationInterface"
22
uuid = "a0c0ee7d-e4b9-4e03-894e-1c5f64a51d63"
33
authors = ["Guillaume Dalle", "Adrian Hill"]
4-
version = "0.7.1"
4+
version = "0.7.2"
55

66
[deps]
77
ADTypes = "47edcb42-4c32-4615-8424-f2b9edc5f35b"
@@ -42,7 +42,9 @@ DifferentiationInterfaceGPUArraysCoreExt = "GPUArraysCore"
4242
DifferentiationInterfaceGTPSAExt = "GTPSA"
4343
DifferentiationInterfaceMooncakeExt = "Mooncake"
4444
DifferentiationInterfacePolyesterForwardDiffExt = [
45-
"PolyesterForwardDiff", "ForwardDiff", "DiffResults"
45+
"PolyesterForwardDiff",
46+
"ForwardDiff",
47+
"DiffResults",
4648
]
4749
DifferentiationInterfaceReverseDiffExt = ["ReverseDiff", "DiffResults"]
4850
DifferentiationInterfaceSparseArraysExt = "SparseArrays"

DifferentiationInterface/ext/DifferentiationInterfaceGPUArraysCoreExt/DifferentiationInterfaceGPUArraysCoreExt.jl

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,7 @@ end
1313
function DI.multibasis(a::AbstractGPUArray{T}, inds) where {T}
1414
b = similar(a)
1515
fill!(b, zero(T))
16-
for i in inds
17-
@allowscalar b[i] = one(T)
18-
end
16+
view(b, inds) .= one(T)
1917
return b
2018
end
2119

0 commit comments

Comments
 (0)