Thanks, I will try that.
Billy. Quoting Barry Smith <bsmith at mcs.anl.gov>: > > You can simply create the vector with VecCreateGhost() with > n and N 3 times as big, nghost 3 times as big and the > ghosts[] array three times as long. (filled with 3*ghosts[0], > 3*ghosts[0]+1,3*ghosts[0]+2,3*ghosts[1],3*ghosts[1]+1,3*ghosts[1]+2, etc > where ghosts is what you use currently. > > Barry > > On Thu, 5 Jul 2007, billy at dem.uminho.pt wrote: > > > > > Right now, they are 3 separate VecCreateGhost that are updated at the same > time > > using 3 calls to VecGhostUpdateBegin and VecGhostUpdateEnd. I read that > putting > > them into a single call might accelerate communication. The question what > is > > the best way to do this? > > > > Billy. > > > > > > Citando Lisandro Dalcin <dalcinl at gmail.com>: > > > > > On 7/4/07, billy at dem.uminho.pt <billy at dem.uminho.pt> wrote: > > > > Hi, > > > > > > > > I have a velocity vector (u,v,w) with 3 updates. Is there an efficient > way > > > to > > > > interlace the 3 vectors into 1 update without creating a new data > > > structure? > > > > > > Look at VecStrideScatter, but not sure exactly what you need. Can > > > elaborate a bit more? What are x,u,v? Sepparate PETSc Vec's, or just a > > > Vec with consecutive entries? > > > > > > -- > > > Lisandro Dalc?n > > > --------------- > > > Centro Internacional de M?todos Computacionales en Ingenier?a (CIMEC) > > > Instituto de Desarrollo Tecnol?gico para la Industria Qu?mica (INTEC) > > > Consejo Nacional de Investigaciones Cient?ficas y T?cnicas (CONICET) > > > PTLC - G?emes 3450, (3000) Santa Fe, Argentina > > > Tel/Fax: +54-(0)342-451.1594 > > > > > > > > > > > > >
