検索
ニュース

Pythonの非同期処理と動的リンクに対応 「Wasmer 7.0」の強化ポイントは?ビルド時間を約9分の1へ短縮

Wasmerは、WebAssemblyランタイムの最新版「Wasmer 7.0」を公開した。実験的な非同期APIの導入や多数の機能強化とバグ修正が含まれている。

Share
Tweet
LINE
Hatena

 Wasmerは2026年1月30日(米国時間)、同社のWebAssembly(Wasm)ランタイムの最新版「Wasmer 7.0」をリリースした。Wasmer 7.0では、非同期処理のサポートや複数のコンパイラバックエンドの機能が拡充された。

 Wasmer 7.0の主な変更点は次の通り。

  • 実験的な非同期APIの導入
  • CraneliftでのWebAssembly例外処理サポート強化
  • SinglepassでのRISC-Vおよびマルチバリューサポート
  • WASIXでの動的リンクサポート
  • 多数のバグ修正とビルド環境の改善

実験的な非同期APIの導入

 Wasmer 7.0では、非同期関数のファーストクラスサポートが導入された。この非同期APIは、Singlepass、Cranelift、LLVMの各コンパイラバックエンドで利用可能だ。

 これにより、Wasmer上のPythonで完全な非同期サポートが実現し、SQLAlchemyをはじめとする、これまで動作しなかったPythonライブラリが利用可能になった。

CraneliftでWebAssemblyの例外処理を完全サポート

 Craneliftを最新版にアップグレードし、新しい例外処理APIを使用したWebAssembly例外の完全サポートを追加した。

 システム標準のlibunwindライブラリと統合することで、全てのコンパイラで共通のアンワインド機構(例外処理が発生した際に、プログラムの実行状態を安全に巻き戻すための仕組み)を使用する形となった。

SinglepassでのRISC-Vおよびマルチバリューサポート

 オープンな命令セットアーキテクチャ(ISA)として注目を集める「RISC-V」への対応も強化された。従来のWasmerではLLVMとCraneliftを通じてRISC-Vをサポートしていたが、Singlepassでは未対応だった。

 Wasmer 7.0では、SinglepassにRISC-Vサポートを追加し、LLVM RV32gcターゲットも導入してRISC-V対応を大幅に拡充した。

WASIXでの動的リンクサポート

 従来、WasmerでのPythonサポートはコアインタープリタに限定され、numpyやpydanticなどのネイティブライブラリは動作しなかった。Wasmer 7.0では、WASIX(POSIX〈Portable Operating System Interface〉との完全な互換性を目指したAPI仕様)で適切な動的リンクをサポートすることで、より広範なPythonパッケージとネイティブモジュールが利用可能になった。

多数のバグ修正とビルド環境・利便性の向上

 Wasmer 7.0の開発中に200以上のプルリクエストがマージされ、そのうち80件がバグ修正や既存の制限の解消に充てられている。また、サードパーティークレートの大半を最新メジャーバージョンに更新し、重要な依存関係であるLLVMもバージョン21に更新した。

 ビルド機能の改善では、LLVMコンパイラを使用した初回ビルド時にコンパイル進捗(しんちょく)バーを表示する機能や、PythonやPHPなど大規模パッケージのビルドで巨大な関数の最適化を選択的に無効化することでコンパイル時間を短縮。Pythonのビルド時間は約90秒から約10秒に高速化されたとしている。

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る