読者です 読者をやめる 読者になる 読者になる

Kesin's diary

プログラミングの記事がメインです

Pool.imap()について

前回multiprocessingのPoolクラスの使い方を書いたのですが、執筆当時はイテレータについてよく分かってなくて、imap()が投げっぱなしだったのでそれについての補足です。 1. イテレータについて imap()の補足をする前にイテレータについて説明します。Wikip…

Python multiprocessing

前回Pythonでの並列化についてちょっと書いているうちに興味が湧いてきたのでもう少し掘り下げてみます。 Python2.6から標準モジュールになったmultiprocessingのリファレンスから並列に実行させるクラスについて色々試してみました。プロセッサ間の連携や共…

マルチコアで形態素解析を行う2(multiprocessing編)

前回の続きで今回はPythonで形態素解析をマルチコアで行うプログラムを実際に書いてみます。私自身multiprocessingモジュールはまだ全然理解できていませんが、並列に実行するプログラムを書くには Processクラス Poolクラス を使う必要があるようです。おそ…

マルチコアで形態素解析を行う1(プロファイリング編)

Pythonにはプロファイラというものが標準で付いていることを知りました。プロファイラを使用すると関数ごとの呼び出し回数や処理時間が計測できるので、どの部分が処理時間の足を引っ張ってるのかが簡単に分かります。無駄なループなどをコードとにらめっこ…

実行に時間がかかるスクリプトを並列実行するには

linuxで実行に時間がかかるスクリプトをいくつも実行する場合、マルチコアCPUならば並列実行して時間を短縮することができます。その方法とは、 % コマンド1 & コマンド2これだけです。&を付けると別プロセスでバックグラウンドで実行するので簡単に並列化…