AMD documents: #47414 (Software Optimization Guide for AMD Family 15h Processors) [amd.com] & #26569 (AMD64 Architecture Programmer?s Manual Volume 5: 64-Bit Media and x87 Floating-Point Instructions) should explain how the x87 instructions are executed on 15h family. The latter one I cannot provide as it is confidential (?).
ベンチの為のパッチって意味があるのかな (スコア:1)
べっちマークの為のパッチはあまり意味が無いような気がします。それどころか利用者をだましているような気すらします。
どうなんでしょう?
Re: (スコア:1)
BIOSの一部を書き換えちゃうのか、BIOSの何かのスイッチ(起動時のBIOSセットアップ画面からいじれないなにか?)をON/OFFしてるだけなのか、OSに対するパッチとかなのか。
効果としてはx87命令を多用する任意のソフトウェアが高速化されそうに見える一方で、意味がないというツッコミも入ってるし。 今現在x87命令を多用するようなソフトはもうないから、実用上ほぼ無意味、ぐらいの事なのかな?
Re: (スコア:0)
Bulldozerアーキテクチャの特徴 [ascii.jp]として、2つのCPUコアでFPUを共有する構成になっているそうです。
SuperPIはシングルスレッドでFPUをぶん回すアプリなので、このFPUを共有する仕組みがオーバーヘッドになって性能が低下する、という理屈のようです。
件のパッチは、FPUを共有する片方のコアを停止させて、共有のオーバーヘッドをなくすという仕組みなのかな? だとすると、シングルスレッドで高FPU負荷なアプリであれば同様に性能が上がる一方で、マルチスレッドアプリでは逆に性能が低下するという結果になるんじゃないでしょうか。
Re: (スコア:2)
違います。スラッシュドット記事からもリンクされている hwbot.org フォーラムへの投稿 [hwbot.org]中で引用されている、パッチ(?)作者の The Stilt さんのコメントには次のように書かれています。
Re: (スコア:0)
「原因がなんだ」というのは書いてない様に見えますね…、CPUの(?)レジスタをいじったら速くなったと言っていますが、そのレジスタがなんであるかはAMDのドキュメントにない(仕様が非公開)なのでわからないらしいです。
非公開のレジスタをいじりまくって偶然発見した…のでしょうか?
Re: (スコア:2)
情報ありがとうございます。確かにそう書いてありますね。 (#2407576 を書いた時点ではいろいろ見間違えていたせいで理解できていませんでした。)
The Stilt さんのその後のコメントもちょっと読んでみました。このコメント [hwbot.org]には、「技術的な背景は調査中」としながら、「予想」として、デフォルトでは x87 命令の一つが無効
Re: (スコア:1)
一番の大本のスレッドはここですね。
http://www.xtremesystems.org/forums/showthread.php?286448-The-Book-of-... [xtremesystems.org]
ここでは、作者がAMDのconfidentialなドキュメントも参照していることが示唆されています。
(社内のドキュメントなのか、NDA下で契約先に開示されているドキュメントなのかは不明ですが…、Programmer's Guideだから社外向けのモノかな)
このレジスタはデフォルトでon(=blocked)になっていて旧
Re: (スコア:2)
リンクありがとうございます。元の掲示板まで調べていませんでした。
ところで、紹介していただいた元掲示板での The Stilt さんのコメント [xtremesystems.org]で、
と、「confidential (?)」だから提供で
Re: (スコア:1)
そのことをそのまま連絡すれば反応が返ってくるのではないでしょうか?
Re:ベンチの為のパッチって意味があるのかな (スコア:2)
そうかもしれませんが、べつに反応が欲しいわけでもないので。 shibuya さん (でも誰でも) が連絡したければご自由にどうぞ。