15 & NA, LNA, NE_STEPS, NFSIZ, FILS, STEP, FRERE, DAD, CAND,
16 & ISTEP_TO_INIV2, TAB_POS_IN_PERE, PTRAR, LDPTRAR, PTRIST,
17 & PTLUST_S, PTRFAC, IW1, IW2, ITLOC, RHS_MUMPS, POOL, LPOOL,
18 & CNTL1, ICNTL, INFO, RINFO, KEEP, KEEP8, PROCNODE_STEPS, SLAVEF,
19 & COMM_NODES, MYID, MYID_NODES, BUFR, LBUFR, LBUFR_BYTES,
20 & CMUMPS_LBUF, INTARR, DBLARR, root, NELT, FRTPTR, FRTELT,
21 & COMM_LOAD, ASS_IRECV, SEUIL, SEUIL_LDLT_NIV2, MEM_DISTRIB,
22 & DKEEP, PIVNUL_LIST, LPN_LIST, LRGROUPS
23 & ,IPOOL_B_L0_OMP, LPOOL_B_L0_OMP, IPOOL_A_L0_OMP,
24 & LPOOL_A_L0_OMP, L_VIRT_L0_OMP, VIRT_L0_OMP,
25 & VIRT_L0_OMP_MAPPING, L_PHYS_L0_OMP, PHYS_L0_OMP, PERM_L0_OMP,
26 & PTR_LEAFS_L0_OMP, L0_OMP_MAPPING, LL0_OMP_MAPPING, THREAD_LA,
27 & L0_OMP_FACTORS, LL0_OMP_FACTORS, I4_L0_OMP, NBSTATS_I4,
28 & NBCOLS_I4, I8_L0_OMP, NBSTATS_I8, NBCOLS_I8
41 TYPE (CMUMPS_ROOT_STRUC) :: root
43 INTEGER N,LIW,LPOOL,SLAVEF,COMM_NODES
44 INTEGER MYID, MYID_NODES,LNA
45 TYPE (S_IS_POINTERS_T) :: S_IS_POINTERS
47 INTEGER,
INTENT( IN ) :: LBUFR, LBUFR_BYTES
48 INTEGER :: BUFR( LBUFR )
49 INTEGER,
INTENT( IN ) :: CMUMPS_LBUF
50 INTEGER,
DIMENSION(0:SLAVEF - 1) :: MEM_DISTRIB
52 INTEGER FRTPTR(*), FRTELT(*)
56 INTEGER INFO(80), (500)
58 INTEGER SYM_PERM(N), NA(),
59 & ne_steps(keep(28)), fils(n),
60 & frere(keep(28)), nfsiz(keep(28)),
62 INTEGER CAND(SLAVEF+1, max(1,KEEP(56)))
64 INTEGER(8),
INTENT(IN) :: PTRAR(LDPTRAR,2)
65 INTEGER(8) :: PTRFAC(KEEP(28))
66 INTEGER PTRIST(KEEP(28)), PTLUST_S(KEEP(28))
67 INTEGER IW1(2*KEEP(28)), ITLOC(N+KEEP(253)), POOL()
68 COMPLEX :: RHS_MUMPS(KEEP(255))
69 INTEGER(8) :: IW2(2*KEEP(28))
70 INTEGER PROCNODE_STEPS((28))
71 INTEGER COMM_LOAD, ASS_IRECV
72 INTEGER ISTEP_TO_INIV2(KEEP(71)),
73 & tab_pos_in_pere(slavef+2,max(1,keep(56)))
74 COMPLEX DBLARR(KEEP8(26))
75 INTEGER INTARR(KEEP8(27))
76 REAL SEUIL, SEUIL_LDLT_NIV2
78 INTEGER PIVNUL_LIST(LPN_LIST)
80 INTEGER,
INTENT (IN) :: LPOOL_B_L0_OMP
81 INTEGER,
INTENT (IN) :: IPOOL_B_L0_OMP( LPOOL_B_L0_OMP )
82 INTEGER,
INTENT (IN) :: LPOOL_A_L0_OMP
83 INTEGER,
INTENT (IN) :: IPOOL_A_L0_OMP( LPOOL_A_L0_OMP )
84 INTEGER,
INTENT (IN) :: L_PHYS_L0_OMP
85 INTEGER,
INTENT (IN) :: PHYS_L0_OMP( L_PHYS_L0_OMP )
86 INTEGER,
INTENT (IN) :: L_VIRT_L0_OMP
87 INTEGER,
INTENT (IN) :: VIRT_L0_OMP( L_VIRT_L0_OMP )
88 INTEGER,
INTENT (IN) :: VIRT_L0_OMP_MAPPING( )
89 INTEGER,
INTENT (IN) :: PERM_L0_OMP( L_PHYS_L0_OMP )
90 INTEGER,
INTENT (IN) :: PTR_LEAFS_L0_OMP( L_PHYS_L0_OMP + 1)
91 INTEGER,
INTENT (IN) :: LL0_OMP_MAPPING
92 INTEGER,
INTENT (OUT):: L0_OMP_MAPPING( LL0_OMP_MAPPING )
93 INTEGER,
INTENT (IN) :: LL0_OMP_FACTORS
94 TYPE(cmumps_l0ompfac_t),
INTENT (OUT) :: L0_OMP_FACTORS(
96 INTEGER,
INTENT (IN) :: NBSTATS_I4, NBSTATS_I8
97 INTEGER,
INTENT (IN) :: , NBCOLS_I8
98 INTEGER,
INTENT (IN) :: I4_L0_OMP(NBSTATS_I4, NBCOLS_I4)
99 INTEGER(8),
INTENT (IN) :: I8_L0_OMP(, NBCOLS_I8)
100 INTEGER(8),
INTENT ( IN ) :: THREAD_LA
101 INTEGER,
EXTERNAL :: MUMPS_PROCNODE
110 REAL,
PARAMETER :: ZERO = 0.0e0
113 TYPE (MUMPS_TPS_T),
DIMENSION(:),
ALLOCATABLE :: MUMPS_TPS_ARR
114 TYPE (CMUMPS_TPS_T),
DIMENSION(:),
ALLOCATABLE :: CMUMPS_TPS_ARR
115 INTEGER NBROOT_UNDER_L0
116 INTEGER :: NSTEPSDONE
117 DOUBLE PRECISION :: OPASS, OPELI
118 INTEGER :: NELVA, COMP
119 INTEGER :: MAXFRT, NTOTPV, NMAXNPIV, NOFFNEGPV
120 INTEGER :: NB22T1, NB22T2, NBTINY, DET_EXP, DET_SIGN
123 INTEGER(8) :: POSFAC, LRLU, IPTRLU, LRLUS
124 INTEGER , LEAF, NBROOT, NROOT
125 INTEGER :: LIW_ARG_FAC_PAR
126 INTEGER(8) :: LA_ARG_FAC_PAR
127 COMPLEX,
TARGET:: CDUMMY(1)
128 INTEGER,
TARGET :: IDUMMY(1)
129 LOGICAL :: IW_DUMMY, A_DUMMY
133 lpok = (lp.GT.0) .AND. (icntl(4).GE.1)
135 prok = (mprint.GT.0) .AND. (icntl(4).GE.2)
138 nstk = pimaster + keep(28)
140 pamaster = 1 + keep(28)
141 IF (keep(4).LE.0) keep(4)=32
142 IF (keep(5).LE.0) keep(5)=16
143 IF (keep(5).GT.keep(4)) keep(5) = keep(4)
144 IF (keep(6).LE.0) keep(6)=24
145 IF (keep(3).LE.keep(4)) keep(3)=keep(4)*2
146 IF (keep(6).GT.keep(3)) keep(6) = keep(3)
176 det_mant =
cmplx(1.0e0,0.0e0, kind=kind(1.0e0))
177 iw1(nstk:nstk+keep(28)-1) = ne_steps(1:keep(28))
185 IF (lpool .NE. lpool_a_l0_omp)
THEN
186 WRITE(*,*)
"Check LPOOL vs. LPOOL_A_L0_OMP",
187 & lpool, lpool_a_l0_omp, keep(28)
191 pool(i) = ipool_a_l0_omp(i)
203 IF ( keep( 38 ) .NE. 0 )
THEN
204 nbroot = nbroot + root%NPROW * root%NPCOL - 1
207 IF ( mumps_procnode( procnode_steps(step(keep(38))),
209 & .NE. myid_nodes )
THEN
214 ptlust_s(1:keep(28))=0
215 ptrfac(1:keep(28))=-99999_8
216 iw2(ptrast:ptrast+keep(28)-1)=0_8
217 iw1(pimaster:pimaster+keep(28)-1)=-99999_8
225 ALLOCATE( mumps_tps_arr( keep(400) ), stat=allocok )
226 IF (allocok .GT. 0)
THEN
228 WRITE(lp,*)
"Problem allocating MUMPS_TPS_ARR",
233 ALLOCATE( cmumps_tps_arr( keep(400) ), stat=allocok )
234 IF (allocok .GT. 0)
THEN
235 WRITE(*,*)
"Problem allocating CMUMPS_TPS_ARR", keep(400)
239 & fils,step, frere, dad, istep_to_iniv2, tab_pos_in_pere, ptrist,
240 & iw2(ptrast), iw1(pimaster), iw2(pamaster), ptrar(1,2),
242 & itloc, rhs_mumps, rinfo, nroot, nbroot, nbroot_under_l0,
243 & uuloc, icntl, ptlust_s, ptrfac, info, keep, keep8,
244 & procnode_steps,slavef, comm_nodes, myid_nodes, bufr,
245 & lbufr,lbufr_bytes,intarr,dblarr,root, sym_perm, nelt, frtptr,
246 & frtelt, ldptrar, comm_load, ass_irecv, seuil, seuil_ldlt_niv2,
247 & mem_distrib, ne_steps, dkeep,pivnul_list,lpn_list,
248 & lpool_b_l0_omp, ipool_b_l0_omp, l_virt_l0_omp,
249 & virt_l0_omp, virt_l0_omp_mapping, l_phys_l0_omp, phys_l0_omp,
250 & perm_l0_omp, ptr_leafs_l0_omp, l0_omp_mapping, ll0_omp_mapping,
251 & thread_la, mumps_tps_arr, cmumps_tps_arr, nstepsdone,
252 & opass, opeli, nelva, comp, maxfrt, nmaxnpiv, ntotpv, noffnegpv,
253 & nb22t1, nbtiny, det_exp, det_mant, det_sign,
254 & lrgroups(1), l0_omp_factors, ll0_omp_factors,
255 & i4_l0_omp, nbstats_i4, nbcols_i4,
256 & i8_l0_omp, nbstats_i8, nbcols_i8 )
261 keep8(62) = keep8(74)-keep8(62)
262 IF (info(1) .LT. 0)
THEN
263 keep8(69) = keep8(73)
265 keep8(74) = keep8(73)
266 IF ((info(1).GE.0).AND.(keep8(74).GT.keep8(75)))
THEN
269 & keep8(74)-keep8(75), info(2))
271 WRITE(lp,
'(/A/,A,I8,A,I10/,A/,A/)')
272 &
'** ERROR: memory allowed (ICNTL(23)) is not large enough:',
273 &
' INFO(1)=', info(1),
' INFO(2)=', info(2),
274 &
' memory used at the end of the treatment of L0 thread ',
275 &
' does not enable processing nodes above L0 thread '
278 keep8(66) = keep8(68)
279 keep8(65) = keep8(64) + keep8(71)
282 IF (
associated(s_is_pointers%IW))
THEN
283 WRITE(*,*)
" Internal error CMUMPS_FAC_B IW"
286 IF (info(1) .GE. 0 )
THEN
287 ALLOCATE(s_is_pointers%IW(liw), stat=allocok)
288 IF (allocok .GT.0)
THEN
293 &
'Allocation error for id%IS(',liw,
') on worker',
298 IF (info(1) .GE. 0)
THEN
299 IF (.NOT.
associated(s_is_pointers%A))
THEN
300 ALLOCATE(s_is_pointers%A(la), stat=allocok)
301 IF (allocok .GT. 0)
THEN
304 DEALLOCATE(s_is_pointers%IW);
NULLIFY(s_is_pointers%IW)
311 IF (info(1) .GE. 0)
THEN
313 IF ( ierr .NE. 0 )
THEN
318 &
'Allocation error in CMUMPS_BUF_ALLOC_CB'
319 & ,info(2),
' on worker', myid_nodes
321 DEALLOCATE(s_is_pointers%IW);
NULLIFY(s_is_pointers%IW)
322 DEALLOCATE(s_is_pointers%A);
NULLIFY(s_is_pointers%A)
325 IF ( keep(400) .EQ. 0
328 ALLOCATE( mumps_tps_arr(1))
329 ALLOCATE(cmumps_tps_arr(1))
335 IF (info(1) .GE. 0)
THEN
336 liw_arg_fac_par = liw
341 IF (.NOT.
associated(s_is_pointers%IW))
THEN
342 s_is_pointers%IW => idummy
345 IF (.NOT.
associated(s_is_pointers%A))
THEN
346 s_is_pointers%A => cdummy
350 IF ( info(1) .LT. 0 )
THEN
355 & s_is_pointers%A(1),la_arg_fac_par,iw1(nstk),
356 & nfsiz,fils,step,frere,dad,cand,istep_to_iniv2, tab_pos_in_pere,
357 & nstepsdone, opass, opeli, nelva, comp, maxfrt, nmaxnpiv, ntotpv,
358 & noffnegpv, nb22t1, nb22t2, nbtiny, det_exp, det_mant, det_sign,
359 & ptrist, iw2(ptrast), iw1(pimaster), iw2(pamaster),
360 & ptrar(1,2), ptrar(1,1),
361 & itloc, rhs_mumps, pool, lpool,
362 & l0_omp_mapping, ll0_omp_mapping,
363 & mumps_tps_arr, cmumps_tps_arr, ltps_arr,
364 & rinfo, posfac, iwpos, lrlu, iptrlu, lrlus, leaf, nroot, nbroot,
366 & uuloc, icntl, ptlust_s, ptrfac, info, keep, keep8,
367 & procnode_steps,slavef,myid,comm_nodes, myid_nodes, bufr, lbufr,
368 & lbufr_bytes, intarr, dblarr, root, sym_perm, nelt, frtptr,
369 & frtelt, ldptrar, comm_load, ass_irecv, seuil, seuil_ldlt_niv2,
370 & mem_distrib,ne_steps, dkeep(1),pivnul_list
373 NULLIFY( s_is_pointers%IW )
376 NULLIFY( s_is_pointers%A )
379 rinfo(2) = real(opass)
380 rinfo(3) = real(opeli)
383 keep(33) = maxfrt; info(11) = maxfrt
385 keep(89) = ntotpv; info(23) = ntotpv
390 IF (keep(258) .NE. 0)
THEN
391 keep(260) = keep(260) * det_sign
392 keep(259) = keep(259) + det_exp
397 IF (ll0_omp_factors.NE.keep(400))
THEN
398 WRITE(*,*)
"Internal error in CMUMPS_FAC_B, KEEP(400), L..=",
399 & keep(400), ll0_omp_factors
402 IF ( info(1) .GE. 0 )
THEN
404 & liw, iwpos, mumps_tps_arr, keep, ptlust_s,
409 IF (info(1) .LT. 0)
THEN
410 IF (
associated( l0_omp_factors(i)%A ) )
THEN
411 DEALLOCATE( l0_omp_factors(i)%A )
412 NULLIFY ( l0_omp_factors(i)%A )
414 & -l0_omp_factors(i)%LA, .true.,
415 & keep8, info(1), info(2), .true., .false. )
417 l0_omp_factors(i)%LA = -99999_8
419 IF (
associated(mumps_tps_arr(i)%IW))
THEN
420 DEALLOCATE(mumps_tps_arr(i)%IW)
421 NULLIFY(mumps_tps_arr(i)%IW)
423 & -((int(mumps_tps_arr(i)%LIW,8) * int(keep(34),8))
424 & / int(keep(35),8)),
426 & keep8, info(1), info(2), .true., .false. )
431 IF (
allocated(mumps_tps_arr))
THEN
432 DEALLOCATE(mumps_tps_arr)
434 IF (
allocated(cmumps_tps_arr))
THEN
435 DEALLOCATE(cmumps_tps_arr)
439 IF (keep(201).LE.0)
THEN
440 IF (keep(201) .EQ. -1 .AND. info(1) .LT. 0)
THEN
446 rinfo(6) = real(keep8(31)*int(keep(35),8))/1e6
448 keep8(48) = keep8(31)+keep8(71)+keep8(64)
452 keep8(67) = la - keep8(67)
453 CALL mpi_allreduce(ntotpv, ntotpvtot, 1, mpi_integer, mpi_sum,
455 IF ( ( (info(1).EQ.-10 .OR. info(1).EQ.-40)
456 & .AND. (ntotpvtot.EQ.n) )
457 & .OR. ( ntotpvtot.GT.n ) )
THEN
458 write(*,*)
' Error 1 NTOTPVTOT=', ntotpvtot,n
461 IF ( (keep(19).NE.0 ) .AND. (ntotpvtot.NE.n) .AND.
462 & (info(1).GE.0) )
THEN
463 write(*,*)
' Error 2 NTOTPVTOT=', ntotpvtot
466 IF ( (info(1) .GE. 0 )
467 & .AND. (ntotpvtot.NE.n) )
THEN
470 IF (info(1).EQ.-10)
THEN
474 WRITE (mprint,99980) info(1), info(2),
475 & keep(28), keep8(48), info(10), info(11)
476 IF(keep(50) .EQ. 0)
THEN
477 WRITE(mprint,99982) info(12)
479 WRITE (mprint, 99986)
480 & info(13), info(14), rinfo(2), rinfo(3)
481 IF (keep(97) .NE. 0)
THEN
482 WRITE (mprint, 99987) info(25)
48699980
FORMAT (/
' LEAVING FACTORIZATION PHASE WITH ...'/
489 &
' Number of nodes in the tree =',i15/
490 &
' INFO (9) Real space for factors =',i15/
491 &
' --- (10) Integer space for factors =',i15/
492 &
' --- (11) Maximum size of frontal matrices =',i15)
49399982
FORMAT (
' --- (12) Number of off diagonal pivots =',i15)
49499986
FORMAT (
' --- (13) Number of delayed pivots =',i15/
495 &
' --- (14) Number of memory compresses =',i15/
496 &
' RINFO(2) Operations during node assembly =',1pd10.3/
497 &
' -----(3) Operations during node elimination =',1pd10.3)
49899987
FORMAT (
' INFO (25) Number of tiny pivots(static) =',i15)
501 & ND,FILS,STEP, FRERE, DAD, CAND, ISTEP_TO_INIV2,
502 & TAB_POS_IN_PERE, NSTEPSDONE, OPASS, OPELI, NELVA, COMP,
503 & MAXFRT, NMAXNPIV, NTOTPV, NOFFNEGPV, NB22T1, NB22T2, NBTINY,
504 & DET_EXP, DET_MANT, DET_SIGN, PTRIST, PTRAST, PIMASTER, PAMASTER,
505 & PTRARW, PTRAIW, ITLOC, RHS_MUMPS, IPOOL, LPOOL,
506 & L0_OMP_MAPPING, LL0_OMP_MAPPING,
507 & MUMPS_TPS_ARR, CMUMPS_TPS_ARR, LTPS_ARR,
508 & RINFO, POSFAC ,IWPOS, LRLU, IPTRLU, LRLUS, LEAF, NBROOT, NBRTOT,
510 & UU, ICNTL, PTLUST, PTRFAC, INFO, KEEP, KEEP8,
511 & PROCNODE_STEPS, SLAVEF, MYID, COMM_NODES, MYID_NODES,
512 & BUFR, LBUFR, LBUFR_BYTES, INTARR, DBLARR, root,
513 & PERM, NELT, FRTPTR, FRTELT, LPTRAR, COMM_LOAD, ASS_IRECV,
514 & SEUIL, SEUIL_LDLT_NIV2, MEM_DISTRIB, NE, DKEEP,
515 & PIVNUL_LIST,LPN_LIST, LRGROUPS )
530 TYPE (CMUMPS_ROOT_STRUC) :: root
531 INTEGER N, LIW, LPTRAR, NSTEPSDONE, INFO(80)
532 DOUBLE PRECISION,
INTENT(INOUT) :: OPASS, OPELI
533 INTEGER,
INTENT(INOUT) :: NELVA, COMP
534 INTEGER,
INTENT(INOUT) :: MAXFRT, NTOTPV, NMAXNPIV, NOFFNEGPV
535 INTEGER,
INTENT(INOUT) :: NB22T1, NB22T2, NBTINY
536 INTEGER,
INTENT(INOUT) :: DET_SIGN, DET_EXP
537 COMPLEX,
INTENT(INOUT) :: DET_MANT
540 INTEGER SLAVEF, COMM_NODES, MYID, MYID_NODES
541 INTEGER,
DIMENSION(0: SLAVEF - 1) :: MEM_DISTRIB
542 INTEGER KEEP(500), ICNTL(60)
543 INTEGER(8) KEEP8(150)
545 INTEGER PROCNODE_STEPS(KEEP(28))
546 INTEGER ITLOC(N+KEEP(253))
547 COMPLEX :: RHS_MUMPS(KEEP(255))
548 INTEGER IW(LIW), NSTK_STEPS(KEEP(28))
549 INTEGER(8),
INTENT(IN) :: PTRARW(LPTRAR), PTRAIW(LPTRAR)
551 INTEGER FILS(),PTRIST(KEEP(28))
552 INTEGER STEP(N), FRERE(KEEP(28)), DAD((28))
553 INTEGER PIMASTER(KEEP(28))
554 INTEGER PTLUST(KEEP(28)), PERM(N)
555 INTEGER CAND(SLAVEF+1,max(1,KEEP(56)))
556 INTEGER ISTEP_TO_INIV2(KEEP(71)),
557 & tab_pos_in_pere(slavef+2,max(1,keep(56)))
561 INTEGER(8) :: PAMASTER(KEEP(28)), PTRAST(KEEP(28))
562 INTEGER(8) :: PTRFAC(KEEP(28))
563 INTEGER(8) :: POSFAC, LRLU, LRLUS, IPTRLU
564 INTEGER IWPOS, LEAF, NBROOT, NBRTOT
565 INTEGER,
INTENT(in) :: NBROOT_UNDER_L0
566 INTEGER COMM_LOAD, ASS_IRECV
567 REAL UU, SEUIL, SEUIL_LDLT_NIV2
569 INTEGER FRTPTR( N+1 ), FRTELT( NELT )
570 INTEGER LBUFR, LBUFR_BYTES
571 INTEGER BUFR( LBUFR )
572 COMPLEX DBLARR( KEEP8(26) )
573 INTEGER INTARR( KEEP8(27) )
575 INTEGER PIVNUL_LIST(LPN_LIST)
578 INTEGER,
INTENT( IN ) :: LTPS_ARR, LL0_OMP_MAPPING
579 TYPE (MUMPS_TPS_T) :: MUMPS_TPS_ARR(LTPS_ARR)
580 TYPE (CMUMPS_TPS_T) :: CMUMPS_TPS_ARR(LTPS_ARR)
581 INTEGER,
INTENT( IN ) :: L0_OMP_MAPPING( LL0_OMP_MAPPING )
583 & nd,fils,step, frere, dad, cand, istep_to_iniv2, tab_pos_in_pere,
584 & nstepsdone, opass, opeli, nelva, comp, maxfrt, nmaxnpiv, ntotpv,
585 & noffnegpv, nb22t1, nb22t2, nbtiny, det_exp, det_mant, det_sign,
586 & ptrist, ptrast, pimaster, pamaster, ptrarw, ptraiw,
587 & itloc, rhs_mumps, ipool, lpool,
588 & l0_omp_mapping, ll0_omp_mapping,
589 & mumps_tps_arr, cmumps_tps_arr, ltps_arr,
590 & rinfo, posfac ,iwpos, lrlu, iptrlu, lrlus, leaf, nbroot, nbrtot,
592 & uu, icntl, ptlust, ptrfac, info, keep,keep8,
593 & procnode_steps,slavef,myid, comm_nodes, myid_nodes,
594 & bufr,lbufr,lbufr_bytes,intarr,dblarr,root, perm, nelt,
595 & frtptr, frtelt, lptrar, comm_load, ass_irecv,
596 & seuil, seuil_ldlt_niv2, mem_distrib, ne, dkeep,
597 & pivnul_list,lpn_list, lrgroups )
subroutine cmumps_fac_b(n, s_is_pointers, la, liw, sym_perm, na, lna, ne_steps, nfsiz, fils, step, frere, dad, cand, istep_to_iniv2, tab_pos_in_pere, ptrar, ldptrar, ptrist, ptlust_s, ptrfac, iw1, iw2, itloc, rhs_mumps, pool, lpool, cntl1, icntl, info, rinfo, keep, keep8, procnode_steps, slavef, comm_nodes, myid, myid_nodes, bufr, lbufr, lbufr_bytes, cmumps_lbuf, intarr, dblarr, root, nelt, frtptr, frtelt, comm_load, ass_irecv, seuil, seuil_ldlt_niv2, mem_distrib, dkeep, pivnul_list, lpn_list, lrgroups, ipool_b_l0_omp, lpool_b_l0_omp, ipool_a_l0_omp, lpool_a_l0_omp, l_virt_l0_omp, virt_l0_omp, virt_l0_omp_mapping, l_phys_l0_omp, phys_l0_omp, perm_l0_omp, ptr_leafs_l0_omp, l0_omp_mapping, ll0_omp_mapping, thread_la, l0_omp_factors, ll0_omp_factors, i4_l0_omp, nbstats_i4, nbcols_i4, i8_l0_omp, nbstats_i8, nbcols_i8)
subroutine cmumps_fac_par_i(n, iw, liw, a, la, nstk_steps, nd, fils, step, frere, dad, cand, istep_to_iniv2, tab_pos_in_pere, nstepsdone, opass, opeli, nelva, comp, maxfrt, nmaxnpiv, ntotpv, noffnegpv, nb22t1, nb22t2, nbtiny, det_exp, det_mant, det_sign, ptrist, ptrast, pimaster, pamaster, ptrarw, ptraiw, itloc, rhs_mumps, ipool, lpool, l0_omp_mapping, ll0_omp_mapping, mumps_tps_arr, cmumps_tps_arr, ltps_arr, rinfo, posfac, iwpos, lrlu, iptrlu, lrlus, leaf, nbroot, nbrtot, nbroot_under_l0, uu, icntl, ptlust, ptrfac, info, keep, keep8, procnode_steps, slavef, myid, comm_nodes, myid_nodes, bufr, lbufr, lbufr_bytes, intarr, dblarr, root, perm, nelt, frtptr, frtelt, lptrar, comm_load, ass_irecv, seuil, seuil_ldlt_niv2, mem_distrib, ne, dkeep, pivnul_list, lpn_list, lrgroups)
subroutine cmumps_fac_l0_omp(n, liw, nstk_steps, nd, fils, step, frere, dad, istep_to_iniv2, tab_pos_in_pere, ptrist, ptrast, pimaster, pamaster, ptrarw, ptraiw, itloc, rhs_mumps, rinfo, nbroot, nbrtot, nbroot_under_l0, uu, icntl, ptlust_s, ptrfac, info, keep, keep8, procnode_steps, slavef, comm_nodes, myid_nodes, bufr, lbufr, lbufr_bytes, intarr, dblarr, root, perm, nelt, frtptr, frtelt, lptrar, comm_load, ass_irecv, seuil, seuil_ldlt_niv2, mem_distrib, ne, dkeep, pivnul_list, lpn_list, lpool_b_l0_omp, ipool_b_l0_omp, l_virt_l0_omp, virt_l0_omp, virt_l0_omp_mapping, l_phys_l0_omp, phys_l0_omp, perm_l0_omp, ptr_leafs_l0_omp, l0_omp_mapping, ll0_omp_mapping, thread_la, mumps_tps_arr, cmumps_tps_arr, nstepsw, opassw, opeliw, nelvaw, comp, maxfrw, nmaxnpivw, npvw, noffnegw, nb22t1w, nbtinyw, det_expw, det_mantw, det_signw, lrgroups, l0_omp_factors, ll0_omp_factors, i4_l0_omp, nbstats_i4, nbcols_i4, i8_l0_omp, nbstats_i8, nbcols_i8)
subroutine cmumps_fac_par(n, iw, liw, a, la, nstk_steps, nd, fils, step, frere, dad, cand, istep_to_iniv2, tab_pos_in_pere, nstepsdone, opass, opeli, nelva, comp, maxfrt, nmaxnpiv, ntotpv, noffnegpv, nb22t1, nb22t2, nbtiny, det_exp, det_mant, det_sign, ptrist, ptrast, pimaster, pamaster, ptrarw, ptraiw, itloc, rhs_mumps, ipool, lpool, l0_omp_mapping, ll0_omp_mapping, mumps_tps_arr, cmumps_tps_arr, ltps_arr, rinfo, posfac, iwpos, lrlu, iptrlu, lrlus, leaf, nbroot, nbrtot, nbroot_under_l0, uu, icntl, ptlust, ptrfac, info, keep, keep8, procnode_steps, slavef, myid, comm_nodes, myid_nodes, bufr, lbufr, lbufr_bytes, intarr, dblarr, root, perm, nelt, frtptr, frtelt, lptrar, comm_load, ass_irecv, seuil, seuil_ldlt_niv2, mem_distrib, ne, dkeep, pivnul_list, lpn_list, lrgroups)