7

最適化レベルと特定のプロセッサ アーキテクチャへのケータリングに関して、GCC が Intel の ICC とどのように異なるかを知りたいと思っています。Linux には GCC 4.1.2 20070626 と ICC v11.1 を使用しています。

ICC の最適化レベル (O1 から O3) は、GCC とはまったく異なる場合、どのように異なりますか?

ICC は、さまざまなアーキテクチャ (IA-32、intel64、および IA-64) に特に対応できます。GCC に-marchは似ていると思われるコンパイラ オプションがあることを読みましたが、使用するオプションのリストが見つかりません。64 ビットの Intel Xeon X5570 を使用しています。アプリケーションを 64 ビット Intel CPU に対応させるために使用できる GCC コンパイラ オプションは他にありますか?

4

3 に答える 3

1

これらのアーキテクチャに適用可能なすべてのオプションの完全なリストと説明については、GCC マニュアルのie386 および x86-64 オプションのセクション 3.17.15 を参照してください(IA-64 は Itanium であり、それらのいずれかを持っている可能性は低いです)。

このコンテキストで最も重要なオプションは次のとおりです。

  • -m6464 ビット コードを生成します。
  • -march=特定の CPU タイプの命令を生成します。と
  • -mtune=特定の CPU タイプに合わせてコードを調整します。
于 2010-03-23T03:15:42.027 に答える
-1

オプションを調整し、コードを逆アセンブルして違いを確認する

于 2010-03-23T04:03:28.997 に答える