タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

multicoreprogrammingに関するallegroのブックマーク (3)

  • Python 2.6 multiprocessing package を触ってみた。 [GIL回避] | Tricorn Tech Labs

    Tricorn Tech Labs はメールや LINE を用いた Web マーケティング SaaS に強みを持つトライコーン技術者によるブログです。 oktです。 普段、並列処理のプログラムを書くことは滅多にないんですが、今後のために GIL(Global Interpreter Lock) による影響を軽く確認しておこうと思ったのと、Python2.6 で実装されたmultiprocessing パッケージに触れておこうという事でネタにしてみました。 PythonRubyでマルチスレッドな並列処理を書こうと思ったらGILの問題にぶち当たります。 最近のサーバでは2コア4コアが当たり前なのですが、GILの問題があると複数のCPUを有効利用できません。それを以下の言語とサンプルコードを使って状況確認します。 サンプルコードは、0から100,000,000までインクリメントするスレッドを4

    Python 2.6 multiprocessing package を触ってみた。 [GIL回避] | Tricorn Tech Labs
    allegro
    allegro 2009/10/22
    import multiprocessingすごい!でもRuby 1.9.1のほうがすごい
  • Inside Python GIL - kuenishi's blog

    Pythonインタプリタのスレッド周りはどうなっているのかなぁと気になり始めて、pythonドキュメントの該当しそうな部分とか、mod_pythonの仕組みとかmod_wsgiの仕組みとか調べていた。というのも、Erlangサーバ上で動くPython処理系なんかがあればいいなぁと妄想していました。いずれも、基的にはMPMだろうが何だろうがサブインタプリタをリクエスト毎に作って破棄する、というようなノリでした。そりゃあ遅そうだ…と思い、Tornadoなんかはそこを解決しているんだろうけど、シンプル過ぎて泣けるとかそういうことを思っていました*1。んで、なんかやってみようかなぁと思っていたのです。で、pthread上でPythonを並列で動かしたらどうなるだろうなぁ、GILとかあるし、threadingモジュールはOSの機能を使うって書いてあるからpthreadでマルチコア使ってくれるのかな

    Inside Python GIL - kuenishi's blog
    allegro
    allegro 2009/10/22
    GIL((Global Interpreter Lock)のおかげでなんちゃらかんちゃら
  • Parallel Python - 最適化問題に対する超高速&安定計算

    Parallel Python を使うと Python から簡単にジョブ並列(タスク並列)を行うことができる。以下のような環境で使用することができる。Linux マシン(クラスタ)で試したみたところ、確かに簡単に出来た。 1: SMP(マルチコアも含む)のマシンで並列計算 2: クラスタ計算機上での並列計算 (1も含む) Parallel Python をダウンロードページから入手して、展開した後に python setup.py install とすればインストールは終わり(管理者権限のユーザで行う必要あり)。サンプルファイルとして配布されている sum_primes.py を用いてみよう。 1 の場合: python sum_primes.py [ncpus] とすれば良い。[ncpus] は同時に使用する CPU(コア) の数。 1CPU : 5.731s 2CPU : 3.012s

    Parallel Python - 最適化問題に対する超高速&安定計算
    allegro
    allegro 2009/10/22
    parallel python
  • 1