@@ -14,6 +14,10 @@ function cmp(a,b; rtol=MYRTOL, atol=MYATOL)
1414 @test isapprox (Array (a), Array (b); rtol= rtol, atol= atol)
1515end
1616
17+ function cmp_broken (a,b; rtol= MYRTOL, atol= MYATOL)
18+ @test_broken isapprox (Array (a), Array (b); rtol= rtol, atol= atol)
19+ end
20+
1721@testset " FFT" begin
1822 Ns = (8 ,32 ,64 ,8 )
1923
5357 cmp (dZ, X)
5458
5559 # region/batched (1D along dim 1)
56- # X = rand(T, Ns[1], Ns[2])
57- # dX = gpu(X)
58- # p = plan_fft!(dX, 1)
59- # p * dX
60- # cmp (dX, fft(X,1))
61- # pinv = plan_ifft!(dX,1)
62- # pinv * dX
63- # cmp (dX, X)
60+ X = rand (T, Ns[1 ], Ns[2 ])
61+ dX = gpu (X)
62+ p = plan_fft! (dX, 1 )
63+ p * dX
64+ cmp_broken (dX, fft (X,1 ))
65+ pinv = plan_ifft! (dX,1 )
66+ pinv * dX
67+ cmp_broken (dX, X)
6468 end
6569 end
6670
8286 p = plan_rfft (dX)
8387 dY = p * dX
8488 cmp (dY, rfft (X, (1 ,))) # Compare with 1D FFT along first dim, not multi-dimensional FFT
85- # pinv = plan_irfft(dY, size(X,1))
86- # dZ = pinv * dY
87- # cmp (dZ, X)
89+ pinv = plan_irfft (dY, size (X,1 ))
90+ dZ = pinv * dY
91+ cmp_broken (dZ, X)
8892 end
8993 end
9094
101105 X = gpu (rand (T, Ns[1 ], Ns[2 ]))
102106 Y = rfft (X)
103107 cmp (Y, rfft (Array (X), (1 ,))) # Compare with 1D FFT along first dim, not multi-dimensional FFT
104- # Z = irfft(Y, size(X,1))
105- # cmp (Z, Array(X))
108+ Z = irfft (Y, size (X,1 ))
109+ cmp_broken (Z, Array (X))
106110 end
107111end
0 commit comments