Код: Выделить всё
input_len = 2_000_000
x = torch.rand(input_len)
y = torch.zeros(input_len // 2 + 1, dtype=torch.complex64)
Код: Выделить всё
%%timeit
torch.fft.rfft(x)
# 7.45 ms ± 54.4 μs per loop (mean ± std. dev. of 7 runs, 100 loops each)
Код: Выделить всё
%%timeit
torch.fft.rfft(x, out=y)
# 9.6 ms ± 70.1 μs per loop (mean ± std. dev. of 7 runs, 100 loops each)
Будем очень признательны за любую информацию об этом поведении.
Подробнее здесь: https://stackoverflow.com/questions/793 ... fftx-out-y