I consider that VecScale() has to be considered a collective that requires 
all processors to pass the same value for the scalar in the same way that 
VecAXPY() is a collective operation that requires the same value for alpha. The 
reason is that though you can pass in different values on different processes 
or not call it on some processes it has no well defined mathematical meaning in 
that case since there result depends on the vector layout across processors. In 
fact I'd like to put a error check that does a global collective and make sure 
that the value pass in on all processes is the same in debug mode.

   Barry


Reply via email to