SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

CodeZineニュース

Wasmer.io、Pythonで書かれたコードをWebAssemblyに変換する「py2wasm」を発表

  • このエントリーをはてなブックマークに追加

  • このエントリーをはてなブックマークに追加

 Wasmer.ioは、Pythonで書かれたコードをWebAssemblyに変換するコンパイラである「py2wasm」を、4月19日(現地時間)に発表した。

 py2wasmを使用することでオーバーヘッドが回避されることにより、ベースラインインタプリタと比較して3倍高速なPythonプログラムの実行を可能にしている。

 WebAssemblyによってPythonを高速化する方法としては、コンパイルによってパフォーマンスの高いコードへ変換するPythonサブセットの使用、Python内でのJITの使用、静的解析による生成コードの最適化が挙げられる。しかしながら、完全な構文またはモジュールをサポートするPythonサブセットはまだ登場しておらず、Python JITはウォーミングアップが必要であり、WebAssemblyでのサポートは容易ではない(不可能ではない)。静的解析の利用は、複雑な解釈が必要となり生成されるバイナリが非常に大きくなる一方で、大幅なパフォーマンス向上は期待できない。

 このような理由から、開発チームではNuitkaでPythonをWebAssemblyにコンパイルする方法を選択し、現時点ではpy2wasmにおいてNuitkaのフォークを使用しているが、将来的にはpy2wasmをNuitkaの上位レイヤにすることを目指しているという。

関連リンク

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
この記事の著者

CodeZine編集部(コードジンヘンシュウブ)

CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/19447 2024/04/26 12:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング