@@ -54,6 +54,8 @@ blockdim = 5
54
54
CUDA. @allowscalar begin
55
55
@test sprint (show, MIME " text/plain" (), d_x) == replace (sprint (show, MIME " text/plain" (), x), " SparseMatrixCSC{Float64, Int64}" => " CuSparseMatrixCSC{Float64, Int32}" )
56
56
@test Array (d_x[:]) == x[:]
57
+ @test d_x[:, :] == x[:, :]
58
+ @test d_x[(1 , 1 )] == x[1 , 1 ]
57
59
@test d_x[firstindex (d_x)] == x[firstindex (x)]
58
60
@test d_x[div (end , 2 )] == x[div (end , 2 )]
59
61
@test d_x[end ] == x[end ]
@@ -130,6 +132,9 @@ blockdim = 5
130
132
@test reshape (repeat (d_x, 1 , 1 , 3 ), size (d_x, 1 ), size (d_x, 2 ), 3 , 1 , 1 ) isa CuSparseArrayCSR
131
133
# to hit the CuSparseArrayCSR path
132
134
CUDA. unsafe_free! (repeat (d_x, 1 , 1 , 3 ))
135
+ CUDA. @allowscalar begin
136
+ @test startswith (sprint (show, MIME " text/plain" (), repeat (d_x, 1 , 1 , 2 )), " $m ×$n ×2 CuSparseArrayCSR{Float64, Int32, 3} with $(2 * nnz (d_x)) stored entries:\n " )
137
+ end
133
138
@test length (d_x) == m* n
134
139
@test_throws ArgumentError copyto! (d_y,d_x)
135
140
CUDA. @allowscalar begin
@@ -173,6 +178,18 @@ blockdim = 5
173
178
d_x = LowerTriangular (CuSparseMatrixCSC (x))
174
179
@test ! istriu (d_x)
175
180
@test istril (d_x)
181
+ d_x = UpperTriangular (triu (transpose (CuSparseMatrixCSC (x)), 1 ))
182
+ @test istriu (d_x)
183
+ @test ! istril (d_x)
184
+ d_x = UpperTriangular (triu (adjoint (CuSparseMatrixCSC (x)), 1 ))
185
+ @test istriu (d_x)
186
+ @test ! istril (d_x)
187
+ d_x = LowerTriangular (tril (transpose (CuSparseMatrixCSC (x)), - 1 ))
188
+ @test ! istriu (d_x)
189
+ @test istril (d_x)
190
+ d_x = LowerTriangular (tril (adjoint (CuSparseMatrixCSC (x)), - 1 ))
191
+ @test ! istriu (d_x)
192
+ @test istril (d_x)
176
193
177
194
A = sprand (n, n, 0.2 )
178
195
d_A = CuSparseMatrixCSC (A)
0 commit comments