問題タブ [processing-efficiency]
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.
javascript - マーカーを効率的に操作する方法
私は地図を持つウェブサイトを作成しています (bing マップまたは Google マップは関係ありません)。マーカーは ajax から毎秒要求され、マップに配置されます。何かを入力するとマーカーが表示される検索入力もあります。そのテキストによってフィルタリングされます。次のコードで簡単に説明しました。
これが最善の方法ですか?マーカーは、多くの処理が必要になる可能性があります。マーカーを配置し、フィルター処理し、パフォーマンスを向上させる効率的な方法はありますか?
algorithm - 複雑さからのプログラム実行時間の見積もり
知りたいのですが、最悪の場合の時間の複雑さを見積もっている場合、自分のマシン (たとえば 2.5 Ghz マシン) で プログラムを実行するのにかかる時間をどのように見積もることができますか? 例: - 最悪の場合、O(n^2) で n<100000 のプログラムがある場合、実際のプログラム/手順を作成する前に /estimate をどのように知ることができますか?秒?
プログラムが実際にどのように実行されるかを知ることは良いことではないでしょうか。また、最終的に非効率であることが判明するコードを書く手間も省けます! 大変助かります。
udp - 最も信頼性が高く効率的な udp パケット サイズは?
UDP で小さなパケットをたくさん送信すると、より多くのリソース (CPU、zlib による圧縮など) が必要になります。私はここで、UDP で ~65kBYTE の大きなパケットを 1 つ送信するとおそらく失敗することを読んだので、小さなパケットをたくさん送信するとより頻繁に成功すると考えられますが、より多くの処理能力を使用することによる計算上のオーバーヘッドが発生します (または、少なくともそれは私が仮定しています)。問題は基本的にこれです。成功した最大のパケットを送信し、計算を最小限に抑えるための最良のシナリオは何ですか? ほとんどの場合に機能する特定のサイズはありますか? サーバーには Erlang を、クライアントには Enet を使用しています (c++ で記述)。Zlib 圧縮も使用して、同じパケットをすべてのクライアントに送信します (ブロードキャストは私が推測する用語です)。
wpf - より効率的なログ フィルター
ログ ファイルの行を表示するプログラムがあります。
それらは解析され、LogLine というクラスに入れられ、データグリッドに表示されます。
これが私のフィルター関数です:
この関数は既に遅く、200000 行のログで 5 秒近くかかります。
これをスピードアップするために何ができますか?
HighCore の提案に従って、実際の ViewModel を実装しました。これはわずかに高速ですが、ObservableCollection のすべての行をスローするのにまだ 5 ~ 6 秒かかります。
c# - プログラムがサーバー上のプロセッサをどこに固定しているかをどのように判断しますか?
簡単な背景として、IMAPを使用してExchangeサーバーから電子メールをプルして処理するサービスを作成しました。
問題(そのうちの1つ)は、サーバー管理者がプログラムがプロセッサを断続的にペギングしていることに気付いたことです。
さて、ここでの問題は...それを起こさせるものは何もないはずです。特に集中的なものはなく、ネストされたループもありません。正直なところ、テストは停止しているため、プロセスはほとんど実行できません。
いいえ、サービスは30秒ごとに実行されます...しかし、プロセッサの問題は1時間に約3回しか発生していません。私が送ったグラフによると、それも比較的定期的です。
メールサーバーに接続するときに何かが起こっているのではないかと疑っていますが、それがプロセッサがペグされているときであることを示す必要があります。
唯一の問題は、特定のコードにヒットしたときにそれが発生していることを示す方法がわからないことです...
python - Blender3Dでのより効率的なPythonスクリプト
私は基本的に、プリミティブUV球を使用して3D散布図を作成しており、一度に数百を超えるポイントを作成しようとすると、メモリの問題が発生します。2.1Ghzプロセッサを搭載したラップトップに制限がありますが、これを書くためのより良い方法があるかどうか知りたいと思いました。
このような単純なスクリプトでは、パフォーマンスの向上は無視できる可能性が高いと思いますが、とにかく試してみたかったのです。
performance - 独立したタスクを効率的に並列化する
私は [;N;] 個のワークユニット [;w_n;] を持っています。それぞれに、事前にわかっている一定の時間 [;t_n;] がかかります。
ワークユニットの一部のサブセットを処理する必要がある場合があり、最大 [;P;] プロセスをそれぞれ別の CPU で使用できるという制約がある場合、ワークユニットを事前に効率的に分散するにはどうすればよいですか?すべてのプロセスが互いに (時間内に) できるだけ近く終了するようにプロセスを変更しますか?
performance - Excelの計算時間の測り方
たとえば、どの式がより高速かをどのように見つけることができますか?
対
Vs 2 つのフィールドを新しい列に連結して行う
対 VBA
data-structures - リストのリストとハッシュのハッシュ
セットアップ: 文字列と文字列のペアに関連付けられた特徴ベクトルを保存する必要があります。文字列と文字列のペアは、入出力関係をエンコードします。比較的少数の入力X
(例: 5) があり、各入力x
に対して比較的少数の出力Y|x
(例: 10) があります。
問題は、どのデータ構造が最速かということです。
追加の関連情報:
- 通常、出力は入力ごとに異なり、それぞれ
X
が同じ数の出力を持つとは限りません。 - 検索は「何度も」行われます (おそらく 1000 回)。
- 入力は同じ頻度でサンプリングされますが、各入力に対して、通常は 1 つまたは 2 つの出力が頻繁にアクセスされ、残りはほとんどアクセスされないか、まったくアクセスされません。
現在、以下の3つの可能性を考えています。
- list-of-lists : インデックス ( input を表す
X[i]
) で外側のリストにアクセスし、インデックス ( output を表す) で内側のリストにアクセスしますY[i][j]
。 - hash-of-hashes : 上記と同じ。
- フラット ハッシュ:
key = (input,output)
.
java - 速度の観点から、比較の結果を保存することと、比較を再計算することのどちらが理にかなっているのですか?
比較の結果を再計算するのではなく、保存することが理にかなっている場合 (使用可能なメモリ領域を無視する場合) をしっかりと理解したいと思います。ストレージによって発生する時間コストを正当化するための転換点は何ですか? 比較回数は 2 回、3 回、または 4 回ですか。もっと?
たとえば、この特定のケースでは、どのオプションが (一般的に) 速度の面で優れているでしょうか?
オプション1:
オプション 2:
私は自分自身の質問に答えるために 2 つのオプションを自分でプロファイリングしようとしましたが、この種のパフォーマンス テストの経験があまりないため、より経験のある人からより決定的な回答を得たいと思っています。関連する理論的要素をよりよく理解する。
大したことではなく、ほとんどの場合、違いはごくわずかであることはわかっています。しかし、私は完璧主義者で、この特定の問題を解決して、自分の人生をやり遂げたいと思っています (笑)。
さらに、将来遭遇する可能性のある同様の状況に関して、違いが非常に大きくなる可能性がある場合(比較またはメモリ割り当てのコストが発生しない場合など)について、答えが啓発的であることが証明される可能性が高いと思いますパフォーマンスに関する実際の問題を引き起こすほど複雑です)。
回答は、他の言語ではなく、Java でのプログラミングに関連する必要があります。
すでに数回言及したことは知っていますが、回答は速度の違いだけに集中してください。コードを記述する際に、他の多くの要因を考慮に入れることができ、また考慮に入れる必要があることは十分承知していますが、ここでは、どれがより速いかについての単純明快な議論をしたいと思います。