アカウント名:
パスワード:
JavaScriptに変換して実行するのにどうして遅い、メモリを食う、という問題点が解決するの?
最適化が全てみたいです。元から最適化されたコード書いてる人には高速化、少メモリの恩恵はそれほどないみたいな感じでしたね。それでも保守性とか生産性とかメリットはあるとのこと。
こういうところで紹介されている(手動の)最適化手法を、自動でやれば速くなりますよ。http://news.mynavi.jp/news/2009/11/11/015/index.html [mynavi.jp]
手動最適化は、えてしてコードの保守性を落すんですが(例: インライン展開)、処理系がやってくれれば、そういう心配はないですし。
自明なインライン展開のみならず、以下のようなこともしてくれるようです:http://twitter.com/kazuho/status/208028042675757056 [twitter.com]> link-time optimization ですね。final がついてない関数についても すべて見る、継承クラスを見渡して実装が1個しかなければインライン展開しちゃうとか
他にも、コンパイラがやる最適化http://ja.wikipedia.org/wiki/%E3%82%B3%E3%83%B3%E3%83%91%E3%82%A4%E3%8... [wikipedia.org]のうち、今回のケースでも適用できるものは沢山ありますね。たとえばループ不変量のコード移動はやっているようです:
http://twitter.com/kazuho/status/208064114021511169 [twitter.com]http://twitter.com/kazuho/status/208065074542297088 [twitter.com]> ビジーループの中のほうで switch (arguments.length) してるコードがあってですね? 実行速度と GC の双方に負荷がやばかったり
最適化するから。JITを使わないから。と、発表スライドからは読めるのですが、違うのかしらん
JIT使わないって無理でしょ。つかインタプリタのが遅いでしょ。
iOSはJIT使えないんだなこれがorz
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
ソースを見ろ -- ある4桁UID
百歩譲って生産性改善の余地はあるとしても (スコア:0)
JavaScriptに変換して実行するのにどうして遅い、メモリを食う、という問題点が解決するの?
Re:百歩譲って生産性改善の余地はあるとしても (スコア:1)
Re:百歩譲って生産性改善の余地はあるとしても (スコア:1)
最適化が全てみたいです。
元から最適化されたコード書いてる人には高速化、少メモリの恩恵はそれほどないみたいな感じでしたね。
それでも保守性とか生産性とかメリットはあるとのこと。
Re:百歩譲って生産性改善の余地はあるとしても (スコア:1)
こういうところで紹介されている(手動の)最適化手法を、自動でやれば速くなりますよ。
http://news.mynavi.jp/news/2009/11/11/015/index.html [mynavi.jp]
手動最適化は、えてしてコードの保守性を落すんですが(例: インライン展開)、処理系がやってくれれば、そういう心配はないですし。
自明なインライン展開のみならず、以下のようなこともしてくれるようです:
http://twitter.com/kazuho/status/208028042675757056 [twitter.com]
> link-time optimization ですね。final がついてない関数についても すべて見る、継承クラスを見渡して実装が1個しかなければインライン展開しちゃうとか
他にも、コンパイラがやる最適化
http://ja.wikipedia.org/wiki/%E3%82%B3%E3%83%B3%E3%83%91%E3%82%A4%E3%8... [wikipedia.org]
のうち、今回のケースでも適用できるものは沢山ありますね。たとえばループ不変量のコード移動はやっているようです:
http://twitter.com/kazuho/status/208064114021511169 [twitter.com]
http://twitter.com/kazuho/status/208065074542297088 [twitter.com]
> ビジーループの中のほうで switch (arguments.length) してるコードがあってですね? 実行速度と GC の双方に負荷がやばかったり
Re: (スコア:0)
最適化するから。JITを使わないから。
と、発表スライドからは読めるのですが、違うのかしらん
Re: (スコア:0)
JIT使わないって無理でしょ。つかインタプリタのが遅いでしょ。
Re: (スコア:0)
iOSはJIT使えないんだなこれがorz