Esistono due modi diversi per utilizzare diversi core:
Innere Parallelisierung
Die Teile eines Programmprozesses werden gleichzeitig in mehreren Threads ausgeführt. Es wird empfohlen, nur physische Kerne zu verwenden, keine logischen (virtuellen). Die Erfahrungen mit wissenschaftlichen und technischen Berechnungen haben gezeigt, dass die Parallelisierung einen Vorteil von maximal einer etwa dreieinhalbfachen Beschleunigung hat – unabhängig von der Anzahl der Kerne. Einige Prozesse wie zum Beispiel der iterative Gleichungslöser sind für eine solche Parallelisierung nicht geeignet.
Äußere Parallelisierung
Einzelne Berechnungen werden in einzelnen Threads ausgeführt. Es können beispielsweise vier Solver in vier Threads ausgeführt werden, um vier verschiedene Lastkombinationen zu berechnen.
- RSTAB 9 Es wird die äußere Parallelisierung verwendet.
- RFEM 6: Die innere Parallelisierung wird in einigen Teilen des Programms verwendet - lokale Steifigkeitsmatrixmontage, direkter Solver ...
Der Programmteil namens "FemBase" ist massiv parallelisiert: Er berechnet die Ergebniskombinationen und gibt alle Ergebnisse an die Grafiken, Tabellen und jeweiligen Abschnitte zurück. Er kann das Ergebnis von drei Lastfällen in drei Threads lesen und beispielsweise die Ergebniskombination im vierten Thread berechnen.
Die äußere Parallelisierung erfolgt durch den Solver Manager, der speziell für RFEM6 entwickelt wurde.
Die Berechnungen für die Stahlbemessung, Holzbemessung, Aluminiumbemessung und Betonbemessung sollten ebenfalls parallel erfolgen.
Alle Lastfälle, die linear berechnet werden (physikalische Linearität), haben die gleiche Steifigkeitsmatrix.
Nichtlinear berechnete Lastfälle und Lastkombinationen weisen in der Regel unterschiedliche Steifigkeitsmatrizen auf, die separat zusammengestellt werden. (Aber auch in diesen Fällen versuchen wir, die Fälle mit der gleichen Steifigkeitsmatrix zu gruppieren, die nur einmal für eine bestimmte Gruppe zusammengesetzt wird.)