問題タブ [throughput]

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 に答える
2100 参照

language-agnostic - クライアントが十分な速さでデータを読み取っていないため、ソケットがスロットリングされていますか?

TCP ソケットを介したクライアント/サーバー接続があり、サーバーはできるだけ速くクライアントに書き込みます。

ネットワーク アクティビティを見ると、本番クライアントは約 2.5 Mb/s でデータを受信して​​います。

速度を読み取ってベンチマークするために作成した新しい軽量クライアントの速度は約 5.0Mb/s です (これはおそらく、サーバーが送信できる最大速度に近い速度です)。

クライアントはサーバーにデータを送信してレート制限について通知しないため、ここでレートを制御するものは何なのか疑問に思っていました。

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

performance - 複数接続の集約スループット (Linux)

同じホストからの複数の接続が、異なるホストからの複数の接続よりも優れたスループットを達成するのはなぜですか?

カーネル関連 (Linux) であると思われますが、確認が大いに役立ちます。

詳細 受信側プロセスが 1 つあります。これを R と呼びましょう。着信接続を受け入れ、select() を使用してデータを受信します。

私は3つの送信者プロセスS1、S2、S3を持っています。それらは R に接続し、固定レート、つまりそれぞれ 200Mbit/秒でデータを送信します。

S1、S2、および S3 が同じマシン上にある場合、それぞれを別のマシンに配置するよりも良い結果が得られます。(Rはどちらの場合も他のマシンにあります)

例: host0 の R、host2 の S1、S2、S3、R は 600Mbit/s で受信

host0 の R、host1 の S1、host2 の S2、host3 の S3、R は 480Mbit/s で受信

2 番目のケースでは、送信者がネットワーク カードとプロセッサを共有する必要がないため、これは直感に反するように見えます (プロセッサまたはネットワーク カードがボトルネックになるとは考えていません...)。

[上記のホストは、専用の全二重ギガビット スイッチを備えた Linux クラスタ内のノードです。彼らは2.6.24-24-genericを実行しています(最新のUbuntuだと思います)]

0 投票する
4 に答える
4068 参照

daemon - How to use the cachegrind output to optimize the application

I need to improve the throughput of the system.

The usual cycle of optimization has been done and we have already achieved 1.5X better throughput.

I am now beginning to wonder if I can utilize the cachegrind output to improve the system's throughput.

Can somebody point me to how to begin on this?

What I understand is we need to ensure most frequently used data should be kept small enough so that it remains in L1 cache and the next set of data should fit in the L2.

Is this the right direction I am taking?

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

http - BlackBerry で HTTP スループットをキャプチャする方法は?

BB プログラミングでの HTTP スループットと HTTP レイテンシを調べるのを手伝ってください。

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

java - 高スループット Java アプリのウォームアップ

私は最近、実際のリクエストの処理を開始する前に (高スループット要件で) アプリをウォームアップする必要があるシナリオについて学びました。この背後にあるロジックは、JIT がそのパフォーマンス マジックを実行できるようにすることでした。

これはJavaアプリの標準ですか、それともメモリが重い(フットプリント)アプリに対して一般的に行われますか?

0 投票する
5 に答える
17950 参照

performance - 最適な CPU 使用率のしきい値

Windows 2003 サーバーに展開するソフトウェアを構築しました。このソフトウェアは継続的にサービスとして実行され、Windows ボックスで私にとって重要な唯一のアプリケーションです。インターネットからデータを取得している時間もあれば、そのデータに対して何らかの計算を行っている時間もあります。マルチスレッドです。私は、およそ 4 ~ 20 個のスレッドのスレッド プールを使用しています。

これらすべての詳細について説明するのは退屈ではありませんが、プール内でより多くのスレッドを有効にすると、より多くの同時作業が発生し、CPU 使用率が上昇するということだけを言っておけば十分です。(帯域幅などの他のリソースの需要も同様ですが、私には関係ありませんが、十分あります)

私の質問は次のとおりです。費用対効果を最大限に高めるには、単に CPU を最大限に活用する必要がありますか? 直感的には、100% の CPU で実行するのは意味がないと思います。95% の CPU でさえ高いように見えます。OS が必要なことを実行するための十分なスペースを OS に与えていないようです。最適なバランスを特定する正しい方法がわかりません。私は測定して測定することができ、おそらくCPUの平均使用率が90%または91%などで最高のスループットが達成されることがわかると思いますが...

これについて良い経験則があるかどうか疑問に思っていますか??? 私のテストでは、あらゆる種類のワークロードのバリエーションが考慮されるとは限りません。少し安全にプレイしたいのですが、安全すぎないようにします (または、ハードウェアを十分に活用していません)。

おすすめは何ですか?Windows 上のマルチスレッドの混合負荷 (一部の I/O、一部の CPU) アプリケーションの使用に関するスマートでパフォーマンス重視のルールは何ですか?

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

networking - tcpdump の出力からスループットを計算するプログラムはありますか?

私は現在 tcptrace を使用していますが、実行中のテストで途方もないスループットを観察しています。私がテストしている方法に何か問題があると確信していますが、これ以上時間を費やす前に、これを確認するために使用できる他のプログラムはありますか?

EDIT:これは、tcpdump出力を生成するシステムでローカルに実行しているルーターシミュレーター用です。

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

sms - Gsmモデムの提出率

誰かがGSMモデムを介して提出率を測定しましたか?現在、ソリューションを実装しており、3〜5秒ごとに約1つのメッセージのレートでしか送信できません。これがライブラリ/APIの問題なのか、モデムの品質が悪いだけなのかはわかりません。誰かがこれらのデバイスを使った経験があり、スループット率を測定したことがありますか?

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

metrics - スループット測定

Javaモジュールのパフォーマンスをテストするための簡単な負荷テストツールを作成しました。私が直面した問題の1つは、スループット測定のアルゴリズムです。テストは複数のスレッドで実行され(クライアントはテストを繰り返す回数を構成します)、実行時間がログに記録されます。したがって、テストが終了すると、次の履歴があります。

今のところ、次の方法でスループット(1秒あたり)を計算します1000 / overallTime * threadCount

しかし、問題があります。1つのスレッドが(何らかの理由で)それ自体のテストをより迅速に完了するとしたらどうでしょうか。

この場合、測定されたスループットは最も遅いスレッドによって制限されるため、実際のスループットははるかに優れています。したがって、私の質問は、マルチスレッド環境でのコード実行のスループットをどのように測定する必要があるかということです。

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

linux - Linux、ファイルの読み取り速度を監視する

たくさんのファイルを開いているカスタムアプリケーションがあります。「lsof」を使用するプロセスによって開かれているファイルハンドルを確認でき、「watch-d'ls-alh'」を使用してmtime/ctimeを監視しているファイルを確認できます。ただし、これらのファイルに対して読み取り/書き込みが行われているデータの割合を確認したいと思います。IE:1つのファイルが100 Mbpsで読み取られ、ディスクが最大になっているのかどうかを判断する必要があります。その後、1Mbpsで書き込まれているファイルはいくつかありますか?特定のディスクのスループットを確認することは、どのファイルがハンマーで処理されているかを絞り込む必要があるため、あまり役に立ちません。

落とし穴もあるのではないかと思います。理想的には、他のソフトウェアをインストールしたり、スクリプトを記述したりせずに、これを判断する必要があります...これが「非常に本番の」システムの1つだからです。

誰かが方法を知っていますか?提案を事前に感謝します。