В крупномасштабном моделировании, которое включает одновременные вычислительные задачи на распределенных компьютерах, общая скорость моделирования ограничивается самым медленным каналом. Путем адаптивного перераспределения вычислительных ресурсов в реальном времени в соответствии с рабочей нагрузкой исследовательская группа из Сингапура показала, как преодолеть это ограничение «самого медленного соединения».Такой подход может значительно повысить скорость и эффективность моделирования, проводимого на многих компьютерах — также называемого «облачным» моделированием.
«Проблема дисбаланса рабочей нагрузки очень распространена в крупномасштабных симуляциях, которые включают группу параллельно распределенных компьютеров или« компонентов », которые должны синхронизироваться друг с другом, чтобы гарантировать, что все события симуляции выполняются в порядке отметок времени», — поясняет исследование. руководитель Цзэнсян Ли из Института высокопроизводительных вычислений A * STAR.Моделирование параллельных вычислений включает в себя большое количество событий, которые должны происходить по порядку.
Эти события назначаются нескольким параллельным вычислительным «узлам» для одновременных вычислений. Когда событие обрабатывается, новые события могут быть сгенерированы и вставлены в очередь обработки событий.
Бесполезно позволять дорогим вычислительным ресурсам бездействовать в ожидании работы, поэтому схемы параллельной обработки часто позволяют каждому узлу обрабатывать события последовательно, не дожидаясь событий от других узлов.Проблема в том, что если события от одного узла опаздывают, другим узлам, продолжающим «оптимистичное» выполнение следующего события, потребуется отказаться от своей дополнительной работы и вернуться к тому месту, где остановился поздний узел. «Выполнение всего моделирования сдерживается самыми медленными компонентами, — говорит Ли, — в то время как более быстрые компоненты рискуют тратить время и ресурсы на чрезмерно оптимистичное выполнение и откаты выполнения».
Чтобы повысить эффективность такого моделирования, Ли и его коллеги разработали схему распределения ресурсов под названием Adaptive Resource Provisioning Mechanism в виртуальных средах выполнения, или ArmVee. Эта схема прозрачно используется в качестве промежуточного программного обеспечения в среде моделирования для мониторинга рабочих нагрузок и скорости выполнения задач на каждом узле в режиме реального времени.
Затем ArmVee динамически перераспределяет ресурсы, такие как память и циклы обработки, чтобы ускорить самые медленные ссылки.«Мы используем самоадаптирующуюся модель авторегрессивного скользящего среднего — обычно используемую в теории управления — для определения взаимосвязи между производительностью моделирования и ресурсами», — говорит Ли. «Это позволяет ArmVee прогнозировать динамически изменяющуюся рабочую нагрузку моделирования и упреждающе согласовывать скорости выполнения компонентов моделирования, чтобы каждый из них продвигался во времени моделирования с сопоставимой скоростью».
Важно отметить, что ArmVee можно прозрачно использовать в стандартных архитектурах моделирования без какого-либо перекодирования или прерывания моделирования. Это делает его готовым к реализации в стандартном параллельном и распределенном моделировании.
