まめ畑

ゆるゆると書いていきます

JetpackとGPU

少し前の記事ですが、「Elevating JavaScript Performance Through GPU Power」というエントリが公開されています。簡単に言うと、GPUを使ってJavascriptを実行しようという記事です。JetpackからCUDAを使うという内容です。
JavascriptGPUを使って実行する事で、重い処理などをブラウザ上で実行出来るようになるよ、という事です。
その他の特徴は

  • consumption of high-quality digital video or music streams,
  • complex image or speech recognition,
  • manipulation and processing large pictures of nature or space,
  • processing large sets of tabular data locally in the browser,
  • complex animations with DOM elements (via DirectX or OpenGL),
  • exploring 3D worlds, such as SecondLife or an OpenSim Grid,
  • real-time audio and video editing,
  • having an integrated development environment that runs entirely in the browser

のような処理(の一部など)が必要なアプリケーションをJetpackを使用して、C++Actionscriptを使用しなくてもFx上で実行する事が出来るようになるという事らしいです。

しかも、

var resNumbers = Jetpack.toGPU( function(nums, numsSize) {
  var sqrFun = function(v) { return  v * v; }
  for (var i  = 0; i < size; ++i)
    numbers[i] = sqrFun(numbers[i]);
  }, numbers,  size);

// some job here

document.write(resNumbers);

のような感じで簡単なAPIを使用してJetpack上から実行出来るようにという事のようです。


JetpackGPUを使うためのAPIが実装されれば、ブラウザを使ったアプリの幅が大きくひろがると思います。
個人的には、Jetpackの方向性が自分で実装するには面倒なAPIを簡単に使用出来るようにラップしているプラットフォームの様な感じがしてきました。
是非、この実装が行われて欲しいと思います。


記事はこちら