タグ

ブックマーク / progress.from.tv (3)

  • progress.from.tv » HTML5 「Web Workers」でマルチスレッドプログラミング

    以前の記事「JavaScriptのマルチスレッド(?)はマルチコアの恩恵を受けるのか?」で現在主流のブラウザ(HTML4)のJavaScriptでは、マルチスレッドプログラミングを行うことができないという結論に至りました。 ただし、現在主流のブラウザではマルチスレッドプログラミングが行えないだけであって、次のバージョンであるHTML5からは、ちゃんとマルチスレッドプログラミングを行うことができます。 それは、HTML5で追加される「Web Workers」という機能を使用することで実現できます。 今回は、日(6月9日)に正式リリースされたばかりの、HTML5をサポートする「Safari 4」を使用して、Web Workersを使用したマルチスレッドプログラミングを行って、マルチコアによるパフォーマンス向上の恩恵を受けるかどうか、実験で確かめてみようと思います。 さっそくサンプルコード 百

  • progress.from.tv » JavaScriptのマルチスレッド(?)はマルチコアの恩恵を受けるのか?

    JavaScriptのマルチスレッド(?)はマルチコアの恩恵を受けるのか? 前回の記事(ご覧になっていない方は、まずこちらからお読みください)の結果から、Javaによるマルチスレッドプログラミングはマルチコアの恩恵を受け、高速化が可能ということが分かりました。 ここで「JavaScript版リバーシのコンピュータ処理」の話に関係するのですが、JavaScriptでマルチスレッドプログラミングを行うことができるのか、またマルチコアの恩恵を受けることができるかどうか気になります。 JavaScriptには一定時間経過後に指定したメソッドを呼び出す、setTimeoutメソッドが用意されています。このメソッドを使用することでマルチスレッドなのかどうかは分かりませんが、擬似的に並行処理を実現することが可能です。 今回は、JavaScriptでマルチスレッドなプログラミングができるかどうか、またマル

  • progress.from.tv » マルチコアとマルチスレッド

    既存のプログラムを高速化どうすればよいか? たとえば、前回のリバーシのコンピュータの処理などような莫大な計算量を必要とするプログラムを高速化する手法として、近年ではマルチスレッドプログラミングが有効になってきています。 ここ何年か発売されているCPUの傾向として、処理能力を表すクロック周波数は3GHzから伸びておらず、Core 2 Duo、Quadなどのマルチコア化が進んできています。(余談ですが、PS3に搭載され、スーパーコンピュータ並の処理能力ということで話題になったCellプロセッサは1PPE + 8SPE = 9コア搭載されてます) 理由は、クロック周波数を向上させることが技術的に限界が近づいた為です。コア数を倍にすれば、理論上処理能力も倍になります。 しかし、コア数が増えれば既存のプログラムが高速に動作するようになるかというと、そうではありません。既存のプログラムの多くはシングル

  • 1