|
32ビットあるいは64ビットプロセッサを含むPGI コンパイラ製品がサポートするプロセッサの種別とその利用可能なハードウェア機能を以下に纏めました。
以下の表の中にある 'target' をコンパイルコマンドのオプションとして指定すると、指定された CPU の特性に応じた最適化が可能なクロス・コンパイルが可能となります。CPU
target オプションの詳細は、こちらに説明しています。また、「クロスコンパイルの方法」については、こちらのページをご覧ください。
|
PGI コンパイラは、AMD 社の NUMA アーキテクチャにも「最適化」する機能を有するだけでなく、インテル社の従来の UMA アーキテクチャにも最適化可能なコンパイラです。関連リンク |
|
|
コンパイラ技術は、AMD64/EM64T のコード生成機能だけではなく、NUMA/UMA と言ったメモリアーキテクチャに対しても柔軟に最適化できる能力が求められています。PGI
コンパイラは、次世代 NUMA アーキテクチャに対しても最適化機能を有した「先頭を走るコンパイラ」です。
|
| PGI Workstation 7.0 Supported Processors |
| Supplier |
CPU |
<target> |
Core |
Memory Address |
Floating Point HW |
| x86-64 |
x87 |
SSE1 |
SSE2 |
SSE3 |
| AMD |
Opteron/Athlon64 |
k8-64 |
2 |
64-bit |
Yes |
Yes |
Yes |
No |
| AMD |
Opteron/Athlon64 |
k8-32 |
2 |
32-bit |
Yes |
Yes |
Yes |
No |
| AMD |
Opteron Rev. E/F |
k8-64e |
2 |
64-bit |
Yes |
Yes |
Yes |
Yes |
| AMD |
Opteron Rev. E/F |
k8-32 |
2 |
32-bit |
Yes |
Yes |
Yes |
No |
| AMD |
Opteron/QuadCore |
barcelona-64 |
4 |
64-bit |
Yes |
Yes |
Yes |
Yes |
| AMD |
Opteron/QuadCore |
barcelona |
4 |
32-bit |
Yes |
Yes |
Yes |
Yes |
| AMD |
Turion64 |
k8-64e |
1 |
64-bit |
Yes |
Yes |
Yes |
Yes |
| AMD |
Turion64 |
k8-32 |
1 |
32-bit |
Yes |
Yes |
Yes |
No |
| Intel |
Core 2 |
core2-64 |
2 |
64-bit |
Yes |
Yes |
Yes |
Yes |
| Intel |
Core 2 |
core2 |
2 |
32-bit |
Yes |
Yes |
Yes |
Yes |
| Intel |
Xeon, P4 EM64T |
p7-64 |
2 |
64-bit |
Yes |
Yes |
Yes |
Yes |
| Intel |
Xeon, P4 EM64T |
p7 |
2 |
32-bit |
Yes |
Yes |
Yes |
Yes |
| Intel |
Xeon/Pentium4 |
p7 |
1 |
32-bit |
Yes |
Yes |
Yes |
No |
| AMD |
Athlon XP/MP |
athlonxp |
1 |
32-bit |
Yes |
Yes |
No |
No |
| Intel |
Pentium III |
piii |
1 |
32-bit |
Yes |
Yes |
No |
No |
| AMD |
Athlon |
athlon |
1 |
32-bit |
Yes |
No |
No |
No |
| AMD |
K6 |
k6 |
1 |
32-bit |
Yes |
No |
No |
No |
| Intel |
Pentium II |
p6 |
1 |
32-bit |
Yes |
No |
No |
No |
| Other |
Other x86 |
p5 or px |
no |
32-bit |
Yes |
No |
No |
No |
|
|
※AMD クアッドコアのプロセッサ(Barcelona) の32ビット用、64ビット用に最適化するためのターゲットとして、
-tp barcelona、 -tp barcelona-64 が新設されました。これは、PGI 7.0-3 リリースより有効です。
※インテル(R) Core 2 テクノロジーを搭載したプロセッサに対応しています。(target名は、core2-64,core2)
※ 旧バージョン PGI 6.2 がサポートするプロセッサとその特性についてはこちらのページ
※ 旧バージョン PGI 6.1 がサポートするプロセッサとその特性についてはこちらのページ
※ 旧バージョン PGI 6.0 がサポートするプロセッサとその特性についてはこちらのページ
|
PGI がサポートするプロセッサのデフォルトで使用する最適化機構
| prosessor |
Prefetch |
SSE1 |
SSE2 |
SSE3 |
32-bit |
64-bit |
Scalar FP
Default |
| AMD |
Athlon |
|
|
|
|
○ |
|
x87 |
| AMD |
Athlon XP/MP |
○ |
○ |
|
|
○ |
|
x87 |
| AMD |
Athlon64 |
○ |
○ |
○ |
|
○ |
○ |
SSE |
| AMD |
Opteron |
○ |
○ |
○ |
|
○ |
○ |
SSE |
| AMD |
Opteron Rev.E/F |
○ |
○ |
○ |
○ |
○ |
○ |
SSE |
| AMD |
Opteron/Quad-Core |
○ |
○ |
○ |
○ |
○ |
○ |
SSE |
| AMD |
Turion |
○ |
○ |
○ |
○ |
○ |
○ |
SSE |
| Intel(R) |
Celeron |
|
|
|
|
○ |
|
x87 |
| Intel(R) |
Pentium II |
|
|
|
|
○ |
|
x87 |
| Intel(R) |
Pentium III |
○ |
○ |
|
|
○ |
|
x87 |
| Intel(R) |
Pentium 4 |
○ |
○ |
○ |
|
○ |
|
SSE |
| Intel(R) |
Pentium M |
○ |
○ |
○ |
|
○ |
|
SSE |
| Intel(R) |
Centrino |
○ |
○ |
○ |
|
○ |
|
SSE |
| Intel(R) |
Pentium 4 EM64T |
○ |
○ |
○ |
○ |
○ |
○ |
SSE |
| Intel(R) |
Xeon EM64T |
○ |
○ |
○ |
○ |
○ |
○ |
SSE |
| Intel(R) |
Core Duo EM64T |
○ |
○ |
○ |
○ |
○ |
○ |
SSE |
| Intel(R) |
Core 2 Duo EM64T |
○ |
○ |
○ |
○ |
○ |
○ |
SSE |
|
|
AMD64 と PGI 社の取組みについて
「AMD64」は、AMDが独自開発した、32bit と 64bit のハイブリッドなプロセッサ・アーキテクチャです。既存の 32bit の x86
命令をベースに 64bit モードと 64bit 命令を追加したものです。 これまでの x86 プロセッサの進化と同様、既存の x86 命令との互換性を維持しながら、その延長線上で
64bit 化を行ったことにより、32bit と 64bit 環境の共存や、32bit から 64bit 環境への移行が容易である特長があります。また、x86
命令も 64bit 命令もほぼ同等の性能を発揮すると言われております。PGI 社は、Opteron の発表前から AMD 社との協調体制の下で、AMD64
用の最適化コンパイラを開発してきました。Opteron 用のコンパイラとして、市場に最初に提供したのが PGI コンパイラです。なお、インテル(R)
コンパイラでは、AMD社の Opteron 等に適した細部の最適化は行えない部分があります。特にメモリアクセス、キャッシュ最適化に係る部分の最適化は大きく異なるため、インテル社製コンパイラで生成された EM64T コードは、AMD64マシン上では性能が大きく劣化する場合があります。AMD Opteron/Athlon プロセッサ用のコンパイラは、 PGI 社のコンパイラをお求めください。
PGI コンパイラの大きな特長は、AMD 社の AMD64 プロセッサとインテル社の EM64T プロセッサ、それぞれの CPU 命令に応じた最適化を行うことができるコンパイラ・スイッチ (cpu target) を有しているコンパイラであることです。 詳細は、こちらをご覧ください。
例えば、 EM64T の場合、CPU ターゲットを指定するコマンド・ライン・オプションである -tp p7-64 を指定することで、Intel(R)
EM64T に特化した最適化を行います。PGI コンパイラは、AMD64 ネイティブな最適化と Intel(R) EM64T 用の最適化を切り替えることが可能なクロス・コンパイル機能を有します。従いまして、PGI
コ ンパイラを利用することで、将来、ご使用システムを EM64T もしくは AMD64 のどちらかの CPU プラットフォームに変更したとしても、共通コンパイラ基盤としてどちらのプラットフォームに対してもご利用いただけます。
PGI コンパイラは、インテル(R) のプロセッサに対しても AMD のプロセッサに対しても最適なコードを生成します。各社商用コンパイラの性能比較にて、どちらのプロセッサ上でも速い PGI の性能をお確かめください。
Intel(R) Extended Memory 64 Technology について
インテル(R) EMT64T (インテル 64) は、基本的に AMD64 アーキテクチャとの互換を図り、64bit 命令(演算、アドレッシング)を追加した技術です。従って、EM64T は、既に市場に出回っている AMD64 と互換性が保たれています。PGI コンパイラは、EM64T をサポートしています。
|