splitfunc.c

Summary
splitfunc.c
splitSeqCblk2D
P1DBasic criterion based on broadness of cblk
P2DCriterion based on overhead du to the splitting
virtualSplitOIMBE TO DO: le calcul total du cout splitter peut etre bp plus rapide en groupant les calculs sur les odb dans les cblk decouper *
cblkCostAssure that cblkComputeCost and cblkCost compute the same things !!!!
cblkNbrcompute for each odb its contribution compute cost and add cost
build_cblk

splitSeqCblk2D

INT splitSeqCblk2D(
   INT cblknum,
   INT procnbr,
   const SymbolMatrix *symbptr,
   const ExtraSymbolMatrix *extrasymbptr,
   const Dof *dofptr,
   const BlendCtrl *ctrl,
   INT (*P)(INT, INT, const SymbolMatrix *,const ExtraSymbolMatrix *, const Dof *, INT, const BlendCtrl *)
)

P1D

INT P1D(INT cblknum,
INT procnbr,
const SymbolMatrix *symbptr,
const ExtraSymbolMatrix * const extrasymbptr,
const Dof *dofptr,
INT nseq,
const BlendCtrl *ctrl)

Basic criterion based on broadness of cblk

P2D

INT P2D(INT cblknum,
INT procnbr,
const SymbolMatrix *symbptr,
const ExtraSymbolMatrix * const extrasymbptr,
const Dof *dofptr,
INT nseq,
const BlendCtrl *ctrl)

Criterion based on overhead du to the splitting

virtualSplit

void virtualSplit(INT nseq,
INT bloknbr,
const SymbolBlok *src_bloktab,
INT *indtab,
SymbolBlok *dest_bloktab)

OIMBE TO DO: le calcul total du cout splitter peut etre bp plus rapide en groupant les calculs sur les odb dans les cblk decouper *

cblkCost

double cblkCost(INT bloknbr,
const SymbolBlok *bloktab,
const Dof *dofptr)

Assure that cblkComputeCost and cblkCost compute the same things !!!!

cblkNbr

INT cblkNbr(INT cblknum,
const SymbolMatrix *symbptr,
const ExtraSymbolMatrix *extrasymbptr)

compute for each odb its contribution compute cost and add cost

build_cblk

void build_cblk(INT cblknum,
const SymbolMatrix *symbptr,
const ExtraSymbolMatrix *extrasymbptr,
SymbolBlok *bloktab)
INT splitSeqCblk2D(
   INT cblknum,
   INT procnbr,
   const SymbolMatrix *symbptr,
   const ExtraSymbolMatrix *extrasymbptr,
   const Dof *dofptr,
   const BlendCtrl *ctrl,
   INT (*P)(INT, INT, const SymbolMatrix *,const ExtraSymbolMatrix *, const Dof *, INT, const BlendCtrl *)
)
INT P1D(INT cblknum,
INT procnbr,
const SymbolMatrix *symbptr,
const ExtraSymbolMatrix * const extrasymbptr,
const Dof *dofptr,
INT nseq,
const BlendCtrl *ctrl)
Basic criterion based on broadness of cblk
INT P2D(INT cblknum,
INT procnbr,
const SymbolMatrix *symbptr,
const ExtraSymbolMatrix * const extrasymbptr,
const Dof *dofptr,
INT nseq,
const BlendCtrl *ctrl)
Criterion based on overhead du to the splitting
void virtualSplit(INT nseq,
INT bloknbr,
const SymbolBlok *src_bloktab,
INT *indtab,
SymbolBlok *dest_bloktab)
OIMBE TO DO: le calcul total du cout splitter peut etre bp plus rapide en groupant les calculs sur les odb dans les cblk decouper *
double cblkCost(INT bloknbr,
const SymbolBlok *bloktab,
const Dof *dofptr)
Assure that cblkComputeCost and cblkCost compute the same things !!!!
INT cblkNbr(INT cblknum,
const SymbolMatrix *symbptr,
const ExtraSymbolMatrix *extrasymbptr)
compute for each odb its contribution compute cost and add cost
void build_cblk(INT cblknum,
const SymbolMatrix *symbptr,
const ExtraSymbolMatrix *extrasymbptr,
SymbolBlok *bloktab)
Close