Компьютерное моделирование:Насколько ресурсоемкий?

StackOverflow https://stackoverflow.com/questions/652862

  •  19-08-2019
  •  | 
  •  

Вопрос

Вопрос:

  • Насколько компьютерное моделирование, как правило, ресурсоемко?

Например, Симуля8:пакет моделирования дискретных событий - почему это требует больших вычислительных затрат, какие факторы (вычисления) способствуют этому?

Это было полезно?

Решение

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

Я приведу пример из моей области (компьютерная архитектура), но способы, с помощью которых это требует больших вычислительных затрат, должны быть достаточно хорошо обобщены.Много раз вы пытаетесь смоделировать распределенную систему, в которой множество в некоторой степени независимых агентов со своей собственной более простой логикой управления, которые вместе реализуют очень сложную динамику.В случае вычислительных систем объединенный рабочий набор симулятора по меньшей мере такой же большой, как архитектурное, микроархитектурное состояние и состояние памяти всех составляющих компонентов вместе взятых.Если каждый компонент хотя бы немного сложен, это означает, что ваша временная и пространственная локализация по мере выполнения каждого временного шага моделирования резко уменьшается.Плохое использование кэша, подразумеваемое необходимостью проходить через весь рабочий набор при каждом временном шаге, может повлиять на производительность на один-два порядка величины.Этот шаблон неизбежен, поскольку запускать каждый компонент независимо в течение нескольких временных интервалов и только периодически объединять результаты проблематично, и это тем более проблематично, чем сложнее и взаимосвязаннее ваша система.

Кроме того, часто требуется вести все виды статистики, что приводит к значительным дополнительным затратам пространства и времени на моделирование компонентов.

Короче говоря, ваша нижняя граница - это сумма сложности всех компонентов вашего моделирования.На практике возникает много неэффективности, если у вас много компонентов, если ваши компоненты более сложны или даже существенно другой чем хост-машина, на которой выполняется моделирование, и если у вас есть какой-либо значительный объем инструментария.

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

Другие советы

Компьютерное моделирование обычно быстро запускает несколько сценариев и сравнивает их.

Например, финансовое моделирование обычно выполняется с моделирование методом Монте-Карло со многими тысячами прогонов.

Моделирование обычно может включать более 10 000 оценок модели, задача, которая в прошлом была только практическим использованием суперкомпьютеров.-http://www.vertex42.com/ExcelArticles/mc/MonteCarloSimulation.html

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top