グーグル、Native Clientをx86-64とARMにも

2010年3月19日

グーグルが2008年12月に発表したNative Clientは、Webブラウザ上でx86バイナリを実行することにより、高速なアプリケーション実行環境をWebブラウザ上に構築するための技術でした。

(この記事の元のタイトルと本文には間違いが含まれていたため、修正しました。「[訂正記事]グーグルのNative Client、CPUに依存しない互換性は将来のバージョンにて」をご覧ください。元のタイトルは「「グーグル、Native Clientをx86-64とARMにも、同一バイナリが主要なCPUで動作へ」でした)。

Chromium Blog: Native Client and Web Portability

主要なCPUでNative Clientを実現

そのNative Clientをx86-64とARMに移植し、実行対象となるバイナリを変更せずに実行可能にしたことをグーグルは明らかにしました。

ブログ「Chromium Blog」に3月17日付けでポストされたエントリ「Native Client and Web Portability」には、以下のように書かれています。

Today, we’re happy to say that you can build and run Native Client binaries for all of the most popular processor architectures: x86-32, x86-64, and ARM.

これにより実質的に最新のPCやスマートフォンなどのデバイスすべてでNative Clientが実現可能になったとしています。しかもx86バイナリをx86-64やARMで実行しているにもかかわらず、97%の実行性能を実現したとのこと。

Native Client executables perform at 97% of the speed of an unmodified executable on both ARM and x86-64 processors.

Native Clientの実行形式では、ARMとx86-64プロセッサ上の無変更実行形式が、97%の性能を発揮しました。

グーグルはそれだけではなく、将来新たなアーキテクチャのプロセッサが登場したとしても、Native Client用バイナリを再コンパイルせずに実行できる「PNaCL」(Portable Native Client Executables)を、Low-Level Virtual Machine (LLVM) bitcodeによって実現するべく開発中であることも明らかにしています。

Webアプリケーションのプラットフォームにまた近づいた

Webブラウザをアプリケーションのプラットフォームにする、それもネイティブアプリケーションと同等以上の実行性能と機能を持つアプリケーションのプラットフォームに、というのがグーグルが目指しているものです。

そしてPNaCLがうまくいけば、WebブラウザはまるでOSのようにネイティブコードを実行するプラットフォームに、しかもクロスプラットフォームをサポートするという夢のようなプラットフォームになれるかもしれません。

このようにNaCLは技術的にはWebブラウザを飛躍させる優れた技術のように思えますが、グーグルの思惑通りに進むにはこの先に技術面だけではなく、標準化という大きなハードルがあります。

果たしてマイクロソフトやアップルといったOSを主要なビジネスとするWebブラウザベンダがこのNaCLにどう反応するのか、そうした局面が訪れるにはまだしばらく先のことではないかと思いますが、技術の進歩だけでなく標準化の面でどうなるのかについても楽しみになってきました。

(追記3/19:PNaCLについて、最初の文書は「いまのx86用バイナリコードを変更せずに実行する」技術として紹介しましたが、それを「LLVM bitcodによって実行する」の意味に書き換えました)

Tags: Web技術 Web標準 Google

このエントリーをはてなブックマークに追加
ツイート
follow us in feedly





タグクラウド

クラウド / AWS / Azure / Google Cloud
コンテナ / Docker / Kubernetes
クラウドネイティブ / サーバレス
クラウド障害 / 運用・監視

プログラミング言語 / 開発ツール
JavaScript / Java / .NET / WebAssembly
HTML/CSS / Web標準

アジャイル開発 / スクラム / DevOps / CI/CD
ソフトウェアテスト・品質
ローコード/ノーコード開発

データベース / RDB / NoSQL / 機械学習・AI
Oracle Database / MySQL / PostgreSQL
Office / 業務アプリケーション

ネットワーク / HTTP / QUIC / セキュリティ
OS / Windows / Linux / VMware
ハードウェア / サーバ / ストレージ

業界動向 / 働き方 / 給与・年収
編集後記 / 殿堂入り / おもしろ

全てのタグを見る

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed

最新記事10本