PyPy! - PyPy Advend Calendar
今年も Advent Calendar の季節が始まりました。この記事は Python を高速化するソリューション PyPy の Advent Calendar の記事です。最初なので、簡単に PyPy の概要と PyPy-ja のご紹介をしたいと思います。
>>>> PyPy ってなんなの?
PyPy は Python 2.7.1 互換の高速な処理系です。現在、着々と py3k 対応の開発も進んでいます。Python 標準処理系である CPython と比較して以下のような特徴があります。
>>>> PyPy-ja ってなんなの?
巷では "PyPy 闇の軍団" と呼ばれています。あーみんファンクラブです。公式ドキュメントの翻訳や PyPy 技術情報の共有等を中心に活動しています。詳細は以下のページを参考にしてください。
ご興味ごおありの方は是非コミュニティに参加してください。1 人でも多くの PyPy ユーザが増えるといいなーと思ってます。
>>>> PyPy ってなんなの?
PyPy は Python 2.7.1 互換の高速な処理系です。現在、着々と py3k 対応の開発も進んでいます。Python 標準処理系である CPython と比較して以下のような特徴があります。
- 速度: とにかく速いです。JIT パワーです。CPython と PyPy の速度はここに公開されています。現在は CPython の 5 倍ぐらい速いですね。特定の環境では Java より速いという計測結果もあります。ちなみに先日 Win32 環境で同じ計測をしましたが、Win32 環境では pypy 1.6 以降で Java よりも高速という結果がでましたよ。残念ながら 1.7 より 1.6 の方が高速という結果でしたが。。。
- メモリ使用量: 多い。ほんとにメモリ食います。JIT の作者 Antonio 氏に Python 生みの親の
Guide (oh...)Guido 氏が "PyPy の JIT はなんで速いの?" と質問した時に、"オブジェクトが持っているデータをメモリ上の固定位置に配置してるのが効いているみたい" と答えたとのことです (ats さんのブログより)。なるほど。 - 互換性: 一部制限がありますが Python との互換性は高いです。1.7 になってさらに互換性が高まっています。動作する Python ライブラリはここにまとまっています。"このライブラリも動いたよ!" って方は是非この Wiki を編集してみてください。Django, Flask, Pyramid などのメジャー Web アプリケーションフレームワークや Twisted や Sphinx も動作しますよ!逆に C 拡張を含むライブラリは動作しないものが多いです。1.7 からは numpy も numpypy として動作するようになり、今後対応するライブラリがどんどん増えていきますよ!
- スタックレス: スタックレスの軽量な擬似的スレッドによる並列処理ができます。
>>>> PyPy-ja ってなんなの?
巷では "PyPy 闇の軍団" と呼ばれています。
- PyPy-ja @ Google Groups: メーリングリスト
- PyPy-ja @ Google Sites: 活動内容等のまとめ
- PyPy-ja @ Lingr: 公開チャット (Skype チャットの方が盛り上がってます)
- 翻訳リポジトリ: ぜひ!
- PyPy Status Blog (日本語訳)
- Twitter ハッシュタグ: #pypyja
ご興味ごおありの方は是非コミュニティに参加してください。1 人でも多くの PyPy ユーザが増えるといいなーと思ってます。
×Guide 氏 ○Guido
返信削除oh... ありがとうございます。
返信削除