上位の Javascript エンジンの速度は同等のように見えるため、次の基準はフットプリントです。主要な JavaScript エンジンのコードとデータのフットプリントは?
2 に答える
squirrelfish は最小のフットプリントを持つ必要があります (JS コードからネイティブ コードへの非常に単純な変換テーブルを使用することをどこかで読んだことを覚えています)。彼らは進行中にコードを解釈し、現在のマシンに従ってすべてをコンパイルしないためです。
jsエンジンは基本的にシングルスレッドであり(新しいエンジンはマルチスレッドですが、これは新しい「高度に最適化された」エンジンからのものです)、一度だけロードされ、メガバイトのJSコードを解釈するため、jsエンジンを比較するポイントがわかりません...速度はサイズよりも重要です..モバイルデバイスであっても、JSエンジンが1〜2Mbを超えるメモリを使用するとは思わないためです(私の意見では、それでも多すぎます..)が、 JS ベースのページの JS スクリプトは、それを簡単に渡すことができます。
V8は、メモリフットプリントが小さく、パフォーマンスメトリックが高い最高のエンジンです。V8 は、コンテキストに基づいて各 JS オブジェクトをメモリにロードし、世代別ガベージ コレクタも使用します。これは、より少ないパフォーマンス オーバーヘッドでより多くのランタイム メモリが収集されることを意味します。
コードとデータのサイズを単純なバイナリ サイズとして意味する場合、V8 は現在の高性能エンジンのほとんどをわずか KB のバイナリ サイズで凌駕します。
V8 では、配列、数学などのすべての組み込みオブジェクトも、動的にロードされる JS ファイルです。ビルトイン オブジェクトは VM 上にあると非常に軽量であるため、メモリをいくらか犠牲にしてパフォーマンスを向上させる必要がある場合は、静的コードとして作成することもできます。