PR:この記事にはアフィリエイトリンクが含まれます。
PythonでCPU処理を速くしたいとき、multiprocessingはまず検討したい手段です。ProcessPoolExecutorを使えば、仕事を複数のプロセスに分けるコードを比較的簡潔に書けます。ただ、処理の分け方によっては並列化で時間が延びることもあります。
本ごとに得意な内容は違います。Pythonの基礎を学ぶ本もあれば、性能計測を扱う本もあります。Executorの実装を知りたい人には、該当する内容が詳しい本が役立ちます。実務で迷いやすい点も含め、四冊の特色を見ていきます。
早見表
並列処理の仕組みに加えて、計測やデータの受け渡しも扱う本なら、実務の疑問を調べやすくなります。
各書の主な内容と参考価格を表にまとめました。対象読者や学べる範囲も比べられます。
| 本 | 主な内容 | 向いている読者 | 参考価格 |
|---|---|---|---|
ハイパフォーマンスPython 第2版 | 計測、プロセス間通信、NumPyデータ共有 | 性能改善を実践したい人 | 4,290円(税込) |
Fluent Python 第2版 | GIL、プロセスプール、Executorの実験 | 中上級者 | 7,700円(税込) |
入門 Python 3 第3版 | Python基礎と並行処理、演習問題 | 初学者、学び直したい人 | 4,620円(税込) |
| Deep Dive Python: Techniques and Best Practices for Developers | GIL、IPC、Executor、起動方式 | 英語で深く学びたい経験者 | €59.99(VAT別) |
円の価格は税込の参考価格です。実売価格は時期や販売店によって変わります。Deep Dive Pythonの価格はユーロ建てで59.99ユーロ、VAT別です。
CPU処理の基礎
画像の一括変換や数値計算、大量データを使う探索はCPUを長く使う仕事です。複数のコアに処理を分ければ短縮できる場合があります。まずはCPU計算と入出力のどちらに時間がかかるか確かめましょう。
通常のCPythonではGILの影響があり、複数スレッドを使っても純粋なPythonコードのCPU計算が同時に進むとは限りません。multiprocessingなら別々のPython実行環境で並行して処理を進められます。
プロセスはそれぞれ独立したメモリ空間を持ちます。仕事を渡すときには引数を直列化し、終了後に結果を受け取ります。準備と転送にも時間を取られます。
処理を細かく分けすぎると、並列化の管理コストが計算時間を上回ることがあります。処理単位を適度にまとめ、一件あたりの計算量を確保しましょう。
実務上の注意点
ProcessPoolExecutorの関数を定義したら、実際のスクリプトから起動して確かめましょう。対話シェルやノートブックでは関数の読み込み方が異なり、スクリプトと同じように動かない場合があります。
プロセス間で大きな配列やオブジェクトを繰り返し渡すと、コピーや直列化の負担が増えます。NumPy配列のような大きなデータでは共有メモリの利用も検討できます。計算より転送に時間がかかる設計は避けたいですね。
ワーカー数を増やせば必ず速くなるわけではありません。メモリを多く使う処理やCPUコア数を超えるワーカーでは、切り替えや資源競合によって逆に遅くなることがあります。少数から測り、段階的に増やしましょう。
Futureを使う場合、結果を取得する箇所で例外が表面化します。親プロセス側で例外を扱うと、失敗した仕事を追いやすくなります。入力条件もログに残すと、原因を調べるときに役立ちます。
性能を追う一冊
『ハイパフォーマンスPython 第2版』は性能を測ってから改善したい人におすすめです。Micha GorelickとIan Ozsvald著、中山光樹訳。2023年4月刊の452ページで、対象読者は中級以上のPythonプログラマーです。
時間計測やcProfile、line_profilerによる調査を扱います。プロセスとスレッドを使った計算、キュー、プロセス間通信も取り上げ、性能を調べる方法を学べます。
NumPyデータの共有も扱うため、大きな数値データを処理する人にも役立ちます。参考価格は4,290円(税込)です。計測とmultiprocessingを一緒に学びたい実務者には、この本がおすすめです。
実行器を学ぶ一冊
『Fluent Python 第2版』はPythonの機能を深く学びたい中上級者におすすめです。Luciano Ramalho著、牧野聡訳。2025年11月刊で992ページあり、GILの影響やネイティブなプロセスプールを扱います。
ProcessPoolExecutorを含むconcurrent.futuresでは、Executor.mapの実験に加えて、進捗表示やエラー処理も解説します。プロセス数を変え、所要時間を比べる実験もあります。性能差を自分で確かめたい人にすすめる内容です。
参考価格は7,700円(税込)です。日本語の三冊では最も高く、ページ数も最多です。並列処理をじっくり学びたい中上級者におすすめします。
基礎をつなぐ一冊
『入門 Python 3 第3版』はPythonの基礎から並行処理まで学びたい人におすすめです。Bill Lubanovic著、鈴木駿監訳、長尾高弘訳。2026年6月刊の800ページで、Python 3.14に対応しています。
並行処理の章ではmultiprocessingによるプロセス作成やマルチプロセス、GIL、concurrent.futuresを扱います。復習問題と演習問題があり、読み進めながら知識を確かめられます。
参考価格は4,620円(税込)です。Pythonを学び始めた人や基本文法から並行処理まで知りたい人には、この本をおすすめします。Executorの詳しい挙動だけを知りたい経験者には、専門性の高い本をおすすめします。
英語で掘る一冊
『Deep Dive Python: Techniques and Best Practices for Developers』は英語で専門書を読める経験者におすすめです。Adarsh Divakaran著。2025年8月刊で756ページ、Softcoverの紙版です。
GILやmultiprocessingの用途を扱います。ValueやArrayによる共有に加え、PipeやQueueでの通信、Managerの利用方法も解説します。ProcessPoolExecutorの例に加え、multiprocessing.Poolとの比較、結果や例外の処理も取り上げています。
spawn、fork、forkserverの起動方式と設定方法も解説します。参考価格は59.99ユーロでVAT別。英語でIPCやプロセス起動方式まで学びたい経験者には、この本をおすすめします。
結論
Pythonを始めたばかりなら、演習のある『入門 Python 3 第3版』から読むのがおすすめです。性能の原因を調べたい実務者には『ハイパフォーマンスPython 第2版』、Executorの実験やエラー処理まで深めたい中上級者には『Fluent Python 第2版』が合います。
英語で読み進められ、IPCやspawn・fork・forkserverまで学びたい経験者には『Deep Dive Python』をおすすめします。実際の処理を逐次実行と並列実行で測り、データ転送とプロセス数も含めて考えると、学んだ内容を仕事に活かせます。
価格はいずれも参考価格で、実売価格は販売時期や店によって変わります。いま解決したい課題に合う一冊を手に取ってください。
Amazon の PC をスコア化してみた
Amazonにある8〜14インチの小型WindowsタブレットやノートPCを、スペック別にスコア化して比較・ランキング。




