12 января 2018
Использование кэша в pSeven
На этапе проектирования инженер вместо еще не существующего объекта работает с некоторой расчетной моделью. Поскольку сложность технических объектов постоянно растет, то возрастает и сложность соответствующих расчётных моделей, что в свою очередь, приводит к увеличению вычислительных затрат и других ресурсов, необходимых для однократного запуска модели, не говоря уже о всестороннем ее анализе и оптимизации.
Таким образом, возникает необходимость сохранять все обработанные данные с возможностью их повторного использования в последующих экспериментах. Иначе говоря, не запускать расчетную модель с такими входными параметрами, для которых модель уже была рассчитана.
pSeven предоставляет возможность создавать области кэширования в расчетной схеме c использованием композитных блоков (Composite) для повторного использования рассчитанных данных. Чтобы активировать данную функцию, в композитном блоке необходимо поставить галочку в поле «Enable Cache» и задать имя файлу, в который будут сохраняться все обработанные данные.
Рассмотрим ситуации, в которых использованием кэша является крайне необходимым для экономии вычислительных и прочих ресурсов:
- Процесс оптимизации прерван по каким-либо техническим причинам.
- Отметим, что алгоритмы анализа данных и оптимизации в pSeven могут быть запущены в детерминированном режиме, в этом случае прерванный процесс продолжит работы с последней незаконченной итерации.
- Постановка задачи оптимизации изменилась, но расчетная модель осталась прежней.
В качестве примера приведем одну из недавно успешно решенных задач наших клиентов. Данная задача представляет собой однокритериальную задачу оптимизации с 9-ю варьируемыми параметрами (включая дискретные целочисленные переменные) и 15-ю ограничениями. Один запуск расчетной модели для вычисления целевой функции и ограничений составляет ~12 минут. Перед запуском задачи оптимизации на расчет был активирован кэш, таким образом, в процессе итераций все данные сохранялись в кэш (отдельный файл). Проанализировав полученное оптимальное решение, заказчик изменил постановку задачи. Время, необходимое для решения модифицированной задачи с использованием уже подготовленного кэша, сократилось в 2 раза по сравнению со временем, затраченным для решения первоначальной задачи.
Динара Шварц, Инженер-расчетчик, DATADVANCE