問題タブ [cpu]
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.
c - C での時間のかかる操作は何ですか?
さまざまなマシンでコンパイルして実行できる簡単なベンチマーク プログラムを書きたいと思っています。商用/オープンソースで入手可能なオプションを使用するのではなく、スレッド化とアルゴリズムの最適化手法をいじる独自のオプションが必要です。
フィボナッチ数列の n 番目の数を再帰的に計算し、数千回シード/rand() することを含む、私が既に使用しているカップルがあります。
比較的単純であるが、同時に計算集約型の (そしておそらく数学関連の) 他のアルゴリズムはありますか?
(これらの操作は C 言語で実装されることに注意してください。)
debugging - SOでFirefoxアドオンのCPU消費量を分析するには
私は現在、非効率的なFirefoxアドオンをアンインストールし、アドオンが問題であるかどうかを長期的に経験的に確認することで分析しています。ただし、非効率的なアドオンを見つけるこの方法は非常に時間がかかります。
正確な数値の見方を知りたい
- Firefoxでの各アドオンのCPU消費量
- Firefoxで同時に2つの異なるアドオンのCPU消費量(ブラウザに毎回2つのアドオンを配置して、長期的に必要性を測定することは現実的ではないことに注意してください)
テストを単純に保つには、メモリ消費量ではなくCPUのみを測定するだけで十分なようです。
アドオンのセットで2の組み合わせのCPU消費量を測定するツールはありますか?
java - java: datainputstream: データを待っている間、読み取り呼び出しはプロセッサ時間を消費しますか?
DataInputStream で read() を呼び出した場合、データを待機するために CPU サイクルが消費されますか?それとも、現在のスレッドを明け渡し、データが到着したことを知らせる割り込みによってウェイクアップされますか?
私の動機は、ストリーム リーダーを独自のスレッドにする必要があるかどうかを判断することです。CPU 時間を消費するブロッキング読み取りは、メイン スレッドがハングアップするため、理想的ではありません。
関連する質問: メソッドがブロッキングとして記述されている場合、待機中にスレッドが解放されることを意味しますか? それとも契約・保証はありませんか?データを常にチェック/ポーリングするメソッドは、まだブロックされているように思えます。
performance - アクティブなウィンドウの場合、タスクはより速く完了しますか?
バックグラウンドや最小化ではなく、アクティブウィンドウとして保持すると、ジョブがより速く終了するという神話を聞いたことがあります。
これに真実はありますか?CPUは、これが発生するタスクを優先しますか?
ありがとう、
windows - 実行中のプロセスの CPU 負荷
現在実行中のプロセスの瞬間的な CPU 負荷をプログラムで(c/c++) 知る必要があります。Win32 API は多くの低レベル API を提供しますが、実行中の c/c++ プログラムの現在の CPU 負荷を与えるものを見つけることができません。
問題は、現在のプロセスが使用している CPU 負荷の割合をプログラムで知る方法です。
c++ - プロセス内の単一スレッドの CPU 使用率を調べる方法
VC++ でプロセス内の単一スレッドの CPU 使用率を見つける方法に関するツールを探しています。
誰かが私にツールを提供できれば、それは素晴らしいことです。
また、プログラムで行う方法を提供する方が良いかもしれません。
前もって感謝します。
java - JavaでスレッドのCPU/メモリ使用量を調整していますか?
複数のスレッドを実行するアプリケーションを作成しており、これらのスレッドの CPU/メモリ使用量を抑制したいと考えています。
C++ についても同様の質問がありますが、可能であれば C++ と JNI の使用を避けたいと考えています。高水準言語を使用するとこれが不可能になる可能性があることは承知していますが、誰かアイデアがあるかどうか知りたいです。
編集:賞金を追加しました。これについては、本当によく考え抜かれたアイデアが欲しいです。
編集 2:これが必要な状況は、サーバー上で他の人のコードを実行することです。基本的に、これは完全に任意のコードであり、唯一の保証はクラス ファイルに main メソッドがあることです。現在、複数の完全に異なるクラスが実行時にロードされ、別々のスレッドとして同時に実行されています。
書かれているように、実行されるクラスごとに個別のプロセスを作成するためにリファクタリングするのは面倒です。それが VM 引数を介してメモリ使用量を制限する唯一の良い方法である場合は、それで問題ありません。しかし、スレッドでそれを行う方法があるかどうか知りたいです。別のプロセスであっても、CPU 使用率を何らかの方法で制限できるようにしたいと考えています。前述したように、これらのプロセスのいくつかは一度に実行されるからです。無限ループがすべてのリソースを占有することは望ましくありません。
編集 3:オブジェクトのサイズを概算する簡単な方法は、Java のInstrumentationクラスを使用することです。具体的には、getObjectSize メソッドです。このツールを使用するには、特別な設定が必要であることに注意してください。
.net - お客様の PC で CPU が 100% でスタックします。デバッグの提案はありますか?
私のソフトウェアを使用しているクライアントの 1 つで行き止まりの状況に陥っています。販売された約 40 個の製品 (VB.NET 2005 を使用して .NET 2.0 でプログラムされたアプリケーション) のうち、約 2 個が応答しなくなり、デュアル コア CPU の 1 つのコアが 100% でスタックします (プログラムは 1 つのコアのみを使用します)。
最も論理的な推測は、この動作の原因となる無限ループですが、非常に多くのループを含む数千行のコードです。私が入手した情報は以上です。さて、この問題のデバッグにどのようにアプローチすることをお勧めしますか?
編集: 基本的に、ソフトウェアは、PC などの他のデバイスを使用して消費されたクレジットの量を計算する責任があります。これは Cybercafe 管理プログラムであり、断続的に失敗します。つまり、失敗するとクレジットが差し引かれます。データベースのバックアップを作成する時期かどうかを確認するなど、他のこともバックグラウンドで実行します。
編集:解決しました。それは最もありそうもない問題でした。私が DBMS として使用した Access データベース エンジンは、実際には問題のあるアプリケーションの一部です。テーブルの 1 つで行 - JUST ONE FRIGGIN ROW - を操作するのは困難です。それを削除したり、他のテーブルのその行に関連するレコードを追加したりすることはできません。MS Access 2007 でさえ、その行を操作しようとすると CPU が 100% まで上昇します!
簡単な「圧縮して修復」コマンドですべてが修正されました。アプリケーションが起動するたびにそのコマンドを発行すると思います。そうすることで、これが再び起こるのを防ぐことができます。
WinDbg のおかげで、問題の場所を見つけることができました。リアルタイムセーバーなので、使い方を学ぶことをお勧めします。
powershell - Windows PowerShell で、スクリプトが使用する最大 CPU % を設定するにはどうすればよいですか?
PowerShell プロセスが使用する CPU 時間のパーセンテージを特定の数値に制限しようとしています。議論のために、13% であると想像してください。
正確には必要ではないその他のオプション: 1) 優先度の設定。2) CPU アフィニティの設定。
基本的に、合計 CPU 使用率が高くなりすぎると文句を言う監視ソフトウェアがあります。私たちはこれを引き起こす日常的なプロセスを持っています - ほとんど無害ですが、監視システムであまりにも多くの誤検知があり、人々は私たちが望んでいないときに警告/エラーに慣れてしまいます.
プロセス自体も、lsass.exe が実行されると非常に興奮し、他のプロセスも発生します。
私は PowerShell を知りません。Somebody Else の Powershell を修正しようとしています。明らかに、将来のある時点で根本的な書き直しが必要になるでしょうが、今のところ、ベルが鳴り、人々を悩ませています。