WebCL
WebCL(Web Computing Language)は、プラグインを使わずウェブブラウザ上でCPUやGPUなどによる異種混在の並列計算(ヘテロジニアス・コンピューティング)を行うための標準仕様。主に、WebCLはマルチコアCPUやGPUの真の計算速度をウェブアプリケーションが引き出すこと、物理エンジンや動画編集など計算量が多いプログラムをウェブブラウザ内で実行させることを可能にする[注釈 1]。
開発元 | WebCL Working Group |
---|---|
最新版 |
1.0 (ドラフト仕様)
/ 2014年3月19日 |
対応OS | クロスプラットフォーム |
サポート状況 | 事実上放置[1]。 |
種別 | API |
公式サイト |
www |
WebCL仕様はOpenCL同様、非営利団体のクロノス・グループ (Khronos Group) が管理している[3]。ただしWebCLの仕様は2014年3月19日に最初のバージョンがリリースされて以降、事実上放置されており、ネイティブでサポートするブラウザも存在しない[4]。WebCL 1.0は、ブラウザ上で利用できるOpenCL 1.1 Embedded Profileの派生規格であるが、細部に違いがある[5]。
実装
編集現在[いつ?]、WebCL をネイティブにサポートしているブラウザはまだない。しかし、WebCL を利用するためのアドオンは存在する。
- Motorola (Node.js) - https://github.com/Motorola-Mobility/node-webcl
- Nokia (Firefox) - http://webcl.nokiaresearch.com/
- Mozilla (Firefox) - http://hg.mozilla.org/projects/webcl/
- Samsung (WebKit) - https://code.google.com/archive/p/webcl
Nokia のサンプルコードでは <script type="x-opencl">
、Samsung のサンプルコードでは <script type="x-kernel">
という形で HTML 内に OpenCL コードを記載して利用している。
アプリケーション
編集- Sushi JavaScript Library - https://github.com/mil-tokyo/sushi
- Firefox, Chromium-WebCL, Node.js から利用できるWebCLを利用した高速な行列計算ライブラリ
脚注
編集注釈
編集- ^ Samsung WebCL Prototype Demo では JavaScript 実装との比較で最大100倍高速化した[2]。
出典
編集- ^ “WebCLでWebデベロッパもGPUやCPUのマルチコアをブラウザ内で有効利用(==並列処理)できるようになる”. TechCrunch Japan. 2016年9月1日閲覧。[リンク切れ]
- ^ WebCL Overview and Roadmap
- ^ “WebCL Overview - The Khronos Group Inc”. Khronos Group. 2024年6月28日閲覧。
- ^ “WebCLでWebデベロッパもGPUやCPUのマルチコアをブラウザ内で有効利用(==並列処理)できるようになる”. TechCrunch Japan. 2016年9月1日閲覧。[リンク切れ]
- ^ WebCL Specification - §Differences between WebCL and OpenCL 1.1