pyVkFFT test results

pyvkfft: 2023.1.1, VkFFFT:1.3.0 host : mac258test.esrf.fr

Command:/Users/favre/miniforge3/envs/py39-pynx/bin/python3.9 pyvkfft-test-suite --backend pyopencl --gpu m1 --gpumem 8 --nproc 8 --single

Methodology: the included graphs measure the accuracy of the forward and backward transforms: an array is generated with random uniform values between -0.5 and 0.5, and the results of its transform are compared with either pyfftw (in long double precision) if available, or scipy if available, or numpy fft. The L2 curve measures the average square norm difference, and the L the maximum difference.

Note: for the R2C inverse transform, the result of the forward transform is used instead of re-using the random array (in order to have a proper half-Hermitian array), contrary to what is done for other transforms. This explains why the IFFT R2C maximum (L) errors are larger.

Note 2: some "errors" for DCT may be due to unsupported sizes in VkFFT, which vary depending on the card and language used (amount of shared/local memory). So they just indicate a current limit for the transform sizes rather than a real error.

[Click on the highlighted cells for details and accuracy graphs vs the transform size]

GPU backend transform ndim range radix dtype inplace LUT norm time-duration FAIL ERROR
-pyopencl Regular multi-dimensional C2C/R2C/DCT test2023-07-05 21h21:47 +00h 02m 47s 0 0
m1pyopencl 12-1000002,3,5,7,11,13float32out-of-placeAuto12023-07-05 21h24:35 +00h 02m 46s [ 1847 tests] 0 0
m1pyopencl 22-4500 (N,N)2,3,5,7,11,13float32out-of-placeAuto12023-07-05 21h27:22 +00h 01m 56s [ 512 tests] 0 0
m1pyopencl 32-550 (N,N,N)2,3,5,7,11,13float32out-of-placeAuto12023-07-05 21h29:18 +00h 08m 34s [ 175 tests] 0 0
m1pyopencl 12-1000002,3,5,7,11,13float32out-of-placeAuto12023-07-05 21h37:53 +00h 02m 41s [ 1420 tests] 0
m1pyopencl 22-4500 (N,N)2,3,5,7,11,13float32out-of-placeAuto12023-07-05 21h40:35 +00h 01m 12s [ 368 tests] 0 0
m1pyopencl 32-550 (N,N,N)2,3,5,7,11,13float32out-of-placeAuto12023-07-05 21h41:48 +00h 01m 39s [ 118 tests] 0 0
m1pyopencl 12-15002,3,5,7,11,13float32out-of-placeAuto12023-07-05 21h43:28 +00h 00m 27s [ 299 tests] 0
m1pyopencl 22-1024 (N,N)2,3,5,7,11,13float32out-of-placeAuto12023-07-05 21h43:56 +00h 02m 21s [ 245 tests] 0 0
m1pyopencl 32-500 (N,N,N)2,3,5,7,11,13float32out-of-placeAuto12023-07-05 21h46:18 +00h 04m 14s [ 165 tests] 0 0
m1pyopencl 12-40962,3,5,7,11,13float32out-of-placeAuto12023-07-05 21h50:33 +00h 00m 38s [ 489 tests] 0 0
m1pyopencl 22-2047 (N,N)2,3,5,7,11,13float32out-of-placeAuto12023-07-05 21h51:11 +00h 01m 31s [ 349 tests] 0 0
m1pyopencl 32-500 (N,N,N)2,3,5,7,11,13float32out-of-placeAuto12023-07-05 21h52:43 +00h 01m 30s [ 165 tests] 0 0
m1pyopencl 12-40962,3,5,7,11,13float32out-of-placeAuto12023-07-05 21h54:14 +00h 00m 37s [ 489 tests] 0 0
m1pyopencl 22-2047 (N,N)2,3,5,7,11,13float32out-of-placeAuto12023-07-05 21h54:52 +00h 01m 33s [ 349 tests] 0 0
m1pyopencl 32-500 (N,N,N)2,3,5,7,11,13float32out-of-placeAuto12023-07-05 21h56:25 +00h 01m 30s [ 165 tests] 0 0
m1pyopencl 13-40962,3,5,7,11,13float32out-of-placeAuto12023-07-05 21h57:57 +00h 00m 44s [ 488 tests] 0 0
m1pyopencl 23-2047 (N,N)2,3,5,7,11,13float32out-of-placeAuto12023-07-05 21h58:41 +00h 01m 32s [ 348 tests] 0 0
m1pyopencl 33-500 (N,N,N)2,3,5,7,11,13float32out-of-placeAuto12023-07-05 22h00:14 +00h 01m 33s [ 164 tests] 0 0
m1pyopencl 12-1000002,3,5,7,11,13float32inplaceAuto12023-07-05 22h01:48 +00h 02m 32s [ 1847 tests] 0 0
m1pyopencl 22-4500 (N,N)2,3,5,7,11,13float32inplaceAuto12023-07-05 22h04:20 +00h 01m 44s [ 512 tests] 0 0
m1pyopencl 32-550 (N,N,N)2,3,5,7,11,13float32inplaceAuto12023-07-05 22h06:05 +00h 05m 44s [ 175 tests] 0 0
m1pyopencl 12-1000002,3,5,7,11,13float32inplaceAuto12023-07-05 22h11:49 +00h 02m 31s [ 1420 tests] 0 0
m1pyopencl 22-4500 (N,N)2,3,5,7,11,13float32inplaceAuto12023-07-05 22h14:21 +00h 01m 13s [ 368 tests] 0 0
m1pyopencl 32-550 (N,N,N)2,3,5,7,11,13float32inplaceAuto12023-07-05 22h15:34 +00h 01m 40s [ 118 tests] 0 0
m1pyopencl 12-15002,3,5,7,11,13float32inplaceAuto12023-07-05 22h17:15 +00h 00m 26s [ 299 tests] 0
m1pyopencl 22-1024 (N,N)2,3,5,7,11,13float32inplaceAuto12023-07-05 22h17:41 +00h 02m 20s [ 245 tests] 0 0
m1pyopencl 32-500 (N,N,N)2,3,5,7,11,13float32inplaceAuto12023-07-05 22h20:02 +00h 03m 26s [ 165 tests] 0 0
m1pyopencl 12-40962,3,5,7,11,13float32inplaceAuto12023-07-05 22h23:29 +00h 00m 37s [ 489 tests] 0 0
m1pyopencl 22-2047 (N,N)2,3,5,7,11,13float32inplaceAuto12023-07-05 22h24:07 +00h 01m 30s [ 349 tests] 0 0
m1pyopencl 32-500 (N,N,N)2,3,5,7,11,13float32inplaceAuto12023-07-05 22h25:38 +00h 01m 19s [ 165 tests] 0 0
m1pyopencl 12-40962,3,5,7,11,13float32inplaceAuto12023-07-05 22h26:57 +00h 00m 37s [ 489 tests] 0 0
m1pyopencl 22-2047 (N,N)2,3,5,7,11,13float32inplaceAuto12023-07-05 22h27:35 +00h 01m 35s [ 349 tests] 0 0
m1pyopencl 32-500 (N,N,N)2,3,5,7,11,13float32inplaceAuto12023-07-05 22h29:11 +00h 01m 34s [ 165 tests] 0 0
m1pyopencl 13-40962,3,5,7,11,13float32inplaceAuto12023-07-05 22h30:46 +00h 00m 43s [ 488 tests] 0 0
m1pyopencl 23-2047 (N,N)2,3,5,7,11,13float32inplaceAuto12023-07-05 22h31:30 +00h 01m 39s [ 348 tests] 0 0
m1pyopencl 33-500 (N,N,N)2,3,5,7,11,13float32inplaceAuto12023-07-05 22h33:10 +00h 01m 39s [ 164 tests] 0 0
m1pyopencl 12-1000002,3,5,7,11,13float32out-of-placeTrue12023-07-05 22h34:49 +00h 02m 49s [ 1847 tests] 0 0
m1pyopencl 22-4500 (N,N)2,3,5,7,11,13float32out-of-placeTrue12023-07-05 22h37:39 +00h 01m 56s [ 512 tests] 0 0
m1pyopencl 32-550 (N,N,N)2,3,5,7,11,13float32out-of-placeTrue12023-07-05 22h39:36 +00h 07m 44s [ 175 tests] 0 0
m1pyopencl 12-1000002,3,5,7,11,13float32out-of-placeTrue12023-07-05 22h47:21 +00h 02m 35s [ 1420 tests] 0
m1pyopencl 22-4500 (N,N)2,3,5,7,11,13float32out-of-placeTrue12023-07-05 22h49:57 +00h 01m 12s [ 368 tests] 0 0
m1pyopencl 32-550 (N,N,N)2,3,5,7,11,13float32out-of-placeTrue12023-07-05 22h51:10 +00h 01m 35s [ 118 tests] 0 0
m1pyopencl 12-15002,3,5,7,11,13float32out-of-placeTrue12023-07-05 22h52:46 +00h 00m 24s [ 299 tests] 0
m1pyopencl 22-1024 (N,N)2,3,5,7,11,13float32out-of-placeTrue12023-07-05 22h53:11 +00h 02m 15s [ 245 tests] 0 0
m1pyopencl 32-500 (N,N,N)2,3,5,7,11,13float32out-of-placeTrue12023-07-05 22h55:26 +00h 04m 10s [ 165 tests] 0 0
m1pyopencl 12-40962,3,5,7,11,13float32out-of-placeTrue12023-07-05 22h59:37 +00h 00m 37s [ 489 tests] 0 0
m1pyopencl 22-2047 (N,N)2,3,5,7,11,13float32out-of-placeTrue12023-07-05 23h00:14 +00h 01m 35s [ 349 tests] 0 0
m1pyopencl 32-500 (N,N,N)2,3,5,7,11,13float32out-of-placeTrue12023-07-05 23h01:50 +00h 01m 30s [ 165 tests] 0 0
m1pyopencl 12-40962,3,5,7,11,13float32out-of-placeTrue12023-07-05 23h03:21 +00h 00m 38s [ 489 tests] 0 0
m1pyopencl 22-2047 (N,N)2,3,5,7,11,13float32out-of-placeTrue12023-07-05 23h03:59 +00h 01m 32s [ 349 tests] 0 0
m1pyopencl 32-500 (N,N,N)2,3,5,7,11,13float32out-of-placeTrue12023-07-05 23h05:32 +00h 01m 27s [ 165 tests] 0 0
m1pyopencl 13-40962,3,5,7,11,13float32out-of-placeTrue12023-07-05 23h07:00 +00h 00m 45s [ 488 tests] 0 0
m1pyopencl 23-2047 (N,N)2,3,5,7,11,13float32out-of-placeTrue12023-07-05 23h07:45 +00h 01m 40s [ 348 tests] 0 0
m1pyopencl 33-500 (N,N,N)2,3,5,7,11,13float32out-of-placeTrue12023-07-05 23h09:25 +00h 01m 37s [ 164 tests] 0 0
m1pyopencl 12-1000002,3,5,7,11,13float32inplaceTrue12023-07-05 23h11:03 +00h 02m 44s [ 1847 tests] 0 0
m1pyopencl 22-4500 (N,N)2,3,5,7,11,13float32inplaceTrue12023-07-05 23h13:48 +00h 01m 47s [ 512 tests] 0 0
m1pyopencl 32-550 (N,N,N)2,3,5,7,11,13float32inplaceTrue12023-07-05 23h15:36 +00h 05m 44s [ 175 tests] 0 0
m1pyopencl 12-1000002,3,5,7,11,13float32inplaceTrue12023-07-05 23h21:21 +00h 02m 33s [ 1420 tests] 0 0
m1pyopencl 22-4500 (N,N)2,3,5,7,11,13float32inplaceTrue12023-07-05 23h23:55 +00h 01m 12s [ 368 tests] 0 0
m1pyopencl 32-550 (N,N,N)2,3,5,7,11,13float32inplaceTrue12023-07-05 23h25:07 +00h 01m 51s [ 118 tests] 0 0
m1pyopencl 12-15002,3,5,7,11,13float32inplaceTrue12023-07-05 23h26:58 +00h 00m 24s [ 299 tests] 0
m1pyopencl 22-1024 (N,N)2,3,5,7,11,13float32inplaceTrue12023-07-05 23h27:23 +00h 02m 08s [ 245 tests] 0 0
m1pyopencl 32-500 (N,N,N)2,3,5,7,11,13float32inplaceTrue12023-07-05 23h29:32 +00h 03m 23s [ 165 tests] 0 0
m1pyopencl 12-40962,3,5,7,11,13float32inplaceTrue12023-07-05 23h32:56 +00h 00m 37s [ 489 tests] 0 0
m1pyopencl 22-2047 (N,N)2,3,5,7,11,13float32inplaceTrue12023-07-05 23h33:33 +00h 01m 35s [ 349 tests] 0 0
m1pyopencl 32-500 (N,N,N)2,3,5,7,11,13float32inplaceTrue12023-07-05 23h35:09 +00h 01m 32s [ 165 tests] 0 0
m1pyopencl 12-40962,3,5,7,11,13float32inplaceTrue12023-07-05 23h36:41 +00h 00m 37s [ 489 tests] 0 0
m1pyopencl 22-2047 (N,N)2,3,5,7,11,13float32inplaceTrue12023-07-05 23h37:19 +00h 01m 34s [ 349 tests] 0 0
m1pyopencl 32-500 (N,N,N)2,3,5,7,11,13float32inplaceTrue12023-07-05 23h38:54 +00h 01m 27s [ 165 tests] 0 0
m1pyopencl 13-40962,3,5,7,11,13float32inplaceTrue12023-07-05 23h40:22 +00h 00m 45s [ 488 tests] 0 0
m1pyopencl 23-2047 (N,N)2,3,5,7,11,13float32inplaceTrue12023-07-05 23h41:08 +00h 01m 43s [ 348 tests] 0 0
m1pyopencl 33-500 (N,N,N)2,3,5,7,11,13float32inplaceTrue12023-07-05 23h42:51 +00h 01m 34s [ 164 tests] 0 0
m1pyopencl 12-1000002,3,5,7,11,13float32out-of-placeAuto02023-07-05 23h44:26 +00h 02m 34s [ 1847 tests] 0 0
m1pyopencl 22-4500 (N,N)2,3,5,7,11,13float32out-of-placeAuto02023-07-05 23h47:00 +00h 01m 54s [ 512 tests] 0 0
m1pyopencl 32-550 (N,N,N)2,3,5,7,11,13float32out-of-placeAuto02023-07-05 23h48:55 +00h 07m 41s [ 175 tests] 0 0
m1pyopencl 12-1000002,3,5,7,11,13float32out-of-placeAuto02023-07-05 23h56:37 +00h 02m 34s [ 1420 tests] 0
m1pyopencl 22-4500 (N,N)2,3,5,7,11,13float32out-of-placeAuto02023-07-05 23h59:12 +00h 01m 11s [ 368 tests] 0 0
m1pyopencl 32-550 (N,N,N)2,3,5,7,11,13float32out-of-placeAuto02023-07-06 00h00:24 +00h 01m 40s [ 118 tests] 0 0
m1pyopencl 12-1000002,3,5,7,11,13float32inplaceAuto02023-07-06 00h02:05 +00h 02m 29s [ 1847 tests] 0 0
m1pyopencl 22-4500 (N,N)2,3,5,7,11,13float32inplaceAuto02023-07-06 00h04:34 +00h 01m 44s [ 512 tests] 0 0
m1pyopencl 32-550 (N,N,N)2,3,5,7,11,13float32inplaceAuto02023-07-06 00h06:19 +00h 05m 59s [ 175 tests] 0 0
m1pyopencl 12-1000002,3,5,7,11,13float32inplaceAuto02023-07-06 00h12:18 +00h 02m 26s [ 1420 tests] 0 0
m1pyopencl 22-4500 (N,N)2,3,5,7,11,13float32inplaceAuto02023-07-06 00h14:45 +00h 01m 13s [ 368 tests] 0 0
m1pyopencl 32-550 (N,N,N)2,3,5,7,11,13float32inplaceAuto02023-07-06 00h15:59 +00h 01m 58s [ 118 tests] 0 0
m1pyopencl 12-1000002,3,5,7,11,13float32out-of-placeTrue02023-07-06 00h17:58 +00h 02m 47s [ 1847 tests] 0 0
m1pyopencl 22-4500 (N,N)2,3,5,7,11,13float32out-of-placeTrue02023-07-06 00h20:45 +00h 01m 56s [ 512 tests] 0 0
m1pyopencl 32-550 (N,N,N)2,3,5,7,11,13float32out-of-placeTrue02023-07-06 00h22:42 +00h 08m 03s [ 175 tests] 0 0
m1pyopencl 12-1000002,3,5,7,11,13float32out-of-placeTrue02023-07-06 00h30:47 +00h 02m 37s [ 1420 tests] 0
m1pyopencl 22-4500 (N,N)2,3,5,7,11,13float32out-of-placeTrue02023-07-06 00h33:25 +00h 01m 10s [ 368 tests] 0 0
m1pyopencl 32-550 (N,N,N)2,3,5,7,11,13float32out-of-placeTrue02023-07-06 00h34:36 +00h 01m 35s [ 118 tests] 0 0
m1pyopencl 12-1000002,3,5,7,11,13float32inplaceTrue02023-07-06 00h36:11 +00h 02m 42s [ 1847 tests] 0 0
m1pyopencl 22-4500 (N,N)2,3,5,7,11,13float32inplaceTrue02023-07-06 00h38:53 +00h 01m 46s [ 512 tests] 0 0
m1pyopencl 32-550 (N,N,N)2,3,5,7,11,13float32inplaceTrue02023-07-06 00h40:40 +00h 05m 52s [ 175 tests] 0 0
m1pyopencl 12-1000002,3,5,7,11,13float32inplaceTrue02023-07-06 00h46:33 +00h 02m 33s [ 1420 tests] 0 0
m1pyopencl 22-4500 (N,N)2,3,5,7,11,13float32inplaceTrue02023-07-06 00h49:07 +00h 01m 12s [ 368 tests] 0 0
m1pyopencl 32-550 (N,N,N)2,3,5,7,11,13float32inplaceTrue02023-07-06 00h50:20 +00h 01m 46s [ 118 tests] 0 0
m1pyopencl 12-10000Bluesteinfloat32out-of-placeAuto12023-07-06 00h52:06 +00h 22m 22s [ 9267 tests] 0 0
m1pyopencl 22-4500 (N,N)Bluesteinfloat32out-of-placeAuto12023-07-06 01h14:29 +00h 31m 36s [ 3987 tests] 0 0
m1pyopencl 32-550 (N,N,N)Bluesteinfloat32out-of-placeAuto12023-07-06 01h46:07 +00h 41m 00s [ 374 tests] 0 0
m1pyopencl 12-10000Bluesteinfloat32out-of-placeAuto12023-07-06 02h27:08 +00h 12m 14s [ 4463 tests] 0 0
m1pyopencl 22-4500 (N,N)Bluesteinfloat32out-of-placeAuto12023-07-06 02h39:22 +00h 11m 15s [ 1882 tests] 0 0
m1pyopencl 32-550 (N,N,N)Bluesteinfloat32out-of-placeAuto12023-07-06 02h50:38 +00h 04m 31s [ 157 tests] 0 0
m1pyopencl 12-1500Bluesteinfloat32out-of-placeAuto12023-07-06 02h55:10 +00h 01m 46s [ 1200 tests] 0
m1pyopencl 22-1024 (N,N)Bluesteinfloat32out-of-placeAuto12023-07-06 02h56:56 +00h 09m 45s [ 778 tests] 0 0
m1pyopencl 32-500 (N,N,N)Bluesteinfloat32out-of-placeAuto12023-07-06 03h06:42 +00h 10m 03s [ 334 tests] 0 0
m1pyopencl 12-3000Bluesteinfloat32out-of-placeAuto12023-07-06 03h16:45 +00h 04m 21s [ 2579 tests] 0
m1pyopencl 22-2047 (N,N)Bluesteinfloat32out-of-placeAuto12023-07-06 03h21:08 +00h 28m 35s [ 1697 tests] 0 0
m1pyopencl 32-500 (N,N,N)Bluesteinfloat32out-of-placeAuto12023-07-06 03h49:43 +00h 06m 54s [ 334 tests] 0 0
m1pyopencl 12-3000Bluesteinfloat32out-of-placeAuto12023-07-06 03h56:39 +00h 04m 23s [ 2579 tests] 0
m1pyopencl 22-2047 (N,N)Bluesteinfloat32out-of-placeAuto12023-07-06 04h01:02 +00h 28m 33s [ 1697 tests] 0 0
m1pyopencl 32-500 (N,N,N)Bluesteinfloat32out-of-placeAuto12023-07-06 04h29:36 +00h 06m 47s [ 334 tests] 0 0
m1pyopencl 13-3000Bluesteinfloat32out-of-placeAuto12023-07-06 04h36:24 +00h 05m 20s [ 2579 tests] 0
m1pyopencl 23-2047 (N,N)Bluesteinfloat32out-of-placeAuto12023-07-06 04h41:44 +00h 25m 48s [ 1697 tests] 0 0
m1pyopencl 33-500 (N,N,N)Bluesteinfloat32out-of-placeAuto12023-07-06 05h07:34 +00h 06m 47s [ 334 tests] 0 0
m1pyopencl 12-10000Bluesteinfloat32inplaceAuto12023-07-06 05h14:21 +00h 21m 49s [ 9267 tests] 0 0
m1pyopencl 22-4500 (N,N)Bluesteinfloat32inplaceAuto12023-07-06 05h36:11 +00h 28m 36s [ 3987 tests] 0 0
m1pyopencl 32-550 (N,N,N)Bluesteinfloat32inplaceAuto12023-07-06 06h04:48 +00h 27m 05s [ 374 tests] 0 0
m1pyopencl 12-10000Bluesteinfloat32inplaceAuto12023-07-06 06h31:54 +00h 11m 53s [ 4463 tests] 0 0
m1pyopencl 22-4500 (N,N)Bluesteinfloat32inplaceAuto12023-07-06 06h43:48 +00h 11m 28s [ 1882 tests] 0 0
m1pyopencl 32-550 (N,N,N)Bluesteinfloat32inplaceAuto12023-07-06 06h55:16 +00h 05m 04s [ 157 tests] 0 0
m1pyopencl 12-1500Bluesteinfloat32inplaceAuto12023-07-06 07h00:22 +00h 01m 46s [ 1200 tests] 0
m1pyopencl 22-1024 (N,N)Bluesteinfloat32inplaceAuto12023-07-06 07h02:08 +00h 09m 48s [ 778 tests] 0 0
m1pyopencl 32-500 (N,N,N)Bluesteinfloat32inplaceAuto12023-07-06 07h11:57 +00h 08m 22s [ 334 tests] 0 0
m1pyopencl 12-3000Bluesteinfloat32inplaceAuto12023-07-06 07h20:20 +00h 04m 24s [ 2579 tests] 0
m1pyopencl 22-2047 (N,N)Bluesteinfloat32inplaceAuto12023-07-06 07h24:45 +00h 28m 37s [ 1697 tests] 0 0
m1pyopencl 32-500 (N,N,N)Bluesteinfloat32inplaceAuto12023-07-06 07h53:23 +00h 06m 33s [ 334 tests] 0 0
m1pyopencl 12-3000Bluesteinfloat32inplaceAuto12023-07-06 07h59:56 +00h 04m 23s [ 2579 tests] 0