On Mon, Sep 23, 2013 at 12:25 PM, Jed Brown <[email protected]> wrote:
> Barry Smith <[email protected]> writes: > > So we then freely change the thread offsets in the layout based on > > the matrix entries? > > I would prefer to only allow it before PetscLayoutSetUp. > > > This means the Vec and Mat Layouts have to be same? This is true if > > the Vecs are obtained with MatGetVecs() after the matrix is created > > but not if the Vecs are created independently. Of for the MatMult > > do you just use the thread offsets from the Mat layout and ignore > > the Vec layout if it is different? > > If they are different, I would ignore the Vec layout. (Favor load > balance and NUMA distribution of the matrix over NUMA distribution of > the Vec.) > I am not sold on this interface. The weight really belongs in the partitioning engine, or whatever gets fed to it. PetscLayout is the structure that is produced after the fact. I don't think the weight goes there. Matt -- What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead. -- Norbert Wiener
