反応が遅くなってすみません。
Ryo さん、meeyar さん、Mac 環境での動作検証、ありがとうございました。
ここまでの結果を整理してみると、
"response.jp という特定のサイトを Firefox で利用するとき、CPU 使用率が 100 %を超える" という現象について、
(1)Mac 環境の Ryo さん、meeyar さんのところでは起こらず、Windows 環境のぼくのところでも起こっていません(参考後述)。
(2)kazu_fit さんのところの Firefox では、response.jp 以外のサイトでは本件の症状は発生していないようです。
(3)同サイトを利用する場合でも Safari では問題が起こっていないようです。
つまり現状では、kazu_fit さんの Mac 環境下で、Firefox を使い、response.jp にアクセスした場合にのみ起こる、極めて限定的な現象のように見受けられます。
Ryo さんが書きました:
確かに Firefoxの方がSafariより CPUの占有率は高い様な気がしますが、
自分は鈍いせいか、さほど 違いが良く判りませんです。
meeyar さんが書きました:
それから、当方の環境でもCPU占有率はFirefox>Safariでしたが、占有率低いはずのSafariでも読み込み時に一瞬「応答なし」のタイミングがありました。
「低い占有率=軽快動作」とは限らない印象です。
一般論として、同一サイトの同一サービスを実行する場合、Firefox と Safari では Firefox のほうが若干 CPU 使用率が高くなるという話は聞いたことがあります。
しかし、これも正常な動作の範囲内でのことです。
kazu_fit さんのところで起こっているような問題は、少なくともぼくは耳にしたことはありません。
必要な処理を、必要なタイミングで CPU がこなしてくれることが大切です。
その時どきの利用状況に応じて CPU 使用率は可変であり、それが本当に必要な処理のためであれば、(一時的に)100 %の使用率になることは不適切なことではありません。CPU が能力を出し惜しみすると、逆に不都合が起こりますし...。
問題は、特定のプロセスが一定時間以上 CPU を 100 %占有してしまうことです。他の処理ができなくなり、PC がフリーズしたような状態に陥ってしまう、といった現象が起こります。
こういう異常な状態が起こらない限り、どんなに重く複雑な処理をしていたとしても、それらが(多少時間はかかっても)適正に進んでいるのであれば、普通はユーザーがいちいち CPU 使用率を気にかけることはないと思います。
本件に関する真の原因はいまだ不明ですが、Mac 環境における Firefox の普遍的な問題というよりは、ユーザー環境固有の問題である可能性のほうが高いのではないでしょうか。
meeyar さんが書きました:
新規プロファイル作成でも改善されなかったとのことですが、プロファイルの作成は以下のような正規の方法で(プロファイルマネージャを起動して)試していますか。
meeyar さんが書きました:
もし10.6更新後にFirefox以外にも不具合発生した部分があるならば、OS環境そのものの問題を考慮すべきかもしれません。
ここまでの状況から考えると、ぼくも meeyar さんのご意見に同感です。
Firefox 側でのチェック項目としては、念のため次のことを試してみてはいかがでしょうか。
「新規プロファイルの作成」でも問題はなかったとのことですが、Firefox をセーフモードで起動したときの動作は確認されていますか。
セーフモードはアドオンを無効にするだけでなく、初期状態で有効になっている Firefox のいくつかの機能を無効化します。そのひとつがハードウェアアクセラレーションですが、古めのハードウェアではこのあたりが何らかの影響を与えている可能性もありますので、もしまだやっていないなら一度セーフモードでの動作を確認してみてはいかがでしょうか。
ところで kazu_fit さん、いまさらですが、Firefox のプロセスが CPU を 100 %占有してしまうという話ですか、トータルな使用率の話ですか? Firefox 以外の何者かが CPU 使用率を押し上げている、ということはありませんよね。
もっとも本件では、「数秒すると、10~20%にCPU使用率が下がります」というお話なので、プロセスが無限ループに陥るような形で CPU の処理能力を食い潰しているわけではなさそうです。
それでも、はじめのほうの投稿に書かれた内容を考え合わせると、下記のような視点からの点検もしたほうがいいかもしれません。
kazu_fit さんが書きました:
事の始まりは、MacOS 10.6.8 で、YouTubeで1時間以上の動画を見ていた時に、Macがものすごく暑くなりファンもすごく回っていたので、アクティビティモニタをみたところCPU使用率が100%を超えていました。
(引用、以下略)
YouTube などのストリーミング動画再生で、おっしゃるような状態になることは正常とは思えません。
グラフィックスの構成によっては CPU に相応の負荷はかかりますが、いまや古めとはいえ Core 2 Duo クラスで CPU 使用率が 100 %を超えるような YouTube の利用状態が、そうそうあるとは想像できません。
メモリも、バックグラウンドで動いているプログラムやその稼働状態にもよりますが、通常 8 GB もあれば十分余裕があるように思いますし...。
そう考えると、どこかにハードウェア的な問題がある可能性も否定できないのではないでしょうか。
例えば、ノート型 PC は排熱機構に余裕がないことが多いですから、もし何かしらの原因で排熱処理に問題が起こり、システムの熱暴走を誘発しているようなことはあるのかもしれません。
だたし、明確なハードウェア障害があるとすると、他のアプリケーションとその動作にも影響が出ると思いますので、断定的なことは申し上げられません。
そのあたりも視野に入れて点検を進めてみると、もう少し問題点を絞り込めるかもしれませんね。
【補足】
kazu_fit さんが書きました:
また、Core2 DuoのCPUパワー不足でしょうか。
別の OS に入れ替えていた古いマシンを、オリジナルの Windows XP に戻し、Firefox 30.0 を入れて懸案のサイトの動作を試してみました。
Windows XP SP3 + Firefox 30.0
CPU : Intel Core Duo (T2400) / 1.83GHz
Memory : 2GB (DDR2)
―― です。
(注 1)ノート PC なので CPU もモバイル向けで、Core 2 Duo より1世代前のモデル(初代/無印の Core Duo)です。
(注 2)なにぶんグラフィックドライバが古いので、ハードウェアアクセラレーションは強制的に無効化されています。
response.jp から投げてくる JavaScript を全部受け入れて実行したとき、CPU 使用率は瞬間的に 70 ~ 80 %程度になる場面がありましたが、体感的に不都合な動作は感じられませんでした。"瞬時" とはいえませんが、画像の表示も違和感ない範囲でできています。
JavaScript をブロックすると、CPU使用率は最大でも 60 %を超えませんでした。
比較として、楽天など、広告用やユーザーの行動解析用の JavaScript が非常に多いサイトでも、それが原因で CPU 使用率が一定時間 100 %に張り付いて動かなくなるようなことは起こりませんでした。
Mac と Windows の違いがあるので単純には比較できませんが、CPU やメモリなどの全般的なハードウェアスペックで、kazu_fit さんの MacBook Pro より相当貧弱な当方の PC 環境で、ご質問のような問題は起こりませんでした。
先に試した Windows 8 Pro (64bit) 機の Intel Core i5-3320M (2.60GHz) に比べれば、全体的な動作が気持ちゆっくりめな印象になるのは仕方ないですが、不具合というほど異常な動作になることはありませんでした。
kazu_fit さんが書きました:
それともやはり、JavaScriptを多用しているサイトではCPU使用率が上がることは
多少は仕方ないと思うべきなのか^^;。
ご承知のように、JavaScript はクライアント(ブラウザ上)で実行されるプログラム(言語)の一種です。
Web の利便性と活用性を高める有益な技術ですが、安直に使うとリスクにもなりえます。
単純にいえば、JavaScript で実行すべき内容が多ければ、それだけブラウザの処理量も増え、CPU 使用率(およびメモリ消費量)が上がるのは普通のことです。JavaScript の実行を前提とする限り、これは避けられません。
ぼくはプログラミングのスキルはないので机上の知識の話になりますが、同じ結果をもたらすプログラムでも、ソースコードの出来具合によっては、CPU 負荷やメモリ消費を無駄に高めてしまったりすることがあるそうです。
仮に、出来の悪い大量の JavaScript の実行を要求するようなサイトがあったとしたら、そのサイトではユーザー側のシステムに余計な負荷がかかることは十分ありえます。
サイトの提供するサービスの実行に不可欠なものではなく、ユーザーのニーズにはまったく無関係な JavaScript は、セキュリティ的な側面だけでなくパフォーマンスにも影響するので、NoScript などのアドオンやその他のソフトウェアを使って、実行すべき JavaScript をユーザー側でコントロールすることも選択肢になると思います。
以上、長々と書きましたが、何かしらのヒントにでもなればということで、既出の情報から思い当たることを羅列しただけです。
役に立たない話だったらすみません。