Android Ne10臂库最大长度fft的限制
我正在使用Ne10 ARM库中包含的FFT计算2^18个样本向量的傅里叶变换,但它似乎不起作用。它在Android Studio上生成Sigsev错误。有趣的是512采样FFT工作得很好。我的问题是:Android Ne10臂库最大长度fft的限制,android,c,android-ndk,arm,fft,Android,C,Android Ndk,Arm,Fft,我正在使用Ne10 ARM库中包含的FFT计算2^18个样本向量的傅里叶变换,但它似乎不起作用。它在Android Studio上生成Sigsev错误。有趣的是512采样FFT工作得很好。我的问题是: 使用此库计算fft的最大样本量是否有限制 我正在使用: fftPlan = ne10_fft_alloc_c2c_float32_neon(fftSize); fftIn = (ne10_fft_cpx_float32_t*)NE10_MALLOC (fftSize * sizeof (ne10_
fftPlan = ne10_fft_alloc_c2c_float32_neon(fftSize);
fftIn = (ne10_fft_cpx_float32_t*)NE10_MALLOC (fftSize * sizeof (ne10_fft_cpx_float32_t));
fftOut = (ne10_fft_cpx_float32_t*)NE10_MALLOC (fftSize * sizeof (ne10_fft_cpx_float32_t));
当样本量大于512时会发生什么情况?你从来没有真正说明过这个问题。
errno
返回什么?您是否遇到了一个ENOMEM
?许多安卓手机和其他小工具几乎没有内存。我不会对设备只有512MB感到惊讶。NE10\u MALLOC()
和NE10\u fft\u alloc\u c2c\u float32\u neon()
如果没有足够的可用内存,可能会失败。在这些情况下,这些函数返回NULL
。可以通过添加if(fftPlan==NULL | | | fftIn==NULL | | fftOut==NULL){fprintf(stderr,“malloc failed\n”);exit(1);}
来测试它吗?当样本大小大于512时会发生什么?你从来没有真正说明过这个问题。errno
返回什么?您是否遇到了一个ENOMEM
?许多安卓手机和其他小工具几乎没有内存。我不会对设备只有512MB感到惊讶。NE10\u MALLOC()
和NE10\u fft\u alloc\u c2c\u float32\u neon()
如果没有足够的可用内存,可能会失败。在这些情况下,这些函数返回NULL
。如果(fftPlan==NULL | | | fftIn==NULL | | fftOut==NULL){fprintf(stderr,“malloc failed\n”);exit(1);},可以通过添加来测试它吗?