An Efficient Multicore Linear Solver for Reservoir Simulation Applications
Pourquoi ce travail est dans la base
Une base qui oublie comment elle a trouvé un travail ne peut pas être vérifiée. Voici les voies qui ont admis celui-ci.
Notice bibliographique
Résumé
Abstract We present a suite of algorithms for the iterative solution of linear systems of algebraic equations arising in reservoir simulations. Usually, the solution of linear systems is the most time-consuming part of reservoir simulations, especially for complex physical models. Significant progress in multi-core architectures in the last decade allows now to solve large and complex problems on desktop computers. Moreover, multi-core algorithms can be naturally used as building blocks in hybrid (MPI+SMP) linear solvers. The suite includes the following parallel algorithms: one partitioner, four preconditioners, and several iterative methods. The partitioner smpKWPT implements a multilevel p-way graph partitioning (similar to METIS) for multicore architectures. It generates partitions with quality similar or better than quality of the partitions produced by METIS. Three parallel preconditioners OverlapFILU, RecursiveFILU, and MultiLevelILUC are intended for preconditioning general matrices, and one preconditioner MultiLevelRIC - for SPD matrices. OverlapFILU implements the most efficient Additive Schwarz algorithms. RecursiveFILU is based on non-overlapping domain decomposition paradigm with parallel truncated factorization of the domain matrices and factorization of the interface matrix. MultiLevelILUC and MultiLevelRIC implement a parallel multilevel framework based on 2x2 splitting with a good quality leading diagonal block and a second diagonal block, containing the Schur complement, which is an initial matrix for the next level. These preconditioners are very robust even for extremely ill conditioned matrices. Several iterative methods are available with an option to control the convergence by the true residuals. The parallel algorithms are based on very efficient serial algorithms and a highly optimized multi-thread computational core. The solver’s workflow is optimized for application in multi-step and multi-right-hand-side simulations. The parallel efficiency of the solver is demonstrated on several real field models. The multi-core solver usually provides 1.8-3.0 times speed-up on 4 cores and 2.5-4.0 on 8 cores. The performance of our algorithms is considerably better than the performance of the similar algorithms in Trilinos and PETSc as shown by examples.
Récupéré en direct depuis OpenAlex et désinversé. Les résumés ne sont pas conservés dans cette base de données : les index inversés représentent 8,6 Go des 9,3 Go de texte de la base, et le serveur dispose de 13 Go libres.
Prédiction distillée sur la base complète
Imitation des enseignantsNi prévalence calibrée, ni vérité terrain. Validation humaine à venir. Apprise à partir de 10 348 étiquettes directes de Codex et de 10 348 étiquettes directes de Gemma. Le mode candidate est l'union des têtes enseignantes seuillées; le consensus est leur intersection. Ces sorties portent le statut machine_predicted_unvalidated et ne sont ni des étiquettes humaines ni des étiquettes directes de modèles de pointe.
Scores Codex et Gemma par catégorie
| Catégorie | Codex | Gemma |
|---|---|---|
| Métarecherche | 0,000 | 0,000 |
| Méta-épidémiologie (sens strict) | 0,000 | 0,000 |
| Méta-épidémiologie (sens large) | 0,000 | 0,000 |
| Bibliométrie | 0,000 | 0,000 |
| Études des sciences et des technologies | 0,000 | 0,000 |
| Communication savante | 0,000 | 0,000 |
| Science ouverte | 0,000 | 0,000 |
| Intégrité de la recherche | 0,000 | 0,000 |
| Charge utile insuffisante (le modèle a refusé de juger) | 0,000 | 0,000 |
Scores machine (provisoires)
Les deux têtes enseignantes du modèle étudiant, lues sur ce travail. Un score ordonne la base pour la relecture; il n'affirme jamais une catégorie, et le statut de validation accompagne chaque rangée tel quel.
Scores de référence d'un modèle non mature (critères de maturité non atteints, 7 itérations). Un score ordonne; il n'affirme jamais une catégorie.
score_only:v0-immature-baseline · tel quel depuis la passe de notation : score_only signifie que le nombre peut ordonner les travaux, et qu'aucune étiquette de catégorie n'en découle