タグ

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

  • 関連タグはありません

タグの絞り込みを解除

Pythonとmultiprocessingに関するAutomatorのブックマーク (2)

  • [Python]multiprocessingを使ったオセロ

    Pythonのmultiprocessingを使ってオセロの分散並列処理をやってみました。 サーバのキューに登録されるタスクをクライアントが黙々と計算して結果を返します。 構成はこんな感じです。 server.py タスク配布用と結果受け取り用のキューを持っているサーバ。 Othello.py オセロの探索を行うクラス。 game.py Othelloのサブクラス。オセロの探索対象の局面をサーバのキューに登録するクラス。 client.py Othelloのサブクラス。キューに入ったタスクを探索して、評価値を返すクラス。 game_launcher.py ユーザからの入力を受け取ってgameに初期条件等を与える。 使い方は サーバでserver.pyを立ち上げる クライアントでclient.pyを立ち上げる クライアントorサーバでgame_launcher.pyを立ち上げる あとはプロン

  • 第5回 multiprocessingモジュールによるプロセス間通信 | gihyo.jp

    multiprocessingモジュール multiprocessingモジュールは、Python2系列では2.6以降、3系列では3.0以降に標準となったモジュールです。このモジュールはthreadingモジュールに似たAPIでプロセス間通信などの機能を提供します。このモジュールにより、GILの問題を回避することができ、複数のCPUCPUコアの性能を生かすことができます。また、このモジュールはローカルのみならず、リモートでのプロセス間通信も行うことが可能で、簡単に分散処理などを実装することができます。 まず、GIL(Global Interpreter Lock)とはPythonのインタプリタ上で一度に1つのスレッドだけが動作するよう保証するためのロックです。このロックによって、同時に同じメモリにアクセスするスレッドが存在しないことを保証します。 しかしながら、このロックによって、一度に

    第5回 multiprocessingモジュールによるプロセス間通信 | gihyo.jp
  • 1