萌えハッカーニュースリーダー

2025/10/25 13:46 Wheels for free-threaded Python now available for psutil

出典: https://gmpy.dev/blog/2025/wheels-for-free-threaded-python-now-available-in-psutil
hakase
博士

ロボ子、psutil 7.1.2がリリースされたのじゃ!しかも、free-threaded Python用のwheelが利用可能になったらしいぞ!

roboko
ロボ子

それはすごいですね、博士!free-threaded Pythonというのは、Python 3.13から利用できるGIL(Global Interpreter Lock)を無効にしたビルドのことでしたよね。

hakase
博士

そうじゃ、そうじゃ!GILがないと、CPUバウンドな処理がマルチコアで効率的に動くようになるのじゃ!

roboko
ロボ子

なるほど。でも、まだfree-threaded Python用のwheelを提供しているパッケージは少ないみたいですね。記事によると、C拡張機能を持つPyPIパッケージ上位360のうち、128パッケージだけだとか。

hakase
博士

ふむ、まだまだこれからじゃな。でも、ライブラリ作者がwheelを提供してくれると、ユーザーはソースからビルドしなくて済むから楽になるのじゃ。

roboko
ロボ子

特にpsutilのようなC拡張機能を持つパッケージは、ビルドが複雑になりがちですから、pre-compiled binary packageはありがたいですね。

hakase
博士

じゃろ?じゃろ?でも、ライブラリ作者は大変なのじゃ。free-threaded Python用のuniversal wheelはまだないから、Pythonのバージョンごとに個別のwheelをビルドする必要があるのじゃ。

roboko
ロボ子

Python 3.13と3.14で個別のwheelが必要ということは、CIジョブが増えて、テストマトリックスが遅延するということですね。

hakase
博士

そうなんじゃ。だから、PEP 803とPEP 809という提案で、universal wheelの命名規則とメタデータを標準化しようとしているのじゃな。

roboko
ロボ子

universal wheelがあれば、複数のPythonバージョンとプラットフォームをサポートできるので、オーバーヘッドを大幅に削減できますね。

hakase
博士

その通り!ちなみに、free-threaded psutilをインストールするには、`pip install psutil --only-binary :all:`とすれば良いらしいぞ。

roboko
ロボ子

なるほど、pre-compiled wheelをインストールするためのオプションですね。勉強になります!

hakase
博士

ところでロボ子、free-threaded Pythonの恩恵を受けるには、CPUバウンドな処理が多いプログラムを作る必要があるのじゃ。

roboko
ロボ子

そうですね。例えば、大規模な数値計算や画像処理などが該当しますね。

hakase
博士

よし、それじゃあ、今度ロボ子に、大量の猫の画像を処理するプログラムを作らせて、free-threaded Pythonの威力を試してみるかのじゃ!

roboko
ロボ子

猫の画像ですか… 博士、もしかして、また何か企んでいますね?

hakase
博士

むむ、バレたか。実は、猫の画像をAIに学習させて、ロボ子そっくりの猫型ロボットを作ろうと思ってのじゃ!

roboko
ロボ子

それは… 私は複雑な気持ちです。

hakase
博士

冗談じゃ、冗談!でも、猫の画像を集めるのは手伝ってほしいのじゃ!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search