« 2010年5月11日

2010年5月12日の投稿

2010年5月13日 »

"Web Wrokersを使ってマルチコアを使い尽くしてみた(Javascriptサンプル)"があまりにもシンプル過ぎたため、素数をWeb Workersを使った計算してみました。計算式はエラトステネスの篩で行いました。

ソースはソース置き場のprimenumbercheck.zipになります。webworkers_primenum.htmlをFirefox 3.6、Safari 4、Chrome 4.1で開いてください。

ここでthreadに-1を入れるとWeb Workersを使わずに計算されます。"0"の場合はsetTimeoutを使って擬似スレッドぽっく動かしていますが、あまり早くありません。

3つのブラウザをスレッドを変更することで計算の時間がどこまで短縮できるか調べました。ハードはPhenom II X4 940BE(3.0GHz)です。

■素数計算

ここで、円周率(モンテカルロシミュレーション)で求めたものは以下になります。

■円周率

あまりにも特性が違いすぎています。円周率の計算のほうは、最初にループ回数を渡してその結果をもらうようにしています。このため、本体とWeb Workersの間のやり取りが、各スレッドで1回で済んでいます。

ですが、素数の計算のほうは、各スレッドにチェックしたい数字を渡してその結果をもらっています。本体とWeb Workersの間やり取りは素数計算をしたい数だけ行います。作り的に以下になります。

このため非常に多くのスレッドとやり取りすることにしました。threadに-1を入れて計算させると100,000でも56ms程度しかかかりません。このため、スレッド間のMessage処理のオーバーヘッドがあるのではないかと推測しています。

また、SafariとChromeではJavascriptエンジンとしては後者の方が優れていると思います(円周率やJavascriptベンチ結果より)が、この素数計算のスクリプトではSafariの方が早く且つコア数とスレッド数が同じときの値の伸びが良くなっています。推測でしかありませんが、Safari系はMessage関係の処理がChromeよりも良いのではないかと思っています。これは、Chromeのbeta/devやChromiumが、円周率のWeb Workersのサンプルが動かないのもMessage系のためだからです。

今回のWeb Workersのサンプルは、素数分布が一様ではないため、均等に各スレッドに分散できずMessageの頻度を上げたたえ性能低下になる悪い見本のようなサンプルになりました。このため、もう少しうまく使うことができるように勉強してきます。

【Javascript関係】
File APIを使ってブラウザバージョンシェアの加工してみた(Javascriptサンプル)
Web Wrokersを使ってマルチコアを使い尽くしてみた(Javascriptサンプル)
白いThinkPad X100eがやってきた(加速度センサーで遊んでみた編)

櫻吉 清(さくらきち きよし)

« 2010年5月11日

2010年5月12日の投稿

2010年5月13日 »

» このブログのTOP

» オルタナティブ・ブログTOP



プロフィール

櫻吉 清

櫻吉 清

IT業界ウオッチを趣味としている。知的好奇心の趣くままに何でもチャレンジして、とりあえず壁にぶつかってみる。

詳しいプロフィール

Special

- PR -
カレンダー
2013年4月
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30        
kichi
Special オルタナトーク

仕事が嫌になった時、どう立ち直ったのですか?

カテゴリー
エンタープライズ・ピックアップ

news094.gif 顧客に“ワォ!”という体験を提供――ザッポスに学ぶ企業文化の確立
単に商品を届けるだけでなく、サービスを通じて“ワォ!”という驚きの体験を届けることを目指している。ザッポスのWebサイトには、顧客からの感謝と賞賛があふれており、きわめて高い顧客満足を実現している。(12/17)

news094.gif ちょっとした対話が成長を助ける――上司と部下が話すとき互いに学び合う
上司や先輩の背中を見て、仕事を学べ――。このように言う人がいるが、実際どのようにして学べばいいのだろうか。よく分からない人に、3つの事例を紹介しよう。(12/11)

news094.gif 悩んだときの、自己啓発書の触れ方
「自己啓発書は説教臭いから嫌い」という人もいるだろう。でも読めば元気になる本もあるので、一方的に否定するのはもったいない。今回は、悩んだときの自己啓発書の読み方を紹介しよう。(12/5)

news094.gif 考えるべきは得意なものは何かではなく、お客さまが高く評価するものは何か
自社製品と競合製品を比べた場合、自社製品が選ばれるのは価格や機能が主ではない。いかに顧客の価値を向上させることができるかが重要なポイントになる。(11/21)

news094.gif なんて素敵にフェイスブック
夏から秋にかけて行った「誠 ビジネスショートショート大賞」。吉岡編集長賞を受賞した作品が、山口陽平(応募時ペンネーム:修治)さんの「なんて素敵にフェイスブック」です。平安時代、塀に文章を書くことで交流していた貴族。「塀(へい)に嘯(うそぶ)く」ところから、それを「フェイスブック」と呼んだとか。(11/16)

news094.gif 部下を叱る2つのポイント
叱るのは難しい。上司だって人間だ、言いづらいことを言うのには勇気がいるもの。役割だと割り切り、叱ってはみたものの、部下がむっとしたら自分も嫌な気分になる。そんな時に気をつけたいポイントが2つある。(11/14)

news094.gif 第6回 幸せの創造こそ、ビジネスの使命
会社は何のために存在するのでしょうか。私の考えはシンプルです。人間のすべての営みは、幸せになるためのものです――。2012年11月発売予定の斉藤徹氏の新著「BE ソーシャル!」から、「はじめに」および、第1章「そして世界は透明になった」を6回に分けてお送りする。(11/8)

オルタナティブ・ブログは、専門スタッフにより、企画・構成されています。入力頂いた内容は、アイティメディアの他、オルタナティブ・ブログ、及び本記事執筆会社に提供されます。


サイトマップ | 利用規約 | プライバシーポリシー | 広告案内 | お問い合わせ