タグ

pthreadに関するsleepy_yoshiのブックマーク (4)

  • 並列処理 OpenMP と pthread を比較してみた - ますぽんの雑記

    プログラム並列処理はいくつか方法がある。有名所を挙げれば Boost、Java、pthread、OpenMP、MPI、NSOperation、Windows Thread などなど…. その中で、OpenMP と pthread が使えるようになったので比較してみた。今回は円周率πを両手法で効率良く計算することを目指す。使用する並列化の理論の元となる数式は で、積分範囲をスレッド毎に分割することで高速化を実現する。まずは OpenMP を用いたコード #include #include #include #define F(X) 4.0L/(1.0L+(X)*(X)) #define THREAD 2 #define ITERATION 100000000 int main(int argc, char *argv[]) { long double x0, x1, h, sum =

  • 最近のCPUの同期性能を調べてみた - maropuのメモ墓場

    この前調べごとをしているときにpthread_spinlockなるものがあることを知った. その時にpthread_mutex_lockとどちらを使えばいいんだろう?と疑問に思ったので少し調べてみた. 結果から言えば,たいていの場合はpthread_mutex_lockで良い,という安易な結果になってしまった. /*--- 以下詳細 ---*/ 一般論ではロック期間が短いときにspinlockのほうが良い、といわれるので期間が短いロックにおける簡単な性能評価を行った. 使ったプログラムは以下. https://github.com/maropu/lockbench 単一アドレス上に存在する値を同期的にインクリメントするだけの簡単なプログラム.評価指標はthread数(# of threads/x-axis)を変化させた場合の,clock()が返す単体tickあたりの平均インクリメント回数(

    最近のCPUの同期性能を調べてみた - maropuのメモ墓場
  • C++とthread - PukiWiki

    2010-12-12 Javaの復習 JavaC++ JavaのFrame Javaの復習(2) 2010-11-29 メールの保存 Hirofumi Fujii Start Page 2010-11-19 C++のiostream C++のiostream感想-その3- 2010-11-18 C++のiostream感想-その2- 2010-05-30 標準入出力のバイナリモード 2010-05-26 MinGWについて 2010-05-21 C++入門第一回(2) C++入門第一回 画像添付 2010-01-13 gnuplot の iostream 化 C++ iostream 実装例 その 7 C++ iostream 実装例 その 6 C++ iostream 実装例 その 3 2010-01-07 乱数の例題(3) 乱数の例題(2) 藤井のスタートページ 有用リンク http

  • atomic operation どころか mutex もわかってなかったという話 2011-09-05 - 兼雑記

    read write lock ってものがあります。 pthread だと pthread_rwlock_t 。コレの私の思ってたセマンティクスは以下のようなもんです。 writer lock を取ると普通の mutex lock みたいな感じ。その thread が unlock するまで、以降の reader lock と writer lock は block する。 reader lock を取ると、それ以降の writer lock は block する。 reader lock は block せずに取れる これは glibc の pthread のデフォルトの挙動なんですが、これは変えられるし、 POSIX によると環境によって違う挙動をすることもあるらしい、ってのを知りませんでした。 どういう時の挙動が変わるかというと、 reader lock が取られてて、 writer

    atomic operation どころか mutex もわかってなかったという話 2011-09-05 - 兼雑記
  • 1