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 <[email protected]> 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 <[email protected]> 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 <
>> [email protected]>
>> 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: [email protected]
>> > For additional commands, e-mail: [email protected]
>> >
>> >
>>
>>
>> --
>> em [email protected]
>> c 954.496.2314
>>
>
>


-- 
em [email protected]
c 954.496.2314

Reply via email to