問題タブ [rdtsc]

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 投票する
1 に答える
3262 参照

assembly - アセンブリで rdtsc 関数を使用する

Ubuntu 12.04 を使用して x86 アセンブリ プログラムをプロファイリングしようとしています。rdtsc 関数を使用したいと思います。問題は、コメントによると、rdx でサイクル数を取得する必要があることですが、次のコードでは数値が高すぎます。

デバッガーで実行すると、サブ命令の後のレジスターで次の結果が得られます。

単純な命令に対して rdx のサイクル数が非常に多い理由がわかりません。rcx の数値は正しいですか? それも高くないですか?

前もって感謝します

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

assembly - rdtsc 命令の実行に必要なクロック サイクル数をカウントするにはどうすればよいですか?

unsigned long long が eax/edx に格納されることは知っていますが、1 つの rdtsc 命令を実行するのに必要なクロック サイクル数を調べるにはどうすればよいでしょうか?

編集:このようなものは機能しますか?

.globl rdtsc

rdtsc:

rdtsc

movl %eax, %ecx

movl %edx, %ebx

rdtsc

subl %ecx, %eax

subl %ebx, %edx

戻る

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

c - rdtsc への未定義の参照

私は木を作成するコードを書いており、木を作成するさまざまな方法を試しています。ただし、rdtsc を適切に機能させることはできないようです。

これが私のコードです:

上記のすべての関数が処理されていると仮定します (もちろん rdtsc は別として)。

コンパイルしようとすると、次のエラーが発生します。

この未定義の参照エラーが発生する理由はありますか?

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

c++ - C ++からx86_64のCPUサイクルカウントを取得するにはどうすればよいですか?

最新のCPUサイクルカウントを取得するためのCコードを含むSOに関するこの投稿を見ました。

C / C ++Linuxx86_64でのCPUサイクルカウントベースのプロファイリング

このコードをC++で使用する方法はありますか(WindowsおよびLinuxソリューションを歓迎します)?Cで書かれていますが(そしてCはC ++のサブセットです)、このコードがC ++プロジェクトで機能するかどうか、そして機能しない場合はどのように翻訳するかについてはあまりわかりません。

x86-64を使用しています

EDIT2:

この関数が見つかりましたが、VS2010にアセンブラーを認識させることができません。何か含める必要がありますか?(私はウィンドウズに交換uint64_tする必要があると思います....?)long long

EDIT3:

上記のコードから、次のエラーが発生します。

"エラーC2400:'opcode'のインラインアセンブラ構文エラー;見つかった'データ型'"

誰か助けてもらえますか?

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

c - x86 と x86_x64 で「rdtsc」を別々に使用する必要があるのはなぜですか?

rdtscプロセッサのタイムスタンプ カウンターの現在の値を、EDX と EAX の 2 つのレジスタにロードすることはわかっています。x86で取得するには、次のようにする必要があります(Linuxを使用していると仮定):

x86_x64 の場合:

何故ですか?誰か説明してくれませんか?

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

c - TLB ミスなどのメモリ特性によるパフォーマンスへの影響を示す rdtsc コード

rdtsc() を理解しようとしていたところ、 http: //www.mcs.anl.gov/~kazutomo/rdtsc.html から次のコードに出くわしました。 TLBミス、ページフォールト、ページスワップイン/アウトなどのメモリ特性によるパフォーマンスへの影響.".問題は、これがメモリ特性からパフォーマンスをどのように示しているかをよく理解していないことです.誰かがこれを少し説明できれば素晴らしいでしょう。