Okay, thanks On Tue, May 19, 2015 at 4:43 PM, Matthew Knepley <[email protected]> wrote:
> On Tue, May 19, 2015 at 4:30 PM, Justin Chang <[email protected]> wrote: > >> Hi everyone, >> >> To somewhat follow up on a previous mail, I have a few questions >> regarding the total bytes transferred for the following Vec operations >> (assuming Vec size N and sequential mode): >> >> VecTDot() >> VecDot() >> VecNorm() >> VecScale() >> VecSet() >> VecAXPY() >> VecAYPX() >> VecWAXPY >> VecPointwiseMult() >> >> 1) for the first three operations, I am loading two vectors so that's >> 2*N*8 bytes transferred. For storing, am I simply storing one scalar? Or am >> I individually storing all N components as they are being summed up? >> > > First 2 operations. No need to count the store of 1 scalar. > > >> 2) for the next five operations where I now have a scalar, am I loading >> it only once or is it loaded N times? >> > > Once, so don't bother counting. > > >> 3) Do any of the above operations "overlap" or depend on one another? For >> instance if my solver invokes VecTDot X times does it also >> invoke, say, VecPointwiseMult X times? >> > > No. > > Thanks, > > Matt > > >> This is all theoretically speaking (i.e., assuming I am bypassing the >> cache and write-allocate policy). >> >> Thanks, >> Justin >> >> >> >> > > > -- > 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 >
