私の 32 ビット Windows Vista マシンでは、かなり大きなnumpy.complex64
配列の絶対値を取得すると、配列と比較して大幅に (5 倍) 速度が低下することに気付きましたnumpy.complex128
。
>>> import numpy
>>> a = numpy.random.randn(256,2048) + 1j*numpy.random.randn(256,2048)
>>> b = numpy.complex64(a)
>>> timeit c = numpy.float32(numpy.abs(a))
10 loops, best of 3: 27.5 ms per loop
>>> timeit c = numpy.abs(b)
1 loops, best of 3: 143 ms per loop
明らかに、両方の場合の出力は同じです (動作精度に対して)。
私の Ubuntu 64 ビット マシンでは同じ影響は見られません。
これについて合理的な説明はありますか?
これはすべてのウィンドウに共通するものですか?