Я всегда слышал, что простое распараллеливание было одним из преимуществ методов DG, но я не понимаю, почему ни одна из этих причин не относится к непрерывному Галеркину.
finite-element
parallel-computing
discontinuous-galerkin
Трумэн Эллис
источник
источник
Ответы:
Одна из причин, по которой методам DG может уделяться больше внимания в качестве параллельного метода, состоит в том, что легко увидеть, что метод по своей природе является локальным для элемента. Связь в методах DG слабая, так как она происходит только через смежные ребра (или грани в 3d). Таким образом, для треугольников или четырехугольников DG будет взаимодействовать максимум с тремя или четырьмя процессорами соответственно. Принимая во внимание, что методы CG будут включать углы элемента, таким образом, валентность угла элемента становится важной. В зависимости от используемого генератора сетки, эта валентность может составлять восемь процессоров (возможно, выше). Таким образом, стоимость сборки производной по времени можно считать «более высокой» для методов компьютерной графики. Это особенно актуально для спектральных методов, где объем передаваемой информации может быть довольно большим (и сокрытие задержки может стать более трудным по мере уменьшения размера каждого раздела).
Но эти дополнительные затраты для CG на сборку производной по времени могут быть компенсированы другой стратегией балансировки нагрузки. Различные стратегии разбиения сетки (я больше всего знаком с METIS) позволяют пользователю балансировать нагрузку с помощью различных метрик, например, гарантируя, что каждая часть имеет приблизительно одинаковое количество элементов, или ограничивая объем связи между разделами. Я чувствую причину, по которой коллоквиум DG легко распараллеливается, состоит в том, что наивное разбиение задачи на равные части может дать очень эффективную параллельную реализацию, даже демонстрируя суперлинейное ускорение в некоторых случаях из-за эффектов кэширования (см., Например, Baggag et al. . или Altmann и др. др.). Принимая во внимание, что CG может потребоваться более умный метод разделения. Таким образом, может случиться так, что изменение пространственной дискретизации с DG на CG, скажем, потребует пересмотра того, как разделить сетку на подзадачи.
источник
После многих лет написания программного обеспечения FEM я считаю, что утверждение о том, что схемы DG лучше подходят для распараллеливания, чем схемы CG, является апокрифическим. Он часто используется при представлении статей ГД в качестве обоснования методов ГД, но я никогда не видел его обоснованным с помощью ссылки, которая фактически исследовала этот вопрос. Это похоже на каждое предложение NSF по проекту теории чисел, в котором «криптография» упоминается как область более широкого воздействия, утверждение, которое в этой общности также никогда не подтверждается.
На самом деле, я считаю, что за одним исключением явных схем временного перехода и, возможно, проблем, при которых необходимо инвертировать массовую матрицу, схемы DG не лучше и не хуже схем CG, если исследовать стоимость связи, участвующую в обеих. Я имею в виду, что это в практическом смысле: конечно, возможно, придется передавать меньше данных, но я бы предположил, что разница во времени настенного часового режима незначительна для всех других программ операций с этими данными.
Конечно, я был бы рад, если бы кто-то принял вызов, чтобы доказать, что я не прав!
источник
Как и в случае с большинством общих утверждений о числовых схемах, ответ зависит от конкретных обстоятельств, на которые вы смотрите. Прежде всего, преимущества ГД в отношении распараллеливания в основном окупаются в случае явных схем интеграции времени из-за
В то время как эти утверждения относятся к общей дискретизации DG, реальные приложения HPC (скажем, использующие несколько тысяч процессоров) требуют дополнительных усилий в отношении стратегии распараллеливания, чтобы поддерживать хорошее масштабирование. Эта статья показывает, например, как можно достичь почти идеального масштабирования до одной ячейки на процессор . Это, конечно, то, чего вы не можете ожидать от непрерывного FEM, но, как упоминалось ранее, неявные схемы - это совсем другое.
источник
При сборке матрицы жесткости данные, хранящиеся в элементе в непрерывном (узловом) FEM, должны передаваться всем его узловым соседям. Напротив, DGFEM требует, чтобы данные элемента передавались всем соседям по его лицу. В 1D узловые и граничные соседи идентичны, но в 3D разница может быть довольно большой: для правильной шестигранной сетки существует 26 узловых соседей, но только 6 граничных соседей. Для нерегулярных сеток со многими высоковалентными вершинами ситуация ухудшается для CG, но остается неизменной для DG.
источник
DG для гиперболического PDE может использоваться в качестве замены для схем конечного объема. В конечном объеме, как и в конечной разнице, когда вы увеличиваете порядок схемы, ваш трафарет увеличивается. Это усложняет распараллеливание, поскольку для каждого порядка схемы у вас разные трафареты. На границах раздела вы должны убедиться, что доступны все необходимые ячейки соседнего раздела для определенного порядка схемы. Но с DG, независимо от того, в каком порядке находится схема, каждая ячейка общается только со своими соседями по лицу. По сравнению с конечным объемом / разницей и DG можно сказать, что DG легче распараллелить.
источник