LoginSignup
1
0

More than 1 year has passed since last update.

TypeHintがPythonの高速化に貢献していくとよいな

Posted at

結論から述べると、mypycに、効果的な高速化への期待は難しいんじゃないかと思う。

ですが、シームレスに少しは早くなるのは、ecosystem的には良いことかと思います。

ただ、既にCythonが進んでいる。そのため、mypycとCythonが重複した選択肢となる。なんとか協調してより開発を進めて頂きたい。


残念ながら、TypeHintを付記するだけで高速化しない(2022.07現在)。期待された人は多いかと思うが(私もその一人)。

しかし、C言語へトランスコードして高速化するmypycが開発がされています。

mypycの名前でお察しの方/既知の方いらっしゃるとおもいますが、MyPyプラグインと協調して行くスタイルのようです。

メリット

  1. C言語化に必要な型を指定を、デフォルトtypingの型で指定できる。
    1. つまり、TypeHintを付記する、と、その型に基づいてC言語化の際の型指定ができ、後付で型指定が不要。
  2. 標準化しつつ有るMyPyで型付けされたコードを、Py->C言語コードへのトランスコードを適切かつシームレス化する意図なのでしょう。
    1. 既にCythonがあります。Cython専用のTypeHintを使わなくても、デフォルトのTypeHint(typing)でトランスコードの型最適化できるのはよいかもしれません。

ただ、Cythonのサイトに記載されたPure Pythonモードでは高速化できるのは20-60%らしいので、mypycでも大幅な高速化は難しいんじゃないかと思う。
トランスコードだけではなく、最適化はPyPyが進んでいるように思います。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0