相关疑难解决方法(0)

有没有办法减少scipy/numpy精度,以减少内存消耗?

在我的64位Debian/Lenny系统(4GByte RAM + 4GByte交换分区)上,我可以成功地做到:

v=array(10000*random([512,512,512]),dtype=np.int16)
f=fftn(v)
Run Code Online (Sandbox Code Playgroud)

但是f是一个np.complex128内存消耗是令人震惊的,我不能做更多的结果(例如调制系数然后f=ifftn(f))没有MemoryError回溯.

而不是安装更多的RAM和/或扩展我的交换分区,有没有办法控制scipy/numpy"默认精度"并让它计算一个complex64数组呢?

我知道我可以随后减少它f=array(f,dtype=np.complex64); 我希望它实际上以32位精度和一半内存进行FFT工作.

numerical numpy fft matplotlib scipy

7
推荐指数
2
解决办法
3594
查看次数

标签 统计

fft ×1

matplotlib ×1

numerical ×1

numpy ×1

scipy ×1