これは PyPy Advent Calendar の記事です。PyPyのコアディベロッパーである "Maciej Fijalkowski" 氏のブログ "Analysing python's performance under PyPy" の抄訳+αです。 Python の一般的なパフォーマン解析のモデルは、"プロファイラを実行して、ボトルネックを探し出し、それを最適化するか C で書き直す" ことです。しかし PyPy ではこのアプローチだけでは不十分です。なぜなら、 多くの大規模アプリケーションで、プロファイラはフラットです: PyPy のトランスレーションツールチェーン、Twisted、モダンな Web サーバ等が良い例です ボトルネックを発見したとしても、それが特定の関数内でのみ遅いのか、複数の関数が関係しているのか明確になるわけではありません。どうすれば遅くて、どうすれば速くなる
![PyPy における Python のパフォーマンスチューニング](https://cdn-ak-scissors.b.st-hatena.com/image/square/ff6c527c4c06efecf562b6afc232806110a0e22d/height=288;version=1;width=512/https%3A%2F%2Fblogger.googleusercontent.com%2Fimg%2Fb%2FR29vZ2xl%2FAVvXsEg7NwHMfKgnQXC_gkFFs6NzFiYlk1w5keyB0_UuaMkcFWrqy2I81jjty2sx_JB3_V7w_DOZUD36gyOMoUUc5ayEV61Nu8wtFDTM6PPjGk82Vj-h7JU7QIty4atB9kT91AxgMbB4%2Fw1200-h630-p-k-no-nu%2Fjitviewer.png)