問題タブ [jsperf]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
218 参照

sql - この低パフォーマンスの MySQL クエリを最適化する方法は?

現在、jsPerf に対して次のクエリを使用しています。jsPerf を知らない可能性が高い -pagesテスト ケース / リビジョンを含むテーブルとtests、テスト ケース内のテストのコード スニペットを含むテーブルが 2 つあります。

現在、 には 937 レコード、pagesには 3817 レコードがありtestsます。

ご覧のとおり、このクエリが使用されている「Browse jsPerf」ページをロードするにはかなりの時間がかかります。

クエリの実行には約 7 秒かかります。

WHERE句に表示されるすべてのフィールドにインデックスを追加しました。もっと追加する必要がありますか?

このクエリを最適化するにはどうすればよいですか?

PS PHP でキャッシング システムを実装できることはわかっています — おそらく実装するので、教えないでください :) このクエリをどのように改善できるかを知りたいだけです。

0 投票する
1 に答える
480 参照

javascript - JSでの関数宣言速度差

簡単な jsperf テストを実行したところ、Firefox で実行するとすべてが期待どおりに進みましたが、Google Chrome でテストを実行すると混乱しました。

このテストでは、JavaScript で関数を宣言してから呼び出すさまざまな方法をテストしています。私の推測では、Chrome は JavaScript 関数に対して何らかの最適化を行っていると思われますが、何が、なぜこのような大きな違いがあるのか​​はわかりません。これをよりよく理解するためのヘルプやリンクは大歓迎です。

テストへのリンク => http://jsperf.com/function-assignment-semicolon/2

Firefox でのテスト実行:

代替テキスト

Chrome でテスト:

代替テキスト


編集:

Firefox から得られる結果を期待していたのは、Google Chrome で実行した場合よりも遅い (各テストでかなり同じ) と予想していたからです。

0 投票する
2 に答える
10919 参照

javascript - jsPerf はどのコード スニペットが最速かをどのように判断しますか?

今日私はjsPerfを訪れましたが、今疑問に思っていることは…</p>

  1. "ops/sec" とは何ですか?
  2. 何回繰り返しますか?
  3. どちらが速いかを何に基づいて計算しますか?これらの計算の背後にある式は何ですか?

例: http://jsperf.com/concatenation-vs-join

誰でも教えてもらえますか?

0 投票する
1 に答える
1334 参照

javascript - このJsPerf.comの結果を説明する

このウェブサイトhttp://jsperf.com/でテストを実行しました

これは私が実行したjsperfテストのスクリーンショットです

誰かに説明してもらいたい

  1. 緑とピンクは何を意味しますか
  2. 1秒あたりの操作数
  3. 95,814,583とは
  4. +-1.95%とは
  5. 「最も速い」と「遅い」とはどういう意味ですか
0 投票する
8 に答える
188153 参照

javascript - テキストを文字列の先頭に追加する

文字列の先頭に新しい値を追加する最速の方法は何ですか?

0 投票する
2 に答える
1018 参照

javascript - FirefoxではChromeよりも最大9000倍速い大きな部分文字列:なぜですか?

ベンチマーク: http: //jsperf.com/substringing

それで、私は最初のHTML5ブラウザベースのクライアントサイドプロジェクトを立ち上げています。非常に大きなテキストファイルを、基本的に1つまたは複数のオブジェクトの配列に解析する必要があります。私はそれをどのようにコーディングするかを知っています。現在の私の主な関心事は、パーサーコードをできるだけ早く取得することであり、私の主なテストベッドはChromeです。ただし、サブストリングメソッドの違いを調べていると(私は長い間JavaScriptに触れていません)、このベンチマークはFireFoxと比較してChromeでは非常に遅いことに気付きました。なんで?

私の最初の仮定は、FireFoxのJSエンジンが文字列オブジェクトを処理する方法に関係していることです。FireFoxの場合、この操作は単純なポインター操作ですが、Chromeの場合は実際にハードコピーを実行します。しかし、Chromeポインター操作を行わない理由や、FireFox行う理由はわかりません。誰かが洞察を持っていますか?

JSPerfはFireFoxの結果を破棄しているようで、BrowserScopeに表示されていません。私の場合.substr()、FF4で9,568,203±1.44%Ops/secがオンになっています。

編集:つまり、実際にはChromeの下にFF3.5のパフォーマンス結果が表示されます。そこで、ポインター仮説をテストすることにしました。これにより、Substringsテストの2番目のリビジョン1,092,718±1.62%が作成されました。これは、FF4での1,195±3.81%Ops /秒とChromeでのOps/秒を実行し、わずか1000倍高速ですが、それでもパフォーマンスに不可解な違いがあります。

追記: いいえ、InternetExplorerを1回舐めることは心配していません。私は自分のスキルを向上させ、この言語をより深いレベルで理解しようとすることを心配しています。

0 投票する
3 に答える
226 参照

jquery - jQuery インスタンスの最小化とインスタンスの作成の比較

javascript / jQuery の最適化に関する一連の投稿を開始し、この興味深い結果に出くわしました。

jQuery オブジェクトを (キャッシュされた jQuery コレクションから検索して) 最小化すると、jQuery オブジェクトのインスタンスをさらに作成するよりも時間がかかるのはなぜですか?

私が準備したテストの結果を見て、私は唖然としました。$ インスタンスの作成を最小限に抑えるのは遅いといつも思っていました。

親をキャッシュするので、これは私が書くのに慣れているものです(私はそれを「appRoot」と呼んでいます)。

テスト結果を参照してください (わずかに異なるシナリオ)。 キャッシュされたスニペットは、キャッシュされていないスニペットよりも遅いことがわかりました

なぜ理解しようとしていますか?

0 投票する
1 に答える
1144 参照

javascript - IEで動作するjsperfの代替?

jsperf.comjquery と ext js からいくつかのコードをテストするために使用しようとしています。firefox と chrome では素晴らしく動作しますが、Internet Explorer では多くの機能が動作しません。IE でうまく動作する jsperf の代替手段を知っている人はいますか?

このを chrome、firefox、IE で試してください。Chrome と Firefox では問題なく動作しますが、IE で試してみると、エラーが発生します。私をさらに混乱させるのは、IE自体で開くことはできますが、jsperfを介して開くことはできないということです.

0 投票する
0 に答える
157 参照

javascript - jsperf.com の次の Javascript テストが壊れるのはなぜですか?

今日は、JavaScript でいくつかの非常に単純なタスクのパフォーマンスを判断するために、いくつかの非常に単純なテストを実行することを考えました。問題の原因の 1 つは、配列の末尾に要素を追加することです。

私が使用しているブラウザに関係なく、このテストは停止したり中断したりします (Chrome を使用: 「Aw, Snap!」)。また、テストで得られるエラー マージンが 60 ~ >200% であることは言うまでもありません。jsperf で行ったすべてのテストで素晴らしい結果が得られたため、これは少なくとも偽物に思えます...

友人にもこのテストを実行するように依頼しましたが、問題は同じようです。何がこれを引き起こしているのか、誰にも手がかりがありますか?

テスト URL は次のとおりです: http://jsperf.com/adding-elements-to-array-using-push-and-length

0 投票する
3 に答える
474 参照

jquery - jQuery - 文字列でクラスを持つオブジェクトを作成する理由 ($('
')) は、同じオブジェクトを作成して addClass() メソッドを実行するよりも遅いですか?

文字列を介してオブジェクトを作成するのが同じオブジェクトよりも遅い理由を誰かが説明して、jQueryで addClass() メソッドを実行できますか?

addClass() メソッドの方が遅くなると思っていましたが、そうではありません。なぜだろう?

このjsPerfを見てください - http://jsperf.com/jquery-append-with-class-and-with-method-addclass