David, Can you confirm that += is not thread safe but + is? I'm assuming + allocates a new object for the write, while += doesn't.
Thanks! RJ On Wed, Sep 3, 2014 at 2:50 PM, David Hall <d...@cs.berkeley.edu> wrote: > In general, in Breeze we allocate separate work arrays for each call to > lapack, so it should be fine. In general concurrent modification isn't > thread safe of course, but things that "ought" to be thread safe really > should be. > > > On Wed, Sep 3, 2014 at 10:41 AM, RJ Nowling <rnowl...@gmail.com> wrote: > >> No, it's not in all cases. Since Breeze uses lapack under the hood, >> changes to memory between different threads is bad. >> >> There's actually a potential bug in the KMeans code where it uses += >> instead of +. >> >> >> On Wed, Sep 3, 2014 at 1:26 PM, Ulanov, Alexander < >> alexander.ula...@hp.com> >> wrote: >> >> > Hi, >> > >> > Is breeze library called thread safe from Spark mllib code in case when >> > native libs for blas and lapack are used? Might it be an issue when >> running >> > Spark locally? >> > >> > Best regards, Alexander >> > --------------------------------------------------------------------- >> > To unsubscribe, e-mail: dev-unsubscr...@spark.apache.org >> > For additional commands, e-mail: dev-h...@spark.apache.org >> > >> > >> >> >> -- >> em rnowl...@gmail.com >> c 954.496.2314 >> > > -- em rnowl...@gmail.com c 954.496.2314