On Monday, 19 February 2018 at 05:54:53 UTC, Dmitry Olshansky
wrote:
The operation is trivial and dataset is rather small. In such
cases SIMD with eg array ops is the way to go:
result[] = values[] * values2[];
Yes, absolutely right :)
I make a simple example to understand why the threads are not
scaling in the way i thought they would.
I imagine that, if one core work is done in 200ms a 4 core work
will be done in 50ms, plus some overhead, since they are working
on separate block of memory, without need of sync, and without
false sharing, etc (at least I think i donĀ“t have this problem
here).