PGI Compiler 2016 サポートプロセッサ

対象 PGIコンパイラ ターゲット CPU プロセッサ

サポートするプロセッサと利用可能な機能

 32ビットあるいは64ビットプロセッサを含む PGI コンパイラ製品がサポートするプロセッサの種別とその利用可能なハードウェア機能を以下に纏めました。 以下の表の中にある 'target' をコンパイルコマンドのオプションとして指定すると、指定された CPU の特性に応じた最適化が可能なクロス・コンパイルが可能となります。CPU target オプションの詳細は、こちらに説明しています。また、「クロスコンパイルの方法」については、こちらのページをご覧ください

現在コンパイラを使用しているシステムのプロセッサのタイプを見る方法は、以下のようにコンパイラコマンドに -V オプションを付して実行してください。そのターゲットプロセッサ名が表示されます。

$ pgfortran -V
pgfortran 16.1-0 64-bit target on x86-64 Linux -tp sandybridge
The Portland Group - PGI Compilers and Tools
Copyright (c) 2016, NVIDIA CORPORATION.  All rights reserved.					

 PGI コンパイラは、AMD 社の NUMA アーキテクチャにも「最適化」する機能を有するだけでなく、インテル社のUMAや最新の Core i7 系の NUMA アーキテクチャにも最適化可能なコンパイラです。

 コンパイラ技術は、AMD64/Intel(R)64 のコード生成機能だけではなく、NUMA / UMA と言ったメモリアーキテクチャに対しても柔軟に最適化できる能力が求められています。PGI コンパイラは、 NUMA アーキテクチャに対しても最適化機能を有した「先頭を走るコンパイラ」です。

PGI Workstation 2016 Supported Processors
Supplier CPU -tp
<target>
Memory
Address
Floating Point HW
SSE1 SSE2 SSE3 SSSE3 SSE4 ABM
&SSE4a
Intel Core i7/i5/i3(Haswell以降) haswell-64 64-bit Yes Yes Yes Yes Yes Yes
Intel Core i7/i5/i3(Haswell以降) haswell-32 32-bit Yes Yes Yes Yes Yes Yes
Intel Core i7/i5/i3 (Ivy Bridge) ivybridge-64 64-bit Yes Yes Yes Yes Yes Yes
Intel Core i7/i5/i3 (Ivy Bridge) ivybridge-32 32-bit Yes Yes Yes Yes Yes Yes
Intel Core i7/i5/i3 (Sandy Bridge) sandybridge-64 64-bit Yes Yes Yes Yes Yes Yes
Intel Core i7/i5/i3 (Sandy Bridge) sandybridge-32 32-bit Yes Yes Yes Yes Yes Yes
Intel Core i7/i5/i3 (Nehalem) nehalem-64 64-bit Yes Yes Yes Yes Yes Yes
Intel Core i7/i5/i3 (Nehalem) nehalem-32 32-bit Yes Yes Yes Yes Yes Yes
Intel Penryn penryn-64 64-bit Yes Yes Yes Yes Yes No
Intel Penryn penryn-32 32-bit Yes Yes Yes Yes Yes No
Intel Core 2 core2-64 64-bit Yes Yes Yes Yes Yes No
Intel Core 2 core2-32 32-bit Yes Yes Yes Yes Yes No
Intel Xeon, P4 EM64T p7-64 64-bit Yes Yes Yes Yes No No
Intel Xeon, P4 EM64T p7-32 32-bit Yes Yes Yes Yes No No
Intel Xeon/Pentium4 p7-32 32-bit Yes Yes No No No No
AMD Piledriverr piledriver-64 64-bit Yes Yes Yes No Yes Yes
AMD Piledriver piledriver-32 32-bit Yes Yes Yes No Yes Yes
AMD Bulldozer bulldozer-64 64-bit Yes Yes Yes No Yes Yes
AMD Bulldozer bulldozer-32 32-bit Yes Yes Yes No Yes Yes
AMD Six-core Istanbul istanbul-64 64-bit Yes Yes Yes No Yes Yes
AMD Six-core Istanbul Istanbul-32 32-bit Yes Yes Yes No Yes Yes
AMD Opteron/QuadCore shanghai-64 64-bit Yes Yes Yes No No Yes
AMD Opteron/QuadCore shanghai-32 32-bit Yes Yes Yes No No Yes
AMD Opteron/QuadCore barcelona-64 64-bit Yes Yes Yes No No Yes
AMD Opteron/QuadCore barcelona-32 32-bit Yes Yes Yes No No Yes
AMD Opteron/Athlon64 k8-64 64-bit Yes Yes Yes No No No
AMD Opteron/Athlon64 k8-32 32-bit Yes Yes Yes No No No
AMD Opteron Rev. E/F k8-64e 64-bit Yes Yes Yes No No No
AMD Opteron Rev. E/F k8-32 32-bit Yes Yes No No No No
AMD Turion64 k8-64e 64-bit Yes Yes Yes No No No
AMD Turion64 k8-32 32-bit Yes Yes No No No No
AMD K6 k6 32-bit No No No No No No
Generic Generic x86 px 32-bit No No No No No No

Intel(R)社のプロセッサにも、AMD社のプロセッサにも、どちらにも最適化可能

 

 PGI コンパイラの大きな特長は、AMD 社の AMD64 プロセッサとインテル社の インテル64(EM64T) プロセッサ、それぞれの CPU のマイクロアーキテクチャに応じた最適化を行うことができるコンパイラであることです。詳細は、こちらをご覧ください。

 

 特に、インテルプロセッサと AMDプロセッサでは、メモリアクセス、キャッシュ最適化に係る部分の最適化は大きく異なるため、インテル社製コンパイラで生成された Intel64 コードは、AMD64 マシン上では性能が大きく劣化する場合があります。AMD プロセッサ用のコンパイラは、 PGI 社のコンパイラをお求めください。 例えば、Intel(R) 64 の場合、CPU ターゲットを指定するコマンド・ライン・オプションである -tp nehalem-64 等を指定することで、Intel(R)64 である Nehalem (Core i7 等)に特化した最適化を行います。PGI コンパイラは、AMD64 ネイティブな最適化と Intel(R)64用の最適化を切り替えることが可能なクロス・コンパイル機能を有します。従いまして、PGI コンパイラを利用することで、将来、ご使用システムを Intel64 もしくは AMD64 のどちらかの CPU プラットフォームに変更したとしても、共通コンパイラ基盤としてどちらのプラットフォームに対してもご利用いただけます

 

 Intel64 は、基本的に AMD64 アーキテクチャとの互換を図り、64bit命令(演算、アドレッシング)を追加した技術です。従って、Intel64は、 AMD64 とバイナリレベルで互換性が保たれています。PGI コンパイラは、最新のインテル社のプロセッサを常にサポートします。