@@ -330,32 +330,49 @@ function p_sparse_matrix_tests(distribute)
330330 nodes_per_dir = (5 ,5 )
331331 parts_per_dir = (2 ,2 )
332332 A = PartitionedArrays. laplace_matrix (nodes_per_dir,parts_per_dir,parts)
333-
334- B = A* A
335333 A_seq = centralize (A)
336- @test centralize (B) ≈ A_seq* A_seq
337-
338- B = spmm (A,A)
339- @test centralize (B) ≈ A_seq* A_seq
340- B,cacheB = spmm (A,A;reuse= true )
341- spmm! (B,A,A,cacheB)
342- @test centralize (B) ≈ A_seq* A_seq
343-
344- B = transpose (A)* A
345- @test centralize (B) ≈ transpose (A_seq)* A_seq
346-
347- B = spmtm (A,A)
348- B,cacheB = spmtm (A,A;reuse= true )
349- @test centralize (B) ≈ transpose (A_seq)* A_seq
350- spmtm! (B,A,A,cacheB)
351- @test centralize (B) ≈ transpose (A_seq)* A_seq
352-
353- C = rap (transpose (A),A,A)
354- @test centralize (C) ≈ transpose (A_seq)* A_seq* A_seq
355- C,cacheC = rap (transpose (A),A,A;reuse= true )
356- @test centralize (C) ≈ transpose (A_seq)* A_seq* A_seq
357- rap! (C,transpose (A),A,A,cacheC)
358- @test centralize (C) ≈ transpose (A_seq)* A_seq* A_seq
334+ Z = 2 * A
335+ Z_seq = centralize (Z)
336+
337+ B = Z* A
338+ @test centralize (B) ≈ Z_seq* A_seq
339+
340+ B = spmm (Z,A)
341+ @test centralize (B) ≈ Z_seq* A_seq
342+ B,cacheB = spmm (Z,A;reuse= true )
343+ map (partition (A)) do A
344+ nonzeros (A. blocks. own_own) .*= 4
345+ nonzeros (A. blocks. own_ghost) .*= 4
346+ end
347+ A_seq = centralize (A)
348+ spmm! (B,Z,A,cacheB)
349+ @test centralize (B) ≈ Z_seq* (A_seq)
350+
351+ B = transpose (Z)* A
352+ @test centralize (B) ≈ transpose (Z_seq)* A_seq
353+
354+ B = spmtm (Z,A)
355+ B,cacheB = spmtm (Z,A;reuse= true )
356+ @test centralize (B) ≈ transpose (Z_seq)* A_seq
357+ map (partition (A)) do A
358+ nonzeros (A. blocks. own_own) .*= 4
359+ nonzeros (A. blocks. own_ghost) .*= 4
360+ end
361+ A_seq = centralize (A)
362+ spmtm! (B,Z,A,cacheB)
363+ @test centralize (B) ≈ transpose (Z_seq)* A_seq
364+
365+ C = rap (transpose (A),Z,A)
366+ @test centralize (C) ≈ transpose (A_seq)* Z_seq* A_seq
367+ C,cacheC = rap (transpose (A),Z,A;reuse= true )
368+ @test centralize (C) ≈ transpose (A_seq)* Z_seq* A_seq
369+ map (partition (A)) do A
370+ nonzeros (A. blocks. own_own) .*= 4
371+ nonzeros (A. blocks. own_ghost) .*= 4
372+ end
373+ A_seq = centralize (A)
374+ rap! (C,transpose (A),Z,A,cacheC)
375+ @test centralize (C) ≈ transpose (A_seq)* Z_seq* A_seq
359376
360377 r = pzeros (partition (axes (A,2 )))
361378 x = pones (partition (axes (A,1 )))
0 commit comments