Я использую JS-реализацию Radix-4 FFT (это: https://www.npmjs.com/package/fft.js). Я анализирую последовательности 2 ^ 25 операций с плавающей запятой. Пакет отлично работает на стороне браузера с этим сигналом размера, но наВ файле node.js происходит сбой:
ФАТАЛЬНАЯ ОШИБКА: недопустимая длина массива Не удалось выделить - кучи JavaScript не хватает памяти
[19262: 0x559417f70870] 20352 мс: Очистить 634,2 (656,1) ->633,5 (671,6) МБ, ошибка выделения 65,3 / 0,0 мс
Процесс до сбоя достигает только около 500-600 МБ, и изменение max-old-space-size не имеет значения. Это возможночто эта реализация fft не очень хороша с точки зрения управления памятью, я просто хотел попытаться использовать ее, прежде чем вернуться к использованию какого-либо внешнего скрипта (например, scipy) для выполнения FFT. В любом случае я хотел бы знать, какую стену я 'м. Это здесь, вероятно, очень простая вещь, о которой я не знаю ..
Спасибо
РАЗРЕШЕНО путем перехода от простых к типизированным массивам в реализации fft - узел prЗатем ocess использует больше памяти, но отдельные объекты меньше