タグ

2022年9月7日のブックマーク (2件)

  • Python 3.11の新機能(その2) 特殊化適応的インタープリタ - python.jp

    特殊化適応的インタープリタ(PEP 659: Specializing Adaptive Interpreter) は、 Python 3.11の新機能(その1) CPython高速化計画 で紹介した CPython 高速化計画 の一環として導入された新機能で、実行中にプログラムをより効率的な処理に書き換えて高速化する仕組みです。 バイトコード¶Pythonはプログラムを実行するとき、ソースコードをコンパイルしてバイトコードと呼ばれる実行用のデータを生成します。例えば、次の関数 func_add() は、次のようなバイトコードに変換されます(Python 3.10の場合)。関数のバイトコードは、dis.dis()関数 で出力できます。 >>> dis.dis(func_add) 2 0 LOAD_FAST 0 (a) 2 LOAD_FAST 1 (b) 4 BINARY_ADD 6 RET

    sonots
    sonots 2022/09/07
    これを考慮したコードの書き方だったり、warmupが必要な世界観になりそう?
  • Python 3.11の新機能(その1) CPython高速化計画 - python.jp

    今年も、Pythonのメジャーリリースの季節がやってまいりました。2022年10月3日にリリース予定となっているPython 3.11の新機能を紹介します。 CPython 高速化計画¶Python 3.11で最大のニュースは、なんと言っても Faster CPython: CPython 高速化計画 が開始されたことでしょう。 CPython 高速化計画は、Mark Shannon氏が提案したプランに基づいてPythonの高速化を行うもので、Pythonを毎年50%高速化し、互換性を保ちつつ 4年間で5倍高速化する ことを目標としています。 この計画はMicrosoft社の出資を獲得し、Pythonの父であるGuido van Rossum氏も加わって開発が進められています。 ベンチマーク¶さて、CPython 高速化計画最初のリリースとなるPython 3.11では、どの程度の高速化が

    Python 3.11の新機能(その1) CPython高速化計画 - python.jp
    sonots
    sonots 2022/09/07
    要チェックやで