プロセッサ(Corei7およびCore2)サイクルに関して、さまざまなプログラミング言語の構文が何をとるのかを知ることができるWeb上の場所はありますか?大学でARMアセンブリ言語を学び、減算演算子などを実行するために必要なサイクル数をマッピングできました。Corei7またはCore2の高級言語でこれを実行できるかどうか疑問に思いました。
3 に答える
8
いいえ。これは、使用するコンパイラや、使用する最適化設定などに完全に依存します。
お気に入りのコンパイラと設定を使用してアセンブリコードを生成でき、アセンブリコードからこれらの種類の予測を行うことができます。
ただし、最近のアーキテクチャでは、メモリレイテンシやレジスタの名前変更などが速度に大きな影響を及ぼし、これらの影響はアセンブリコードを調べても明らかではないことに注意してください。
于 2010-11-03T00:07:35.210 に答える
2
一般に、高級言語では、個々のステートメントはマシンコード命令の特定のシーケンスにきれいにマッピングされません。コンパイラーは通常、命令のさまざまな変換、配置、さらには削除を含むものを最適化します。for
したがって、「式には20サイクルかかる」などの指標を引用することは、通常は意味がありません。
于 2010-11-03T00:05:53.803 に答える
2
上位レベルの命令を手動でアセンブリ命令にマップするか、アセンブリリストを確認する必要があります。そして、ここを見てください
http://gmplib.org/~tege/x86-timing.pdf
またはここ
于 2010-11-03T00:06:36.257 に答える