О2.СоздатьНастройкиРешателя
Формирует структуру настроек решателя: лимит времени, количество потоков и тип используемого решателя. Структура включается в параметры поиска как значение поля НастройкиРешателя.
Синтаксис
О2.СоздатьНастройкиРешателя(ЛимитВремени, КоличествоПотоков, ТипРешателя)
Параметры
- ЛимитВремени — Число, Неопределено —
Допустимое число секунд на поиск решения. Значение
0илиНеопределеноозначает отсутствие лимита. Значение по умолчанию —0. Может ограничиваться типом используемой лицензии. - КоличествоПотоков — Число, Неопределено —
Максимальное количество потоков, используемых для поиска решения. Значение
0илиНеопределеноозначает использование всех доступных ядер процессора. Значение по умолчанию —0. Может ограничиваться типом используемой лицензии. - ТипРешателя — ПеречислениеСсылка.О2_ТипыРешателей, Неопределено — Конкретный решатель, который должен быть использован. Если не указан, выбор решателя выполняется автоматически по типу модели. Допустимые значения см. в разделе Типы решателей.
Возвращаемое значение
- Структура — структура настроек решателя с полями:
- ТипРешателя — ПеречислениеСсылка.О2_ТипыРешателей, Неопределено — переданный параметр;
- ЛимитВремени — Число, Неопределено — переданный параметр;
- КоличествоПотоков — Число, Неопределено — переданный параметр;
- ДополнительныеНастройки — Соответствие — пустое соответствие для добавления специфичных настроек выбранного решателя:
- Ключ — Строка — имя настройки;
- Значение — Строка — значение настройки.
Описание
Метод возвращает структуру с инициализированным пустым соответствием ДополнительныеНастройки, в которое при необходимости можно добавить специфичные для выбранного решателя параметры. Перечень поддерживаемых ключей зависит от значения ТипРешателя.
При одновременной работе нескольких ресурсоёмких операций на сервере целесообразно ограничивать КоличествоПотоков, чтобы сохранить часть ядер для других задач. На выделенном сервере решателя параметр обычно не задают — используются все доступные ядра.
Для большинства задач явная настройка ТипРешателя не требуется — автоматический выбор соответствует типу модели и обеспечивает разумное соотношение скорости и качества решения. Указывайте тип решателя только при необходимости воспроизвести конкретное поведение.
Пример
Только лимит времени:
Настройки = О2.СоздатьНастройкиРешателя(120); // <-- 2 минуты
Лимит времени и количество потоков:
Настройки = О2.СоздатьНастройкиРешателя(60, 4);
Полный набор параметров с дополнительной настройкой:
Настройки = О2.СоздатьНастройкиРешателя(
60,
8,
О2.ТипыРешателей().CLP()
);
Настройки.ДополнительныеНастройки.Вставить("log_search_progress", "true");
См. также
- СоздатьПараметрыПоиска — включение настроек в параметры поиска;
- Типы решателей — допустимые значения поля
ТипРешателя; - РешитьМодель — применение параметров при решении.