Прежде всего, я должен указать на такой параметр как $HistoryLength
.Установка его в ноль часто позволяет значительно снизить требования к памяти:
$HistoryLength = 0
В то же время известна проблема с процессом MathKernel, которая накапливает системную память при длительных вычислениях и не освобождает ее.
Единственный способ окончательно решить проблему - перезапустить ядро, когда оно занимает слишком много памяти или когда объем доступной свободной физической памяти становится слишком маленьким.Эта задача может быть автоматизирована.
Если вы еще не пробовали Mathematica 8, возможно, стоит попробовать, так как, согласно Оливеру Рубенкенигу :
Для версии 8 распределитель памяти был переписан и улучшен.
(Какая маленькая фраза для такого огромного усилия и такого прекрасного исполнения)
Но я еще не пробовал версию 8 и ничего не могу сказать о ней.