告知欄です

1- レス

【Axis of Trip】トリップ・シーカー常駐スレ part81


[898]魔王プゲラモス ◆ultimo.... :04/11/06 23:47:12
>>897 Altivec用のコードは既にある。コアループの部分しかまだ書いてないが。 少なくとも同クロックのAthlonよりは、「確実に速い」はず。 Athlon+MMXは64bitでスループット1のALUを2本。 x86は論理レジスタが少ないのと、基本2オペ演算のためにアドレス計算+move命令が 何度となく入るので、実際にはかなり無駄が多い。 細かいマイクロオペレーションに分割してロード・ストア・アドレス計算の実行ユニット デコーダで詰まる可能性があるので、タイミングなんかを考慮してコードを書いてやらないと 十分に速度を発揮できない。 俺はここで転けている。というか俺が最適化の基準にしてるPentium IIIとAthlonだと 最適化の手法がかなり違うからね。 はっきり言って、1%2%速度上げるだけでも大幅なコードの書き方の修正を要する。 馬鹿馬鹿しすぎる。 AltiVecは128bitでスループット1の論理演算ユニットが1本。 1ステップが1インストラクションに対応できることは確認したので、まず x86と違って命令を細かく分割して、ってことが行われないしね。 少なくとも俺はMacのほうが速度は出しやすいと思っているし、MMX、SSEで使える論理レジスタ数 64本で3オペ命令くらいにして手動命令スケジューリングの手間を省かせてくれないと、 x86でMacより速度出せる自信はないな。 考えても見てください。 GUI化のついでにちょっくら高速化してみるか程度に思ってるAMD嫌いが 開発期間1年以上のAMDヲタに、AMDのCPUでの速度でいかにして勝てますか? その点、Macははっきり言って、何も考えなくとも素のコードをそのまま流用するだけで 実行パイプラインは殆ど埋まる。distributed.netのMac用のDESルーチンはアセンブリコードではく、 何も弄ってないCのコードだった。x86向けはアセンブリレベルで手動最適化を要したのに。 圧倒的に楽に速度を出せるのはMacのほう。逆に苦労のしがいはない。


0ch BBS 2004-01-25