¿Cuál es la ventaja de los preacondicionadores de descomposición de dominios múltiples sobre rejilla, y viceversa?

Respuestas:

16

Los métodos de descomposición de dominios multinivel y multinivel tienen tanto en común que generalmente cada uno puede escribirse como un caso especial del otro. Los marcos de análisis son algo diferentes, como consecuencia de las diferentes filosofías de cada campo. En términos generales, los métodos multirredes utilizan tasas de engrosamiento moderadas y suavizadores simples, mientras que los métodos de descomposición de dominio utilizan engrosamientos extremadamente rápidos y suavizadores fuertes .

Multigrid (MG)

Multigrid utiliza tasas de engrosamiento moderadas y logra robustez mediante la modificación de interpolación y suavizadores. Para problemas elípticos, los operadores de interpolación deben ser de "baja energía", de modo que conserven el espacio casi nulo del operador (por ejemplo, modos de cuerpo rígido). Un ejemplo de enfoque geométrico para estos interpolantes de baja energía es Wan, Chan, Smith (2000) , en comparación con la construcción algebraica de agregación suavizada Vaněk, Mandel, Brezina (1996) (implementaciones paralelas en ML y PETSc a través de PCGAMG, el reemplazo de Prometheus ) . El libro de Trottenberg, Oosterlee y Schüller es una buena referencia general sobre los métodos Multigrid.

La mayoría de los suavizadores multirredes implican relajación puntiaguda, ya sea de forma aditiva (Jacobi) o multiplicativa (Gauss Seidel). Estos corresponden a pequeños problemas de Dirichlet (nodo único o elemento único). Se puede lograr cierta adaptabilidad espectral, robustez y vectorización utilizando los suavizadores Chebyshev, ver Adams, Brezina, Hu, Tuminaro (2003) . Para problemas no simétricos (p. Ej., De transporte), generalmente se necesitan suavizadores multiplicativos como Gauss-Seidel, y se pueden usar interpoladores enrollados. Alternativamente, los suavizadores para problemas de punto de silla de montar y olas rígidas pueden construirse mediante la transformación a través de "preacondicionadores de bloque" inspirados en el complemento de Schur o mediante la "relajación distribuida" relacionada, en sistemas en los que los suavizadores simples son efectivos.

La eficiencia de múltiples cuadrículas de los libros de texto se refiere a la resolución de errores de discretización en un pequeño múltiplo del costo de algunas evaluaciones residuales, tan pocas como cuatro, en la cuadrícula fina. Esto implica que el número de iteraciones a una tolerancia algebraica fija disminuye a medida que aumenta el número de niveles. Paralelamente, la estimación del tiempo implica un término logarítmico que surge debido a la sincronización implícita en la jerarquía de múltiples cuadrículas.

Descomposición de dominio (DD)

Los primeros métodos de descomposición de dominio tenían solo un nivel. Sin nivel grueso, el número de condición del operador preacondicionado no puede ser menor que dondeLes el diámetro del dominio yHes el tamaño nominal del subdominio. En la práctica, los números de condición para DD de un nivel caen entre este límite yO(L2O(L2H2)LHdondehes el tamaño del elemento. Tenga en cuenta que el número de iteraciones que necesita un método de Krylov se escala como la raíz cuadrada del número de condición. Los métodos de Schwarz optimizados(Gander 2006)mejoran las constantes y la dependencia deH/h enrelación con los métodos de Dirichlet y Neumann, pero generalmente no incluyen niveles gruesos y, por lo tanto, se degradan en el caso de muchos subdominios. Consulte los libros deSmith, Bjørstad y Gropp (1996)oToselli y Widlund (2005)para obtener una referencia general a los métodos de descomposición de dominios.O(L2hH)hH/ /h

Para tasas de convergencia óptimas o cuasi óptimas, se necesitan múltiples niveles. La mayoría de los métodos DD se plantean como métodos de dos niveles y algunos son muy difíciles de extender a más niveles. Los métodos DD se pueden clasificar como superpuestos o no superpuestos.

Superposición

Estos métodos de Schwarz usan superposición y generalmente se basan en la resolución de problemas de Dirichlet. La fuerza de los métodos se puede aumentar aumentando la superposición. Esta clase de métodos suele ser robusta, no requiere identificación local de espacio nulo o modificaciones técnicas para problemas con restricciones locales (comunes en ingeniería de mecánica de sólidos), pero implica un trabajo adicional (especialmente en 3D) debido a la superposición. Además, para problemas restringidos como incompresible, la constante de inf-sup de la tira superpuesta generalmente aparece, lo que lleva a tasas de convergencia subóptimas. Dorhmann, Klawonn y Widlund (2008) y Dohrmann y Widlund (2010) desarrollan métodos modernos de superposición que utilizan espacios gruesos similares a los de BDDC / FETI-DP (que se analizan a continuación ) .

Sin superposición

Estos métodos generalmente resuelven problemas de Neumann de algún tipo, lo que significa que, a diferencia de los métodos de Dirichlet, no pueden funcionar con una matriz ensamblada globalmente y, en cambio, requieren matrices sin ensamblar o ensambladas parcialmente. Los métodos de Neumann más populares imponen la continuidad entre subdominios mediante el equilibrio en cada iteración o mediante multiplicadores de Lagrange que impondrán la continuidad solo una vez que se alcance la convergencia. Los primeros métodos de este tipo (Equilibrio Neumann-Neumann y FETI) requieren una caracterización precisa del espacio nulo de cada subdominio, tanto para construir el nivel grueso como para hacer que los problemas del subdominio no sean singulares. Los métodos posteriores (BDDC y FETI-DP) seleccionan las esquinas del subdominio y / o los momentos de borde / cara como grados de libertad de nivel grueso. Ver Klawonn y Rheinbach (2007).para una discusión en profundidad de la selección de espacio grueso para la elasticidad 3D. Mandel, Dohrmann y Tazaur (2005) demostraron que BDDC y FETI-DP tienen los mismos valores propios, excepto los posibles 0 y 1.

Más de dos niveles

La mayoría de los métodos DD solo se presentan como métodos de dos niveles, y algunos seleccionan espacios gruesos que son inconvenientes para usar con más de dos niveles. Desafortunadamente, especialmente en 3D, los problemas de nivel grueso se convierten rápidamente en un cuello de botella, limitando los tamaños de los problemas que se pueden resolver. Además, los números de condición de los operadores preacondicionados, especialmente para los métodos DD basados ​​en problemas de Neumann, tienden a escalar como

κ(PAGDD-1UN)=C(1+losolHh)2(L-1)

LL4 41012

Jed Brown
fuente
9

Esta es una excelente reseña, pero creo que decir que DD y MG (multinivel) tienen mucho en común no es exacto, o al menos no es útil. Los métodos son muy diferentes y no creo que la experiencia en uno sea muy útil en el otro.

Primero, las dos comunidades usan diferentes definiciones de complejidad: DD optimiza el número de condición de los sistemas preacondicionados y MG optimiza la complejidad del trabajo / memoria. Esta es una gran diferencia fundamental: "óptima" tiene un significado totalmente diferente en estos dos contextos. Las cosas no cambian cuando agrega complejidad paralela (aunque obtiene un término de registro agregado en MG). Las dos comunidades casi hablan diferentes idiomas.

En segundo lugar, MG tiene varios niveles incorporados y todos los métodos DD multinivel se han desarrollado con teorías e implementaciones de dos niveles. Esto limita el espacio de los espacios gruesos de la cuadrícula que puede usar en MG; deben ser recursivos. Por ejemplo, no puede implementar FETI en un marco MG. La gente hace algunos métodos DD multinivel como mencionó Jed, pero al menos algunos de los métodos DD populares actuales no parecen ser implementables de forma recursiva.

En tercer lugar, veo los algoritmos mismos, como se practican, como muy diferentes. Hablando cualitativamente, diría que los métodos DD se proyectan en los límites del dominio y resuelven este problema de interfaz. MG trabaja directamente con las ecuaciones nativas. Evitar esta proyección permite aplicar MG a problemas no lineales y asimétricos fácilmente. Aunque la teoría desaparece por problemas no lineales y asimétricos, han funcionado para mucha gente. MG también desacopla explícitamente el problema en dos partes: el espacio grueso de la cuadrícula para escalar y un solucionador iterativo (el más suave) para resolver la física. Esto es fundamental para comprender y trabajar con MG y es una propiedad atractiva para mí.

Aunque, en teoría, los suavizadores y los espacios gruesos de la cuadrícula están estrechamente acoplados, en la práctica a menudo puede intercambiar diferentes suavizadores hacia adentro y hacia afuera como un parámetro de optimización. Como mencionó Jed, los suavizadores de punto o vértice son populares y generalmente más rápidos, pero para problemas desafiantes, los suavizadores más pesados ​​pueden ser útiles. Este gráfico es de mi disertación que muestra el tiempo de resolución en función de la relación de Poisson para Jacobi, el bloque Jacobi y el "aditivo Schwarz" (superpuesto). Es un poco difícil de leer, pero con la mayor relación de Poisson (0.499), la superposición de Schwarz es aproximadamente 2 veces más rápida que (vértice) Jocobi, mientras que es aproximadamente 3 veces más lenta en las relaciones de Poisson peatonales.

Resuelva el tiempo frente a la relación de Poisson para puntos, bloque y suavizadores superpuestos

Adams
fuente
4

Según la respuesta de Jed, MG usa un engrosamiento moderado, mientras que DD usa un engrosamiento rápido. Creo que esto hace la diferencia cuando están paralelos. Habrá múltiples comunicaciones y sincronizaciones para que MG pase por muchos niveles de engrosamiento que son equivalentes a un solo engrosamiento de DD. Otro punto de la respuesta de Jed es que MG usa un suavizador barato y DD usa un suavizador más fuerte. Teniendo en cuenta los dos puntos, se ha informado que MG en niveles gruesos tendrá malas relaciones de comunicación / cálculo. Entonces, de acuerdo con la ley de Amdahl , la aceleración paralela no es buena. Un remedio para esto es la corrección paralela de grillas gruesas, como el preacondicionador BPX. Además, MG puede usar DD tan suave como señaló Adams, y MG también se puede usar dentro de los subdominios de DD. Basado en las consideraciones que Barker ha señalado, creo que usar MG dentro de DD es mejor, lo que explota tanto el paralelismo de DD como la complejidad óptima de MG.

Hui Zhang
fuente
1

Quiero hacer una pequeña adición a la excelente respuesta de Jed, a saber, que las motivaciones detrás de los dos enfoques son (o al menos fueron) diferentes.

La descomposición del dominio está motivada como una técnica para la computación paralela. Especialmente para los métodos de un nivel, DD es muy natural de implementar en una máquina paralela: divide el dominio en partes y entrega cada parte a un procesador diferente. En cierto sentido, la motivación detrás de DD es dividir las operaciones aritméticas entre procesadores.

Existen buenas implementaciones de multirredes paralelas, pero a menudo es menos natural hacerlo en paralelo. En cambio, la motivación detrás de multirredes es hacer menos operaciones aritméticas en primer lugar.

Andrew T. Barker
fuente
2
Este es un buen punto, pero agregaría que DD también fue motivado por el deseo de reutilizar los solucionadores directos existentes (en la mayoría de los casos de ingeniería) a partir de mi experiencia al ver las primeras conversaciones sobre DD. Nunca he implementado un método DD multinivel, pero no me parece más "natural". Paralelizar un producto de matriz de vectores, lo único que no es simples operaciones de vectores que necesita implementar para multirredes, si no es natural, se entiende muy bien.
Adams
1

HhO(1Hh)

hH

Hui Zhang
fuente
2
Para su información, esto probablemente debería ser un comentario sobre la respuesta de Jed en lugar de una respuesta por separado.
Jack Poulson
Sí, lo intenté pero no puedo encontrar una manera de agregar comentarios debajo de la respuesta de Jed.
Hui Zhang
hH
Hh