今回の実験でわかったことは次のこと。
OpenMP で生成したスレッドは、コアを 数十% ほどしか専有せず、本気で実行してくれない。そのためコア数以上のスレッドを起動させても、性能が伸びるが効率は pthreads に比べ非常に悪くなってしまう。
プロセスの優先度を設定することで、もしかしたら改善できるかもしれない(未確認)が、そこまでするなら、素直に Pthreads でいいだろう。
OpenMP で生成したスレッドは、コアを 数十% ほどしか専有せず、本気で実行してくれない。そのためコア数以上のスレッドを起動させても、性能が伸びるが効率は pthreads に比べ非常に悪くなってしまう。
プロセスの優先度を設定することで、もしかしたら改善できるかもしれない(未確認)が、そこまでするなら、素直に Pthreads でいいだろう。