タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

JavaScriptとjavascriptとV8に関するiwadonのブックマーク (2)

  • 高速化の観点から new Array(100) を使わない方が良い理由

    別件で V8 の JIT コードの逆アセンブルを眺めている時に気づいたのですが、JavaScriptで new Array(100) という形で配列を作るのは、高速化の観点から言うと V8 においては避けるべき書き方です。 高速化を求める方は、 new Array() や [] で作成して Array#push で追加していくのが良いでしょう。この記事では、その理由を説明します。 今回の記事は、以下の V8 のブログ記事を参考にしております。 https://v8.dev/blog/elements-kinds 「詰まった配列(Packed Array)」と「穴あき配列(Holey Array)」 v8 は内部的に、その配列がどういうタイプの配列であるかの状態を記録しており、その情報を利用して最適化を適用します。状態は内部的には21個あるのですが、今回話題にするのは、その中でも「詰まってい

    iwadon
    iwadon 2019/06/10
    確認用ページの各ブラウザの結果を見たら、Chrome以外はそこまで差がないかむしろHoleyの方が早い場合があるようで興味深い。
  • ColdRuby - Overview - ColdRuby issue tracker

    RedmineColdRuby is an implementation of Ruby in JavaScript, consisting of YARV bytecode compiler, a Ruby runtime and a host executable incorporating fast V8 scripting engine. Our wiki contains a more detailed description. Main source code repository is at github. There is also a mailing list.

  • 1