Command:/Users/favre/miniforge3/envs/pyvkfft-test/bin/python3.12 pyvkfft-test-suite --backend pyopencl --gpu m1 --gpumem 4 --nproc 4 --single --skip
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 |
---|---|---|---|---|---|---|---|---|---|---|---|---|
m1 | pyopencl | Regular multi-dimensional C2C/R2C/R2R test | 2024-09-27 12h54:35 +00h 27m 06s | 0 | 0 | |||||||
m1 | pyopencl | 1 | 2-100000 | 2,3,5,7,11,13 | float32 | out-of-place | Auto | 1 | 2024-09-27 19h22:32 +00h 02m 14s [ 1847 tests] | 0 | 0 | |
m1 | pyopencl | 2 | 2-4500 (N,N) | 2,3,5,7,11,13 | float32 | out-of-place | Auto | 1 | 2024-09-27 20h09:40 +00h 03m 02s [ 512 tests] | 0 | 0 | |
m1 | pyopencl | 3 | 2-499 (N,N,N) | 2,3,5,7,11,13 | float32 | out-of-place | Auto | 1 | 2024-09-27 20h27:41 +00h 06m 20s [ 164 tests] | 0 | 0 | |
m1 | pyopencl | 1 | 2-100000 | 2,3,5,7,11,13 | float32 | out-of-place | Auto | 1 | 2024-09-27 20h34:02 +00h 02m 05s [ 1847 tests] | 0 | 0 | |
m1 | pyopencl | 2 | 2-4500 (N,N) | 2,3,5,7,11,13 | float32 | out-of-place | Auto | 1 | 2024-09-27 20h36:08 +00h 01m 20s [ 512 tests] | 0 | 0 | |
m1 | pyopencl | 3 | 2-550 (N,N,N) | 2,3,5,7,11,13 | float32 | out-of-place | Auto | 1 | 2024-09-27 20h37:29 +00h 04m 36s [ 175 tests] | 0 | 0 | |
m1 | pyopencl | 1 | 2-100000 | 2,3,5,7,11,13 | float32 | out-of-place | Auto | 1 | 2024-09-27 20h42:06 +00h 02m 20s [ 1846 tests] | 0 | 0 | |
m1 | pyopencl | 2 | 2-4500 (N,N) | 2,3,5,7,11,13 | float32 | out-of-place | Auto | 1 | 2024-09-27 21h29:19 +00h 04m 17s [ 511 tests] | 0 | 0 | |
m1 | pyopencl | 3 | 2-401 (N,N,N) | 2,3,5,7,11,13 | float32 | out-of-place | Auto | 1 | 2024-09-27 22h48:25 +00h 02m 27s [ 147 tests] | 0 | 0 | |
m1 | pyopencl | 1 | 2-100000 | 2,3,5,7,11,13 | float32 | out-of-place | Auto | 1 | 2024-09-27 23h35:46 +00h 02m 47s [ 1847 tests] | 0 | 0 | |
m1 | pyopencl | 2 | 2-4500 (N,N) | 2,3,5,7,11,13 | float32 | out-of-place | Auto | 1 | 2024-09-28 00h23:26 +00h 02m 36s [ 512 tests] | 0 | 0 | |
m1 | pyopencl | 3 | 2-499 (N,N,N) | 2,3,5,7,11,13 | float32 | out-of-place | Auto | 1 | 2024-09-28 00h55:44 +00h 03m 47s [ 164 tests] | 0 | 0 | |
m1 | pyopencl | 1 | 2-100000 | 2,3,5,7,11,13 | float32 | out-of-place | Auto | 1 | 2024-09-28 00h59:31 +00h 02m 32s [ 1847 tests] | 0 | 0 | |
m1 | pyopencl | 2 | 2-4500 (N,N) | 2,3,5,7,11,13 | float32 | out-of-place | Auto | 1 | 2024-09-28 01h31:59 +00h 02m 32s [ 512 tests] | 0 | 0 | |
m1 | pyopencl | 3 | 2-499 (N,N,N) | 2,3,5,7,11,13 | float32 | out-of-place | Auto | 1 | 2024-09-28 02h19:24 +00h 03m 50s [ 164 tests] | 0 | 0 | |
m1 | pyopencl | 1 | 3-100000 | 2,3,5,7,11,13 | float32 | out-of-place | Auto | 1 | 2024-09-28 03h38:03 +00h 02m 04s [ 1504 tests] | 0 | 0 | |
m1 | pyopencl | 2 | 3-4500 (N,N) | 2,3,5,7,11,13 | float32 | out-of-place | Auto | 1 | 2024-09-28 04h10:03 +00h 02m 32s [ 401 tests] | 0 | 0 | |
m1 | pyopencl | 3 | 3-499 (N,N,N) | 2,3,5,7,11,13 | float32 | out-of-place | Auto | 1 | 2024-09-28 04h57:28 +00h 02m 21s [ 123 tests] | 0 | 0 | |
m1 | pyopencl | 1 | 2-100000 | 2,3,5,7,11,13 | float32 | out-of-place | Auto | 1 | 2024-09-28 05h44:42 +00h 05m 43s [ 1846 tests] | 0 | 0 | |
m1 | pyopencl | 2 | 2-4500 (N,N) | 2,3,5,7,11,13 | float32 | out-of-place | Auto | 1 | 2024-09-28 07h20:12 +00h 07m 37s [ 511 tests] | 0 | 0 | |
m1 | pyopencl | 3 | 2-401 (N,N,N) | 2,3,5,7,11,13 | float32 | out-of-place | Auto | 1 | 2024-09-28 09h24:19 +00h 03m 44s [ 147 tests] | 0 | 0 | |
m1 | pyopencl | 1 | 2-100000 | 2,3,5,7,11,13 | float32 | out-of-place | Auto | 1 | 2024-09-28 10h42:52 +00h 02m 49s [ 1847 tests] | 0 | 0 | |
m1 | pyopencl | 2 | 2-4500 (N,N) | 2,3,5,7,11,13 | float32 | out-of-place | Auto | 1 | 2024-09-28 11h00:39 +00h 02m 43s [ 512 tests] | 0 | 0 | |
m1 | pyopencl | 3 | 2-499 (N,N,N) | 2,3,5,7,11,13 | float32 | out-of-place | Auto | 1 | 2024-09-28 11h03:23 +00h 04m 02s [ 164 tests] | 0 | 0 | |
m1 | pyopencl | 1 | 2-100000 | 2,3,5,7,11,13 | float32 | out-of-place | Auto | 1 | 2024-09-28 11h22:23 +00h 02m 39s [ 1847 tests] | 0 | 0 | |
m1 | pyopencl | 2 | 2-4500 (N,N) | 2,3,5,7,11,13 | float32 | out-of-place | Auto | 1 | 2024-09-28 11h41:04 +00h 02m 39s [ 512 tests] | 0 | 0 | |
m1 | pyopencl | 3 | 2-499 (N,N,N) | 2,3,5,7,11,13 | float32 | out-of-place | Auto | 1 | 2024-09-28 11h43:44 +00h 04m 03s [ 164 tests] | 0 | 0 | |
m1 | pyopencl | 1 | 3-100000 | 2,3,5,7,11,13 | float32 | out-of-place | Auto | 1 | 2024-09-28 12h47:38 +00h 02m 00s [ 1504 tests] | 0 | 0 | |
m1 | pyopencl | 2 | 3-4500 (N,N) | 2,3,5,7,11,13 | float32 | out-of-place | Auto | 1 | 2024-09-28 12h49:39 +00h 02m 38s [ 401 tests] | 0 | 0 | |
m1 | pyopencl | 3 | 3-499 (N,N,N) | 2,3,5,7,11,13 | float32 | out-of-place | Auto | 1 | 2024-09-28 13h37:11 +00h 02m 31s [ 123 tests] | 0 | 0 | |
m1 | pyopencl | 1 | 2-100000 | 2,3,5,7,11,13 | float32 | inplace | Auto | 1 | 2024-09-28 14h09:38 +00h 01m 51s [ 1847 tests] | 0 | 0 | |
m1 | pyopencl | 2 | 2-4500 (N,N) | 2,3,5,7,11,13 | float32 | inplace | Auto | 1 | 2024-09-28 14h41:24 +00h 01m 46s [ 512 tests] | 0 | 0 | |
m1 | pyopencl | 3 | 2-550 (N,N,N) | 2,3,5,7,11,13 | float32 | inplace | Auto | 1 | 2024-09-28 15h28:04 +00h 09m 21s [ 175 tests] | 0 | 0 | |
m1 | pyopencl | 1 | 2-100000 | 2,3,5,7,11,13 | float32 | inplace | Auto | 1 | 2024-09-28 17h52:04 +00h 02m 01s [ 1847 tests] | 0 | 0 | |
m1 | pyopencl | 2 | 2-4500 (N,N) | 2,3,5,7,11,13 | float32 | inplace | Auto | 1 | 2024-09-28 18h14:15 +00h 01m 22s [ 512 tests] | 0 | 0 | |
m1 | pyopencl | 3 | 2-550 (N,N,N) | 2,3,5,7,11,13 | float32 | inplace | Auto | 1 | 2024-09-28 18h45:32 +00h 03m 12s [ 175 tests] | 0 | 0 | |
m1 | pyopencl | 1 | 2-100000 | 2,3,5,7,11,13 | float32 | inplace | Auto | 1 | 2024-09-28 19h48:35 +00h 01m 59s [ 1846 tests] | 0 | 0 | |
m1 | pyopencl | 2 | 2-4500 (N,N) | 2,3,5,7,11,13 | float32 | inplace | Auto | 1 | 2024-09-28 19h50:35 +00h 01m 50s [ 511 tests] | 0 | 0 | |
m1 | pyopencl | 3 | 2-499 (N,N,N) | 2,3,5,7,11,13 | float32 | inplace | Auto | 1 | 2024-09-28 20h22:21 +00h 02m 47s [ 164 tests] | 0 | 0 | |
m1 | pyopencl | 1 | 2-100000 | 2,3,5,7,11,13 | float32 | inplace | Auto | 1 | 2024-09-28 20h25:09 +00h 02m 05s [ 1847 tests] | 0 | 0 | |
m1 | pyopencl | 2 | 2-4500 (N,N) | 2,3,5,7,11,13 | float32 | inplace | Auto | 1 | 2024-09-28 20h27:15 +00h 01m 16s [ 512 tests] | 0 | 0 | |
m1 | pyopencl | 3 | 2-550 (N,N,N) | 2,3,5,7,11,13 | float32 | inplace | Auto | 1 | 2024-09-28 20h28:32 +00h 03m 30s [ 175 tests] | 0 | 0 | |
m1 | pyopencl | 1 | 2-100000 | 2,3,5,7,11,13 | float32 | inplace | Auto | 1 | 2024-09-28 20h32:03 +00h 02m 02s [ 1847 tests] | 0 | 0 | |
m1 | pyopencl | 2 | 2-4500 (N,N) | 2,3,5,7,11,13 | float32 | inplace | Auto | 1 | 2024-09-28 20h34:06 +00h 01m 16s [ 512 tests] | 0 | 0 | |
m1 | pyopencl | 3 | 2-550 (N,N,N) | 2,3,5,7,11,13 | float32 | inplace | Auto | 1 | 2024-09-28 20h35:23 +00h 03m 35s [ 175 tests] | 0 | 0 | |
m1 | pyopencl | 1 | 3-100000 | 2,3,5,7,11,13 | float32 | inplace | Auto | 1 | 2024-09-28 21h08:54 +00h 01m 49s [ 1504 tests] | 0 | 0 | |
m1 | pyopencl | 2 | 3-4500 (N,N) | 2,3,5,7,11,13 | float32 | inplace | Auto | 1 | 2024-09-28 21h25:41 +00h 01m 12s [ 401 tests] | 0 | 0 | |
m1 | pyopencl | 3 | 3-550 (N,N,N) | 2,3,5,7,11,13 | float32 | inplace | Auto | 1 | 2024-09-28 21h56:49 +00h 01m 49s [ 132 tests] | 0 | 0 | |
m1 | pyopencl | 1 | 2-100000 | 2,3,5,7,11,13 | float32 | inplace | Auto | 1 | 2024-09-28 22h28:34 +00h 04m 49s [ 1846 tests] | 0 | 0 | |
m1 | pyopencl | 2 | 2-4500 (N,N) | 2,3,5,7,11,13 | float32 | inplace | Auto | 1 | 2024-09-29 00h03:10 +00h 02m 44s [ 511 tests] | 0 | 0 | |
m1 | pyopencl | 3 | 2-499 (N,N,N) | 2,3,5,7,11,13 | float32 | inplace | Auto | 1 | 2024-09-29 00h35:50 +00h 04m 40s [ 164 tests] | 0 | 0 | |
m1 | pyopencl | 1 | 2-100000 | 2,3,5,7,11,13 | float32 | inplace | Auto | 1 | 2024-09-29 01h10:27 +00h 02m 27s [ 1847 tests] | 0 | 0 | |
m1 | pyopencl | 2 | 2-4500 (N,N) | 2,3,5,7,11,13 | float32 | inplace | Auto | 1 | 2024-09-29 01h12:54 +00h 01m 24s [ 512 tests] | 0 | 0 | |
m1 | pyopencl | 3 | 2-550 (N,N,N) | 2,3,5,7,11,13 | float32 | inplace | Auto | 1 | 2024-09-29 01h14:19 +00h 03m 47s [ 175 tests] | 0 | 0 | |
m1 | pyopencl | 1 | 2-100000 | 2,3,5,7,11,13 | float32 | inplace | Auto | 1 | 2024-09-29 01h50:49 +00h 02m 18s [ 1847 tests] | 0 | 0 | |
m1 | pyopencl | 2 | 2-4500 (N,N) | 2,3,5,7,11,13 | float32 | inplace | Auto | 1 | 2024-09-29 02h08:06 +00h 01m 26s [ 512 tests] | 0 | 0 | |
m1 | pyopencl | 3 | 2-550 (N,N,N) | 2,3,5,7,11,13 | float32 | inplace | Auto | 1 | 2024-09-29 02h24:31 +00h 05m 04s [ 175 tests] | 0 | 0 | |
m1 | pyopencl | 1 | 3-100000 | 2,3,5,7,11,13 | float32 | inplace | Auto | 1 | 2024-09-29 03h59:21 +00h 01m 55s [ 1504 tests] | 0 | 0 | |
m1 | pyopencl | 2 | 3-4500 (N,N) | 2,3,5,7,11,13 | float32 | inplace | Auto | 1 | 2024-09-29 04h01:16 +00h 01m 21s [ 401 tests] | 0 | 0 | |
m1 | pyopencl | 3 | 3-550 (N,N,N) | 2,3,5,7,11,13 | float32 | inplace | Auto | 1 | 2024-09-29 04h32:33 +00h 02m 56s [ 132 tests] | 0 | 0 | |
m1 | pyopencl | 1 | 2-100000 | 2,3,5,7,11,13 | float32 | out-of-place | True | 1 | 2024-09-29 05h35:19 +00h 02m 03s [ 1847 tests] | 0 | 0 | |
m1 | pyopencl | 2 | 2-4500 (N,N) | 2,3,5,7,11,13 | float32 | out-of-place | True | 1 | 2024-09-29 06h07:18 +00h 03m 03s [ 512 tests] | 0 | 0 | |
m1 | pyopencl | 3 | 2-499 (N,N,N) | 2,3,5,7,11,13 | float32 | out-of-place | True | 1 | 2024-09-29 06h55:13 +00h 06m 22s [ 164 tests] | 0 | 0 | |
m1 | pyopencl | 1 | 2-100000 | 2,3,5,7,11,13 | float32 | out-of-place | True | 1 | 2024-09-29 08h46:20 +00h 02m 09s [ 1847 tests] | 0 | 0 | |
m1 | pyopencl | 2 | 2-4500 (N,N) | 2,3,5,7,11,13 | float32 | out-of-place | True | 1 | 2024-09-29 09h31:23 +00h 01m 22s [ 512 tests] | 0 | 0 | |
m1 | pyopencl | 3 | 2-550 (N,N,N) | 2,3,5,7,11,13 | float32 | out-of-place | True | 1 | 2024-09-29 10h02:41 +00h 04m 40s [ 175 tests] | 0 | 0 | |
m1 | pyopencl | 1 | 2-100000 | 2,3,5,7,11,13 | float32 | out-of-place | True | 1 | 2024-09-29 10h52:14 +00h 02m 21s [ 1846 tests] | 0 | 0 | |
m1 | pyopencl | 2 | 2-4500 (N,N) | 2,3,5,7,11,13 | float32 | out-of-place | True | 1 | 2024-09-29 11h24:31 +00h 04m 17s [ 511 tests] | 0 | 0 | |
m1 | pyopencl | 3 | 2-401 (N,N,N) | 2,3,5,7,11,13 | float32 | out-of-place | True | 1 | 2024-09-29 12h58:34 +00h 02m 26s [ 147 tests] | 0 | 0 | |
m1 | pyopencl | 1 | 2-100000 | 2,3,5,7,11,13 | float32 | out-of-place | True | 1 | 2024-09-29 13h45:54 +00h 02m 47s [ 1847 tests] | 0 | 0 | |
m1 | pyopencl | 2 | 2-4500 (N,N) | 2,3,5,7,11,13 | float32 | out-of-place | True | 1 | 2024-09-29 14h33:34 +00h 02m 35s [ 512 tests] | 0 | 0 | |
m1 | pyopencl | 3 | 2-499 (N,N,N) | 2,3,5,7,11,13 | float32 | out-of-place | True | 1 | 2024-09-29 15h21:03 +00h 03m 47s [ 164 tests] | 0 | 0 | |
m1 | pyopencl | 1 | 2-100000 | 2,3,5,7,11,13 | float32 | out-of-place | True | 1 | 2024-09-29 16h39:39 +00h 02m 44s [ 1847 tests] | 0 | 0 | |
m1 | pyopencl | 2 | 2-4500 (N,N) | 2,3,5,7,11,13 | float32 | out-of-place | True | 1 | 2024-09-29 17h42:15 +00h 02m 35s [ 512 tests] | 0 | 0 | |
m1 | pyopencl | 3 | 2-499 (N,N,N) | 2,3,5,7,11,13 | float32 | out-of-place | True | 1 | 2024-09-29 18h01:01 +00h 03m 45s [ 164 tests] | 0 | 0 | |
m1 | pyopencl | 1 | 3-100000 | 2,3,5,7,11,13 | float32 | out-of-place | True | 1 | 2024-09-29 18h49:40 +00h 01m 57s [ 1504 tests] | 0 | 0 | |
m1 | pyopencl | 2 | 3-4500 (N,N) | 2,3,5,7,11,13 | float32 | out-of-place | True | 1 | 2024-09-29 19h21:33 +00h 02m 27s [ 401 tests] | 0 | 0 | |
m1 | pyopencl | 3 | 3-499 (N,N,N) | 2,3,5,7,11,13 | float32 | out-of-place | True | 1 | 2024-09-29 19h53:56 +00h 02m 18s [ 123 tests] | 0 | 0 | |
m1 | pyopencl | 1 | 2-100000 | 2,3,5,7,11,13 | float32 | out-of-place | True | 1 | 2024-09-29 20h41:08 +00h 05m 20s [ 1846 tests] | 0 | 0 | |
m1 | pyopencl | 2 | 2-4500 (N,N) | 2,3,5,7,11,13 | float32 | out-of-place | True | 1 | 2024-09-29 22h16:15 +00h 06m 33s [ 511 tests] | 0 | 0 | |
m1 | pyopencl | 3 | 2-401 (N,N,N) | 2,3,5,7,11,13 | float32 | out-of-place | True | 1 | 2024-09-30 00h07:32 +00h 03m 13s [ 147 tests] | 0 | 0 | |
m1 | pyopencl | 1 | 2-100000 | 2,3,5,7,11,13 | float32 | out-of-place | True | 1 | 2024-09-30 00h55:40 +00h 02m 51s [ 1847 tests] | 0 | 0 | |
m1 | pyopencl | 2 | 2-4500 (N,N) | 2,3,5,7,11,13 | float32 | out-of-place | True | 1 | 2024-09-30 01h13:29 +00h 02m 42s [ 512 tests] | 0 | 0 | |
m1 | pyopencl | 3 | 2-499 (N,N,N) | 2,3,5,7,11,13 | float32 | out-of-place | True | 1 | 2024-09-30 01h31:10 +00h 03m 59s [ 164 tests] | 0 | 0 | |
m1 | pyopencl | 1 | 2-100000 | 2,3,5,7,11,13 | float32 | out-of-place | True | 1 | 2024-09-30 02h44:59 +00h 02m 46s [ 1847 tests] | 0 | 0 | |
m1 | pyopencl | 2 | 2-4500 (N,N) | 2,3,5,7,11,13 | float32 | out-of-place | True | 1 | 2024-09-30 03h17:41 +00h 02m 42s [ 512 tests] | 0 | 0 | |
m1 | pyopencl | 3 | 2-499 (N,N,N) | 2,3,5,7,11,13 | float32 | out-of-place | True | 1 | 2024-09-30 04h05:17 +00h 04m 00s [ 164 tests] | 0 | 0 | |
m1 | pyopencl | 1 | 3-100000 | 2,3,5,7,11,13 | float32 | out-of-place | True | 1 | 2024-09-30 05h24:06 +00h 02m 00s [ 1504 tests] | 0 | 0 | |
m1 | pyopencl | 2 | 3-4500 (N,N) | 2,3,5,7,11,13 | float32 | out-of-place | True | 1 | 2024-09-30 05h56:02 +00h 02m 35s [ 401 tests] | 0 | 0 | |
m1 | pyopencl | 3 | 3-499 (N,N,N) | 2,3,5,7,11,13 | float32 | out-of-place | True | 1 | 2024-09-30 06h43:30 +00h 02m 29s [ 123 tests] | 0 | 0 | |
m1 | pyopencl | 1 | 2-100000 | 2,3,5,7,11,13 | float32 | inplace | True | 1 | 2024-09-30 07h30:54 +00h 01m 58s [ 1847 tests] | 0 | 0 | |
m1 | pyopencl | 2 | 2-4500 (N,N) | 2,3,5,7,11,13 | float32 | inplace | True | 1 | 2024-09-30 08h17:45 +00h 01m 48s [ 512 tests] | 0 | 0 | |
m1 | pyopencl | 3 | 2-550 (N,N,N) | 2,3,5,7,11,13 | float32 | inplace | True | 1 | 2024-09-30 08h35:15 +00h 09m 39s [ 175 tests] | 0 | 0 | |
m1 | pyopencl | 1 | 2-100000 | 2,3,5,7,11,13 | float32 | inplace | True | 1 | 2024-09-30 10h51:15 +00h 02m 09s [ 1847 tests] | 0 | 0 | |
m1 | pyopencl | 2 | 2-4500 (N,N) | 2,3,5,7,11,13 | float32 | inplace | True | 1 | 2024-09-30 11h10:57 +00h 01m 25s [ 512 tests] | 0 | 0 |