Ограничение размера памяти NetLogo BehaviorSpace

#netlogo #behaviorspace

#netlogo #пространство поведения

Вопрос:

В моей модели я использую пространство поведения для выполнения нескольких запусков, при этом переменные меняются для каждого запуска, а выходные данные сохраняются в формате * .csv для последующего анализа. Модель работает нормально в течение первых нескольких итераций, но быстро замедляется по мере увеличения объема данных. Мои вопросы: поможет ли file-flush при использовании в пространстве поведения? Или есть способ обойти это?

Приветствия

Саймон

Ответ №1:

Убедитесь, что вы используете формат вывода таблицы, а формат электронной таблицы отключен. В http://ccl.northwestern.edu/netlogo/docs/behaviorspace.html мы читаем:

Однако обратите внимание, что данные электронной таблицы не записываются в файл результатов до завершения эксперимента. Поскольку данные электронной таблицы хранятся в памяти до завершения эксперимента, для очень больших экспериментов может не хватить памяти. Поэтому вам следует отключить вывод электронных таблиц, если вы действительно этого не хотите.

Также обратите внимание:

параллельное выполнение соответственно увеличит требования к памяти для эксперимента. Возможно, вам потребуется увеличить лимит памяти NetLogo (см. Эту запись часто задаваемых вопросов).

где находится связанная запись часто задаваемых вопросов http://ccl.northwestern.edu/netlogo/docs/faq.html#howbig

Использование file-flush не поможет. Он сбрасывает любые буферизованные данные на диск, но только для файла, который вы открыли самостоятельно file-open , и в любом случае буфер, связанный с файлом, имеет фиксированный размер, а не то, что увеличивается со временем. file-flush действительно полезно, только если вы читаете из того же файла из другого процесса во время выполнения.

Комментарии:

1. @ seth — я нашел эту ссылку, в которой обсуждается расширение NW. github.com/NetLogo/NW-Extension/issues/102 . Похоже, это может быть проблемой. Я буду ждать обновления и до тех пор разбивать свои прогоны на более мелкие партии.