no parallel multiplies allocate new shared memory for output variable
modified test
modified speed test