!SOLVER¶
Ebazlearen kontrola
Nahitaezko kontrol-datuak.
Parametroak¶
METHOD = Ebazpen-metodoa (CG, BiCGSTAB, GMRES, GPBiCG, CR, DIRECT, DIRECTmkl, MUMPS)
DIRECT : Metodo zuzena kontaktu-analisia ez denean (exekuzio sekuentziala soilik) (une honetan ezin da erabili)
DIRECTmkl : Intel MKL bidezko metodo zuzena
MUMPS : MUMPS bidezko metodo zuzena
Metodo zuzena hautatzen denean, datu-lerroak ez dira kontuan hartzen.
3 askatasun-graduko problemetarako metodo iteratiboek OpenMP bidezko hari-paralelismoa erabil dezakete
PRECOND = Metodo iteratiboen aurrebaldintzatze-metodoa (1, 2, 3, 5, 10, 11, 12, 22)
1, 2 : Blokeko SSOR (kolore anitzeko ordenatzearekin 3 askatasun-graduko problemetan soilik)
3 : Blokeko eskalatze diagonala
5 : AMG, ML multigrid aurrebaldintzatze-paketea erabiliz
10 : Blokeko ILU(0)
11 : Blokeko ILU(1)
12 : Blokeko ILU(2)
22 : AMG, HEC-MW sisteman integratutako SA-AMG (agregazio leunduko AMG) erabiliz
10, 11 eta 12 aukerak 3 askatasun-graduko problemetarako soilik daude erabilgarri
22 aukera LAPACK gaituta duten konpilazioetan soilik dago erabilgarri
OpenMP bidezko hari-paralelismoan SSOR, eskalatze diagonala, ML edo SA-AMG gomendatzen dira
ITERLOG = Ebazle iteratiboaren konbergentzia-historia irteeran emango den ala ez (YES/NO)(lehenetsia: NO)
TIMELOG = Ebazlearen kalkulu-denbora irteeran emango den ala ez (YES/NO/VERBOSE)(lehenetsia: NO)
LOGLEVEL = Aurrebaldintzatzailearen diagnostiko-informazioaren irteera-maila (zenbaki osoa)(lehenetsia: irteerarik ez)
ITERLOG eta TIMELOG parametroetatik bereizita zehazten da
1 edo handiagoa denean, AMG motako aurrebaldintzatzaileen (PRECOND=5,22) hierarkiaren osaera eta bestelako informazioa ematen dira irteeran
2 edo handiagoa denean, informazio xeheagoa ere ematen da irteeran (memoria-erabilera eta abar)
USEJAD = Bektore-prozesadoreetarako ordenatzea erabiliko den ala ez (YES/NO)(lehenetsia: NO)
3 askatasun-graduko problema batean metodo iteratiboa erabiltzean soilik da baliozkoa
SCALING = Matrizea eskalatu eta diagonaleko osagaiak 1 izatea ala ez (YES/NO)(lehenetsia: NO)
3 askatasun-graduko problema batean metodo iteratiboa erabiltzean soilik da baliozkoa
DUMPTYPE = Matrize-dump formatua (NONE, MM, CSR, BSR) (batez ere arazketarako)
NONE : Ez egin dumpik (lehenetsia)
MM : Matrix Market formatua
CSR : Errenkada sakabanatu konprimatuen (CSR) formatua
BSR : Blokekako CSR formatua
DUMPEXIT = Programa amaitzea matrize-dumpa egin eta berehala (YES/NO)(lehenetsia: NO)
MPCMETHOD = Puntu anitzeko murriztapenen tratamendu-metodoa (1, 3)
1: Penalizazio-metodoa (lehenetsia metodo zuzena erabiltzean)
3: Askatasun-graduen ezabaketa esplizitua (lehenetsia metodo iteratiboa erabiltzean)
Lehen hauta zitekeen MPC-CG metodoa kendu egin da; 2 zehaztean, abisua ematen da eta dagokion metodo lehenetsia erabiltzen da.
ESTCOND = Baldintza-zenbakiaren estimazio-maiztasuna (esperimentala)
Baldintza-zenbakia zehaztutako iterazio-tarte bakoitzean eta iterazioen amaieran estimatzen da
0 zehazten bada, ez da estimaziorik egiten
RECOMPUTE_RESIDUAL = Hondar-bektorea berriro kalkulatzeko maiztasuna
METHOD gisa CG, BiCGSTAB, GPBiCG edo PipeCG zehazten denean bakarrik balio du
Metodo iteratiboek hondar-bektorea errekurrentzia-formula baten bidez eguneratzen dute, eta horregatik biribiltze-erroreak metatzen dira
Zehaztutako iterazio-tarte bakoitzean, hondar-bektorea {b}-[A]{x} adierazpenetik berriro kalkulatzen da
Balioa 0 bada, metodo bakoitzaren balio lehenetsia erabiltzen da (CG: 50, BiCGSTAB: 100, GPBiCG: 20, PipeCG: 50)
Balio negatiboa zehazten bada, ez da aldizkako birkalkulurik egiten
Konbergentzia-irizpidea betetzen denean egiaztatzeko birkalkulua beti egiten da, ezarpen hau edozein dela ere
Periodoa laburregia bada, matrize-bektore biderkaduren kopurua handitzeaz gain
konbergentzia bera okertu edo konbergentzia eragotz daiteke
Balio lehenetsia aldatzen bada, egiaztatu konbergentzia-historia eta amaierako hondar erlatiboa
METHOD2 = Bigarren ebazpen-metodoa (BiCGSTAB, GMRES, GPBiCG) (esperimentala)
METHOD parametroan CG zehazten denean soilik da baliozkoa
CG metodoa dibergitzen bada, bigarren metodora automatikoki aldatu eta sistema ebazten da
Gainerako parametroetarako eta datu-lerroetarako informazio bera erabiltzen da
CONTACT_ELIM = Kontaktu-analisian askatasun-graduak ezabatuko diren ala ez zehazten du (0,1)
0: Askatasun-graduen ezabaketa metodo iteratiboa erabiltzean soilik egin (lehenetsia)
1: Beti egin askatasun-graduen ezabaketa (metodo zuzena erabiltzean ere)
** 2. lerrotik aurrera **
| Aldagaia | Atributua | Deskribapena |
|---|---|---|
| NITER | I | Iterazio kopurua (lehenetsia: 100) |
| iterPREmax | I | Additive Schwarz aurrebaldintzatzearen iterazio kopurua (lehenetsia: 1) (Gomendatutako balioa 1 da; kalkulu paraleloetan 2 eraginkorra izan daiteke) |
| NREST | I | Krylov azpiespazioaren tamaina (lehenetsia: 10) (GMRES ebazpen-metodo gisa hautatzen denean soilik da baliozkoa) |
| NCOLOR_IN | I | Kolore anitzeko ordenatzearen helburuko kolore kopurua (lehenetsia: 10) (OpenMP hari kopurua 2 edo handiagoa denean soilik da baliozkoa) |
| RECYCLEPRE | I | Aurrebaldintzatzailearen konfigurazio-informazioa berrerabiltzeko aldien kopurua (lehenetsia: 3) (analisi ez-linealean soilik da baliozkoa) |
| Aldagaia | Atributua | Deskribapena |
|---|---|---|
| RESID | R | Eten-errorea (lehenetsia: 1.0e-8) |
| SIGMA_DIAG | R | Aurrebaldintzatze-matrizea kalkulatzean diagonaleko osagaiei aplikatutako biderkatzailea (lehenetsia: 1.0) (ILU aurrebaldintzatzean zeroz zatiketa edo dibergentzia gertatzen bada, 1.0 baino balio handiagoa ezartzeak arazoa ebaztea ahalbidetu dezake) |
| SIGMA | R | Ez da erabiltzen (lehenetsia: 0.0) |
PRECOND=5 denean (aukerakoa)¶
PRECOND parametroari 5 edo 22 ez den balio bat ematen bazaio, 4. lerroa ez da kontuan hartzen.
(4. lerroa) ML_CoarseSolver, ML_Smoother, ML_MGCycle, ML_MaxLevels, ML_CoarseningScheme, ML_NumSweep
| Aldagaia | Atributua | Deskribapena |
|---|---|---|
| ML_CoarseSolver | I | ML paketearen sare lodiko ebazlea (1: leuntzailea erabili, 2: KLU (metodo zuzen sekuentziala), 3: MUMPS (metodo zuzen paraleloa)) (lehenetsia: 1) (Gomendatutako balioa 3 edo 2 da arazo zailetarako, eta 1 arazo arruntetarako) |
| ML_Smoother | I | ML paketearen leuntzailea (1: Chebyshev, 2: SymBlockGaussSeidel, 3: Jacobi) (lehenetsia: 1) (Gomendatutako balioa 1 da) |
| ML_MGCycle | I | ML paketearen multigrid-zikloa (1: V zikloa, 2: W zikloa, 3: V ziklo osoa) (lehenetsia: 1) (Gomendatutako balioa 2 da arazo zailetarako, eta 1 arazo arruntetarako) |
| ML_MaxLevels | I | ML paketearen gehieneko maila kopurua (lehenetsia: 10) (Bereziki arazo zailetarako, sare lodiko ebazle gisa metodo zuzena erabili eta 2 maila gomendatzen dira (3, memoria nahikoa ez bada); arazo arruntetarako, 10) |
| ML_CoarseningScheme | I | ML paketearen loditze-eskema (1: UncoupledMIS, 2: METIS, 4: Zoltan, 5: DD) (lehenetsia: 1) (Gomendatutako balioa 1 edo 5 da) |
| ML_NumSweep | I | ML paketearen leuntzailearen ekorketa kopurua (Chebyshev erabiliz gero, polinomioaren gradua) (lehenetsia: 2) (Gomendatutako balioa 2 da Chebyshev erabiliz gero, eta 1 SymBlockGaussSeidel erabiliz gero) |
PRECOND=22 denean (aukerakoa)¶
PRECOND parametroari 22 ez den balio bat ematen bazaio, 5. lerroa ez da kontuan hartzen. 4. eta 5. lerroetako bakoitza osorik kanpoan utz daiteke, eta lerro bakoitzaren amaierako elementuak ere kanpoan utz daitezke. 0 balioa zehazten den elementuetan balio lehenetsia erabiltzen da.
4. lerroko 1etik 7ra bitarteko elementuek PRECOND=5 (ML) aukeren lerroko ordena bera dute; beraz, ML aukeren lerroa bere horretan berrerabil daiteke. 8tik 10era bitarteko elementuak SA-AMG sistemaren berariazkoak dira.
(4. lerroa) SA_CoarseSolver, SA_Smoother, SA_MGCycle, SA_MaxLevels, (erabili gabe), SA_ChebyDegree, SA_CoarseSize, SA_MaxAggSize, SA_GalerkinLowMem, (erabili gabe)
| Aldagaia | Atributua | Deskribapena |
|---|---|---|
| SA_CoarseSolver | I | Sare lodiko ebazlea (0: automatikoa, 1: leuntzailea erabili, 2: matrize trinkoko metodo zuzena, 3: MUMPS (metodo zuzen paraleloa)) (lehenetsia: 0) (Modu automatikoan, MUMPS gaituta duten konpilazioetan MUMPS erabiltzen da; gainerakoetan, matrize trinkoko metodo zuzena erabiltzen da) |
| SA_Smoother | I | Leuntzailea (0, 1: Chebyshev) (lehenetsia: 0) (Chebyshev bakarrik onartzen da. Beste balio bat zehazten bada, abisua ematen da eta Chebyshev erabiltzen da) |
| SA_MGCycle | I | Multigrid-zikloa (0: lehenetsia (W zikloa), 1: V zikloa, 2: W zikloa) (lehenetsia: 0) (V ziklo osoa ez da onartzen) |
| SA_MaxLevels | I | Gehieneko maila kopurua (lehenetsia: 20) |
| (Erabili gabe) | I | ML paketearen loditze-eskemari dagokion posizioa. SA-AMG metodoak loturarik gabeko agregazioa erabiltzen du beti; beraz, 0 ez den balioa zehazten bada, abisua ematen da eta balioa ez da kontuan hartzen |
| SA_ChebyDegree | I | Chebyshev leuntzailearen polinomio-gradua (lehenetsia: 2) |
| SA_CoarseSize | I | Sare lodiaren tamaina-muga (lehenetsia: 50000, sare lodiko ebazle gisa MUMPS erabiltzen bada; bestela, 100) |
| SA_MaxAggSize | I | Agregatuaren gehieneko tamaina (lehenetsia: 96) |
| SA_GalerkinLowMem | I | Sare lodiko matrizea kalkulatzeko metodoa (0: arrunta (abiadura lehenesten du), balio positiboa: memoria aurreztea) (lehenetsia: 0) (Konfigurazioan memoria nahikoa ez bada, zehaztu balio positibo bat) |
| (Erabili gabe) | I | Etorkizuneko hedapenetarako erreserbatuta |
5. lerroa SA-AMG sistemaren berariazkoa da, eta ML paketeak ez du irakurtzen.
(5. lerroa) SA_Theta, SA_ChebyAlpha, SA_Safety, SA_TaperK, SA_AggOrder, SA_MinAggSize, SA_Verify, SA_DumpVTK
| Aldagaia | Atributua | Deskribapena |
|---|---|---|
| SA_Theta | R | Lotura sendoak zehazteko atalasea (lehenetsia: 0.0) (0.0 balioarekin, matrizearen elementu ez-nuluen egitura zuzenean erabiltzen da grafo gisa) |
| SA_ChebyAlpha | R | Chebyshev leuntzailearen helburuko balio propioen tartearen beheko muga zehazten duen erlazioa (lehenetsia: 20.0) |
| SA_Safety | R | Gehieneko balio propioaren estimazioari aplikatutako segurtasun-faktorea (lehenetsia: 1.1) |
| SA_TaperK | R | Loditzearen K mailakatze-koefizientea (lehenetsia: 100) (2. mailatik aurrera, loditzea moteldu egiten da gutxienez K agregatu inguru gera daitezen. Balio negatiboak mailakatzea desgaitzen du) |
| SA_AggOrder | R | Agregazioaren zeharkatze-ordena (0: lehenetsia (BFS ordena), 1: BFS ordena, 2: nodo-zenbakien hash-ordena (esperimentala), 3: nodo-graduaren goranzko ordena (esperimentala), 4: nodo-graduaren beheranzko ordena (esperimentala), balio negatiboa: nodo-zenbakien ordena) (lehenetsia: 0) |
| SA_MinAggSize | R | Agregatuaren gutxieneko tamaina (lehenetsia: 3) |
| SA_Verify | R | Konfigurazioan autoegiaztapena egingo den ala ez (0: ez, balio positiboa: bai) (lehenetsia: 0) (batez ere arazketarako) |
| SA_DumpVTK | R | Mailarik goreneko agregazioa VTK formatuan irteeran emango den ala ez (0: ez eman irteeran, balio positiboa: eman irteeran) (lehenetsia: 0) (batez ere arazketarako) |
Erabilera-adibidea¶
Erabili CG SSOR aurrebaldintzatzearekin, eta ezarri gehieneko iterazio kopurua 10000 eta eten-errorea 1.0e-8
Erabili GMRES SSOR aurrebaldintzatzearekin, eta ezarri Krylov azpiespazioaren tamaina 40 eta kolore anitzeko ordenatzearen helburuko kolore kopurua 100
Erabili CG ILU(0) aurrebaldintzatzearekin, eta ezarri aurrebaldintzatze-matrizea kalkulatzean diagonaleko osagaiei aplikatutako biderkatzailea 1.1
Erabili ML bidezko AMG CG metodoaren aurrebaldintzatzaile gisa
Erabili ML bidezko AMG CG metodoaren aurrebaldintzatzaile gisa eta MUMPS sare lodiko ebazle gisa (arazo zailetarako)
Erabili ML bidezko AMG CG metodoaren aurrebaldintzatzaile gisa eta W zikloa multigrid-ziklo gisa (arazo zailetarako)
Erabili ML bidezko AMG CG metodoaren aurrebaldintzatzaile gisa eta MUMPS sare lodiko ebazle gisa, eta ezarri gehieneko maila kopurua 2 (oso arazo zailetarako)
Erabili HEC-MW sisteman integratutako SA-AMG CG metodoaren aurrebaldintzatzaile gisa
Erabili SA-AMG CG metodoaren aurrebaldintzatzaile gisa eta MUMPS sare lodiko ebazle gisa
Marruskaduradun kontaktu-analisian, erabili BiCGSTAB SA-AMG aurrebaldintzatzearekin, eta eman irteeran AMG aurrebaldintzatzailearen hierarkia-egitura