Intel Compiler Patcher はAMDやVIAやnVidiaにとって、どの様な影響を与えうるか?

 一昨日公開されました Intel Compiler Patcher は、Intel製以外のチップセットや、Intel製以外のCPUを使った機種を高速化する可能性を秘めています。もしくはIntel製CPUだけが享受していた最適化をキャンセルするものかもしれません。

 逆に言えば、このアプリが何をするかと言いますと、Intel製のコンパイラでコンパイルされたアプリを検出し、Intel製品だけで有効化される最適化の制限を解除するものです(だと思います)

 例えば、このアプリを使って検索してみますと、有名な 3DMark11 や CINEBENCH R11.5 などが検索にヒットしました。つまり、これらのベンチマークソフトは、Intel製CPUとチップセットを搭載した機種でのみSSE2やSSE3やAVXなどの拡張命令が有効活用され、それ以外の機種(例えばAMD製のCPUを搭載した機種や、nVidia製のチップセットを搭載した機種)では、たとえSSE2やSSE3やAVXに対応していたとしても拡張命令を使わずに、基本命令で(つまり、遅い速度で)実行される様に作られたベンチマークだったという事が判明したのです。ホントかよ!?

 これが本当なら、これらのベンチマークソフトは、Intel製のCPUが不当に高評価される様に仕組まれたベンチマークソフトだった事になります。

 実務で利用する業務用のソフトをIntel製CPUに特化してチューニングを施すのは製造者の自由だと思いますが、性能指標を測定する為のベンチマークに限っては、どこかのメーカー製に特化したチューニングを施すのは不公正だと思いますし、その様なチューニングを施している事をベンチスコアと同じサイズの文字でスコアに添えて公表すべきで、でなければ消費者に誤解を植え付ける事に成ります

 試しに20号機(AbuDhabi = Bulldozer系のOpteron搭載機)で CINEBENCH R11.5 を使い、パッチを当てる前と後の結果を測定してみました・・・結果、変化無しです・・・これが何を意味するのか?未だ判明していません。15号機(AMD K10 搭載機)では概ね1割程度スコアが上昇しましたが、この程度ではないと思うのですが・・・13号機(Westmare-EP)でも同様にパッチの前後でスコアに変化がありません・・・

 筆者が3年前に試したIntel謹製LINPACKベンチはSSEやAVXなどの拡張命令のみならず、OpenMPライブラリ(マルチコアを有効活用する仕組み)の部分もIntel製CPUだけが最適化される仕組みになっていましたが、同様に、他のIntelコンパイラを使ったベンチマークでもSSEやAVXのみでなく、もっと根が深い所までIntel製CPUに最適化されているのかもしれませんね。

 Intel Compiler Patcher の仕組みとしては、説明にあります通り、CPUID命令で取得したベンダID(販売元名)が "GenuineIntel" の場合だけ最適化する仕組みでコンパイルされているものを解除する物で、それ以外の仕組みに付いては対応していないと思われます。

 それ以外の仕組みの1例として、Intelが出しているOpenCLランタイムが有りますが、以前 Intel OpenCL 1.5で試した際にはAMD製CPUでは実行出来ない仕組みに成っていて、VIA nanoではSSE系の拡張命令を使って実行できました(IntelがVIA製のCPUに付いて全く考慮していなかっただけかもしれません)ので、類似の仕組みでコンパイルされたアプリでは "GenuineIntel" 以外を除外するのではなく、 "AuthenticAMD" だけを狙い撃ちで排除しているか、AMDが未実装の拡張命令を重点的に調べて、それに対応していないCPUを排除しているのではないかと思われますので、こちらのタイプの最適化が施されていた場合は Intel Compiler Patcher で検出されたとしても現状ではパッチは全く機能せず効果が無いのではないかと思われます。

 参考までに "GenuineIntel" 以外のベンダIDの一覧(アルファベット順)です。ベンダIDを取得するCPUID命令は80486の途中から導入されたもので初代Pentium以降のx86互換CPUであれば実行可能な命令です。

 "AuthenticAMD" - AMD
 "CentaurHauls" - セントールテクノロジー (現行の VIA CPU)
 "CyrixInstead" - サイリックス
 "GenuineTMx86" - トランスメタ
 "Geode by NSC" - ナショナルセミコンダクター
 "NexGenDriven" - NexGen
 "RiseRiseRise" - Rise Technology
 "SiS SiS SiS " - SiS
 "TransmetaCPU" - トランスメタ
 "UMC UMC UMC " - UMC
 "VIA VIA VIA " - VIA Technologies
 "Vortex86 SoC" - DM&P

 悲しい事に、Socket7世代で消えたベンダが多いですね~ちょっと寂しい気分です。

 現時点で生き残っている(今でも生産されている)のは、
   "AuthenticAMD" (AMD)
   "CentaurHauls" (VIA)
   "GenuineIntel" (Intel)
   "Vortex86 SoC" (DM&P)
 この4種のVendorIDだけでしょうか・・・ 

 
 
関連記事
スポンサーサイト

コメントの投稿

非公開コメント

管理人のみ閲覧できます

このコメントは管理人のみ閲覧できます

No title

intel謹製の内容を早くさせるものを解除するわけですから
AMDやVIAが不当に遅く感じさせる要因を排除するのでは
ないと思います。

Re: No title

> 一つ噂としてあるのが、資本の問題だそうでイスラム「AMD系」とユダヤ「Intel系」の構図ではないかとも

確かにAMD製品の製造を行うGLOBALFOUNDRIESはイスラム系(アブダビ首長国)の投資機関が主要株主ですからね

AMD製CPUの現行ハイエンドOpteron 63xxの開発コードネームがAbuDhabiですし

Re: No title

> intel謹製の内容を早くさせるものを解除するわけですから
> AMDやVIAが不当に遅く感じさせる要因を排除するのでは
> ないと思います。

どうなんでしょうね・・・

そうか、Intel製でパッチの前後を測定してみれば良いのか・・・
プロフィール

DualSocketTheWorld

Author:DualSocketTheWorld
自作を始めて20台目くらいになりますが、最初からデュアルソケット限定(始めた当時はデュアルスロット)で自作しており、近年になってAMD K6を試したくなりSocket7でK6-2+のシングル構成で組んだのがシングル初です。

シングルマザー(含:シングルソケットマルチコア)や4ソケット以上の自作は基本的にしませんし、メーカー製PCの改造も基本的にはしません(ノートPCのSSD化くらいはしますが・・・)

基本路線はワークステーションと呼ばれる分野での自作で、OSもWindows系であればProfesionalが主な対象に成ります。

ゲーマーの様なOverClockは行わず、WS路線としてハイエンドCPUとハイエンドGPUの組み合わせで定格或いはDownClockで発熱を抑えつつ、その時のアーキテクチャに置いて爆速かつ静音を目指し、30年以上の長期に渡り稼動状態をキープする事を目指します。

※基本的にリンクフリーです。どこでも自由にどうぞ。

※画像は時々変ります。

※お決まりの文章ですが、改造は個人の責任で行ってください。ここに記載された情報は間違いを含んでいる可能性が有り、それを元に製作や改造などをして失敗しても筆者は一切責任持てませんので悪しからず。

筆者略歴:
小学生時代にゴミ捨て場で拾ったジャンクテレビ数台を分解して部品を取り出し真空管アンプを自作、中学生時代にPC8801mkⅡsrでZ80アセンブラを始める。社会人になって初のプログラムは弾道計算、後に医療系・金融系プログラマ~SEを経て100~200人規模プロジェクトのジェネラルマネジャを数年経験、独立して起業。現在は不動産所得で半引退生活。
(人物特定を避ける目的で一部経歴を変更しています)

最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
アクセスカウンター
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QR