Все что нужно знать про RITM

Производительность расчетов в цифровой платформе RITM³

Один из часто задаваемых вопросов о цифровой платформе RITM³ – «какова скорость выполнения расчетов в модуле транспортного планирования и моделирования в сравнении с PTV Visum?». Мы провели соответствующие тесты и делимся результатами.
Сравнение скорости расчетов RITM³ и PTV Visum

Что сравнивали? Скорость расчета процедуры загрузки сети для индивидуального транспорта (ИТ), которая принимает на вход одну или несколько (для каждого сегмента спроса) матриц корреспонденций и равновесно распределяет корреспонденции по путям с выводом результирующей нагрузки на элементах улично-дорожной сети.

Что делали? Провели расчеты с одним сегментом спроса и с фиксированным количеством итераций (100) в быстром варианте без сохранения путей для четырех моделей разного масштаба.
Какие модели использовались для расчета? Параметры транспортных моделей приведены в таблице 1.
Таблица 1. Параметры транспортных моделей
Какую технику использовали? Intel® Core™ i9-7920X с 12 физическими и 24 логическими ядрами с базовой частотой 2.90 GHz под управлением OS Windows 10.

Какие результаты? В таблице 2 приведено сравнение времен описанного выше расчета в RITM³ и двух версиях PTV Visum (18 и 2022):
Таблица 2. Время расчета (сек.)
Очень большая разница во времени расчета в PTV Visum версий 18 и 2022 обусловлена изменениями в алгоритмах поиска кратчайших путей. В версии PTV Visum 2022 реализован подход, известный как Customizable Contraction Hierarchies, позволяющий получить существенное ускорение расчета. Аналогичные подходы в RITM³ на текущий момент не используются (однако планируются к реализации в ближайшее время, см. ниже), поэтому более объективным и показательным будет сопоставление с PTV Visum 18, в сравнении с которым RITM³ аналогичный расчет выполняет за сопоставимое время, причем для 3 из 4 тестовых моделей оказывается даже быстрее.

Эффективность параллельной реализации

Во всех ресурсоемких расчетных процедурах RITM³ мы используем параллельные вычисления, что позволяет задействовать все доступные ядра центрального процессора даже при выполнении одного расчета и получать результат в минимальные сроки. Без этого каждый отдельный расчет выполнялся бы на порядок дольше.

Теоретически это можно компенсировать запуском нескольких расчетов разных сценариев одновременно (в соответствии с числом логических ядер процессора), не ускоряя каждый отдельный расчет, но получая результаты всех расчетов за схожее время.

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

Для анализа эффективности параллельных вычислений мы провели серию расчетов с ограничениями на количество вычислительных потоков и определили коэффициенты ускорения – отношение времен расчета в однопоточном и многопоточном сценарии – в зависимости от числа потоков. Из графика видно, что процедура расчета загрузки сети ИТ в RITM³ более эффективно использует многоядерную архитектуру процессора, чем аналогичная процедура в PTV Visum.
Для пользователей это означает эффективность инвестиций в вычислительную инфраструктуру: приобретая процессоры с большим числом ядер вы получаете более высокий прирост производительности.

Например, увеличение количества логических ядер процессора в 2 раза с 12 до 24 приводит к ускорению расчета в RITM³ на 39%, в то время как в PTV Visum прирост производительности будет значительно ниже – 15% и 12% для версий 18 и 2022 соответственно.

Какие перспективы?

Текущий уровень производительности RITM³ – это далеко не предел, и в следующих версиях скорость расчетов будет увеличена за счет как оптимизации программной реализации, так и внедрения новых алгоритмов расчета, в первую очередь уже упомянутого выше подхода Contraction Hierarchies.

Выводы

  1. RITM³ уже сейчас демонстрирует сопоставимую с PTV Visum производительность расчетов в ключевых ресурсоемких расчетных процедурах
  2. RITM³ более эффективно использует многоядерную архитектуру современных процессоров, обеспечивая больший прирост в производительности расчетов при увеличении числа ядер
  3. RITM³ имеет потенциал дальнейшего повышения производительности расчетов в следующих версиях, который будет обязательно реализован