問題タブ [gettimeofday]
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.
python - FreeBSD の Python 時計機能
FreeBSD で Python の time.clock() 関数をテストしているときに、常に同じ値 (約 0.156) を返すことに気付きました。
time.time() 関数は正常に動作しますが、解像度が少し高いものが必要です。
それがバインドされているC関数はありますか?代替の高解像度タイマーがある場合は?
私はプロファイリングを行っていないので、TimeIt モジュールはここでは適切ではありません。
windows - Windowsでgettimeofday()を置き換えるには何を使用すればよいですか?
送信と受信の両方のタイムアウトをサポートするポータブルSocketクラスを作成しています...使用しているこれらのタイムアウトを実装するために....しかし、 Linuxではもちろんselect()
どのくらいの時間ブロックされているかを知る必要がある場合があります呼び出しの前後に呼び出してから、デルタを計算するために使用するselect()
ことで実装します。gettimeofday()
select()
timersub()
select()
Windowsでタイムアウトを受け入れる場合、Windowsでgettimeofday struct timeval
()を置き換えるためにどのメソッドを使用する必要がありますか?
c++ - C ++でgettimeofday()に代わる最良のライブラリは何ですか?
Linux の C++ で gettimeofday() を使用するよりオブジェクト指向の代替手段はありますか? たとえば、次のようなコードを記述できるのが好きです。
ターゲットは組み込み Linux システムで、Boost ライブラリはありませんが、移植しやすいもの (ヘッダー ファイルのみで実装されているものなど) があるかもしれません。
c - Visual Studio C++ 2008 で gettimeofday() または同等のものを使用する方法は?
Windows XP 上の Visual Studio C++ 2008 で gettimeofday() 関数を使用する方法を教えてください。これは、ネット上のどこかで見つけたコードです。
昨年、このコードを VC++6 でテストしたところ、問題なく動作しました。しかし、VC++ 2008 を使用すると、例外処理のエラーが発生します。gettimeofday または同等のものを使用する方法について何か考えはありますか?
ご返信いただきありがとうございます。何かお役に立てば幸いです。
performance - 選択したループの実行時間の測定
C プログラムで選択したループの実行時間を測定して、プログラム (Linux 上) の合計実行時間の何パーセントがこれらのループに費やされているかを確認したいと考えています。パフォーマンスを測定するループを指定できるはずです。ここ数日、いくつかのツール (vtune、hpctoolkit、oprofile) を試しましたが、どれもこれを行うようには見えません。それらはすべて、パフォーマンスのボトルネックを見つけて、それらの時間を表示するだけです。これは、これらのツールがしきい値 (~1ms) を超えた時間のみを保存するためです。したがって、1 つのループの所要時間がそれよりも短い場合、その実行時間は報告されません。
gprof の基本的なブロック カウント機能は、現在サポートされていない古いコンパイラの機能に依存しています。
またはそのようなものを使用して単純なタイマーを手動で作成できますgettimeofday
が、場合によっては正確な結果が得られません。例:
ここで、内側のループで費やされた合計時間を測定したいのでgettimeofday
、最初のループ内に呼び出しを入れる必要があります。そのgettimeofday
ため、それ自体が 1000 回呼び出され、独自のオーバーヘッドが発生し、結果が不正確になります。
c++ - gettimeofday()間隔が時々負になるのはなぜですか?
パフォーマンスを測定しようとしている実験ライブラリがあります。これを行うために、私は次のように書きました:
時折、私の結果には負のタイミングが含まれ、そのいくつかは無意味です。例えば:
どうしたの?
c - Linuxでデルタ時間を測定しているときの奇妙な結果
更新:コードのデルタ計算を修正しましたが、まだ問題が残っています
皆さん、次のコードを使用して、私が時々非常に奇妙な結果を得る理由を説明していただけますか?
(次のコマンドでコンパイルして実行できます:gcc test.c -o out -lrt && ./out)
私が経験しているのは、ほぼ毎秒、またはさらに頻繁に、散発的に大きなdiff変数の値です。
どうすればこれが可能ですか?責任があるのはOSですか?コンテキストの切り替えが多すぎませんか?しかし、私のボックスはアイドル状態です(負荷平均:0.02、0.02、0.3)。
これが私のLinuxカーネルバージョンです:
c - C の -mno-sse フラグと gettimeofday() のエラー
gettimeofday() を使用する単純な C プログラムは、フラグなし (gcc-4.5.1) でコンパイルすると正常に動作しますが、フラグ -mno-sse でコンパイルすると出力が得られません。
私は CFLAGS=-march=native -mtune=native を持っています 誰かがなぜこれが起こるのか説明できますか? 通常、プログラムは正しい値を返しますが、-mno-sse を有効にしてコンパイルすると、「0」が出力されます。
c++ - C ++でのミリ秒精度のベンチマーク?
さまざまな単純な関数でさまざまな小さなベンチマークを実行したかったので、プロファイルを作成したくありません。私の人生では、C ++でミリ秒数を記録する方法を見つけることができません。ちなみにLinuxを使用しています。
システムクロックをミリ秒単位で取得する方法を提案できますか (簡単な方法が見つからない場合は、秒単位で解決できます..)、それらが含まれるヘッダーは何ですか?
c - 一意の番号を生成する gettimeofday clock_gettime ソリューション
私のプロセスは複数のインスタンス (プロセス) と複数のスレッドを実行し、それらすべてが同じデータベースに書き込みます。リクエストが発行されるとすぐに、独自のデータベースに追加されるレコードに対して一意の req id が生成されます。制限事項は次のとおりです。長さは 9 文字を超えることはできず、最初の 6 文字として hhmmss が必要です。最後の 3 桁に ms を使用して 9 文字を完成させることにしました。これはすべて gettimeofday() を使用して行っています。ただし、トラフィックの増加に伴い、1 ミリ秒の間に複数のリクエストが送信されると、衝突のインスタンスが発生するようになりました。これは、gettimeofday() 自体が正確ではないという事実と相まって、衝突数の増加を引き起こしています。私は clock_gettime を使用しようとしましたが、テストすると、次のテストプログラムから観察したように正確ではありません:
- スレッド化の問題により、静的変数またはグローバル変数を使用できませんでした
- 連続する必要があるため、乱数を使用できません
どんな助けにも感謝します。