2008年10月29日水曜日

IE8

ソースの整理をしていて、IE8で怪しい動作をするのにきづいてしまった。

結果画面でF5を押して更新すると何も表示されなくなることがある。
実行した後の結果では特に影響もないし何回かF5を押すと表示されるので、原因不明のため対策できない・・・。

2008年10月28日火曜日

簡単なこと

IE7で遅いならIE7だけ元のページにすればよかったという簡単な結論。

難しく考えすぎてました。
渡される変数の仕様はまったく変わらないので、IE7のときだけ元のページに飛ばすだけで良い。

IE7かどうかの判断はHTTP_USER_AGENTで判断している。
"MSIE 7"のときだけ元のページに飛ばす。

6以前はさすがに対応しなくてもいいか・・。

2008年10月26日日曜日

迷った末

迷った末に、IE8でも効果が大きいことから、fromEncodedバージョンをbothにしたときも採用した。

こちらはまだまだ修正の余地があるが、動作自体は問題なくIE7以外では効果があるはずなのでお試しいただきたい。
動作方法は、いつも通りInput&Output ver.実行するだけだ。

ちなみにChromeを使ってる人はあまり実感がないかもしれない。

2008年10月25日土曜日

逆転現象

Shortest Path GraphicのPriorityをbothにしたとき、IE7ではEncodedしたほうが表示までが遅くなるという話はしたが、IE8betaでは圧倒的にEncodedした方が速くなっている。

IE8のbetaがとれれば正式稼働すればこの方が良いと思うのだが、それまでは現行バージョンにしておいたほうが良いのだろう。

どちらにせよGoogleChromeやFirefoxなどといった高速なブラウザに比べれば差は歴然でユーザーにはそういったブラウザを推奨したい。

2008年10月24日金曜日

Encodedバージョン

GoogleMapsの表示にfromEncoded機能を用いたものもすでに公開されているようだ。

ただ、どうやらpriorityにbothを選択したときは今までと変わらずEncodedされていないものが採用されたままだ。

IE7では通常表示のみで20秒程度で距離優先、速度優先両方とも表示される。
しかし、Encoded機能を用いた場合それが30から35秒かかってしまい、大きなタイムロスとなる。
表示されてからが速いと言ってもさすがにこれだけ差があると導入に踏み切れないのだろう。

ちなみに、Shortest Path GraphicではIEは推奨していない。

2008年10月23日木曜日

IE8での挙動

IE8をインストールして新バージョンと比較してみた。
今時ブラウザのインストールで再起動を要求されたり、β版にもかかわらずIE7をしっかりと上書きしたりするのは見なかったことにしておく。


旧バージョン(Encodedなし):
「スクリプト実行に時間が・・・」のダイアログ表示が出る。

新バージョン(あり):
ダイアログが出ない。

IE7とIE8では圧倒的にIE8が速い。体感ではOperaより速いイメージがある。
とはいえ、IE8で実行した後にChromeで実行するとやはり圧倒的差がある・・。

2008年10月22日水曜日

各ブラウザの挙動

新機能を入れるときは大手ブラウザでは実験している。

Encodedしたときの各ブラウザを比較してみた。

GoogleChrome
GoogleMapsというGoogleのシステムなだけあって、すべてにおいて問題なく、かつ他ブラウザに比べて圧倒的な体感速度。推奨ブラウザの一つ。

Firefox3.0.3
Chromeほどではないが十分高速かつ安定した表示をする。推奨ブラウザの一つ。

Safari
Firefoxより若干遅いイメージがあるが、差はほとんど感じられない。個人的にFirefoxの方が好きだから主観が入ってるのかもしれない。推奨ブラウザの一つ。

Opera
上記3つに比べると体感1ランク遅い。Encodedされたラインがなんだか表示されないことが・・。
移動して中心に持って行くと表示される。挙動がなんだかおかしい。

IE
Windowsユーザーなら1度は使ったことのあるブラウザ。
Operaに比べて体感2ランク遅い。表示自体は安定。1回表示されてしまえばEncodedバージョンでは他ブラウザとも大きな差は感じられない。


Encoded機能では表示までの時間は変わらないものの、表示されてからの操作が格段に速くなっているのが注目すべきところだろう。どのブラウザでもそれを体感することができる。
Operaの怪しい挙動はどう対処していこうか・・。

2008年10月21日火曜日

表示速度の比較

実際に描画にどのくらい差があるのかを時間計測してみた。
結果表示ページでF5を押すことによって計算時間を省けるため、実表示時間のみを計測できる。


通常の方は結果ファイルのリード、表示のまでの時間。
Encodedの方は結果ファイルのリード、エンコード、表示の時間になる。
IE以外のブラウザでは速すぎて差が分からないため、IEでのみの計測結果を表示する。

通常:11秒
Encoded:12秒

符号化のロスもあり、わずかにEncodedの方が遅い。
しかし、通常の方では「スクリプトの処理に時間がうんぬん」のダイアログが出てしまうが、Encodedの方では出ない。また、表示されてから拡大縮小の処理がスムーズにでき、全体としては明らかに上回っているだろう。

Encodedの方は、少しアルゴリズムを改善するなりで11秒の方に近づける可能性も残っている。

2008年10月20日月曜日

Encodeによる階層化

GoogleMapsのEncoded機能により距離による階層化を導入してみた。

体感できるくらい速くなりました。
読み込みこそそれなりに時間がかかるものの拡大縮小の処理の時にIEでもスムーズ。

まだ実装できる段階ではないので修正して早めに正式導入したい。

やはり、線の描画処理でだいぶ時間がかかるということだろう。

2008年10月19日日曜日

Encode化

実際にEncode化して表示までの速度を計ってみると、Chromeではあまり変わらないがIEではEncodeした方が遅くなっている。

また、実際にEncodeにかかる時間を調べてみると推測値1秒程度で終わっており、表示の時の差(約5秒)ほどではない。
やはりこれは、レベルに応じて表示するかしないかの処理を入れてから計ってみた方が良さそうだ。