xianyi/OpenBLAS — Issue #71: Speed issue with multiple processors (bug?)
Author: ElEd2
Created: 2011-11-20 21:35:26+00:00
State: open

Hi,

Not entirely sure this is a bug. I've been doing some tests comparing compiled ATLAS vs compiled OpenBLAS on a dualcore Kubuntu laptop. I found that running a large loop doing matrix operations (mat multiplications and inverse calculations) with small (25x25) matrices is around 5 times slower with two processors than with one (using export OPENBLAS_NUM_THREADS=1) .
When I did some profiling (google-pprof) I found that the function that used up most the time is:
__Sched_yield
I know nothing about multithread stuff, but seems like there is some kind of thread queuing problem or similar.
Is this expected behaviour or is it a bug? Compiled ATLAS doesn't seem to have this problem.
The tests I have done with large matrices (1000x1000) seem faster with multithread OpenBLAS.

Cheers,
Ed