1 :
Socket774 :
2008/10/05(日) 15:57:56 ID:AU8yjwvo
※ 当スレは固定ハンドル非推奨となっております。
1時間エアロバイク漕ぎながら待ってたんですが 新スレ立たなかったので立てちゃいました。
前スレの団子はあいかわらず酷いな。 Win32 fiberとかJITとか誰もそんな議論していないのに。
どうでもいい方向に話を逸らして思考停止するのは常套手段。
>>5-6 私わ、その辺の資料に書いてある内容をそのまま引き写してきたような投稿より、団子さんの方が
面白いす。
自己レスだけど
>>957 > 上のLarrabeeの資料は、あくまでGPUの場合の話だな。
> Larrabeeも他のGPU同様quad単位で処理するようで、
> あるシェーダのコンテキストのquadを1xcoreに投入
> →(最大)4xHW Thread→(最大)4xFiber→(最大)64xstrands
> となるという説明とおれは理解した。
この(最大)4xFiberというのは同時に実行されるfiberの数を言いたかった。
typically 2-10というのは一つのシェーダがその数のfiberに分割されるという意味では?
64xStrandsの説明がつくのはこの解釈だけに思える。
そうでないならここの説明はどうする?>MACオタ他、否定する人たち
いずれにせよ
> 4xHW Thread = Fiber
> という言葉の理解は奇妙に思える。
は確かだけど。
誰もこのFiberがWin32 Fiberだとは思っていないよ。
>>5 だってFiberと名の付くものは同じ実装だと思い込んでる子がいるんだもの。
Win32 Fiberの話題を振って「これと同じす」と言ったのはMACヲタ
「別物」と言ってやってるのに聞かないから困りものだ。
>>8 そんなことは俺も言ってない
1-4×HW Thread = n×Fiber
>>8 > この(最大)4xFiberというのは同時に実行されるfiberの数を言いたかった。
1つのコアあたりの話ね。
もちろん同じバイナリのfiberは他のコアでも動いているだろう。
>>11 それは団子が言った
> LarrabeeでいうところのFiberは同じ1コアで動かすべき4つまでのスレッドを纏めたものにすぎない。
を訂正するという意味?
>>9 アドレッシングモード付き積和算で10クロックは軽く超えそうだよ
4HW Threadフルに使うケースでは命令レベルで、そこの資料にも書かれてる10並列のインターリーブは
多くの場合不要ではないかと。
オペレーションの命令レイテンシ×16÷各FiberのStrand数+α
くらいが実際にインターリーブが必要なFiber数になるかと。
>>8 -----------------
64xStrandsの説明
-----------------
Strandわ"a program invocation that runs in one SIMD lane"す。レジスタを一つしか使わない
プログラムなんて無いすから、16-wide x 16-registers で256 strandsなんてことわ無いって
だけかと。
>>13 それ自体は矛盾しないだろ?
スレッドとFiberの関係はどちらかに N : 1 対応するものではないということ。
固定ハンドル使いは自己防衛に入りすぎて議論ができないやつが多いから非推奨
実質、このスレの名無しとレベル変わってないのはもう明らかなんだから名無しでかきこみゃ十分だろ。
>>8 64 strandsは単にLarrabeeのruntimeの仕様じゃねーの?
現時点で無理に正確な解釈を導きだそうとしなくてもいい。
2-10っていのはtypicallyなんて書いてない。
LarrabeeをGPUとして使う場合はTextureユニット数の制約もあるし、
その関係かもよ。
いずれにしろ団子みたいに何が何でも俺の妄想が真実だと強要するバカはいらない。
>>15 すまんが意味がわからない。
256じゃないから64という理屈?
>>16 いいや何度も言うが、Strand数は16×スレッド数だよ。
同じ命令コード列を〜4スレッドでインターリーブして実行した方がコードキャッシュ容量の節約になるし
同じコアで動くスレッド間でのデータ交換にペナルティがない機構を十分に発揮するのに都合が良い。
>>18 -------------------
256じゃないから64という理屈?
-------------------
この辺の数値わ典型例の模様す。
64ってのわinelがLarrabee用に書いたコードで実際に存在するんだと思われるす。
>>16 いやいや
明らかに言ってること変わってますやんw
訂正するなら訂正してくれないと議論が混乱し続けるだけだよ
16レジスタ全部使うとかどんだけ? テンポラリすら確保できねーぞ。 せっかくVEXプリフィクスでNon Destructive Sourceレジスタ追加したのに意味ね-www
>>22 いいよ。正確に言おう
FiberはCPU時間を細粒度で時分割したものではある一方で
Threadに対する完全な従属関係ではない。
64 Strandなら同じコアで動く4スレッドで分割処理される。
最初から命令レベル並列に振るよりは、スレッドで分割するように振った方がコードサイズもレジスタも節約できる。
>>20 --------------------
同じ命令コード列を〜4スレッドでインターリーブして実行した方がコードキャッシュ容量の節約になるし
同じコアで動くスレッド間でのデータ交換にペナルティがない機構を十分に発揮するのに都合が良い。
--------------------
かつて同じことを想定した立場で書くと、リネーム無しで命令をインターリーブするためにわ使用
レジスタが重ならないようにすることが必須す。しかしプレゼン資料によると、
http://s08.idav.ucdavis.edu/forsyth-larrabee-graphics-architecture.pdf (p.25)
=====================
- No hardware or OS support .no pre-emption
- Also called “coroutines”
=====================
ということで、レジスタウィンドウのようなハードウェアサポートも無く、既存の「コルーチン」と同じモノ
と記述があるす。またfiberわインターリーブでわ無く「スイッチ」が必要なことも明記されているす。
=====================
Fiber switch on texture request submission
- Saves live registers
- Saves the IP to resume at
- Jumps to the next fiber’s IP
- Next fiber restores live registers
- Gets texture result, continues shading
=====================
>>19 同一スレッド内でlatencyをカバーするためにファイバが入れ替わり立ち替わりに動く。
典型的には2-10ファイバが入れ替わる。
他の数字は典型例ではないでしょう。
SW-managedなファイバが今のruntimeの仕様で64 strandsなら別に納得できるし。
>64 Strandなら同じコアで動く4スレッドで分割処理される
そもそも1 threadで10 fiber(160 strands+ ?)くらいは入れ替わってくれる図があるんだからその解釈はおかしいだろ。
>>23 ------------------
16レジスタ全部使うとかどんだけ?
------------------
Strandの単位わ、レジスタでわなくSIMDの1-wayす。つまり一つのSIMD命令で最大16-strandsが
処理できることになるす。(マスクアウトされて全データが有効でわ無いすけど。。。)
>かつて同じことを想定した立場で書くと、リネーム無しで命令をインターリーブするためにわ使用
>レジスタが重ならないようにすることが必須す。
だからそれはJITにやらせることが可能だって。
公開中止になったSoftWireと同じことをやってるライブラリが既にあって
http://homepage1.nifty.com/herumi/soft/xbyak.html ここのboost::spiritを使った簡易電卓のサンプルでやってることがまさにそれだろ?
で、ついでだからコミット履歴も見てくれ
>>27 16×16 = 256 Strandって言ったのはお前だろww
>>28 リネームレジスタがあるOoOEコアと比較してわダメす。
はあ、アホ固定コンビ疲れる。 また自己顕示で暴走しそうな展開になってきたな。 無理に確定的な結論だそうとするな。
インオーダのAtomでも動くライブラリなんだけど。
たとえば mad r0.xyzw, r1.xyzw, c0.xyzw, r0.xyzw のシェーダー命令を16個のフラグメントに対して処理するときは r0 = 16個のr0.x要素 r1 = 16個のr0.y要素 r2 = 16個のr0.z要素 r3 = 16個のr0.w要素 r4 = 16個のr1.x要素 r5 = 16個のr1.y要素 r6 = 16個のr1.z要素 r7 = 16個のr1.w要素 として、Larrabeeのベクトルユニットだと mad r0,r4,c0.x,r0 mad r1,r5,c0.y,r1 mad r2,r6,c0.z,r2 mad r3,r7,c0.w,r3 #16要素のswizzleの書き方がわからん みたいになるわけだよね? シェーダーは4要素が基本だから16strandx4要素で64strandになってるんじゃないかと思ったんだけど まったく検討違いかもしれない。
コア全体で各スレッド16本、64本のSIMDレジスタがある。 これが足りないと思うか? レジスタ番号はJITコンパイルするときまで決めなくていいんだぜ? Native C/C++やアセンブラを使ったプログラミングモデルでも Fiberなんてものが利用できると思ってるから混乱するんじゃね?
>>35 64個の互いに独立なデータに同じ処理をするとして
vfmaddps zmm0, zmm1, zmm2, zmm3
vfmaddps zmm4 zmm5, zmm6, zmm7
vfmaddps zmm8, zmm9, zmm10, zmm11
vfmaddps zmm12, zmm13, zmm14, zmm15
なんてやんなくても、4つのスレッドで同じ
vfmaddps zmm0, zmm1, zmm2, zmm3
を実行したほうがコード量もレジスタも節約できるじゃないの。
前者が必要なのは同一ファイバー内のStrandを処理するときでなくて
HWスレッドで隠蔽できないレイテンシを生めるため、複数のFiberを処理する必要があるとき。
>>35 それだと16strands
1strandは、1ピクセル(4要素)に対応する
4要素はそれ以上分割しても意味がないでしょ
もちろん、単純な64要素のベクトルとして見るなら64strand
>>38 ぜんぜん問題ないね。
x86はロードと論理・算術演算を1命令で行える。
キャッシュと大規模レジスタファイルどっちが有利かなど、判断しかねるよ。
既存GPUはキャッシュが小さいからLUTが使えないという
グラフィック処理に強く依存してるが故の欠点は前スレでも指摘したよね。
>>40 Strandsの分割法わ不明すけど、
----------------
1strandは、1ピクセル(4要素)に対応する
----------------
4要素をSIMDで計算するやりかたと、1要素づつ計算するという分割が考えられるす。
後者の方がプログラムとしてわ、自由度が大きかったりするすかね。。。
あの〜、strandは1要素(スカラ値)に対する処理の流れ何で、1 pixel or vertexに対応する単位ではないの。 512bitのSIMDレジスタは、16 strandsに対応するってことまでは殆どわかってる話なんだが。 各スレッド16本だったら256 strandsだけど、お前らもう混乱してるだろ。
> Xbox 360 GPUは、合計で24,576本のベクタレジスタを持つ。 コア全体で384KBか。 その代わりキャッシュは小さい。 LarrabeeのL2キャッシュは16コアで4MBじゃなかったかな? L1は全コア合計1MBくらい?
>>43 Data-Parallelism on Larrabee
・Key ideas of data parallel programming
- Define an array (grid) of parallel program invocations
- Define groups within the grid that can share on-chip memory
・Mapping program invocations on Larrabee
- Strand: a program invocation that runs in one SIMD lane
Strandは論理的なプログラムの単位なので、
典型的なシェーダプログラムなら、サブピクセルに分割できません
one SIMD lane == 32bit scalar の意味。 vertex (3〜4要素), vector register(16要素) ではありません。
>>47 パックドピクセルという考え方じゃないよね
1ピクセルは4つのスカラ値であって、4要素のベクトルじゃない
>>42 -------------------
キャッシュと大規模レジスタファイルどっちが有利か
-------------------
団子さんの想定するインターリーブ方式ファイバだと大規模レジスタの方が「有利」かと。
>>8 > この(最大)4xFiberというのは同時に実行されるfiberの数を言いたかった。
> typically 2-10というのは一つのシェーダがその数のfiberに分割されるという意味では?
> 64xStrandsの説明がつくのはこの解釈だけに思える。
> そうでないならここの説明はどうする?>MACオタ他、否定する人たち
小町算乙
>>49 昔みたいにレジスタが高速なメモリだった時代ならね。
レジスタにもバッファが必要になったり、もうわけわからんよ。
>>24 > Threadに対する完全な従属関係ではない。
違う
> 64 Strandなら同じコアで動く4スレッドで分割処理される。
違う
たのむから数字にだけこだわって資料を読まないのは止めてくれ
むしろ1 Fiber == 1 Vertex or Pixelの方が計算あうな。 使わないところは適当マスクしながら切り替えるとして。 まあ、妄想の域をでていかなから続報待ちだが。
お前の「違う」には根拠が無い
55 :
MACオタ :2008/10/05(日) 17:31:01 ID:IsV0akqP
実際のところ、Intelわ"Wide variety of scheduling algorithms"を謳っているすから、ハードウェア スレッドの中で、どのように複数のファイバを埋め込むかわ、命令単位でも関数単位でも自由に 可能す。 命令単位の混在も、単なるインターリーブでなくファイバごとの所要リソースや優先度に応じて ダイナミックに切り替えることを想定しているんじゃないすかね。ファイバAで3命令->ファイバB 1命令->ファイバC 2命令。。。とか。 ただ良く判らないのわ、レジスタ数少な目のx86でこのような点を売りにしていることだけす。 団子さんの書いているように、メモリを引数に取れる点と2引数のISAわ所要レジスタの削減 に有用すけど。。。
JITを通したあとはダイナミックでもなんでもないんだが。 自己書き換えのペナルティはIntelアーキテクチャリファレンスマニュアルあたりでも参考に。
>>53 どういう計算したのかしらんが、基本的には1 strand == 1 Vertex or Pixelでいい
- Strand: a program invocation that runs in one SIMD lane
^^^^^^^^^^^^^^^^^^^^^^
- Fiber: a SW-managed context that runs 16-64 strands
1 Fiberが1 Vertexだとすると、Strandが意味を持たなくなる
>>54 ギャラリーに注意を促しておかないとな
>>53 は間違い。
>ただ良く判らないのわ、レジスタ数少な目のx86でこのような点を売りにしていることだけす。
ファイバもソフトで管理されるという定義がされているだけで、
レジスタやらIPやらは切り替えることになってるんだが。
レジスタが少ない方が有利なのは代わりない。
ファイバをいかにうまく扱えるかはIntelの用意するソフト環境次第。
もう一つ疑問点わ、近年のx86の進歩が計算結果のフォワーディングによってレジスタの不足を 補っている点す。演算結果の代入先をメモリにしておけば、直後の命令わレジスタの使用無しに 高速に結果を取得できるす。 ところがファイバ等で直後の命令が別のコンテキストに属すとなると、上記の効用わ失われるす。 Pentiumのような旧世代コアを採用した理由もこの辺にあるすか?
>>55 いつの情報だ?
Larrabeeの新命令がAVXと同じくVEXプリフィクスを使った3〜4レジスタオペランドフォーマットであることは
散々言ってるわけだが
つーか、べつに引数が多いとレジスタ所要量が多くなるわけではない。
srcとdestに同じ値を指定できないわけじゃないだろ?
> レジスタが少ない方が有利なのは代わりない。 liveなレジスタだけ保存/復帰すればいいので、レジスタの数は関係ないよ
>>58 アーキテクチャレジスタが多いなら、スイッチの頻度を減らせる or 同時進行のファイバ数を
増やせる筈す。
>>59 モダンなx86アーキテクチャでの浮動小数演算みたいな高レイテンシの命令は
インターリーブを前提としたタグインデックス方式ですけど。
無知もたいがいに。
計算結果のフォワーディングは汎用プロセッサ向けの実装だと思ってる。 GPUみたいなレンダリングパイプラインいちどにワーッとやって終わり。 結果はすぐにor未来永劫使わないのを前提に進化してきたジャンルなわけで。
>>60 ---------------------
AVXと同じくVEXプリフィクスを使った3〜4レジスタオペランドフォーマット
---------------------
それ一般の算術命令も全て3-4引数にするすか?アキュミュレータ命令わ全て廃止とわ
聞いていなかったすけど。。。
>>65 x86古来のスカラ命令はそのままだよ。
なんでワイドベクトルを処理するのに非SIMD命令を使う必要がある?
AVXで3〜4オペランド化したのはSSEだけっての忘れたか?
そもそも、1thread上で2-10fibersが動くということは、少々のことでは埋められないレイテンシーがあるわけで ファイバースイッチのオーバーヘッドなんて気にしても仕方がないんじゃねーの
>>67 アキュミュレータわ「演算機能付メモリ」という概念すから、SIMDでも一緒かと。
AVXに関してわ調べてみたすけど2引数のADDPDと3引数のVADDPDというような形で
並立するんじゃないすか?
どうも64xStrandが釈然としないなー そもそもStrandという概念はどういう意図で作られたものなのだろう? 16way中の1wayを単位にする意図がわからん。
>>62 じゃあ単純にレジスタ数が多少少なかろうが、
ファイバがあったの方がよかったってだけだろう。
>ファイバースイッチ RIPレジスタが直列に並んだ命令列の次の命令を指すのを 「スイッチ」なんて言うのか?wwww あたまわりーwww
>>70 ------------------
16way中の1wayを単位にする意図がわからん。
------------------
ベクトルを処理の単位にすると、SIMDの幅とぴったり合わない場合に無駄が生じるからす。
>>70 よく読みましょう
Data-Parallelism on Larrabee
・Key ideas of data parallel programming
- Define an array (grid) of parallel program invocations
- Define groups within the grid that can share on-chip memory
・Mapping program invocations on Larrabee
- Strand: a program invocation that runs in one SIMD lane
StrandはData parallel programの論理的な最小単位ということですね
コネクションマシンの仮想プロセッサ(のプログラム)みたいなもん
>>69 ADDPDは「レガシーSSE」
AVXなのはVADDPDな
資産はそのまま使えるけど新フォーマットに徐々に移行してくださいね、がIntelのお達し。
新たに書くコードにおいてレジスタを破壊してもいい場合はaddpd xmm0, xmm1を使うじゃなくて
vaddpd xmm0, xmm0, xmm1を使えってこと。
>>70 Strand
Strand
Strand
Strand
Strand
Strand
Strand
Strand
Strand
Strand
Strand
Strand
Strand
Strand
16-wide vector unit
Strandという概念は今ある資料だけでは正直理解できん。
1スカラ要素を追跡して一体なんの意味があるのかねぇ。
3Dグラフィックスプログラミングをやっているやつなら
Intelの資料は今のところ完全じゃないとおもって続報待ちするのが吉。
JITのやってることに幻想を抱いてる奴はGoogleのJavaScriptエンジンのソースを嫁。 Javaでもいいけどな。
>>73 いやそれはわかるよ。
でもLarrabeeであってもHLSLとか使う限りシェーダプログラマは4要素ベクターを基本に処理を書くよね。
できっとLarrabeeのシェーダコンパイラがうまく16way使うように並び替えてくれるんだろう。
つまりそれってプログラマからは見えないところだよね。
64xStrandという何か意味的に同質のものが64並列化されてるように思える。
そのあたりに不自然を感じるのよ。
ぶっちゃけ、1 Strand == 1 pixel or vertex 16 wayの図は間違いだと思いたい。
>>76 > Strandという概念は今ある資料だけでは正直理解できん。
> 1スカラ要素を追跡して一体なんの意味があるのかねぇ。
そう、おれもそう思う。
1 strand == 1 scalar 〜 1 pixel or vertex で変動だったら理解できるんだが、例によって計算が合わない気が。
>>78 必要なら、両方を書いてCPUID見てブランチすればいいじゃない。
後方互換のために使うななんて言ってたらいつまでも移行は進まない。
多数あるstrandの中から1 strandを切り出して他と組み合わせたりする。 まあ要するにpermuteするってこと?? そのために用意した概念っていうならまあ理解できるな。
>>83 それはつまりMACオタの言うところの並立じゃん
>>82 Scatter/Gather命令ってのがあって、任意のアドレスから16個の要素を引っ張ってきたり
逆に分解してストアする命令があってだな。
座標がx, y, zならそれぞれxだけ、yだけ、zだけでベクトルを再構成する。
>>79 > 64xStrandという何か意味的に同質のものが64並列化されてるように思える。
複雑なシェーダプログラムは16way=16strandsに、
簡単でレジスタもちょっとしか使わないものは16wayを4つで64strands、で納得いかない?
>>81 >>82 どこにそんなに引掛ってるのかわからんのだが、
ふつうプログラマって、1ピクセルについてどうこう、とアルゴリズムを考えるんじゃないの?
Strandに対応するプログラムはコンパイル後にはないと思う。
言語によってはソースではstrandのプログラムを書くものがあるかもしれない。
(C*やData-parallel Cみたいな感じ)
>>79 Larrabeeに関してわ、ソフト次第でどうとでも書ける訳すから、SiggraphのIntelのプレゼンわ
一例に過ぎないと思っておけば良いす。
------------------
シェーダプログラマは4要素ベクターを基本に処理を書くよね。
------------------
スカラプロセッサでもベクトル処理わ可能す。16-strandsの例わ512-bit SIMDを16個のスカラ
プロセッサとして使用する例と読めば良さそうす。
ベクトル内の要素を取捨選択するための機能わ、ハードウェア的に用意されているす。
>>85 いいや。並立の考え方がそもそも違う。
彼の場合は、「オペランド指定できるレジスタに制限があるほうがレジスタが節約できる」
と思ってて、同じコードシーケンスで併用するものと解釈してるっぽいので。
別に3〜4オペランドだからってsrcとdestに同じ値を指定して破壊したらいけないわけではない。
いやいや、ID:WHIgITGQは、3Dグラフィックスのプログラミングにおいて、 1要素だけを操作したり入れ替えたりという行為は殆ど意味がないし実際やらないから strandの意味するところに疑問をいだいてるんだと。 団子のいうようにScatter/Gatherでメモリ配置を大規模に入れ替えるというレアケースの ための概念ならまあ理解できる。
>>90 -----------------
3Dグラフィックスのプログラミングにおいて、1要素だけを操作したり入れ替えたりという
行為は殆ど意味がないし実際やらないから
-----------------
Strandわプログラムの単位で、データの単位じゃ無いす。単一のSIMD演算で実行しないという
だけで、1-wayのStrandで複数要素を扱うプログラムわ可能す。
けっきょく、Strandなるものを導入しているのは 「Data-parallel programにおいては」 ・ハードウェアのSIMD幅などはあまり意識しないでくださいよ ・ベクトルレジスタの要素は同じ種類にしてくださいよ、パックドピクセルみたいなのはやめてくださいね と主張したいということでしょう データパラレル用APIやコンパイラが存在して、そうなっているのかもしれないけど
別にレアでもなんでもないぞ。たとえばグレースケール変換なんかじゃしょっちゅうやること。
MACオタが正しく理解している(T_T) StrandというのはData-parallelism用語で、20年以上前からあるので、それをそのまま使ったんでしょう
>>88 64Strandってのが、例えば本当に64Pixel/Vertexのことで、
4要素ベクトルも全部スカラーに分解して、
1Fiber内で64個分並列化する可能性のことを言ってる?
それなら筋は通るけど、ありえないよなぁと思う。
>>90 そうなのよ。
わざわざStrandっていう概念を出すことの必要性に疑問を感じてる。
名前的にもThread(糸)、Fiber(繊維)、Strand(髪)と似てるんだから
概念的にある実行シーケンスの単位の一つのように思える。
でもその実体がSIMDの1wayということが釈然としない。
>Strandわプログラムの単位で、データの単位じゃ無いす。単一のSIMD演算で実行しないという
>だけで、1-wayのStrandで複数要素を扱うプログラムわ可能す。
この2行は最初からわかっているし納得できるんだが。
そもそもSIMD演算で性能を発揮することが前提のLarrabeeでStrandで複数要素を扱うメリットが理解できん。
Scatter/Gather命令で計算しやすいようにデータのレイアウトを高速に変更できるってのが特徴ってなら理解できる。
>>93 3Dゲーでリアルタイムにデータ要素を入れ替えるのは全体の計算量からいったらごくわずかだろ。
単にruntimeとかで扱い安い概念としてのStrandだと思う。
>>95 高級言語とアセンブラの関係、あるいなP6以降のx86命令セットアーキと内部アーキの違い。
ソフトGPUは極度に抽象化されてるんだよ。
>>95 加えて、釈然としない人のために、ネイティブのSIMDをダイレクトに使うための手段を用意してるんだから
気に入らないならそっちを使えばいい。俺はそのつもりだし。
>>96 ----------------
そもそもSIMD演算で性能を発揮することが前提のLarrabeeでStrandで複数要素を扱う
メリットが理解できん。
----------------
GPU的用途でわ、「同じ演算」を行う対象が山ほどあるすから、横に並べてSIMD演算でも、
1-wayのStrandを大量に処理しても同じ効率になるのだと思われるす。
う〜わかってないなあ。 2D画像処理とか科学技術計算とかなら理解できるけど、 3Dゲームのグラフィックスの計算で、4要素とかのベクトルデータをバラに考えるケースなんて 殆ど存在しないって。 まあ、知らないのだからいいや。次に興味のある話題までROMってるわ。
というか、言ってしまえばLarrabee=GPUエミュレータ
>3Dゲームのグラフィックスの計算で、4要素とかのベクトルデータをバラに考えるケースなんて >殆ど存在しないって。 そもそもGPUが3Dゲーに異常進化できたのもこの前提があるからなんだけど。 Larrabeeはそこからちょっと距離を置いているように見えるが、 やはりGPUの代替えとして使う限りにおいて、4要素のpixel/vertex, 16要素のtransform行列 あたりの処理の考えはこれまでのGPUからあまり変わってないように見える。
>>97 >>98 つまり高級言語ではプログラマはStrandという単位でプログラムを記述する、
それがコンパイラによって最終的にSIMDの1wayに還元されるということ?
その情報のソースはある?
>>100 その4要素がx, y, z, wとして、バラさないといけないケースならしょっちゅうある。
IntelがSSE4でdppsをサポートするまで内積とるのすら
シャッフルが必要だったし。
クォータニオンの回転も並列実行するにはばらさないと無理
>>104 それはCPU側の話だろ。
今は元々GPU側の処理メインの話してるんだが。
Larrabeeがでても今までCPU側がやってたことは当分CPUでやることになるって。
>>105 ならそれがGPU側でできてしまうLarrabeeはゲームにも強いことになるね。
そりゃ一応今までのGPUよりも融通が利くのがLarrabeeなのだから 使いようによっては面白いものが出来るんだろう。でも性能は高くないと思う。 3DゲーのベンチではGPUばかりが注目されているけど、 ベンチではない3DゲーでのCPUの計算量はバカにはならないことは DirectXでなんかつくったことのあるやつならわかると思う。
>>107 -----------------
でも性能は高くないと思う。
-----------------
これに関してわ、多少なりとも明らかになるのが一年以上先の話す。
Havokみたいな物理演算やるにも、GPUでできないことをCPUにやらすためにいちいちデータ交換するより GPUだけでやってしまったほうが有利でしょ。サーフェイス作って転送なんて馬鹿らしいことやる必要ない。
>>109 豪華な仕様で高性能という単純な時代わ終わっているす。
nVIDIAもIntelもやろうとしてることは同じ。座標計算などCPUでやってた処理をほぼすべて GPUでやれるようにする。各社がそれぞれ2大物理演算エンジンを買い取ったのはそのため。 AMDはGPU-CPU間のデータ転送レイテンシを短縮するためにFusion構想を打ち出した。 GPU-CPU間のデータ転送が遅いことがネックってのはどこの会社も認識してるわけだ。
大量のデータ並列化が可能な場合は16個のvertex/pixelで16waySIMDを各要素ごとにそれぞれの要素を入れて、 命令の並びがscalarに見えるように処理するのが一番ALU的に無駄が少ないと思うんだけど。 といってもその辺は自由だからアイデアがあったら各自実装すればいいだけだね。 個人的にはフラグメントシェーダーからフレームバッファとZの参照が可能、A-Buffer実装可能、リアルタイムレイトレに一番近づいてる、 ってだけでも興味がわくけどな。intelならメモリ帯域とキャッシュ周りの性能が足引っ張ることもなさそうな予感がしてる。 唯一ボトルネックになりえるのがテクスチャユニットで、話で聞いた限りでも間違いなく足を引っ張ると思う。 LarrabeeってMCMでうまいこと繋げられるようになってるのかね?なってるならハイエンドも狙えるんじゃないかな。
>>100 > 3Dゲームのグラフィックスの計算で、4要素とかのベクトルデータをバラに考えるケースなんて
ぼくちゃんあのね、あれは Data-Parallelism on Larrabee というセクションの記述なの
ちゃんと読もうね
データパラレル的でなくグラフィックスをやりたいのなら、団子と一緒に頑張ってくれ
Larrabeeでハイエンドの性能はねらえないでしょ。 性能って速度のことをいってるわけだけど。 LarrabeeってLarrabeeにしか容易にできなさそうなことをやればGPUよりも速くて、 従来型のゲームグラフィックスだとローエンドのGPUにも劣るとかそんな感じだと思うけど。 単純に今あるようなベンチでミドル〜ハイエンドのスコアを期待しているなら、 多分Larrabeeがでるときにアンチスレッドでバカ騒ぎする厨房と化すのは目に見えているな。 そもそもLarrabeeって単体よりもCPUにGPUのやっていた仕事を取り込む方向なわけで。
実際DirectX使ってれば内積とか座標回転なんてしょっちゅう使うぞ。 Intelはどっちに転んでもいいようにCPU側のSIMD命令の大幅強化をはじめました。
ID:AU8yjwvo以外はあまり3Dゲーム処理には詳しくないみたいだね。
そもそもstrandという概念をなぜfiberやthreadなどの概念と並べて説明する価値があったのかという話で、
一応
>>113 とか
>>114 とかの言いたいことは理解できるけど、軸がぶれすぎ。
団子も嫁って。 内積は一命令で済むぞ。
GPU自体がDXと共に途上過程にあるため
既存の概念でパフォーマンス云々言っても仕方ない気もするが
なんせ登場まで最低でも一年以上もあるのだし
GPUの構造も現在よりもDX11向けに変更されて
ある程度GPGPU向けに最適化される可能性もあるわけだし
いずれにしろ、楽しみではあるね
現存するGPUでは、たとえばDX10にいち早く対応したnvidiaよりも
さらにDX10に最適化した仕様で、GSの高パフォーマンスを誇ったATIだが
そのGSのパフォーマンスを、S3(のローエンド)がさらに超えてしまう場面があるし
(物量がものを言うものは除く)
ttp://jp.youtube.com/watch?v=ruLzQmNokXU ここの動画(DXSDKサンプル)だと、radeon HD4870が88?fps位でHD2600proが23fps
440GTXが50fpsとなっているようだ(なんで440だけ音楽違うんだよ)
うちの3870と4670じゃ45-48fps位だから、どんな構造になってんのかねChromeは
理論パフォーマンスでは劣っても、構造がそういった世代向けに最適化されている場合
他社のハイエンドGPUすら凌いでしまう場合は、ヒョットシタラあるかもね
(ただし、それより古い世代のパフォーマンスは知りませんよ)
>>118 知ってるよ。内積命令なんて初歩の初歩だもんな。
クォータニオンは?
Intelもなかなか対応してくれないんだよね。
ちなみに計算幾何学の基礎がないやつが3Dゲームを作ると、 いちいち個々の要素を1次元配列にコピーして取り出してみたりとか 無駄なことをやってくれる。 同人ゲーまでは許されるけど、さすがに洋ゲーの主流ではこんなコードは書いてないと思う。
クォータニオン扱ってる大学少ないのが嘆かわしい。 D3DXでサポートされてから専門学校ではチョコチョコ始まったのかな? 回転マトリクスなんかよりよっぽどスマートなんだがなぁ
>>117 君はゲーム以外のことを知らないし、視野も狭すぎる
(ゲームのことも怪しいが)
しばらくROMれば?
いや、視野がせまいのはフェンス君の方だと思うよ。 なんでもかんでもアーキテクチャの歴史と結びつけないで欲しい。 strandは20年前からある用語だとか、 Data-Parallelism on Larrabeeってところにかいてある。 それは理解できるんだが、LarrabeeをGPUとして使用したときに strandという単位になんの意味があるの?っていうところが発端なんだけど。 で、Larrabeeは従来型のGPUより柔軟性があるから云々という話をしてる。
しかし、ほとんど正解なのに、なんで理解できんのかな よりにもよってMACオタは正しく理解しているし… 文面だけ読めば理解できると思うんだが、余計な思い込みが邪魔してるんかね
>>124 > それは理解できるんだが、LarrabeeをGPUとして使用したときに
> strandという単位になんの意味があるの?っていうところが発端なんだけど。
実体としてFiberにまとめられてしまったイメージしか湧かないということだろうけど
プログラミングモデルに意味を見出せないのなら、それまでだね
いくら説明しても無駄だし、君も永遠に理解できない
逆にGPUとして使ったとき以外にStrandに意味はない。 C/C++で使う場合はただの512bitのSIMDユニットの載ってるマルチコアCPUだ。
>>127 全然理解できん。俺がなんか極端な勘違いしているとかなら別だが、
Larrabeeも結局スタートラインは今のGPUが処理しているゲームグラフィックスと
同じ内容を扱うことからはじまるんだが。
Larrabeeの提唱する新しいプログラミングモデルが効果を発揮するのは、
従来型のGPU処理から離れていく未来の話でしょ。
その上でstrandはこう使えるというのなら意味はあるけど。
何が理解できていないのでしょうか?
>>129 ------------------
何が理解できていないのでしょうか?
------------------
理解できていないとわ思わないすけど、有体に言えばStrandに関してわ気にする必要が無いす。
グラフィックプログラマわ、個々のピクセルなりバーテックスなり、ポリゴンなりに適用する
プログラムを書けば良いす。
それを誰かが対象物全てに適用するようにファイバなりStrandなりに展開してくれる訳すけど、
その世界わ数学的な処理とわ別に汚い世界す。
なんとなくわかってきた。 俺はどっちかっていうと、Larrabeeの命令セットはSSEが長くなっただけみたいな仕様で 最終的な処理は従来のSIMDをグラフィックスの計算に適用するときの扱いと大して変わらないと思ってるんだけど。 そこまでばらばらにStrandには展開されないと思ってる。 Intelの資料にはFiberがGPUのShaderに相当すると書いてあるから、柔軟にスケジュールされるのはFiberの方だと思うが。
ちなみに、コレわ当人が理解していない場合の典型的反応す。
>>127 ---------------------
いくら説明しても無駄だし、君も永遠に理解できない
---------------------
通常の返答わ、「済みません。判ってるつもりだったんだけど、説明できるほど詳しくなかった。」じゃ
ないすかね(笑)
>>120 > 知ってるよ
知ってるんなら内積を「バラさないといけないケース」に挙げるなって。
クォータニオンの積はALU命令が7個になったよ。
0
x: MUL_e T0.x, R0.x, R1.y
y: MUL_e T0.y, R0.y, R1.x
z: MUL_e T0.z, R0.x, R1.w
w: MUL_e T0.w, R0.x, R1.z
t: MUL_e T1.x, R0.z, R1.x
1
x: MUL_e T2.x, R0.y, R1.z
y: MUL_e T1.y, R0.w, R1.y
z: MUL_e ____, R0.z, R1.w
w: MUL_e T1.w, R0.w, R1.x
t: MUL_e ____, R0.w, R1.z
2
x: ADD ____, PV3.z, -PS3
y: MUL_e ____, R0.z, R1.y
z: MUL_e ____, R0.y, R1.w
w: ADD ____, T0.x, T0.y VEC_021
t: ADD T0.x, T0.w, T1.x
3
x: ADD ____, T0.z, T1.w
y: ADD ____, PV4.x, PV4.w
z: ADD ____, T2.x, -PV4.y
w: ADD ____, T1.y, -PV4.z
t: MUL_e T0.z, R0.x, R1.x
4
x: ADD T0.x, PV5.z, PV5.x
y: ADD ____, PV5.w, T0.x
t: MOV R2.y, PV5.y
5
x: DOT4_e ____, R0.y, R1.y
y: DOT4_e ____, R0.z, R1.z
z: DOT4_e ____, R0.w, R1.w
w: DOT4_e ____, (0x80000000, 0.0f).x, 0.0f
t: MOV R2.z, PV6.y
6
x: ADD R2.x, T0.z, -PV7.x
w: MOV R2.w, T0.x
ミス。PV?とPS?は全部-2してくれ。ずれちゃった。
>>132 また都合のいい所だけ引用してイチャモンつけるんだから
正しくはこう
> プログラミングモデルに意味を見出せないのなら、それまでだね
> いくら説明しても無駄だし、君も永遠に理解できない
136 :
Socket774 :2008/10/05(日) 21:05:46 ID:Lq1xkIVD
PXはCore 2 Duo E8500よりも優秀 Xbox 360のCPUは、Wii と同様に PowerPC をベースにしたプロセッサだが、 3コアで動作クロック3.2GHz を内蔵する。同 CPU は、並列処理においてIntelのコンシューマー向け CPU で最速の Core 2 Duo E8500(2コア/3.16GHz)を超える性能を持つ
>>135 捨て台詞にまで文句を付けられると出てきちゃうすね(笑)
Larrabeeのプログラミングモデルの話題に参加している段階で、
----------------------
プログラミングモデルに意味を見出せない
----------------------
ってのが当てはまらないのわ自明す。
>>133 それはAMDATIのshader実装はこうなっていますと説明してるだけ。
nVIDIAやATIもGPGPU的な進化をしているので、いままでより柔軟性がある実装にかわってきていることは不思議ではない。
おれは従来の3Dゲー処理でわざわざ1要素の例を一度抽出してしまった方が都合がよい処理は殆どないといってるの。
ATIやnVIDIAもHPCとか従来の処理にとらわれない用途を模索した結果の実装だとおもうけど。
strandってインテルが現在実装している16waySIMDの性能を引き出すDXとOGLの実行レイヤーを解説するのに使ってるだけでしょ? 実際セミナーではstrandやfiberについての解説がなくて、16waySIMDについて既存のハードウェアに照らし合わせて、 4要素以下ののベクトルに対して処理するとき無駄が多すぎる!みたいな勘違い(?)をした人が結構いたみたい。 このハードウェアはintelが提供するDXレイヤーを使わずに独自の実装を許容するわけで、 その場合strandの概念に縛られる必要はまったくない。 16waySIMD、4H/Wスレッド、scatter&gatherと自由なswizzleを使えるメモリアクセスと読み書きが可能なL1/L2キャッシュを使って 好きにプログラムすればいい。当然BinningもFiberも必須ではない。 ただFiberは性能を引き出す上で避けては通れないかなと思うけど。
>>139 おもしれーwww
だが実際は制約は同じっていう。
ただ、Fiber相当のことはネイティブやる場合、ただのソフトパイプライニングでしかない。まじで。
>>139 それはわかってるって。
strandってどう理解すればいいのか教えてくれよ。
一から例のLarrabeeの資料読み直して見たけど
「Advanced Rendering on Larrabee」に
When strand reads memory...
という記述があるんだけど、いかにも実行系的な書き方だ。
単なるSIMDの1wayという存在ではなさげ。
一方
「Software is the New Hardware」で
We call each of these shaders a “fiber”
という記述もある。
つまりshaderはstrandに対応するわけではない。
ちなみfiberについて
Also called “coroutines”
とある。
この時点でMACオタが正しくて、団子の最初のFiberの主張は間違っていることがわかる。
(
>>24 で彼なりに訂正したとおれは理解している。)
>>141 ? Strand: a program invocation that runs in one SIMD lane
1つのSIMD lane(==32bit scalar値)に対する呼び出し = Strand
Strandはdataそのものではない
Strandをどれだけ有効活用できるかはRuntimeばかりではなく、 Larrabeeの命令セットに深く依存してる。 IntelがStrandという概念を持ちだしている限り、 多分LarrabeeのISAや回路実装はStrandをうまく扱えるようにつくってある。 ID:AU8yjwvoのいうとおり、プログラマ次第で何でもできるといえばそうなのかもしれないが、 実際は性能が出る範疇でしか自由に出来ないから手法はある程度決まってくるかと。 本当につかうかわからないもののための万能なISAや万能な回路実装は自分の首を絞めるだけだから。
>>142 では例えばshaderで3要素ベクトルの内積があったとして
なにがstrandになるの?
>>141 それはどうも。
ただ、MACヲタの間違いは俺は認めていない。
APIとして提供されるFiberは関数を順番に呼び出すだけの昔ながらのスケジューラ以外のなんでもない。
Larrabeeがやるのは、JITコンパイル時のソフトウェア・パイプライニング。
Larrabeeの場合1つのスレッドで最大の64 Strandを扱うわけではない
64 strandを扱う場合は同じコアで動く4つのスレッドでレイテンシを埋める。
均等に振れば、たとえばレイテンシ:スループット8:1のSIMD命令ならどのスレッドも8:4となり、
もうひとつくらいのファイバーとインターリーブするだけでレイテンシが埋められる。
図を描くか。
→クロックサイクル
スレッド1 ■■■■■■■■ファイバー1[0-15]
スレッド2 ■■■■■■■■ファイバー1[16-31]
スレッド3 ■■■■■■■■ファイバー1[32-47]
スレッド4 ■■■■■■■■ファイバー1[48-63]
スレッド1 ■■■■■■■■ファイバー2[0-15]
スレッド2 ■■■■■■■■ファイバー2[16-31]
スレッド3 ■■■■■■■■ファイバー2[32-47]
スレッド4 ■■■■■■■■ファイバ−2[48-63]
・・・・・・・・・・・・
これを各スレッドからみると単に2つのフローを交互に実行するだけに見える。
各スレッドが使うレジスタ数も均等に消費するので経済的。
で、FiberあたりのStrand数が少ないと、命令のレイテンシに応じて、
インターリーブするファイバーのほうを増やさないといけない。
x64アーキテクチャは各レジスタが4ビット、つまり16本しかないないのでできるだけ節約したい。
64 Strandがベストということになるね。
いや、ランタイムにはstrandという実体は存在しないんだって スケジューリングの最小単位がfiberでしょ
>>138 よく見てほしい。4要素全部同じレジスタから読んでるのなんて頭の2つだけでしょ。
でも実際に書いたコードはBrook+でこんな感じなのさ。
kernel void hoge(float4 A<>, float4 B<>, out float4 C<>)
{
float a = A.x;
float b = B.x;
float3 U = A.yzw;
float3 V = B.yzw;
float ab = a*b;
float uv = dot(U,V);
float3 aV = a * V;
float3 bU = b * U;
float3 UxV1 = U.yzx * V.zxy;
float3 UxV2 = U.zxy * V.yzx;
float3 UxV = UxV1 - UxV2;
C.x = ab-uv;
C.yzw = aV+bU+UxV;
return;
}
これをSSEみたいな制約をつけて書いたとしたらどれだけになると思う?
クォータニオンの例だけじゃない。HDRFormats10のHDRFormats10.fxをGPUSAに喰わせて見ればわかる。
ソースレジスタはてんでばらばら。1命令中に4つのレジスタ使ってる場合もある。
>>144 その回答は俺よりも他の連中が得意なんじゃないの?
俺は一貫して、Strandという概念はLarrabeeを従来のGPU用途以外にも展開できることを想定して
用意した概念であって、従来の3Dゲームグラフィックス用途に対してはあまり意味のない
概念だと思っているから。その点では君とはかなり共通した認識みたいだが。
> kernel void hoge(float4 A<>, float4 B<>, out float4 C<>) <>を見るとメタプログラミングの変態の血が騒ぐんだぜ
> スレッド1 ■■■■■■■■ファイバー1[0-15] > スレッド2 ■■■■■■■■ファイバー1[16-31] Fiberはこんなふうにスレッドに跨がらねーの どうして皆こう思い込みが激しいんだ
>>146 ランタイムでスケジューリングするときにstrandという概念があって
最終的なnativeコードでは実体がないとおもってたが違うのか。
>>150 思い込みが激しい奴だな。スレッドに完全従属である必要はない。
>>147 この例みたいなArray of Structuresじゃなくて、Structure of ArraysなのがLarrabeeのData-parallelism
どうしてもAoSでやりたきゃTask-level Parallelismというモデルも用意されているから、そっちを使いな
ファイバーはStrand数に応じてスレッドで分割実行される。 これを否定するのはAtomのlfenceはNOPじゃない!なみの思い込みでしかない。 なぜ「フェンス君」なんて言われてるかわかるだろ? ご自分が思い込みで壮大な誤爆をしたの忘れた?
>>144 1つの3要素ベクトルの内積を計算するプログラムが1strand
4スレッドでファイバーを水平分割して実行するモデルの何が合理的かって 同じ命令列を実行するだけでいいので命令キャッシュが節約できる。 レイテンシを埋めるためのレジスタも節約できる。 縦割りだとどうしてもコードサイズ・レジスタ数に無駄が生じるからな。
フェンス君の言っていることがわからん。 SoAだったら外積のときはStrandはどうなるやら?
>>154 1. AtomのlfenceはNOP ←団子の主張
2. AtomのlfenceはNOPかどうか不明 ←おれの主張
3. AtomのlfenceはNOPではない
団子は論理学の素養がないので、2.の選択肢があることを理解できない
そういうわけで何回おれが訂正しても、おれは3.だと主張している
まさか内積と外積のときでいちいちデータを並び替えるのか? どっとも3Dゲーでは頻発だが。 無知な俺におしえてたもれ。
>>153 俺は実際に「3Dゲー処理」とやらで4要素がバラけるのはよくあることだと言う例を
>>138 に対して示してるんであって、Larrabeeがどうこうってのは知らないんだが。
>>158 お前は分析すらしてないだろww
妄想でものを言うな
>>160 俺(
>>138 )は
>>138 に書いているとおり、
1要素に対する操作(=Strand)をわざわざ抽出してメリットがあることは殆どない
といっているだけで、実際GPUで計算されるときにばらけるとかそういう話はしてないんだが。
そりゃGPUの実装の問題でしかない。
じゃあ従来の3Dゲー処理では使えないモデルだね。 並び替えで時間をくわれて話にならない。 やっぱHPC向けなんだろ。
Fiberの切り替えって単純に避けられないデータハザードとかテクスチャの読み込み待ちなんかで どうしてもALUが遊ぶ場合に例のドキュメントの手順を踏んでパイプライン埋めますってだけでは? Fiber切り替えはHWスレッドの切り替えと違ってノーペナルティでは出来ないとすると、 どうしようもないとき以外はFiberのスイッチはしないと思うんだけど。
>>165 x86コードに落とし込んだときにファイバーの「スイッチ」なんてものは存在しないの
ソフトパイプライニングして交互に実行するだけ。
ただアーキテクチャレジスタが少ないのでインターリーブは最小限にしたほうがいい。
>>165 正解
ファイバーの切り替えは静的に見積りができるレイテンシーの隠蔽に使う
コンテクストスイッチと見積ったレイテンシーの有利なほうを選べるでしょ
ただし、コンテクストスイッチのペナルティはレイテンシーに隠れるけどね
ファイバーのインターリーブも隠れるわボケ
>>162 だからちゃんと例示したものは読んで下さいよ。
HDRエンコードどかデコードとかはバラけるんですけど。
ほかにもクックトランス反射はベクトル演算なんて4回ほどの
内積と1回のスカラ倍で、後は全部スカラ演算だし。
Larrabee云々の話は知らんがな。
>>166 インテルの資料にファイバーはコルーチンだって書いているのに、どうしてそう強情をはれるんだ
>>170 抽象的な概念に踊らされすぎです。
コンパイル時に1つの直列なコードに変換されます。
x86レベルでも本当にコルーチンとして展開されてると思うのか?
call/retのクロック数考えてみろよ。レイテンシの隠蔽以前の問題だから。
> call/retのクロック数考えてみろよ。レイテンシの隠蔽以前の問題だから。 call/retって何?
?Fiber switch on texture request submission ?Saves live registers ?Saves the IP to resume at ?Jumps to the next fiber’s IP ?Next fiber restores live registers ?Gets texture result, continues shading
団子よ、お前が妄想を書き散らすのは勘弁してやるが せめてインテルの資料は尊重してくれ
知らないならいいよ。 ちなみに今のIntelコンパイラはインライン展開可能かつ並列実行可能な関数は展開して 同じ命令列の中でインターリーブして実行することもできます。 ためしにアセンブリの出力みてみましょう。 静的コンパイルだろうと実行時コンパイルだろうとやることは変わらない。 静的の方がやれることは多いけど
>>155 >
>>144 > 1つの3要素ベクトルの内積を計算するプログラムが1strand
では積の部分を3wayで一気に計算せずに1wayだけ使って
スカラー的に1stepづつ計算するわけ?
(で16個の内積を並列に計算することで16wayを埋めると?)
>>173 あのさー、それ真の意味でタスク切替。
ファイバーを交互実行する仕組みでのインターリーブとはまったく別物。
>>169 それを1スカラ要素に着目するとどうエレガントなコードに変身するのか説明してくれよ。
お前だけ全然別の話してるぞ。
>4要素とかのベクトルデータをバラに考えるケースなんて殆ど存在しない この部分ってのは1要素に対する1連の操作を抽出してもメリットは殆ど内って意味。 キミが書いているのは全然違う話だって。レジスタやALUなんて今の話に関係ねーよ。
>>177 ?Fiber switch on texture request submission
>>176 概念的にはだいたいその通り
4要素ベクトルを処理するのが、strand
4要素ベクトルのベクトルを処理するのが、fiber
で、たとえば内積に続いて外積を計算するときは SoAではどうするの? >ID:sZHTe2uz
>>181 > ?Fiber switch on texture request submission
テクスチャリクエスト
どこにリクエストする?
メモリだろ?
その間に別の処理をやってしまおうってだけ。
レジスタ退避復帰が伴うので普通のOSのコンテクストスイッチと同じだよ。
レジスタを二重に持つことでレジスタ退避・復帰を伴わずにやってしまうのがItanium2のCGMT しかしLarrabeeの場合はレジスタファイルを多重に持つのは既にFGMTでやってしまってるので あまりリソースを取れない。だから退避が必要なんだ。 1スレッドあたりのレジスタ数がそんなに多くないので退避してしまっても たいしたペナルティにならない。逆にね。
外積のあと内積だな。 SoA的にはオペランドを縦割りだあらかじめ全部抽出しといて 一気にかけ算だけバーっとかでやるとかになるんだろうけど。
>>180 > この部分ってのは1要素に対する1連の操作を抽出してもメリットは殆ど内って意味。
実装の部分ではあるんじゃない?
GeForceは抽出してるわけじゃないけど実際1要素ごとにばらばらにして演算するわけだし。
と思ってるから今までISAや実装の話と、実際のエフェクトの話をしてた。
スレの流れから逸脱してるのはわかってるし団子叩きの邪魔になってるのもわかるんだけど、
まあ許しておくれ。
今1要素ごとにばらばらにするってことが問題なんじゃなくて、 ある1要素に注目してそれに対する操作という考えで、 コードを書くor自動でスケジュールすることに意味があるのかという話。 同じところに積和を何百万、何億回とひたすら計算を繰り返すジャンルなら理解できるが、 3Dゲーみたいにころころ計算内容がリアルタイムにころころかわるジャンルには向いてないと思う。 レイトレーシングのコードはよくしらないからわからん。
Strandはベクトル演算の1ALU OPの複合化したやつとでも思えばいいのかな ベクトルと同様に、Fiberにまとめるのをコンパイラやランタイム任せにすれば、境界条件のマスクを考えなくてもいい ただし、アーキテクチャ上からも逐次方向の局所性を利用しないと性能がでないので、純粋なベクトルモデルではなく、 Strandの導入になったと
おれは今日の議論でLarrabee(のD3D実装は) shader上のベクトル演算も一旦スカラーに展開して、 それを並列に並べてベクトル演算器に流すと理解した。 つまりG80のさらにその先を行くわけか。 ステップ数は増えるが、確かに並列度は高くなって演算器を有効に 使えるのかもしれない。 しかし結果トータルでパフォーマンスはあがるのか? 分岐やテクスチャフェッチはどうなるのか? そのあたりまだよくわからない部分はある。 レスくれた皆サンキュー、寝る。
なんだか散々だな。 結局団子の1ファイバ 4スレッドの解釈は間違いだったとことでいいんだろ。 腹切りよろしく >> 団子 そして俺は寝る。
AoS/SoA変換を重点的に攻めてきたのはAVXもLarrabee新命令も同じ 特にAVXは熱い!やばい!間違いない 前にも書いたけどxmm1, xmm2, xmm3, xmm4のベクトルからxmm5で指定した 4つの要素を取り出してxmm0に格納するのにこれだけでおk (ただしこれはxmm6をテンポラリに使う) vpermil2ps xmm1, xmm1, xmm2, xmm5, 2 vpermil2ps xmm6, xmm3, xmm4, xmm5, 3 vpor xmm0, xmm0, xmm6 これならマトリクス演算も高速に出来るってわけだ。
>>192 はい?
散々言ってるけどハードウェアスレッドとソフトウェアスレッドの意味を混同してね?
そこで説明されてる「ファイバースイッチ」そのものは普通のOSでのコンテクストスイッチと同じこと 何百クロックも何千クロックも待たされるからこその。 16ビット時代はフロッピーディスク初期化中に他の作業できなかったろ? プリエンプションでフロッピー初期化中でも別の作業ができるようになった。 アレと同じ理屈 命令間のレイテンシを埋めるためのインターリーブはまた別個で必要
>>193 任意の要素をゼロクリアできる分だけ
32bit要素の並び替えに関してはAltiVecのvpermより使いやすいってことかいな
>>196 そう、抽出用のパターンテーブルが1つで済む。
AltiVecは3つ目のオペレーションにvpermを使うにせよvselに使うにせよ
もう一個ビットパターンを用意しないといけない。
同じ目的の命令はAMD SSE5にもpermpsというのがあるが
こっちはAltiVecの劣化版に毛が生えたようなの。
で、フェンス君の言ってたスレッドよりファイバを使えのなぞ発言ってさ テクスチャフィルみたいな待ち時間が多い処理は ハードウェアスレッド切替を使うんじゃなくてファイバコンテクストそのものを退避して 別のコンテクストに切り替えろ ってこと? なら納得。 CPUとして使う場合でテクスチャフィルなんて使うのか甚だ疑問だが
>>196 --------------------
任意の要素をゼロクリアできる分だけ
32bit要素の並び替えに関してはAltiVecのvpermより使いやすいってことかいな
--------------------
CELl SPEのShuffle Byte命令も任意要素を0, 0xFF, 0x80に設定できるす。
>>198 -----------------
テクスチャフィルみたいな待ち時間が多い処理は
ハードウェアスレッド切替を使うんじゃなくてファイバコンテクストそのものを退避して
別のコンテクストに切り替えろ
-----------------
レイテンシが不定な処理わ、データが来たところで自動的に再開できるSMTを利用するのが得策す。
ところで、この謎発言わ撤回したすか?fiberわSMTスレッドの上位の単位で無いし、「4つ」という
制限も無いことわ明らかにされたかと思うす。
==================
847 名前:,,・´∀`・,,)っ-○●◎ 投稿日:2008/10/05(日) 00:21:59 ID:PiRb9Agc
[略]
LarrabeeでいうところのFiberは同じ1コアで動かすべき4つまでのスレッドを纏めたものにすぎない。
==================
それ全然vpermil2psより優位な要素じゃないんですけど。 vpermil2ps/vpermil2pdでは、imm8[1:0] で指定する2ビット値によって、第3ソースで指定した パターンのうち、最上位ビットが立ってるほうをゼロクリアするか、あるいは立ってないほう をクリアするか選択できる。 シミュレータで動かした限りにおいてもSPEのアレよりだいぶ便利だ
>>199 ほんとだ。確かに要素指定には5bitしか使わないから
残りの3bitを使えばフォーマットを変えずに拡張できるね。
でも4ベクトルから任意の要素を取り出して並べ替えようとすると、
やっぱり2つ制御ベクトルが要るね。2ベクトルだと1つで済むけど。
このあたりをAVXはimmidiateを使ってうまくやってる感じ。32bit以下には使えないけどw
SSE5のも見てみたが、こっちは0以外にもセットできるけど
やっぱり4ベクトルから取り出そうとすると制御ベクトルが2個要るのは同じだな
おっとかぶったw
>>200 何が?
で、ファイバーのスイッチは普通のOSにおけるプロセスを切り替える仕組みと何が違うのかな?
プロセスには(ソフトウェア)スレッドが従属するが。
>>204 -----------------
普通のOSにおけるプロセスを切り替える仕組み
-----------------
「普通のOS」というのがWindowsやLinux, Mac OS Xのような用途のOSを意味するなら、ページテーブル
の切り替え等、はるかに複雑な処理を必要とするす。
ファイバのスイッチと比較できるのわ、関数呼び出し程度でわ?
XSAVE/XRESTORで全部退避復帰する必要があるんですけど 関数呼び出しで退避が必要なレジスタは一部です
>>201-202 SPE ISA、VMX-128の改善点、反省点を含めた新SIMD ISAわVSXとしてPOWER7に実装される
予定す。Altivecの正統進化がどのようなものになるか、楽しみにして欲しいす。
>>206 ----------------
関数呼び出しで退避が必要なレジスタは一部です
----------------
Larrabeeのファイバのスイッチも退避レジスタわ使用している分だけと書いてあるす。
================
- Saves "live" registers [""わ、MACオタ注]
================
まあ、使ってないレジスタは退避しないという方針に基づいても、 汎用レジスタ16本とSIMDレジスタ16本、マスクレジスタ、EFLAGSにMXCSRなど 諸々は基本的に退避しないといけないな。 FP/MMレジスタの退避はまあ使わないなら必要なさそうだな、 関数コールとは違ってABIを規定できない筈だし(するのか?)
>>209 だから言ったとおりじゃん。
Larrabeeのコアはヘテロジニアスマルチコアにおける「IA++」と同じものだって。
ちなみにゲルたんがいってることは4年前に後藤自身が解説したこととなんら変わってない。
SSEと共存できないだとか、いや、共存できるだとか、後藤が一人で混乱してただけで
Intelは一貫してたわけだ。
>>210 なんとなく見積もりが違う気がするすけど。。。
-----------------
関数コールとは違ってABIを規定できない筈だし(するのか?)
-----------------
Larrabeeわ目的が異なるスレッド(orタスク)が併走する設計になっていないす。
(例えば4つのSMTわMMUを共有するため、スレッド間のメモリ空間の独立性の自由度わ低い)
演算リソースわユーザーコードで占有され、タスクのスケジューリングも自前で行うすから、
ABIも必須でないす。こういう点でもCELL SPEと各コアの使い方わ近いかと思われるす。
>>211 記事でわAVXが妙に無視され気味な訳すけど、その辺気にならないすか?
スケジュール通りなら、2010より数年間AVXとLNIが並立するというISAの分離が発生するすけど。。。
>>212 で少し記述間違えたす。
誤: 4つのSMTわMMUを共有するため
正: 4つのSMTわTLBを共有するため
> つまり、256-bitと512-bitのずれは、時間軸上のずれに過ぎず、 > PC&サーバー向けCPUもいつかは追いつくことになる。 さて、問題あるかね? LarrabeeでSSE/AVXをサポートしないとも言ってない。 特にAVXについては、LNIでVEXエンコーディングを用いる以上 デコードできてしかるべきだし、やれるんじゃないの? まあ「絶対サポートする」と強弁する気はないが。 後藤はLNIがVEXエンコーディングって事実はまだ把握してないようだが なんとなくは気づいてるような。「命令は固定長にするのが望ましい」とかな。
>>215 ----------------
256-bitと512-bitのずれは、時間軸上のずれに過ぎず、
----------------
マーケティングトークわ別にして、Intelわ論文で「512-wideはグラフィック市場のための選択」と
公言しているす。
(Siggraph Larrabee論文より)
--------------------------
We chose a 16-wide VPU as a tradeoff between increased computational density and the
difficulty of obtaining high utilization for wider VPUs. Early analysis suggested 88%
utilization for typical pixel shader workloads if 16 lanes process 16 separate pixels one
component at a time, that is, with separate instructions to process red, green, etc., for 16
pixels at a time, instead of processing multiple color channels at once.
--------------------------
3byte版のVEXのm-mmmmフィールドは5ビット(32種類)あって SSE*の再定義とAVXの新命令のために3つ(0F, 0F38, 0F3Aのエイリアス) 使ってるが、あと29個も残っている。 こいつとVEX.Lフィールドとの組み合わせで、いくらでも命令を定義できる。 将来的にISAの均質化を目標としているのならAVXまでのSIMD命令も Larrabee(IA++)側でサポートしないといけない。 もちろん、統合までにやる話であって、最初の世代ではすべてやる必要も無いんだが じゃあ、最初の実装のLarrabeeで128bit/256bitのSIMDをサポートしないとして その理由は何よ? 積和算にしろシャッフルにしろ、全部Larrabeeにインプリメントされた機能で実装できそうだ。 専用ハードがないならないでマイクロコード実装でもいいんだけどな。 SSEが64bit SIMD Sandy Bridgeでも256bit AVXは内部的に128bit命令を2個実行するだけの実装にとどまってる。 まあ、あれはAVXを実装したCPUですら無条件でサポートされるものではないことは マニュアルにて示唆されてるが。 SSE4.1を無効にしたWolfdaleコアがあるように、マーケティング上の理由で ローエンドCPUでは無効にするとかそういう類のものになりそうだが
後半書き直し 最初のPentium IIIからPentium 4においてSSEが64bit SIMD×2で実装されてたように Sandy Bridgeでも256bit AVXは内部的に128bit命令を2個実行するだけの実装にとどまってる。 LNIでもAESくらいならサポートしない理由はある。テーブルが複雑だし。 まあ、あれはAVXを実装したCPUですら無条件でサポートされるものではないことは マニュアルにて示唆されてるが。 汎用CPUではSSE4.1を無効にしたWolfdaleコアがあるように、マーケティング上の理由で ローエンドCPUでは無効にするとかそういう類のものになりそうだが
>>218 -------------------
Sandy Bridgeでも256bit AVXは内部的に128bit命令を2個実行するだけの実装にとどまってる。
-------------------
また根拠の無い話を(笑)
反証にわソースがあって、"Terra Terra Terra"プレゼンでわ、Gesher (Sandy Bridge)のコアあたり
のDP Flops/cycle/core=7とあるす。8の誤植かどうかわ別にして、「サイクルあたり4-wide x 2 (積和)」
じゃないと到達できない数字す。
古い記事見たら、LarrabeeにVEX使うことは後藤は既に気づいてた。
http://pc.watch.impress.co.jp/docs/2008/0407/kaigai434.htm > また、512bitsや1,024bitsといったベクタ長の拡張も容易になる。
> Intelが、2008年末から2009年にかけて投入する予定のメニイコアCPU「Larrabee(ララビー)」は、
> AVXの命令フォーマット拡張の上に乗っている可能性が高い。
> AVXには、今後、毎世代命令セットを大きく拡張して行く、Intelの戦略が根幹を伺うことができる。
あと、ここ注目。
> 「5バイトバージョンの2つ目のペイロードはフルではない。将来の拡張のために3ビットが残されている。
> 3bitsあれば、1,000以上の新命令を加えることができる。新しいフィーチャ、新しいレジスタ、
> 新しいベクタ長。ほとんどなんでも加えることができる」(Valentine氏)。
m-mmmmフィールドは5ビットあるのに「3ビット」とはなんぞや?
これが間違いではないとすれば、5ビット32通りの中に0F, 0F38, 0F3Aフィールドがあるのではなく、
3ビット+2ビット(Reserved, 0F, 0F38, 0F3A)と考えてることになる。
それならそれで1000命令以上といったのはおかしいわけだが。
ちなみに後藤はここでも暗にVEX方式であるべきだと説いているようだ。
http://pc.watch.impress.co.jp/docs/2008/0811/kaigai458.htm > Intelは、Larrabee拡張命令のフォーマットの詳細については明らかにしてない。
> しかし、想定できる点がいくつかある。まず、命令フォーマットはデコードしやすいものでなければ
> ならない。x86命令のデコード時の複雑さの多くは、x86命令が可変長であることに起因している。
> この問題を軽減するためには、Larrabee拡張命令を、固定長にすることが望ましいと推定される。
この記事で
> MMX Pentium以降のMMX/SSE系の拡張命令は、サポートしないと推測される。
なんてトンデモなことを言った理由は、むしろVEXプリフィクスの合理性を主張したいからな気がした。
実際には、MMX/SSEが使ってきた2byte Opcode空間はMMX以前から使われてきたしLCP+2byte Opcodeなんてのはザラ。
SSEの命令フォーマットがデコードできない理由にはならない。「遅い」ならまだわかる。
221 :
MACオタ :2008/10/06(月) 04:09:18 ID:pdu9F3SC
余談すけど、今回の後藤記事の内容のヒドさに、私わ落胆したす。 かつて後藤氏わ、素朴な質問をぶつけて相手に詳しく語らせることで、自身の素養の無さにも かかわらず良いインタビューをモノにしていたす。(ちなみに、逆のスタイルが本田雅一氏で、 話を聞くより自分の意見を売り込もうとしてるんじゃ無いかと思われるようなやり方す。) ところが今回の記事、まるで自分の憶測の裏付けを必死でGelsinger氏に求めているとしか 思えないような代物す。これでわ記事自体、都合のいい言葉だけを引用しているような バイアスがかかっている疑念すら出てくるす。
>>219 また妄想を
128ビットである理由は俺のサイトにも書いている通り
256bitに作用するシフト命令が無い時点でネイティブ256ビットはありえないんだよ。
7が誤植で実は8でしたという思い込みはできても
実は4でしたというほうへの思い込みはできないのはおめでたいとしか。
GesherはSandy Bridgeを特定して指すという前提がそもそもおかしい。
AVXをサポートするgmmintrin.hには、FMAのIntrinsicsも含まれている。
元のGesher New Instrunctions(GNI)はFMAまでのサポートを含んでいたことがわかっている
FMAをサポートする次の世代も含めてGesherだ
そして、7DPという数字については、128bit FMA+ 128bit Dot-Productで7でも計算が合う。
ばかだなぁFUCKヲタは。
>>222 何度か書いているすけど、
-------------------
俺のサイトにも書いている通り
-------------------
議論の相手や聴衆が、自分と同じ情報を持っているという思い込みわ、勘弁して欲しいす。
それわそれとして、
-------------------
128bit FMA+ 128bit Dot-Productで7でも計算が合う。
-------------------
内積のような高級命令ってシングルサイクル・スループットなんすか?
IntelコンパイラのSSE組み込み関数のヘッダファイルはCPUの開発コード名を冠してる SSE3 pmmintrin.h (Prescott) SSSE3 tmmintrin.h (Tejas) SSE4.1 smmintrin.h (Swing) SSE4.2 nmmintrin.h (Nehalem) AES/CLMUL wmmintrin.h (Westmere) AVX/FMA gmmintrin.h (Gesher) Tejas/SwingはNetBurstがロードマップに存在した時代の死んだコードネームです。 Gesherも死んでSandy Bridge/IvyBridgeは後釜なんじゃないの? Intelが開発コードを変えるのは気分じゃなくて何かしらアーキテクチャ定義に 変更があったからではないかな? 事実、GesherではFMAまでをサポートする予定でgmmintrin.hが定義されたのに Sandy Bridge・Ivy Bridgeあるいはその次の世代という段階的なサポートになってしまってる。 > 内積のような高級命令ってシングルサイクル・スループットなんすか? おまえはドリームキャストを馬鹿にしたな もとい、水平加算を伴う命令は将来シングルサイクルスループットでできるようにすることは 開発者向けには前々から公約にしてたよ。 「Gesher」というコードネームが消えた今となっては真相は誰も知らないわな。 つーか、あの資料の該当ページを抹消したのにも何かしらロードマップ上の理由があったと思ってるが。
で、7は誤植で8だという根拠は? 7は誤植だという一方で8が真実だというのはずいぶん都合がいい考え方だなぁ 4GHzで28GFLOPSとも書いてあったぞ。
http://xtreview.com /images/davis.pdf
これだろ?
先に出るLarrabeeのベクトル長が8か16かも曖昧な資料が根拠になにを妄想してるのかなFUCKくんは
FMAがSandy Bridgeで実装されないことそのものがロードマップの修正だと思わんかね? Intelの*mmintrin.hでサポートされる組み込み関数の使える命令がCPU世代をまたがったことは一度も無い。
Sandy Bridge世代ではいまだに内部128bitである根拠 ◎AVXではメモリアドレッシングで指定されたソースに対しミスアラインロードを許容するが、 SIMDユニットがネイティブで256ビットをサポートするとすれば、アラインメント補正処理を ユーザーに開放したvpalignrの256bit版がないのはおかしい。 シフト・ローテート処理が128ビットのままでは、スループット的にアンバランスが生じる。 ◎256bit化の対象となってる浮動小数演算は、SIMD演算ユニットが内部128bitのまま256ビット版を使う ・命令レイテンシ隠蔽のため引き伸ばすだけでも実効性能は伸ばせる。 ・SandyBridge世代においてもなお16バイト/clkまでしかないらしい命令フェッチ帯域の節約になる。 まあ俺はどっちでもいいよ。 内部256bitといい続けることで恥をかくのはお前だけだから。
>>229 前者わ興味深い指摘だと思うす。今後わ、最初にこういう論拠を示してから自説を展開するように
お勧めしたいモノす。
後者に関してわ、何度も現実に裏切られているのでわ?
>>227 少しだけ補足す。
-----------------
先に出るLarrabeeのベクトル長が8か16かも曖昧な資料
-----------------
"Terra Terra Terra"のp.16のブロック図に"SIMD-16"とあることから、この時点で16(512-bit)-wideわ
確定していたことが判るす。従ってDP flopsの未確定部分わ、この時点で積和命令を実装するか
否かが確定していなかったことを示すす。
じゃあ、palignr の256bit版が存在しないのを「誤植」だとでも思っておきなよ。 VEX.L=1にすると未定義例外が出るってハッキリ書いてあるんだがな。 たとえばAltiVectのvpermが先頭64ビットまでしか作用しなかったらきっと 理不尽だと思うだろうけどそれと似たようなもんだよ。
全部誤植でAVXのベクタ長は1024ビットかもしれないよ 極論言うとMACヲタの妄想はそういうことだ
実物が無い以上 全部妄想です
xmmレジスタが登場してから演算器が128ビットになるまでを考えると128*2の可能性は大きいな。 同業者の状況を見るに、急いで新昨日で巻き返さないといけないなんて状態でもないし。
236 :
Socket774 :2008/10/06(月) 09:32:50 ID:xPkVE/H5
7DPで28GFLOP資料が間違ってるという一方でそれを根拠に
7DPで28GFLOPS@4GHzという資料が数字が間違ってるという一方で それが根拠にネイティブ256bitだというのは苦しいわな。 256bitでない根拠にならなりうるが。 間違ってると言った数字を根拠にする理屈はありえない。 ちなみに積和+内積で7DPを満たせるってのはム板でも議論されてた。 64bit SIMDではあるがK7ではE3DNow!によって内積をスループット1クロックで行えていた。 別に困難でもないんじゃないの?パイプライン段数増えていいなら。
むしろSandyBridgeって乗算命令って2ポートで発行できるようになってないか? FMA+DotProductで7DPを実現するスタイルだと、乗算だけに限っては既存のCore 2ファミリの 2つの浮動小数ユニットのどちらでも2DP/4SPの乗算が可能になる。 まあ、加減算とは排他になるが。
でだ FMUL/FADDとある2つの演算機の両方に乗算・加減算を実装してどちらでも加算・乗算を発行できる ような形にすれば、既存のSSEコードでも若干性能向上が期待できる。 それに、新命令のFMAのパフォーマンスという観点でも1つの実行ポートに両方の演算ユニットが ぶら下がってるほうが性能を出しやすい。 256bitでのパフォーマンスが伸びてないというより、レガシーを含めた128bit SIMDでの パフォーマンスを若干ながらも伸ばすアプローチを採るのはそれなりに意味はある。 いじょ。 フォローしておくと256bit SIMDでも相当速いよ。シミュレーションの通りなら 今のCore 2と比べてざっと2倍ってのは嘘じゃない。 単に256bitじゃないと恩恵が無い実装にはしなかっただけでしょ。
とりあえず、この手の話で 団子 >>> MACオタ なのはよくわかった。 今日の団子はいつもよりかなりまともな理屈をならべているな。
つーか、団子は正直、拡張命令ネタだけでいい。他はいらん。
対戦成績表'08 ナマエ 10/6 --------------------------------------------------------------------- 団子 ○ オタ ● 10/6 AVXの実装など
MACヲタとかってさ まさかとは思うんだけど AVXの128bit SIMDを使うと、256ビットの上位128bitも毎回ゼロクリアしないといけないから 256ビットでないといけないとか 思ってないよな? まあ俺も最初はそう思ったよ。 でも、よくよく考えたらさ むしろ、YMM下位(XMM)のみの演算ではYMM上位が常に0と決まってるからこそ、 上位のゼロクリア処理をサボって256bit未満の幅のSIMDユニットでも効率的に処理できるわけだよね。 fxchやxorゼロクリアでレジスタリネーミングのヒントとして解釈するのと同じで。 AVXのマニュアルには、レガシーSSEを使うと、YMMの上位をゼロクリアせずそのまま残すから偽の依存関係が発生するとある。 逆に言うと、AVX-128を使ってるときはYMM上位の依存関係が常に解消されてるってことなんだよね。 そりゃそうだ、結果が常に0なんだから。 その値をソースにとるAVX-256の命令あるいはレジスタ退避命令に遭遇するまで、実際にゼロクリアをする必要すらない。 で、レガシーSSEをなんでYMMの上位をゼロクリアしない仕様としたのかって、 そりゃおそらく、AVX-256との併用時に依存関係を故意に発生させて、性能出なくするためだよ。たぶん。 まさに飴(AVX)と鞭(SSEと同時利用することに対するペナルティ)。 そうまでしても、プリフィックスが付き捲って複雑怪奇な命令フォーマットとなってしまったSSEを整理したい。
larrabeeってDX11世代のGPUやOpenCLで使った場合のGPUに対して 余程のパフォーマンス的アドバンテージが無い限り 結局ニッチな仕様のGPUで終わるんじゃないのかい?
ところがCPUに内蔵されるようになる予定だから話はちょっとこじれる。
それはAMDがやろうとしてる事と 何が違うの
どうせCPUに内蔵されるから、単体カードとしてのLarrabeeはぼろぼろでも、 CPUに内蔵されたら、今と同じでシェアだけは高い可能性があるってことじゃね?
マリオと抱き合わせでクソゲーを買わされたトラウマが…
>>247 ポイントは全部x86。
同じ命令セットで汎用スカラ処理が得意な大きなコアとSIMDだけは得意な特化型コアが並立する。
で、ワークロードに応じて最適なコアを選んで実行するようになる。
AMDのやろうとしてることの最終構想はCPUのSSE命令をGPUでやること。
現実にはGPUの大量の演算ユニットだけあってもSSE命令の供給が間に合わなければ意味がない。
CPU内蔵のFPUすら、持て余してる時間が多い。
フロントエンドやスケジューラにどれだけトランジスタつぎ込んでるか考えれば
AMDがやろうとしてることがいかに無謀で馬鹿げてるかは。
適切なコアの判断は何処でやるの?
252 :
Socket774 :2008/10/07(火) 14:10:41 ID:Qxng3wLy
並列計算プログラミングを勉強している者ですが、質問があります。 Dual CoreとQuad CoreのCPUを用いてバックトラッキングの速度計算をやっているのですが、 実際のマルチコア対応演算プログラム(例えば、将棋や囲碁など)だと、 Dual CoreとQuad CoreはSingle Coreの物と比べてどのような処理をやっているのでしょうか?
>>251 OSのカーネルじゃね?
XP/VistaのカーネルはRDPMCでプロファイルとってコンテクストの割り当てを最適化する
機構を既に備えている。
現状、SMTで論理プロセッサが複数あるCPUで、同一物理CPUかを判定したり、
メモリ階層を考慮した最適化くらいはOS側でやってくれる。
IntelとMSは共同でメニーコアの研究やってるからなんらかの解決策は出してくるでしょ
ララビーのコア1個1個はOSから それぞれCPUとして認識されるっての?
GPUではなくずっと先の話だ。
>>252 「バックトラッキング」って言葉の意味がわかってるなら話は単純だが
複数のコアあるなら、その分だけスレッド起こして各枝の探索に割り当てていけばよくね?
257 :
MACオタ :2008/10/08(水) 07:46:16 ID:Iaqsra3B
258 :
レトリック君 :2008/10/11(土) 00:01:35 ID:pJwx8BrO
>>252 枝分岐する探索をthreadに割り当てとかじゃね?
憶測だがw
259 :
レトリック君 :2008/10/11(土) 00:05:06 ID:ndohKGFa
>>250 > で、ワークロードに応じて最適なコアを選んで実行するようになる。
dynamic loadbalancing?
そんなとろいことやってたらメニコアではscalabilityボロボロのキガス
これも憶測だがw
ねむー仕事でくたくただの介。モヤ済みノシ
260 :
MACオタ :2008/10/14(火) 04:00:26 ID:OQHMmdpk
>>257 の続報すけど、IBMサイトのPower 560 Expressの価格ページで、搭載プロセッサが
"POWER6+"と記されていることが話題になっているす。
http://www-03.ibm.com/systems/power/hardware/560/browse_aix.html 当初予定されていた45nmプロセス製造のPOWER6+によるコア数倍増のロードマップがズレて、
POWER6のままでのコア数倍増製品の投入至ったという推測を裏付けているかと思われるす。
なお、ITJungleのTimothy Prickett Morgan記者がIBMに問い合わせて、実際にわPOWER6の
ままであることを確認したとのことす。
http://www.itjungle.com/tfh/tfh101308-story07.html --------------------
I checked with my sources at IBM, and the Power 560 is not based on the Power6+, but rather
the existing Power6 chip, which is implemented in 65 nanometer processes.
--------------------
IBMサイトのページわ、今後訂正されるかもしれないすけど、当該記事にわスクリーンショットが
掲載されているす。
261 :
MACオタ :2008/10/14(火) 04:05:30 ID:OQHMmdpk
TechNewsWorldのRoss Mauri (IBM, Power System事業部長)インタビューより、POWER8の仕様
策定が開始されたという話題す。
http://www.technewsworld.com/story/64779.html --------------------
"We are working on Power7 and next week I have a meeting to hear about research on
Power8," Mauri said. "We're not slowing down."
--------------------
262 :
MACオタ :2008/10/14(火) 05:23:17 ID:OQHMmdpk
NCSAが建設するPOWER7を採用したスーパーコンピュータ"Blue Waters"の水冷技術に
関する記事す。
http://www.techworld.jp/channels/datacenter/102289/ ---------------------
NCSAの代理ディレクター、ロブ・ペニントン(Rob Pennington)氏によれば、水冷方式の大きな
アドバンテージは「CPUの高密度実装を可能にすること」であるという。同氏らは、開発中の
コンピュータを設置するために、現在NCSAで稼働しているスーパーコンピュータの2倍分の
施設を確保している。だが、現行コンピュータのコア数が9,600 基であることを考えれば、同
プロジェクトにおいて高密度化がいかに重要な課題であるかがわかる。
「水冷方式だからこそ、CPUコアの高密度実装が可能になった。もし、空冷方式でサーバを
冷却しようとしていたら、フロア内の空気の流れを確保するために、さまざまな制約が課される
ことになっただろう」(Pennington氏)
---------------------
前スレに書いたPOWER7に関する情報も参考に。
http://pc11.2ch.net/test/read.cgi/jisaku/1219884494/950 =====================
開発グループが異なるとわ言え、POWER6で電力効率向上のために一旦あきらめたOoOEを
再投入する 技術的裏付けわ謎す。冷却に関してわ水冷技術で先行しているために問題わ
無さそうす。
=====================
264 :
レトリック君 :2008/10/17(金) 01:49:41 ID:TAQlmPyn
コンパイラが作り(流用し)やすいのは、一つの大きなメリットだろ。 すぐできる。が、しかし…
nVIDIAが「ハイエンドクアッドコアよりデュアルコアにSLIなGPUのほうがエンコ速いよ」 って挑発してる状態だからね。 あくまで継続的に高付加価値のCPUを売っていきたいIntelには、GPUを牽制するのもやっぱり x86である必然性が出てくる。 ・将来のSIMD拡張LNIの先行実装 ・トランジスタあたりのスカラ性能もそれなりには出る ・x86最強wwwww つーか実際問題ハイエンドを欲するのはエンコとかゲームとかなわけで、 大量のSIMD演算をこなせるエンジンが必要になる。 CPU側のサブコアではなく敢えてディスクリートGPUとしてのモデルを採ったのは いろいろな実験を兼ねてるんだと思われ。 というか、CPU側にはまだ汎用コアを詰め込んだ方が良いと判断したんだろう。
むしろx86スカラコアがおまけで主力はSIMDエンジン
んでそいつらのためのGDDR3 ディスクリートしか道が無い
LeadtekのSpursEngine搭載アクセラレータボードは3万だってな VGA機能のないSIMDアクセラレータですらこの価格だから VGA機能を兼ねるLarrabeeでもそれなりの値段はしそうだな。
それはどれだけの普及を見込んでるかによるのでは?
SpursEngineはチップの単価が1万円程度だからなぁ。 ハイエンドSIMDアクセラレータになるか、ローエンドGPU扱いされるかは ソフト次第だと思うよ。 その点においてIntelはしっかりしてると思ってる 少なくともCellみたいに当のSCE自社すらまともなライブラリ作れないような企業より。
271 :
レトリック君 :2008/10/18(土) 01:49:03 ID:PCcfdfg/
Larrabee、試しに買って、お家でもプチHPCしてみるか、どうするか… Cellだとアプリが完成するまで203高地・死体累類状態を数年続けた後、 アプリが完成して日の目を見る前にフェードアウトされちまいそうで 迷わずスルーしたけれども。
272 :
MACオタ :2008/10/18(土) 15:32:06 ID:8sSawSax
273 :
MACオタ :2008/10/18(土) 16:53:08 ID:8sSawSax
274 :
MACオタ :2008/10/18(土) 17:11:38 ID:8sSawSax
>>272 Core2Duo E8400 3.0GHzと430GTでは約2.3倍の差がつきます
もっともCPUはシングルしか使われませんが
ちなみに119枚の2048*1536のjpgを処理した場合
E8400 3.0GHz : 215.744s
同CPU+430GT : 95.398s
------------------------------------
Turion64 1.8GHz : 9.474m(568.44s)
同CPU+440GTX : 179.594s
同様にS3からエンコーダでも提供されれば
VIAプラットフォームにとって強い味方になりそうですね
>>275 > E8400 3.0GHz : 215.744s
> 同CPU+430GT : 95.398s
> Turion64 1.8GHz : 9.474m(568.44s)> 同CPU+440GTX : 179.594s
やっぱ同じGPUでもプラットフォームで差がつくんだな。
GPUでできない仕事をCPUにオフロードしてるから当然といえば当然だが。
ということは、よりCPU側に投げる仕事を減らしたのがGPGPU市場を制しうる。
Larrabeeの勝因はここにあるかもな。
もっとも固定機能部分が遊んでたら意味Nothingだが
> Larrabeeの勝因はここにあるかもな。 もう勝ったことになってるよw
>>264 既存のコンパイラをある程度流用出来るのは分かるけど、
Larrabee側でシステムコール呼んだらCPU側で実行されるってどうやるんだろ?
システムコールの引数がポインタだと、
@Larrabee側のコードもCPU側のコードも同じメモリ空間を共有するか
Aシステムコールごとに決まったサイズ(たいていは構造体)のデータをコピーするかしないと...
@だと変数にアクセスする度にPCIバス通して通信するわけだし
AだとWin32での実装が大変そうだ。
公称1TFLOPSとかあるのに、GPGPUとして使ってみるとCPUの良くて数倍程度の性能しか 出せてないのは、実効性能が低いからでは? キャッシュが小さかったり、演算の小回りが利かなかったり。
>>278 > Larrabee側でシステムコール呼んだらCPU側で実行されるってどうやるんだろ?
っていうかシステムコールをホスト側で処理する必要あるんだっけ?
Larrabee側にもOSを持っててPC上のOSとはメモリ空間は独立なのに
282 :
レトリック君 :2008/10/19(日) 03:05:40 ID:bSIbs2Cr
>>278 やり方は色々考えられるだろうけれども、
実際にIntelがどうするについては参考文献を読んでから書来たいところ。
読んでいる時間あればだけれども…orz。
パット思いつきで書けばthrouputneckが懸念されるのはread/write システムコールだけ。
でもさ、並列化のセオリーで言えばIOって思いっきりcriticalなんだよねw
>>279 数コア程度のCPUの性能分析と同列に考えない方が良いよ。
モデルの大きさが違うんじゃなかったっけ? キャッシュ(Cellの場合LS)の容量に合わせた小さいモデルを選択してるだけで それをもって性能比較とするのはどうかなと だって、PCと同じ大きさのモデルをシミュレーションするのは 性能以前に「無理」なんだろ?
モデルの大きさはCPU>CELL>GPUということだけど、定量的な情報が無い。 クライアントがバージョンアップするたび扱えるモデルも大きくなっているとも言ってる。
今のcore2duo2GHzと母板のその他機能がワンチップで省電力になるのはいつごろだい?
286 :
Socket774 :2008/10/19(日) 15:28:58 ID:2HT/SDCh
5年後位のCPUのハイエンドって今のよりどれ位性能アップしてるの?
>>280 論文の6.1節
"Two current limitations are
that application system call porting is not supported and the
current driver architecture requires application recompilation."
それから
"Additionally, execution of some
C/C++ standard library functions called from Larrabee application
binaries must be shared with the host operating system.
Specifically file I/O functions such as read/write/open/close, etc.,
are proxied from the Larrabee application binary back to a service
that executes such functions remotely on the host OS."
とのことなので気になってます。
>>282 read/writeもそうだし、スレッド間の協調のためのAPIもホスト側で実行するなら...
この論文には詳しい実装手法は載ってませんでした。
他に論文orドキュメント知ってたら教えてくらはい。
来年のICC11にひょっとしたらLarrabee開発ツールも載っかるかもしれないのでそれまで待ちましょう
>>275 に新たにE8400+440GTXを加えて
E8400 3.0GHz : 215.744s
同CPU+430GT : 95.398s
同CPU+440GTX : 88.941s
Load->処理->saveのうちLoad,Saveはどの結果でも同じと仮定し
処理のみの時間を出してみると
x+y=88.941sec
x+1.139y=95.398sec
x+c=215.744sec
x:laod+save時間 y:440gtxの処理時間 z:cpuの処理時間 1.139=1025/900(440SP/430SP)
x=42.488sec
y=46.453sec
z=173.256sec
となり
GPUとCPUでは約3.7倍となる
CPUはシングルスレッドで12gflops、440は65.6gflops
GPUの実行性能としては、マズマズかと
実行中はこんな感じ
ttp://www.nicovideo.jp/watch/sm4987162
290 :
レトリック君 :2008/10/20(月) 22:50:05 ID:c6B+e61k
>>287 残念ながら詳しい文献は持っていないよ。関係者のブログ
Intel Graphics Jobs - Graphics - The Computer Science Agora
ttps://i2cs.cs.uiuc.edu/display/graphics/2008/04/25/Intel+Graphics+Jobs の近くにある8月19日のslide
architecture reading group slides -- 19 aug 2008.key
ttps://i2cs.cs.uiuc.edu/download/attachments/10454670/larrabee-aug19-slides.pdf?version=1 の11枚目辺りを見てもIOに関しては
. GPU variant: stdlib I/O proxied by host processor
としか触れられていない。これは多分PCIExpress add-in card形態のものの場合だと思うけど、
PCIカード内のLarabbeeからNorthやSouthにぶら下がったI/Oを(Host CPUと調停しながら)
アクセスする手段は(第三世代になっても)無い?(←知らぬ)か何かにより、Open MP compilerで
compile&linkしたexecutableのhost CPU用binary側にI/Oを代理実行して賄ってもらうん
じゃないかとそれをproxyと書いているんジャマイカと、コレはモレの予想だけれどもさ。
ちなみにthread同期に関しては同じく11枚目に
on-chip thread synchronization and communication
と書かれていて、これはLarrabee内のcore間の同期でPCIは経由しないものの筈。
逆にLarrabeeとhost CPU間のPCI経由同期もあるはずで、OpenMP compierは
2種類のbinaryを含むececutable内でこの2階層の同期を取り扱えるような
codeを生成するのではないかと、コレも予想だけれれどもさw
ご苦労さんなこったぜ
とうとうGPUでprintfデバッグができる時代が来るのかw
仮にS3がChrome400にExponentialの技術を使ってるとしたら 10年に及ぶ、随分と長い伏線だな
293 :
287 :2008/10/21(火) 00:26:01 ID:mj+qHKTV
>>290 おぉ、サンクスコ。
>PCIカード内のLarabbeeからNorthやSouthにぶら下がったI/Oを(Host CPUと調停しながら) ...
というか、いわゆるカーネルモードのプログラムは全てCPU側で処理するのでは?
つまり、in/out命令のレベルで調停するのではなく、
read()/write()システムコールの処理を一括してホスト側で処理するのではないかと。
(もちろんLarrabeeを動作させるうえで必要な最小限のカーネルというかファームウェアが特権命令をLarrabee上で提供することはあると思うけど)
また、論文のコピペした部分 ”『現在の』ドライバ設計ではアプリケーションの再コンパイルを要する”とあるので
将来的には再コンパイルは不要となるのではないかと漏れは予想してます。
だとすると、やはりLarrabee上で発行されたint命令を
必要に応じてホスト側のint命令として処理するコードがドライバに組み込まれるのではないかと。
>OpenMP compierは 2種類のbinaryを含むececutable内で
>この2階層の同期を取り扱えるような codeを生成する
OpenMPで自動並列化するときにCPUの演算資源とLarrabeeの演算資源を同時に活用できるってこと?
クレイジーだね!
294 :
MACオタ :2008/10/21(火) 05:40:21 ID:CIoXnd95
中文版EngadgetがIDF Taipeiで仕入れたLarrabee情報を掲載しているす。
http://cn.engadget.com/2008/10/20/idf-2008-intel-gpu-larrabee-detail/ ・コア数: 最大32
・動作クロック: 最大2GHz
・製造プロセス: 45nm〜32nm
・今年11月にプロトタイプ登場?
コア数と動作クロックに関してわ、
コア数と動作クロックより最大ピーク性能わ、
倍精度: 2 [GHz] x 8 [並列] x 2 [積和] x 32 [コア] = 1 [TFlops]
単精度: 2 [GHz] x 16 [並列] x 2 [積和] x 32 [コア] = 2 [TFlops]
基本的な性能上のターゲットわ、"TFlops on Chip"ということの様す。
295 :
レトリック君 :2008/10/21(火) 20:47:23 ID:FLpnRXeu
>>293 > >OpenMP compierは 2種類のbinaryを含むececutable内で
> >この2階層の同期を取り扱えるような codeを生成する
> OpenMPで自動並列化するときにCPUの演算資源とLarrabeeの演算資源を同時に活用できるってこと?
> クレイジーだね!
OpenMPは演算性能やlatencyに大きな非対称性のあるthreadが混在すると
基本的にloadをbalanceさせ易くないし、PCI経由の同期はそれなりに遅く密接な
同期の間に挟まない方が性能的に有利なので、並列regionに突入するチームを
host CPUとLarabee内のthreadで混成するところまでは、さすがにやらないのでは
ないかと想像して□。
しかし、特定のH/W threadやcoreを固定的に割り付けるaffinity APIをpthreadに拡張し、
OpenMP APIはその上に乗っかるわけだし、host<->Larrabee間のmessage/data passing
protocolは非同期APIもサポートするからCUDAのようにGPUがご多忙中の裏でhost CPU
も一仕事させられる上で必用な仕組みは備わっている。
それがOpenMPのチームを編成するthreadの割付指定拡張の様な??ものなのか、
あるいはCtのみのサポートなのかは今のところ想像の域を出ない。
Ctは非常にダイナミックなのできっと何か仕掛けてくると思う。LLVMの様な仮想命令と
optimizationまで取り入れられる。○○とは役者が違う、もう参ったよって感じ。
しかし、モレは何を2chでマジレスしているのやら…
296 :
287 :2008/10/21(火) 22:40:09 ID:mj+qHKTV
>しかし、モレは何を2chでマジレスしているのやら…
いやいや勉強になるわ。
>CUDAのようにGPUがご多忙中の裏でhost CPU も一仕事させられる上で必用な仕組みは備わっている。
うーん、これはこれでCELLみたいにスーパーハカー的なプログラミング作法を要求しそうでやだなぁ。
あっても良いけど、いつの間にか○○しながら××することが性能出す上で当然みたいなことにならないといいね。
>Ctは非常にダイナミックなのできっと何か仕掛けてくると思う。
>LLVMの様な仮想命令とoptimizationまで取り入れられる。
Ctでコーディングしたら、コードの自己書き換えを伴った実行時最適化が掛かるってことでおk?
>>294 サンクスコ。
各x86コアが2GHz動作するってことかな?
>>289 CPU<-->GPU間が遅くて連携は難しいとか言われてたが
Chrome400程度のローエンドでこれほどなら
AMDのFusionとかの構想も結構期待できるのか?
それともChrome400が特殊なのかね?
Exponential?
298 :
レトリック君 :2008/10/21(火) 23:55:47 ID:xkV0DQUZ
>>296 > >LLVMの様な仮想命令とoptimizationまで取り入れられる。
> Ctでコーディングしたら、コードの自己書き換えを伴った実行時最適化が掛かるってことでおk?
印刷物は会社に置いてきちまったけれども、それでOKだと思う。
抽象IA命令だったっけな、これをruntimeに最適化しながら
具体的なIA-32、IA-64、Larrabeeなどの最適化Nativeが生成されて行くと
いうような事が確か文献に。
最近モレの周りではこういう研究もプチ流行の気配なんだ。ニヤリ
自己書き換えっていうか動的生成のほうが正しい 文字通りの自己書き換えは(既存コードシーケンスの上書き)は、 ページ属性操作が煩雑かつトロくさくて最近はあまり流行らない XDビットの兼ね合いもあるし。 バイトコードを動的に並べてExecutable属性つけてそこに飛ばすほうが速い
消費電力は電圧の2乗・周波数に比例するって言うけど 性能も周波数に比例するから、アイドル時に電圧下がるなら 速く処理が終わる高クロックのがワットパフォーマンスは良くなんじゃない? だとしたらPentium4は何が悪かったの? 周波数を上げても消費電力も性能も同じだけ上がるだけだけど その周波数を上げるのに電圧を上げなくちゃいけなかったってだけ?
>>302 見通しではリーク電流を順調に減らせるはずだったけどそうはいかなかった。
それでもTDPと共にクロックを上げ続けたおかげで冷却が物理的に間に合わなくなった。
>>295 > Ctは非常にダイナミックなのできっと何か仕掛けてくると思う。LLVMの様な仮想命令と
> optimizationまで取り入れられる。○○とは役者が違う、もう参ったよって感じ。
おれの知ってるCtはOpenMPなC++コードを吐くコンパイラだったのだが、
いつのまにそんな高機能になったの?
ソースプリーズ
305 :
レトリック君 :2008/10/23(木) 01:16:27 ID:cidyWJKe
306 :
レトリック君 :2008/10/23(木) 01:26:41 ID:cidyWJKe
307 :
287 :2008/10/23(木) 02:27:45 ID:Ig/uBMS+
やることはJVMのJITそのものだよ。
単純な演算の繰り返しなんで、コンパイル時間より実行時間のほうが多いからJITでも十分。
分岐パターンが一意に決まらない複雑な演算もやらされるJavaよりもある意味では有利。
たとえば、このアプローチが有効なのは
http://homepage1.nifty.com/herumi/soft/xbyak.html にもあるような量子化の定数を実行時に決めるやつ
GPUでやるような並列コンピューティングの場合、条件分岐の評価を最初の1回目だけあとは
同じパターンを延々繰り返しなんてのが多いからこういう最適化はかなり役に立つ。
JavaScriptエンジンも最近の実装ではJITを使った高速なものがある。
YARV(Rubyの別実装)でもXbyakを使ってx86ネイティブコードを動的生成することが試みられている。
309 :
287 :2008/10/23(木) 03:38:21 ID:Ig/uBMS+
Xbyak面白れぇ!使ってみよw >単純な演算の繰り返しなんで、コンパイル時間より実行時間のほうが多いからJITでも十分。 逆に汎用言語の処理系ではLLVMみたく最適化の結果をファイルに書き戻す処理は流行りそうに思うけど。どうかな? >JavaScriptエンジンも最近の実装ではJITを使った高速なものがある。 キモ過ぎるな、おいw ブラウザの上でJITとか走った日にゃ、超高速ブラクラとか遭遇しそうでry) >YARV(Rubyの別実装)でもXbyakを使ってx86ネイティブコードを動的生成することが試みられている。 ほぅ。さすがssdさんはそんなことまでやってたのか。 VM型インタプリタだから中間言語の仮想命令を一つずつネイティブ命令に置き換える実装? それとも各仮想命令間をまたぐスーパー命令を動的に定義してくれんのかな? YARVって確かネイティブスレッド対応だし、YARVのソースをLarrabeeコンパイラに掛けたらそのまま並列化出来そうだよね。
>>302 ロード時の電力が半端じゃないだろ。
少なくとも初期のPentium 4はアイドル時はPenII以降のデスクトップでは最も消費電力が低い部類です。
>>308 > JavaScriptエンジンも最近の実装ではJITを使った高速なものがある。
唐沢俊一のトリビアなみだなwww
Lars Bakで調べると吉
ヒント SoftWire 単に自分自身がネイティブコードを生成するかVMがやるかの違いでしかない BrainFuckのJITのサンプルがあるからちょうどいいだろ BFソースプログラムからすればXbyakで書かれたサンプルアプリはJIT型のVMとみなせる
「JVMの」ってのがバカにされてるところじゃない? よくわからんけど。 JVMってスタックマシンだよな。
JIT手を見る。
MACオタですら馬鹿にされたらムキになって調べてくるのに 団子って自分の知識が世界の全てだから、ずいぶん幸せそうだなww
あと最適化が手動のJITと同列にするのってどうなの?
Lars Bakという人名すら知らない団子は本当に幸せそうだ
また頭のいかれたフェンス君かな?
>>315 見方の違いでしかない。
たとえばWindows上のJVMはjava.exeはバイトコードを読んでx86ネイティブコードシーケンスを動的生成するWin32アプリとも見なせる。
あとは動的生成対象のコードシーケンスが外部ファイルかアプリに組み込まれてるか
あるいは外部ファイルがテキストかたとえばJavaバイトコードか、
の違い。
ちなみに最近はRubyも単体EXE作れるんだな
>>321 > ちなみに最近はRubyも単体EXE作れるんだな
小学生の豆ちしきを披露する前に、ちゃんと調べよう
JVMやV8のネイティブコード生成ルーチンとSoftWireやXbyakのそれは技術的には同じだよ
324 :
レトリック君 :2008/10/23(木) 21:58:46 ID:uLYL10Hy
Perlなども単体.exe作れるが…あれはLLVM等とは別扱いすべきだな。 途中で生成されるCのソースコードはひたすらVMの機能関数呼び出しの羅列で Perl本体の.oとリンクするわけだし… Rubyはシラネ
もとのCtの話にもどると肝はJITそのものでなくその時点での最適化でしょ? SoftWireもXbyakもそこは手動なんだから同列に語れないでしょ むしろJVMのHotSpotなら話は近いと思うけど
v8のソースちゃんと読んだ? ぶっちゃけ実行時最適化もVM開発者が労力かぶってるだけの話でしかないんだが。 SoftWireは元々シェーダスクリプトをx86で実行するためのVMの土台のライブラリだから 立場的にはなにも変わらない。
JVMのソースなら数年前に読んだよ。 V8は別にあんまり興味ない。 最適化に興味があるのでそのあたりおもしろいところがあれば紹介して欲しい。
>>328 > 最適化に興味があるのでそのあたりおもしろいところがあれば紹介して欲しい。
dynamic optimizationでciteseerを検索する
いろいろ出てくるので興味のあるものをたどってゆく
citeseerに本体がなくても、著者のページにあることがあるので、タイトルでぐぐると吉
330 :
レトリック君 :2008/10/23(木) 22:46:45 ID:iaMxptJD
どのレベルでの最適化をご所望かワカランけど 最適化関連で多少注目していてココに書いて差し障りのないものとしては COIN、某大学の広域、LLVMの最適化・生成、あと海外の大学の数件くらいなどしかシラン。 役に立てずスマソな。Compiler Infrastructureでググッテ見ては? さて、一杯飲んで寝るとするか…
COINSのMLは学生時代から登録やってるが、たまに質問が投げられても中身がないな
>>330 svKUApQqが静的最適化に興味があるんだったら、最近の分厚い成書をまず読むべき
Muchnickのがおすすめ
333 :
レトリック君 :2008/10/23(木) 22:58:18 ID:9GEasw9b
そんなことモレに言われてもシランガナw 文句ならメール書いたヤシに言えば>
334 :
レトリック君 :2008/10/23(木) 23:00:31 ID:9GEasw9b
おもっきり実装レベルの話をすれば、生成したネイティブコードシーケンスの両端に RDTSCみたいなクロックカウンタしこんでかかったクロック数を計測するだけだよ あとは経験則で最適なコードシーケンスを選んでいくだけ。 Larrabeeの場合フィードバック最適化はあまり必要ないんじゃないかと だってコンパイル時にCPUわかっちゃうだろ?
336 :
レトリック君 :2008/10/23(木) 23:05:08 ID:9GEasw9b
>>335 いや、だからさ、単体レベルでもの考えすぎだって…
くどくく言いたくないけれど
逆に泥臭いことが嫌いならさ、言ってるじゃん i社「最適化ノウハウは我々にあるから君らバカ共はCtの取得だけに勤しんでくれ」 いずれにしても肝心なことは教えないから自ら茨の道を歩む人は 計測しつつトライアンドエラーしかない
皆様どうもありがとう。
興味あるのはLLVMのようなリンク時、実行時の最適化です。
>>335 プロファイルをフィードバックする最適化はgccでもできるけど
それなりの効果はあるよ。
339 :
レトリック君 :2008/10/23(木) 23:55:09 ID:yKlJgebI
if then elseのどっちの説をストレートに通してpipeline stoleを減らすかを profileベースで決めるだけでもそれなりに効果はああったな。 いや、15年前の技術でスマンけれども。オッチャンで悪かったな…
静的な最適化といえば必須テクはテンプレートメタプログラミングとかの類だな 再帰とかめちゃくちゃ速くなるぜ あ、実行時にfprintfでCのソースを動的生成してコンパイラを走らすアホなフレームワークとか知ってるが あれはソース読んで腹筋を激しく鍛える以外の意味は無いと思う
341 :
レトリック君 :2008/10/24(金) 00:12:33 ID:gseqQVPN
なんかあほらしくなってきた… 寝よっと
団子ちゃんの根底にあるものをわかってれば そんなに疲れないんだけどねー
343 :
287 :2008/10/24(金) 01:43:43 ID:OoG1Pbto
....何か荒れてるな。ひょっとしてオレのせい?...orz
COINSのくだりなんか政治的な匂いがするな。
>>340 >実行時にfprintfでCのソースを動的生成してコンパイラを走らすアホなフレームワークとか知ってるが
>あれはソース読んで腹筋を激しく鍛える以外の意味は無いと思う
最適化とは関係ないけど、javassitでアスペクト云々とかの事例もあるし、そこまで悪いとは思わないけどなぁ。
>>339 >if then elseのどっちの説をストレートに通してpipeline stoleを減らすかを
>profileベースで決めるだけでもそれなりに効果はああったな。
間接分岐予測の精度向上って昔からあるんだな。
VLIWが主流になるからこうゆう研究は下火になるって考えられた事は無かったのか?
>>343 > ....何か荒れてるな。ひょっとしてオレのせい?...orz
> COINSのくだりなんか政治的な匂いがするな。
いつものように、団子が自分の知っている単語(だけ)を振り回す、小学生のようなマネをしているだけです。
> 間接分岐予測の精度向上って昔からあるんだな。
> VLIWが主流になるからこうゆう研究は下火になるって考えられた事は無かったのか?
プロファイリングで分岐の最適化する話は、まさにVLIWと共に進歩したよ。
だまれフェンス
今日もJITのコンパイラソースも読めない恥ずかしいフェンス君がいたいね
>>343 いちいち文字列化してファイルに書き出し、更にそれと1字1字読んで解析することほど
コンピュータにとって無駄な作業はないよ。
実際問題効果は得にくい。
それならまだコンパイラのバックエンド組み込んじゃったほうがエレガント。
GCCなんてオープンソースなんだし。まあGPLだが。
それとね、インタプリタは字句解析→関数コールの繰り返しだから たとえばCより速いとかさえ考えなきゃ、単純にマシンネイティブコードの シーケンスに置き換わるだけでも十分な効果は得られるわけだよ。 普通のプログラム使ってる分には自己書き換えや動的生成といった技術では大した効果は得にくい。 まあ、Perl何かでよく多用する正規表現の評価なんかはどのみち正規表現ライブラリでやることになる。 文字列処理ばかりは、どうしてもそんなに速くならない。 まあ、Nehalemで正規表現の文字クラスを一括判定出来そうな命令も加わってることだし SIMDに置き換え甲斐はあるんだけどね あ、知ってると思うけどXbyakの更新ログ見てみな。度々コミットしてる「団子厨」って俺だよ。 宣伝乙だろ?
熱くなって書く前に、レスをまとめろ。
焼き団子旨そう。
XbyakってJITって言ってもJITコンパイラでなくJITアセンブラだよね 興味持つ人は少ないと思われる
もちろんアセンブラ部分の上の部分さえ作りこめばコンパイラになる。 YARVのサブプロジェクトとして使われてるyajitがXbyakベースのコンパイラ第一号だ Xbyakの動向はRuby教祖まつもと氏も関心をお持ちのようだよ。
gccのasm()の方が好みだな。rtl式使えるしcompilerは当然既にあるし つかスレチ
それただのインラインアセンブラ JITは実行時生成だ
遊びとしては面白いだろうけど使う気が起きないわ。
>302 Pen4は内部で早いうちにx86命令をRISC命令に分解して トレースキャッスに予測がヒットするのを前提として 楽観的に予測実行をせざるを得ないアーキテクチャだと 聞いたことがあります。リプレイシステムなんてのも実装されていました。 もちろんトレースキャシュにヒットする場合は速いのですが、そうも行かない 場合も多く、ヒットしない場合はリプレイシステムで再実行がかかります。 また、RISC命令に早期に分解しているため、実行命令数も増えます。 実行命令数が増えたのと、再実行が多いため、リソースを食いまくり、 限界に達したのかもしれません。 Core2系では、x86命令を早期に分解せず、むしろ合体をして実行命令数を減らします。 最後の最後ではRISC命令に分解するみたいですが。 全部受け売りです。もし間違った理解をしていたらごめんなさい。
>>356 うーん
微妙な理解だなぁ
命令長が不規則で複雑怪奇を極めたx86命令の命令の切りだし&デコードはそれだけでも大がかりな作業なんだよね。
特に3-4命令同時にやろうと思えば。
Core2だって決して万能ではない。
NetBurstにとってはフロントエンドの負荷軽減のための省電力技術としての側面もあった。
Nehalemではものすごく限定的だがμOPsをキャッシュする機構を復活させている。
もちろん、ごく短いループでしか効果はないが。
つーか、それ以前に
>>302 の認識が間違えているから、
レスつけても仕方がない。
>>348 すごいな団子さん
尊敬する(嫌味じゃないよ)
そのうち程度がばれて へるみからそっぽ向かれるに10,000ベリカ
ベリカってどこの単位だよ とりあえずAVXのYMMレジスタ対応まで好きなように拡張していいって許可ならもらった
トランスメタのコードモーフィングでジャバを半ネイティブ実行する仕組みがあれば、 ネットブック用CPUとして未だ生き残ってたかもなあ。
まあ、ネットで目立つ人材を叩いてまわるだけで10年近いのに、 自分では何も発信できないどっかのコテよりは数倍マシですね。
FUCKヲタの悪口はそこまでだ
正確にはグランゼコールか。フランスの高等教育制度はよくわからん。
>>362 無理無理、ネイティブ自体が大した効率良くない。
これってどれ?
>>363 団子も大嘘ついては訂正しないことではMACオタに引けを取らんけどな
>>367 webページってテンポラリデータでHDDにキャッシュするから、そのキャッシュに
JSをx86ネイティブにコンパイルしたコードもキャッシュする、ってのはどう?
もうやってるかもしれんが。
371 :
Socket774 :2008/10/25(土) 03:46:25 ID:wPAPYS2d
>>370 JavaScriptとJavaの違いを学んだ方がいい 実行の方式が全く違う
Scriptなのでネイティブ変換はできません HTMLの解析結果との連携なんかもあるし
373 :
レトリック君 :2008/10/25(土) 10:17:14 ID:nhfwknIq
オートマトンてSIMD処理に適しているのか? 状態の扱いは思いっきり依存ありげでvectorには不向きな気がするが フト疑問に思っただけだが
374 :
レトリック君 :2008/10/25(土) 10:27:55 ID:nhfwknIq
>>372 だから、v8はネイティブ変換やってるってば
>>373 普通は適してないよ。
というか馬鹿まじめにオートマトンなんてやってないよ。
正規表現エンジンでよく使われる後方参照なんて、
DFAじゃ実現そのものが不可能だし。(NFAといっても良いかも疑問)
PCREも鬼車はBoyer-Moore法で固定文字列として扱える部分を大雑把に判定することで
高速化してる。これはNFAでやるとものすごく遅いから。
手法にとらわれない本質って大事だよ。
正規表現を使って文字列検索をすることの本質は、ステートマシンを使うという
手段ではなく、あくまで文字列検索という目的。
で、文字列サーチ部分はSSEの支援を受けようと思えばできる。
状態変数そのものも高速化できる。
たとえば、SSE4.2の文字列比較命令を使うと、
XMMレジスタにロードされた最大16個の文字が
[1234567890ABCDEF]のいずれかにマッチするかを
1命令で判定するなんてこともできる
これ、動的生成でこそ効果発揮すると思うけどどうよ?
まあxmmレジスタに読む値は即値化できないがな
- PCMPESTRI (SSE4.2) Packed Compare Explicit Length Strings, Return Index - PCMPESTRM (SSE4.2) Packed Compare Explicit Length Strings, Return Mask - PCMPISTRI (SSE4.2) Packed Compare Implicit Length Strings, Return Index - PCMPISTRM (SSE4.2) Packed Compare Implicit Length String, Return Mask 力技だが、BM法でやってた文字列サーチを代用することもできるし 文字クラスのマッチングのように使うこともできる。
377 :
レトリック君 :2008/10/25(土) 11:17:38 ID:D32E8APC
文字列処理と正規表現をごっちゃにしている
馬鹿だね。「正規表現」は必ず全部有言オートマトンとして文字列比較しないといけないとでもお思いですか? C++ TR1にもほぼそのまま採用されたBoost Regexですら固定文字列として扱えるパターンを抽出してr boyer-moore法を使ってる
しかし、ぶっちゃけ今普及してるPerlコンパチのあれは「正規」でもなんでもないんだがな。
GNU GREPも複雑な正規表現で無い限りBM法やtrieを使ってる ソースコードも読まずに古い知識を広げるのはやめていただきたい。
いい? abc(def|g[hij]?)*k+ なんてパターンを与えられたら まず必ず評価する "abc" にマッチする部分をBM法ないしその他の高速な固定文字列検索法で検索し、マッチしたところに対してNFAで評価するのがモダンな実装。
382 :
レトリック君 :2008/10/25(土) 12:20:05 ID:l1Ioy72A
文字列処理はどうでもいいの finite automatonはどうかという書き出しだが
383 :
レトリック君 :2008/10/25(土) 12:28:22 ID:l1Ioy72A
バカだな 俺はFAそのものを高速化できるなんて一言も言ってないぜ NFAの最大のネックはバックトラックだし。 FAを使わない方が絶対的に速いんだから、いかに問題を切り出すかが課題。 モダンな正規表現エンジン高速化のテーマなの。 固定文字列なりtrieなりシンプルなパターンに落としこみ、JITで命令を使ったシーケンスに変換すればいい。 あ、おまえはSSE*はSIMDだと認めてないんだったかなw もちろん梟本は持ってるよ俺は おまいは持ってすらなさそうだが
385 :
レトリック君 :2008/10/25(土) 13:11:01 ID:aymmFkOp
>>384 > あ、おまえはSSE*はSIMDだと認めてないんだったかなw
誰と勘違いしてんだ
386 :
レトリック君 :2008/10/25(土) 13:17:04 ID:aymmFkOp
NFAの話に対し、NFAに頼らずにすむ高速化しやすい問題を扱えばいいと…
あ、 ベクトル演算=ベクトルマシン だったかな 固定文字列部分が4文字以上あるならmpsadbw+pminposuwを使う方法もある。 実際BMより速い。 ていうかレトロ君の脳内の正規表現パーザは後方参照(\1-\9)通りますか?
>>362 月アスのインタビュー等でDitzelが「やってる」って答えてたよ
後藤さんの海外ニュースにも掲載されてる
http://pc.watch.impress.co.jp/docs/article/20010619/kaigai02.htm > Crusoeは、命令セットをハードウェアではなくソフトウェアでインプリメントしている。
> (中略) そのため、x86ではなく、異なる命令セットをインプリメントしたCMSを作ることもできる。
> 実際にTransmetaはJavaでそうした実験をやっている。昨年9月にディツェル氏は「CMSにJavaを
> インプリメントして、直接Javaのバイトコードを扱えるようにする実験はやった。Crusoeは、
> 世界最速のJavaプロセッサになりうる。しかし、Javaプロセッサの市場は大きくないので、
> 現在は提供していない」と語っている。
まぁ、「実験してる」発言であってデモしたわけじゃないので、性能は「?」だけど
いったい誰がNFAを高速化するなんて言ったんだ 思考回路が短絡してるな
390 :
レトリック君 :2008/10/25(土) 13:35:56 ID:gt5hlvzQ
文字列処理の話を勝手に始めたのは誰?
391 :
レトリック君 :2008/10/25(土) 13:38:18 ID:gt5hlvzQ
>>389 だったら最初から黙っていればいいのに…
正規表現は必ずFAで処理するものだと思いこんでるのはお前だけだよ
393 :
レトリック君 :2008/10/25(土) 13:46:44 ID:gt5hlvzQ
だから高速化しやすいケースの話ではなくFAの話だと 文字列はどうでもいいと。何度も書かせるな。
>>391 自己分析としてならその発言は正しいな
無知の君は最初からは黙ってれば良かったんだ
395 :
レトリック君 :2008/10/25(土) 13:48:54 ID:gt5hlvzQ
だめだコリャ…
俺はFAの高速化の話題なんて振ってないし 一人相撲はいい加減にしないと
397 :
レトリック君 :2008/10/25(土) 13:52:44 ID:gt5hlvzQ
オレはFAの話しをしてたんだよ。 それを聞きたくもないのに文字列処理の話しに勝手にそらしてレスつけたのはお前だぜ。 訳わかんねぇぞ
まさかレトロ王国(国民1名)には 正規表現によるマッチングにFAを使わないといけないなんて法律でもあるのか?
399 :
レトリック君 :2008/10/25(土) 13:55:45 ID:gt5hlvzQ
じゃFAなしで頑張ればいい。どうぞご自由に。
FAを処理なんて誰が言い出したんだ? 正規表現による文字列検索にはSSE4が応用できるとは言ったが。 正規表現をまずFAに展開するなんて誰も言ってない。
401 :
レトリック君 :2008/10/25(土) 13:58:45 ID:gt5hlvzQ
だからお前に聞いていないと
402 :
レトリック君 :2008/10/25(土) 13:59:46 ID:gt5hlvzQ
オレも言っていないがそれが何か…
純粋にFAだけで処理する実装の方が珍しい
団子はなんで誰に対しても攻撃的なんだろうな
405 :
レトリック君 :2008/10/25(土) 14:02:06 ID:gt5hlvzQ
それこそ誰が言ったのかと… まいいや、時間の無駄だった
>>373 のレスは誰に向けてなのかな?
独り言なら失礼した。
LLでよくある正規表現による文字列検索のことは言ってなかったんだな
408 :
レトリック君 :2008/10/25(土) 14:18:23 ID:iSfdTgiD
あのな、忙しいんでほどほどにしたいんだけれども 正規表現をによるパターンマッチングの内、文字列処理もある。 文字列処理にのみ着目すると色々高速化の方法がある。 方法があるとわかっている問題は解けているも同然だから 研究課題としてどうでもいいの。 状態の更新の様な依存がある問題をどう並列化するかのモデルとして ややこしいパイプライン化等が有効かとか、まぁ場合によるので一概に言えないが、 SIMDに関しては一括処理する単位が小さいので、 まぁいくらなんでも無理ジャマイカと、休日部屋掃除をしながら つらつらと考えていた訳よ。 あばよ、勉強にならなかったぜよノシ
お帰り俺
で、
>>374 は結局何を検索しようとしてたの?
finite automaton regular expression SIMD
こんなん見つかるわけ無いよ
っていうか
英語表記は Finite Automata だし
~~
日本語だけじゃなくて英語もだめなんだね。
根本的に全てFAに変換する必要自体ない。
後方参照をサポートするとすでにFAとは呼べなくなるし。
410 :
レトリック君 :2008/10/25(土) 14:26:25 ID:4A5jsRDR
それ複数形だが… だからもういいって。
>>410 団子は抽象的なものの考え方ができないし、
自分の知識にないものは世の中に存在しないのと同じなんだよ
正規表現=FAで処理するものだなんて考えてるレトロ君ほど 凝り固まった考え方の人間もいないけどな
そうそう、団子は論理もおかしいんだった
>>408 リストベクトルを使って幅優先探索することくらいじゃまいか
リストベクトルって固定観念の象徴たるフェンス君が好きな用語だな
DFA JIT
ちょっと誤爆した SIMDはともかくとして DFAをJITでネイティブコード化するのは悪くないアプローチだよ 正規表現エンジンでDFAを使った実装が不人気なのは、後方参照とかのサポートの問題 だけじゃなくて、特にUNICODEだと遷移テーブルが膨大になってかえってキャッシュミスでおそくなる ケースが多いから。 JITだとテーブルを使わなくていい部分は使わない、使っても小さくてすむ場合は小さくする っていう最適化ができるからその点の弱点は克服できる。 もちろん後方参照はDFAでは表現不可能なので(というかNFAですらない) 別の方法を考える必要があるけどね
>>360 団子ちゃんがへるみたんからソッポ向かれるのはいいけど
Xbyakに俺ライセンス的なものを主張しはじめないかとか
すごくしんぱい
今までの言動、行動を見てるとねー
http://www.dodgson.org/omo/t/?date=20071215 ま、この辺でも読んでみてくれ
まあ確かに状態遷移にSIMDは不向きだと思うよ。
ただ、テーブル参照を高速化するアプローチには部分的には使える。
コード読んでもらえばわかるんだが鬼車やPCREの「VM」ってのも所詮はインタプリタなので
ネイティブコード化して高速化する余地はいくらでもある。
で、○成氏はどうもつまらんところで苦戦してたらしーが
NFAすら使わない方法のほうがうまくいったらしい
> それに加えて,1TBの共有メモリを有する32CPUのスカラSMPのAシステムと, > 3ノード96CPUのベクトルコンピュータのVシステムが付いています。 稲垣足穂かよw
>>417 ほんとの所
2.06にコミット依頼したとき部分的に提案突き返されたので
ああ、この人はこういう人なんだなと思いました。
コンパイル時引数チェックが甘いのと32ビットと64ビットをマクロで切り替えてるのが
不満だから、テンプレートベースで基本クラスを再設計してコーディングインターフェイス
互換なやつを作ってるのが本音。
というかSourceForgeに修正BSDライセンスで利用登録しちゃってるわけだが。
コードまだ1行もあげてないけどね。
>>419 っていうかレトロはエンタープライズ級のハードで解決しようって考え方がジジくさいなぁ
そこまでの問題でもないのに
ひげぽんスレでもxbyakの話題出てたけどへるみ氏はおもっきし過去の人扱いされてた。 まあ、俺も午後時代で終わった人と思ってるが
xbyakつくれてる時点でひげぽんより圧倒的に上だろ。 OSなんて多少の知識があれば体力勝負。
詳しそうな人が多いのでここで聞いてみる プロセッサのメモリ関連でCRFって何?
425 :
レトリック君 :2008/10/25(土) 21:45:24 ID:xE6DXe+8
>>418 >
http://www.dodgson.org/omo/t/?date=20071215 このblogはそこそこ面白ぇな、特にgrepが圧倒的に早くて愕然とする下り。
grepが早いのは前から有名で昔から雑誌の雑文やネットに書かれたし、
perlもpythonもreは実行時にcompileしている。
オレはそのreを高速化するつもりなど毛頭ないし、そんなテーマで飯は食えない。
ましてやエンタープライズ級のハード、って何だかわからんがw持ち出す気などさらさら無い。
なんでそう妄想で話をスリップさせて因縁つけてバトルしたがるかね。
状態遷移問題の並列性について考えていた際、
FAに関しては並列化はともかくとして、SIMDは性能向上に貢献ないだろという話だったのにさ。
>>423 Xbyakの何が凄いんだ?
デザインが簡潔
それだけじゃね?
>>425 ABC(DEF|GHIJ)
こういうパターンならABCDEFとABCGHIまでは同時に探索できるよな?SIMDで。
バックトラック回数の削減にもなるぞ。
状態マシンの概念破壊してるじゃんって言われたらそれまでだけどさ
あー、SSE4.2のマニュアル読んでみるといいよ。
Intelが言うにはアレはXMLパーザを組む為に作ったそうだが
XMLに限らずいろんな字句解析に使えるよ。
429 :
レトリック君 :2008/10/25(土) 22:36:49 ID:FO7gKhrT
>>428 parse関連でserialの性能にコマったら4.2はいずれ読んでみるよ。dクスコ
ARM Forum 2008レポート【マイコン編】
16bit/8bitマイコンの置き換えを狙うCortex-M3マイコン
http://pc.watch.impress.co.jp/docs/2008/1029/arm02.htm 講演では低コスト化の手法を、主に以下の4種類に分類した。
1)半導体の製造コストを下げる(回路面積を小さく抑える)、
2)メモリ・コストを下げる(必要なメモリ容量を少なくする)、
3)電力コストを下げる(消費電力を低く抑える)、
4)開発コストを下げる(安価なツールで短期間にプログラミングできる)、
である。
1)の「半導体の製造コストを下げる(回路面積を小さく抑える)」では、
組み込みマイコンに特化したアーキテクチャ「Cortex-M3」を開発する
とともに、ARMの特徴だった豊富なバンク・レジスタを大幅に削減して
回路面積を縮小した。
2)の「メモリ・コストを下げる(必要なメモリ容量を少なくする)」では、
命令セット・アーキテクチャを16bit/32bit混在の命令セット「Thumb-2」
だけにしてプログラムの容量を抑えるとともに、アンアラインド・データ
・アクセスとビット操作機能を導入してデータを効率的にメモリに収納
できるようにした。
3)の「電力コストを下げる(消費電力を低く抑える)」では、演算効率を
高めて処理に必要なクロック数を少なくするとともに、省電力モードを
設けた。演算効率の向上では、命令バスとデータ・バスを独立に装備
するハーバード・アーキテクチャを採用するとともに、1クロック・サイ
クルの乗算命令を装備し、ベクトル割り込みに対応した。省電力モード
では、スリープ・モードとディープスリープ・モードの2種類のモードを
設けた。
4)の開発コストを下げる(安価なツールで短期間にプログラミングできる)
では、32bitアドレスによる4GBの広大なメモリ空間、命令セットの一本化
によるプログラミングの簡素化、C言語での割り込み記述、デバッグ機能の
拡充などを紹介していた。32bitアドレスとは既存の16bitマイコンによる
アドレス空間の制約を意識したもの。命令セットの一本化とは既存のARM
コア(Thumb命令セットとARM命令セットの両方を装備)との違いを説明した
ものである。
団子のメッキがボロボロ剥げてるな
メッキwwww NVIDIAの平柳って人知ってる? 先日メールでいろいろ話があってだね。 でね、俺も賺さずいろいろ情報聞いちゃったわけよ。 メディアに未公開の情報も掴んじゃってます。 とりあえずLarrabee出るまではCUDA厨やらせていただこうかなと。
俺のあっちのサイトでの活動を評価してくださったのよ。ぶっちゃけ。 おまいらときたら、机上の空論を並べるばかり。 天と地の差とはこのことだよ。
GTX2xx無償提供してくれるってさ
はいはい、すごいでちゅねー
馬鹿だなぁS3しかないだろGPGPUは
682 :Socket774 [↓] :2008/10/31(金) 00:16:25 ID:YC2/oQgy
ttp://xs432.xs.to/xs432/08444/shadrtest971.jpg 例のAMD製Shaderの命令発行数を測るプログラムで
9800GTX+,4870,4670,2600Pro,440GTXを比較
VSで2600が4670を上回るのが面白い
現在のATIのドライバーではVSは1アレイに制限されているので
共に8 shaderとなる2600,4670では似かよった結果になるのだが
クロック差を考慮すると、shaderあたりの命令発行は
2600の方が効率がよいということになるな
9800と440が似た傾向にあるのはshaderが同じくスカラであるためだろう
こうした差をものともせず、例の動画のような
(4670に迫る)shaderパフォーマンスを発揮する440は異常といえるだろう
683 :Socket774 [↓] :2008/10/31(金) 00:31:10 ID:pSuOrXQl
>>682 ものすごい低性能ってグラフにしか見えないんだが、俺ってグラフの見方分ってないのかな・・・
684 :Socket774 [↓] :2008/10/31(金) 00:37:32 ID:YC2/oQgy
上のはあくまで命令を発行できる数の比較でしかない
実際のshaderを走らせた場合はこのようになる
S3 Chrome 440 GTX VS ATI Radeon HD 4670 Shader Performance
http://jp.youtube.com/watch?v=y4eAODlnyxU&fmt=18
CUDAらねー
固定機能で手抜きってなんらともかく shaderでそんな事が出来るのかよ ドライバーのdownloadサイズ12MBそこそこので 100MB近いnvの方が余程あやしいわい S3はExponential関連のライセンスもってたなそういや
CUDAランタイムとかも入ってるんじゃなかったっけ
CUDAあわせてもそんなに大きくなるかね? ATIが全部込みで役40MB程度ですし
中身見たらPhysXで50MB近く使ってるわ
VS2008でCUDAが使えるようになるらしい?
それ機密情報なのに何で知ってんだよ 俺はリリース時期まで聞いた
だからあのスレに団子が来たのか・・・。
2008サポートは2.0Beta出した頃から言ってたじゃん いつになるかを明言してなかっただけ
いつになるか聞いちゃいました 俺が持ち上げたしたってことは、まあつまりそういうことなんで そこは察してね
年末 クリスマスあたりですかね
フロントエンドにVSが使えてもどうってことないんだが・・ CUDA以外でもそういうのは他にもいろいろあるし 問題はデバッガとプロファイラだな
なんか団子が暴れてNVIDIAのイメージ悪くなりそうだなw
CUDA2.1知ってるよね?ていうか公開情報だよね。 まぁおもしろい機能いろいろだね。 ま、おまいらが関心があるとしてそのVS2008をサポートするバージョンが 2.1になるか2.0のマイナーアップデートになるかってことだけど まぁ楽しみにしててくれ。 とりあえず俺的にはOffice2007 Ribbonスタイル(=Win7標準スタイル)のUIを持つ CUDAアプリケーションが簡単に作れるのはそれなりに意味はあるかなと思ってるが
ある小学生の身内にゲーム作ってる奴がいるような、そんな錯覚。
商用アプリについてもAMDのGPGPU戦略がわからない。 TMPGEncやアドビには働きかけてるんだろうか。
うまい喩えだな ただ別に身内でもないし敢えて言うなら実力でコネを作ったっていうか。 その小学生がたとえばロックマンの新作の敵キャラ募集で当選したと仮定してみなよ
私は素直に期待してるよ アプリが増えるのはGPGPUの底上げにもなるし 是非にがんばって欲しい まぁ、無理をしない程度に
ブロンズメッキが剥がれた下からは何が見えた?
ま、俺に絡んじゃったのが最大の死亡フラグだな CUDAやるのもIntelの中の人に開発ツール提供してもらうための踏み台にはなるかもな。
461 :
レトリック君 :2008/11/01(土) 00:36:29 ID:U3KlK9XI
Streaming言語の方言wによる囲い込み大作戦でどのベンダーも必死乙状態だが 無料で使えるくらいにしないと普及しないってば… 特にCt。 いや、GCC4.3,4.4にLarabeeのOpenMP対応 .mdをcontrinしてLinuxや(BSDでも←個人的嗜好) Larabeeを活用できるようにするくらいの懐の深さがあればもはや最強、 もう君臨状態だろうな…
ないある larrabeeもDX11まかせ
Native C/C++/Asm任せに決まってるだろ
465 :
Socket774 :2008/11/06(木) 18:54:48 ID:Lf5PDE2z
GPUアーキテクチャについて語るスレは無いのか…
厨vsスレがあるだろ
467 :
MACオタ :2008/11/10(月) 23:18:10 ID:tiJfK2Pl
これってMicrosoftのDirectXよりも使い易いっぽいかなって言いながらPreyを紹介するようなもんだが
普通にCで書いたコードを最適化してくれればそれで良いんだけどな
>>470 Cyberlinkは今年の夏の終わりくらいに何か出すって言ってたよね
さて、Larrabee持ち上げるか 俺飽きるの早かったCUDA
nVidiaの話はどうなったんだよ
あーだめ Intelなら各命令のレイテンシ−スループットとか事細かに公開するじゃん。 企業秘密のため答えられませんとかどんだけ。 まあ大体傾向調べて判っちゃったけどね。 Larrabeeのほうがまだ高性能。の可能性高い。
477 :
MACオタ :2008/11/15(土) 14:27:16 ID:5OpFeaxx
今週わSOIプロセスにからむ重要な報道が多かったので、まとめておくす。
まず、IBM一党の45-nm SOIプロセス受注開始の報道。
http://www.eetimes.com/news/semi/showArticle.jhtml?articleID=212001346 ---------------------
IBM claims 45-nm SOI can offer up to a 30 percent performance improvement or 40 percent
power reduction, when compared to bulk silicon.
---------------------
バルクとの比較と言っても、Intelの最先端HKMGプロセスと比較している訳じゃ無いというのわ、注意
すべきす。IBMとシンガポールのCharteredで、このサービスを提供するし、AMDの"The Foundary
Company"も、セカンドソースとして加わることになる筈す。
記事の方わ、この発表と合わせてSOIプロセスがニッチに留まっている現状について次のように述べて
いるす。
- コストが相変わらず高い
- SOIに対応したIPライブラリが少なすぎる
- 過去にIBM自体がASIC製品での提供を重視していた
- しかしNvidiaがSOIコンソシアムに加入するなど、性能目当ての顧客の参入も出てきた模様
SOIがニッチに留まっている現状を反映して、SOIウェハの製造企業の経営も苦しくなっているとのことす。
- Ibisわ経営危機で見売り先を探している状態
- Soitecの今年第3四半期の売上わ、前年より28.1%低下。世界経済の下降により今後の見通し
も苦しい。
480 :
MACオタ :2008/11/15(土) 15:09:30 ID:5OpFeaxx
ARMベースのノートPCをubuntuでサポートするというニュースす。
http://news.zdnet.com/2424-9595_22-249202.html ----------------
ARM-based processors have traditionally been used in small devices such as mobile
phones, but it emerged in October that ARM's technology would soon be used in netbooks,
the new breed of small, low-cost notebook PCs.
----------------
MS vs Linuxとか、Intel Atom vs ARMとか色々な視点で興味深いニュースすけど、上で書いた
IBMのSOIプロセス連合の報道とある意味でリンクしていると言えるす。
481 :
MACオタ :2008/11/16(日) 18:07:49 ID:pou63Jfp
482 :
MACオタ :2008/11/17(月) 21:22:14 ID:1jCx7QC9
Top500の結果す。
http://www.top500.org/list/2008/11/100 1. LANL Roadrunner (PowerXCell 8i/3.2GHz) 1,105 TFlops (ピーク比 75.9%), 2,483 kW
2. ORNL Jaguar (QC Opteron/2.3GHz) 1,059 TFlops (ピーク比 76.7%), 6,951 kW
3. NASA Pleiades (QC Xeon/3.0GHz & 2.66GHz) 487 TFlops (ピーク比 80.0%) 2,090 kW
4. LLNL Blue Gene/L (PPC440/700MHz) 478 TFlops (ピーク比 80.2%) 2,330 kW
5. ANL Blue Gene/P (PPC450/850MHz) 450 TFLops (ピーク比 80.8%) 1,260 kW
483 :
MACオタ :2008/11/17(月) 23:13:22 ID:1jCx7QC9
TSMCが40-nmプロセスでの量産を開始するとのことす。
http://www.eetimes.com/news/semi/showArticle.jhtml?articleID=212100139 --------------------
At 40-nm, TSMC offers several derivatives, including general purpose (40G) and
low-power (40LP) versions.
The 40G process targets performance-driven applications, including processors, graphics
chips, networking devices, field programmable gate arrays (FPGA), storage ICs and others.
The 40LP process targets low-power applications, including cellular baseband, application
processors, portable consumer and wireless connectivity devices.
--------------------
SunもTSMCの40-nmを利用する予定なんて話も書いてあるすけど、経営危機のSunが果たして
SPARCの開発を継続できるかどうか。。。
484 :
MACオタ :2008/11/18(火) 17:09:27 ID:+48X3kSh
>>484-485 のシングルタスクのSPECint/SPECfpにshanghaiの登録が無いのわ残念
すけど、Nehalemのスゴさわ揺るがないす。
なお、int, fp共にrateの成績に関してわSMTをサポートしているプロセッサわ若干不利である
ことを割り引いて見て欲しいす。Nehalem, POWER6, POWER5+, SPARC64 VIIが該当するす。
489 :
レトリック君 :2008/11/18(火) 21:00:17 ID:gh72A97A
ふ〜ん。たかがベンチ、されどベンチ、なんだか時代の切り替わりを感じるな… こーれでcore当たりのLinpackも速かったら、top500はCPUの総数と網だけが勝負のでk(ry
>>489 -----------------
たかがベンチ、されどベンチ、
-----------------
『たかが』すか?一般にプロセッサアーキテクチャの研究でわ、典型的命令ミックスとして
SPEC CPUを使う筈すけど。。。
>>490 「たかが」のほうでは、
研究者はみんな「こんなのあてにならんよな」と思いながら、他に代わるものもないのでしぶしぶ使っている
>>492 ------------------
研究者はみんな「こんなのあてにならんよな」と思いながら、
------------------
早速、知ったかさんが現れた様す(笑)
http://www.spec.org/cpu2006/Docs/readme1st.html ==================
The benchmark programs are developed from actual end-user applications, as opposed to being
synthetic benchmarks.
==================
反面、CELL/B.E.やGPGPUのようなプログラミング手法そのものの変革が必要なシステムわ
テストできないということになるす。
>>493 はあ、それは理想ではあるけどな…
部外者は気楽なこって
495 :
レトリック君 :2008/11/19(水) 01:33:38 ID:YSszBjB7
変革だとさw CELL/B.E.やGPGPUでintのgccとか計ってみなってw 万が一うごいたら…の話だが。
498 :
MACオタ :2008/11/19(水) 18:52:04 ID:5QkxaR/H
>>482 で紹介した今年下半期のTop500すけど、今回からシステムの消費電力も一部公表されて
いるす。そこで、アーキテクチャごとの電力効率をまとめてみたす。
なお、クラスタシステムわインタコネクトの違いで電力効率が大きく変わるので、ケチってギガイ
ーサを使っているシステムわ除いたす。明らかにおかしいと思われるデータも除いたす。
■スーパーコンピュータの電力効率
プロセッサ / 電力効率 [MFlops/W]
IBM PowerXCell 8i / 498.4 (最高536.2, 最低444.9)
IBM Blue Gene/P (PPC450) / 367.8 (最高371.7, 最低357.1)
IBM Blue Gene/L (PPC440) / 206.6 (最高208.3, 最低203.8)
Intel QC Harpertown / 203.5 (最高265.8, 最低 124.9)
Intel QC Clovertown / 170.8 (最高207.0, 最低 130.5)
AMD QC K8L / 154.9 (最高 231.6, 最低 113.8)
IBM POWER6 / 87.4 (最高95.6, 最低 69.9)
Intel DC Woodcrest / 84.5 (最高 102.9, 最低 57.4)
AMD DC K8 / 43.9 (最高 81.5, 最低 27.1)
Intel DC Itanium2 / 57.1
IBM POWER5+ / 40.0
IBM POWER5 / 39.0
NEC 地球シミュレータ (SX-6) / 11.2
マルチコア化とプロセスの縮小が、電力効率向上の大きな要因になっていることが判るす。
Intelの45nmプロセス世代の汎用プロセッサがBlue Gene/L (130-nmプロセスのPPC440コア
SoC)に電力効率で追いついているのわ、たいしたモノだと思うす。
POWER6わ巨大コアのデュアルコアチップとしてわ意外に頑張っているのと、POWER5の電力
効率の悪さがちと目立つす。
499 :
MACオタ :2008/11/19(水) 20:07:20 ID:5QkxaR/H
>>484-487 のBloomfieldのSPEC CPU2006すけど、AcesHardware掲示板の投稿によると
シングルプロセスの結果も"rate"も両方ともにターボモードの恩恵を受けているとの話す。
http://aceshardware.freeforums.org/amd-shanghai-launch-t684-15.html#8697 --------------------------
The all architecture help on SPEC, it is not that simple to find a reason for the boost.
Memory help, The cores are improved. With regular cooling, in 99% of the case, turbo
will kick in, you rarely get to the max power ...
when you run spec , you ll get your 2 bin turbo boost, then you run SPEC_FP_RATE, you'll
get 1 bin turbo boost. I just checked with my Buddy Rahul, the Spec Gurus.
--------------------------
どこに行っても馬鹿にされてるんだね
501 :
MACオタ :2008/11/19(水) 21:37:29 ID:5QkxaR/H
普通の日本語書けばいいのに。
503 :
MACオタ :2008/11/19(水) 22:16:28 ID:5QkxaR/H
Top500ランキングに関してわ、JAXAのSPARC64 VIIシステムで222位にランクされた富士通が、
微妙なリリースを出しているす。
http://pr.fujitsu.com/jp/news/2008/11/19.html ------------------------
当社のハイエンドテクニカルコンピューティングサーバ「FX1」を中核としたこのシステムは、
世界トップレベルとなる89%以上の実行効率(注1)を実現し、このたびのTOP500リストに
掲載されている日本のシステムでは最も高い実行効率となります。
------------------------
理論ピーク性能とLinpackの結果の比である実行効率に関してわ、従来からItaniumベースのSGI
のシステムが優れており、今回のランキングでもJAXAのクラスタより大規模なシステムで90%以上
を達成しているモノもあるす。
44位
http://www.top500.org/system/performance/8385
ふーん
505 :
MACオタ :2008/11/19(水) 22:36:15 ID:5QkxaR/H
506 :
レトリック君 :2008/11/19(水) 22:41:47 ID:TFsmRcG1
top500等、だれもがアクセスできるところにある公知情報を延々コピペは控えめがよろしいかと
>>506 私の投稿で引用で囲った文章だけがコピペす。
どれをコピペと思い込んでるすかね(笑)
508 :
レトリック君 :2008/11/19(水) 22:54:05 ID:TFsmRcG1
言うと思ったw リンク張るにしても宣伝臭い情報などは見抜いてもう少し有用なネタか吟味して精選したら?
クスクスクス
コピペのみに徹していれば 馬鹿にされることも無いだろうに
反応してるやつはみんなオタの仲間
MACヲタに嫉妬するのはみっともないですよw 自分の無能さに気づきなさいw
はーい
515 :
MACオタ :2008/11/21(金) 23:07:37 ID:KjSGo7TB
SGIがx86版Blue Geneとも言うべき製品"Molecule machine"をSC08でデモしたらしいす。
http://www.theregister.co.uk/2008/11/20/sgi_molecule_concept/ - Dual-core Atom N330/1.6GHz
- プロセッサ、2GBメモリ(4 x 512KB DDR2 DIMM)、インタコネクトチップをボード上に配置
- "Kelvin"と呼ぶセラミックカートリッジに上記のボードを2枚収納
- Kelvinを電源、ネットワーク、冷却機構を内蔵したバックプレートに接続
- 90個のKelvinを3Uラックに収納。 2 x 2 x 90 = 360 cores in 3U-rack
こういう言い回しをしているところを見ると、ノード間ネットワークの設計わ、まだ固まっていない模様す。
----------------------
The important thing to realize, explained Brown, is that if the interconnect was architected
correctly, the entire memory inside the chassis could be searched in one second.
----------------------
上の話、写真つきの日本語の記事が出ていたす。
http://techon.nikkeibp.co.jp/article/NEWS/20081120/161565/?ST=lsi 写真を見ると、上でリンクしたThe Registerの記事わ若干誤解が含まれている様す。
-------------------
ブロックは,寸法が5cm角ほどの基板2枚を空冷用の孔をはさんで張り合わせ,樹脂で
固めたものから成る。各基板にはマイクロプロセサとデータの経路制御用LSI,および
メモリ用チップを基板の裏表で計8個搭載している。マイクロプロセサには,デュアルコア
のAtomを用いる。このAtom は,1.3GHz動作で「x86-64」の命令セットが動作する。メモリ
の容量は1基板で2Gバイトである。
-------------------
517 :
MACオタ :2008/11/21(金) 23:38:59 ID:KjSGo7TB
>>514 容量素子のサイズがでかくなってあまりメリットないような・・・
MIMならともかくMOSキャパなら大した事無いだろ
520 :
MACオタ :2008/11/22(土) 01:47:37 ID:TaEFwxau
Green500が発表されたので、
>>498 をアップデートす。
今回わ、Green500ルールで測定が行われているデータの上位3つの平均を求めてみたす。
なお、前回IBM p575 (POWER5+)のシステムで効率が異常に良いデータを除いたすけど、
Green500の審査に通っているので、今回は計算に入れたす。
■プロセッサごとのスーパーコンピュータの電力効率比較 [MFlops/W]
1. IBM PowerXCell 8i (65nm): 532.3
2. IBM Blue Gene/P, QC PPC450 (90nm): 371.7
3. Intel Harpertown, QC Core2 (45nm): 241.7
4. IBM Blue Gene/L, DC PPC440 (130nm): 208.3
5. Intel Clovertown, QC Core2 (65nm): 188.7
6. AMD Barcelona, QC K8L (65nm): 146.9
7. Intel Woodcrest, DC Core2 (65nm): 109.1
8. IBM DC POWER6 (65nm): 95.6
9. IBM DC PPC970MP (90nm): 91.7
10. IBM DC POWER5+ (90nm): 71.0
11. Intel DC Itanium2 (65nm): 69.3
12. AMD DC Opteron, DC K8 (90nm): 46.9
13. IBM DC POWER5 (130nm): 36.3
集計法が異なるので、若干
>>498 と順位も変動しているす。
521 :
MACオタ :2008/11/22(土) 02:43:57 ID:TaEFwxau
>>479 で書いたChartered Semi.の身売り話すけど、Digitimesより続報す。
台湾訪問中のChartered CEO, Song-Hwee Chiaわ、合併交渉を否定したとのことす。
http://www.digitimes.com/news/a20081121PD207.html -----------------------
In response to rumors about Chartered seeking mergers with Taiwan's foundries,
Chia said it is too "risky" to talk about such issues at present. He declined to make
further comments concerning possible mergers.
-----------------------
MACオタって何してる人? 相当知識はありそうなんだから別にこんなとこに居なくともよさそうだが。
見ての通りだろ
四六時中ネット徘徊してる人?
ちょっと煽るとすぐ火がつくMACオタ()笑
526 :
Socket774 :2008/11/23(日) 02:41:13 ID:meLltuXC
こんなとこ、に集まる人々
527 :
レトリック君 :2008/11/23(日) 03:17:16 ID:z0fjO5wh
i7は単体core当たりの対C2D比実効性能をなぜ上げられることができたんだろうか 例のMNIのコピヘネタを除くとw、C2Dはかなり完成度が高くて これ以上単体実効性能を上げるのは相当難しそうな気がしていたんだが あいつらすげえ執念だな。 あるいは、今後更に単体実効性能を上げる余地があるとすればそれはどのようにしてなのだろう。 もはや単体性能にこだわる時代でも無いのかもしれないし、 単純なベンチでの性能比較の無意味さは食傷ぎみだが。 こういう話の方がtop500よりも面白いと思うのは個人的な趣味なのかな
528 :
レトリック君 :2008/11/23(日) 03:21:14 ID:z0fjO5wh
つか、まぁGFLOPSだの性能云々そのものが指標として陳腐化してきて 世の中流や産業ともはや連動していないんだよな…orz
>>527 ------------------
i7は単体core当たりの対C2D比実効性能をなぜ上げられることができたんだろうか
------------------
これだけNahelemアーキテクチャ解説の情報が溢れているというのに。。。言うに事欠いてそれすか(笑)
top500なんて昔から、国の、プロセッサ屋の、システムベンダの、宣伝用だからね
>>527 基本的に「メモリ直結」と「キャッシュ増量」のお陰だろ。
あとは「HT」や「コア数ウプ」も有るが、いずれにしても大きな改良点に
珍しい手法は見当たらない。
>>531 あと「メモリチャネル数が3つ」になったのも大きい。
キャッシュの総容量は実は12MBから8MBに減ってるけどな Intelの技術者が言うにはL2を小容量低レイテンシにしたことが効いてるらしいけど 512KBだと性能が落ちたとか。
馬鹿来た
535 :
レトリック君 :2008/11/23(日) 16:15:15 ID:G1s1Uj4U
レイテンシ幾つから幾つに変わったの?教えて君モート、横着゙w 中身の変化は寄与無いの? で、そういった改良を総括するとあの実効性能の差は合理的に説明つくのだろうか、、、
> Intelの技術者が言うにはL2を小容量低レイテンシにしたことが効いてる intelって前からそれ好きだよな… AMDやCentaurがL1を128KBにする中で、レイテンシを優先してPentiumPro以来ずっと容量は32KB程度のままだったり あと、L2も、Pentium4とAthlonXPで同じ256KBだった時代でも幅が256bit対64bitだったり…
MACオタのアク禁まだ〜?
CoppermineのL2はレイテンシ0とか無茶な数字が書いてあった気がする
もともとFSB経由だったのが内部バス化されたからそういう意味でのレイテンシ0だろ L2そのもののレイテンシが無いわけではない
540 :
MACオタ :2008/11/24(月) 17:04:08 ID:Q1VJWnjX
ARMのSIMD拡張としては本家の64bit/128bit拡張よりメジャーな WirelessMMXを普及させた張本人じゃないかIntelは
そうだよ。黒字出してたのにAtomを普及させるためにわざと、ね。 ARMは各ベンダーのDSPコントローラのコントロールコアとしては広く普及したけど 独自のSIMD拡張命令を普及させることに関してはうまくいかなかった。 それこそDSPベンダーの思惑があって。 WirelessMMXがMSやGNUのコンパイラで本家のSIMD拡張であるNEONをさしおいて サポートされてる。これが現実。 で、WMMXをそこまで成功させたIntelが今度はx86命令セットそのものをサポートする モバイルチップを投入する。 各ベンダーはともかく、開発者は画一的なアーキテクチャを望むわけよ。 アクセラレータ部分の命令セットも共通化したいわけだ。 MSが自社ブランド携帯電話でARM採用したからってどうなるもんでもないよ。 どうせハード作るのは東芝かサムスンあたりだろ。 Intelは保険としてモバイル向けLinuxの開発やってるが あれこそMSとの交渉材料だと思ってるが。 大体に、Intelはもともと携帯電話そのものをいきなり狙う方針ではなかった。 ぶっちゃけシャープとWillcomのあれは先走りすぎた。 もともとAtomは現行世代で携帯電話で勝負する気はない。 消費電力がまだ大きすぎる。 x86コード資産を生かして製品は携帯電話とモバイルPCの中間のレンジから浸透を図る予定だったはず。 ARMに共通のソフト資産なんてあってないようなもんだからx86市場が脅かされることも無いわけだ。 (コントロールコア部分が共通化できるくらいでアクセラレータ向けのコードには互換性がない) >野望わ、展望が苦しくなってきたす。 こんな間抜けな個人見解は書かなきゃ良かったな。 君はコピペだけやってればいいよ 自分の頭で考えることだけはやめたほうがいい。
目糞と鼻糞の競演
>>543 火病っているところ申し訳無いすけど、MSがNvidiaと組むということわ、
-------------------
WirelessMMXがMSやGNUのコンパイラで本家のSIMD拡張であるNEONをさしおいて
サポートされて
-------------------
この部分にNvidiaのGPU/GPGPUを採用するということす。
「ARM」という部分だけに目が行って、本題を見過ごしているとわ思わないすか?
546 :
MACオタ :2008/11/24(月) 19:22:13 ID:Q1VJWnjX
>>545 無理だね。Tegraに採用されるコアはシェーダモデルとしては相当古い。
CUDAがサポートされてるプラットフォームくらい調べたほうがいいよ。
GeForce8からだ。それ以前は切り捨て。
もちろんTegraでもCUDAはサポートされない。アーキが別物だもの。
頭悪いんだから喋るな。わかったな?
>>547 -------------------
CUDAがサポートされてるプラットフォームくらい調べたほうがいいよ。
-------------------
携帯電話で科学技術計算でもすると思い込んでいるすか(笑)
携帯機器におけるマルチメディア命令の用途わ、過去のPCと同様にCPUがGPU役をやっている状況す。
専用GPUにオフロードするだけで御の字かと。
少なくとも"GP"GPUじゃァないなあ・・・それは。
画像処理にしたってOpenGL ESで実装するのは確実だしね。 NVIDIAのGPGPUを採用とは言えないわな。
>>550 --------------
少なくとも"GP"GPUじゃァないなあ・・・それは。
--------------
確かに
>>545 でGPGPUと書いたのわ、言い過ぎだったす。
DX11のCompute ShaderもOpenCLもSM4.0以降が前提になってます。 はっきり言ってTegraの優位性は怪しい。 仮想敵はIntelじゃなくてAMDだろうに。 ATiのほうが組み込み向けのGPUではノウハウあるからね NVIDIAも必死だからな。 日本法人の営業さんからして必死だもん。(あんまり言うと怒られるけど) Tegraのデモがアレだからな。Atomの"N"270+945GS搭載のネットブックと比較して こっちのほうが電力効率いいですよとか 組み込み向けに作ってるのはZシリーズのほうだっつーに。 あと、SoC製品は年が明けてからだしな。45nmプロセスで周辺モジュールを統合する という点で、ある意味NehalemのX58チップセット(65nm)より先進的なプラットフォームといえる。 #先進的なだけで絶対性能が高いわけではないというフォローもしておく。 iPhoneをパクってWindows MobileをOSとして載せてアプリケーションのプラットフォームとして 使おうって言うならやめといたほうがいいと思うよ。 1プロセス32MBの制限に家電屋は今日も泣かされるのであった(CE6ベースだと無いんだけど)
ARMは基本命令セットと基本マイクロアーキテクチャ部分はARM社に使用料を払うことで
各ベンダーで共有することができるが、拡張部分については各社の思惑で動いてて
統一の機運が見られない。
OSでいうならPOSIX以前のUNIX派生OS乱立見たいな感じだと思えばいい。
そんな中でXScaleがARMの中で優位を誇ってた時代もあったよ。
シャープのLinux Zaurusとか東芝あたりのPDAはみんなXScale使ってた。
あとはサムスン製のARM系CPUがちらほら。
ちなみにIntelはXScale製造権を手放したわけでもないしIntel謹製のネットワーク機器向けに
いまだに使われていたりもします。WMMXの商標権もいまだに保持してます。
当のNVIDIAはAtom用のIGPを作らせてくださいとか言ってる立場だったり。
http://www.digitimes.com/mobos/a20080708PD208.html ま、現状PowerVR使ってるくらいだし、ないこともないだろうな。
X58見る限りNVIDIAとの関係が悪いわけでもないようだし。
>>556 >>540 のTheINQの記事によるとMicrosoft Phoneわ来年2月に発表になるという話すから、
第一世代のチップが使用されていると思われるす。
-------------------
The phone is slated to be announced at 3GSM this coming February, so if you plan on
attending, please look surprised when MS unveils it.
-------------------
GAMA Mobile World Congress (旧名3GSM)わこちら。
http://www.mobileworldcongress.com/
>>556 それならAtomにAVXが載るのが先だと思うよ。
むしろ「LarrabeeはメインストリームCPUに統合される」って話を今するくらい無意味な話題。
どっちかというと動画再生を兼ねるプロセッサとしてはLarrabeeをカットダウンしたほうが良さそうなんだが。
どうせGeForce8400GSくらい相当のコアがMIDのTDPに収まるくらいに微細化が進んだ頃の話だろ。
Compute Capability 1.0以下を設ける気はなさそうだし。8000/900/200シリーズとそれ以前じゃ全然別物。
馬鹿満載
妄想はもう食傷気味 >< ソース付きのネタを持ってきてよ
N社の日本法人の某氏をして 「(ローエンド製品でのCUDAの意義は)そんなに速くならなくともCPUに処理時間の余裕ができるだけは意味があるんじゃないでしょうか」 とか自信なさげにいう代物だぜ。 ソースは俺。間違いない。 事実として8-32SP程度のローエンドGPUでCUDAやっても速くもなんともない。 処理によってはフル稼働してもCPUより遅かったりする そんなもんをカットダウンしてモバイル向けに落とし込んでも脅威じゃねーよ。 それなら現時点であのTDPにして128bit-SSE命令を最大2つ同時実行可能(同クロックのPentiumMやK8を凌ぐ)なAtomのほうがまだ現実的で芽はあるよ。 GPGPUなんてのは本当は使いづらいけど性能がでるならということで仕方なく使うもんであって 誰も「GPUでコンピューティングしたい」訳じゃないんだぜ。変態研究者を除いて。 まぁMACオタあたりの御花畑な思考では理想のアーキテクチャに見えるかもしれないが。 本質的にはCellよりメモリの制限がきつく、用途を選ぶ。 罰ゲームでなくて何だよ。 すくなくともそのままではモバイル・組み込みには不向きだな。 SPを減らすのもありだろうけどますますマンチキンの願望とかけ離れた代物になるわな。
使える用途で使えばいいんだよ 何にでも使おうって方が間違い
お願いですからハイエンドCPUローエンドGPUの素エンコ勝負だけにしてください(心の叫び)
モバイル機器でマルチコアは流行らん。歴史が証明してる。 今までどれだけの組み込み向けプロセッサのマルチコア版がペーパーリリースで終わったよ MACヲタは組み込みの連中の素性を知らんのだろうが 「現場の長年のノウハウ」とか言ってC++によるOoOプログラミングすら嫌ってる奴も多くない。 いまだにサブ関数を順番に呼んでいくタスクシステムの延長でプログラム書いてる。 そんな連中がマルチコアなんてまともに使いこなせるわけが無い。 CUDA?なにそれおいしいの? 最先端プロセスにものを言わせた高クロックのシングルコアのほうが圧倒的に扱いやすいだろ。
専用機能特化機構を積んだ方がよいのでは? 用途も特定しやすいだろうし
うん。 だから組み込みではASIC・システムLSIが使われてきたし、これからも使われ続ける。 それなりの汎用処理性能が求められる携帯電話向けでは、アプリケーションプロセッサが使われる。
最近名前よく聞くフィックスターズとかサイボウズラボみたいな 灯台鏡台博士を大量に雇ってる企業だけじゃないんだよソフト屋は。 日本のソフト業界を支えてるのは三流私立・高専・専門学校卒だったりする。 (従業員の平均年齢30歳未満の世界・・・あなおそろしや)
馬鹿はそれにも引っかからないから可哀想だな
>>571 そう自身を哀れむなYO
ただ、大学卒業できただけで神の子だっていう人もいるし
レベル低いよなこのスレ
ここ直しとく ×「現場の長年のノウハウ」とか言ってC++によるOoOプログラミングすら嫌ってる奴も多くない。 ○「現場の長年のノウハウ」とか言ってC++によるOoOプログラミングすら嫌ってる奴も【少なく】ない。
Object-OrientedだからOoOじゃなくてOOか しまったwwww
いつのながら団子さんの独壇場 おみごとです
576 :
レトリック君 :2008/11/25(火) 23:33:31 ID:aZntt5H1
現実は…時にフィクションよりも奇なり とだけ書いておくか…
一口に組み込み向けと言ってもPCと変わらん物から8bitマイコン・4bitマイコンまであるわけで、 上位の方にはマルチコアが使われているでしょ。
車業界のMISRA-Cとか超保守的 ポインタの演算不可だってよ まあコスト的にもシビアだからx86もありえないけど
まあ大量に数出るものについてはAtomの単価はネックになるわな。 大体にオーバースペックだろ。 Atomが狙うのは携帯電話なんかよりももっと性能が必要なレンジ。 ARMでも1GHz超えるようなものは1000円超える。 このレンジでようやく、Atomのx86資産を生かした開発効率と天秤にかけることができるわけだ。 Atomがインターネットデバイスの需要はPCから携帯機器に置き換わるって言われてる。 Intelは別に組込業界を支配しようってんじゃなくて、PCの需要がMIDシフトしていくので 飯食っていくために必然的にやらざるを得ないって話。 携帯電話などを通じて下のほうからリッチな機能を持つ支援ハードを搭載して インターネットデバイスとしての機能強化を狙っていくのがARMやSHなどの ハイエンド組込CPUだとすれば、インターネットデバイスとしての機能を満たすには ほぼ十分な性能を持ったPCをベースに上のほうからコンパクト化・省電力化を 狙っていくのがローエンドx86であるAtomその他諸々。 WindowsやLinuxが動くPCをそのままコンパクトにしていく。 今年爆発的に売れたネットブックの需要も通過点。 で、いまiPhoneなんかがやろうとしてるけど、「アプリケーションの動くプラットフォーム」として 成功するには、フリーソフトも含めたソフトの充実は絶対条件だ。 そのことを踏まえ、AppleはiPodやiPhone向けのSDKを、Leopardユーザーなら無料で使えるようにした。 しかしこれもMac買わないといけないので敷居が低いとは言えない。 Atom+Windowsベースだと、いざとなれば今使ってるPCと同じソフトがそのまま動かせるかもしれない。 これは個人を含めた開発者にもユーザーにもメリットがある。 Win32-x86向け開発ならVCはタダでも使えるし。 MSはWinCE向け開発可能なIDEをVS2008からはPro以上に引き上げちゃった。 しかもMSはCEは廃止にしてNTベースに置き換える計画打ち出してる。
>>577 いま需要が伸びてるデジタルフォトフレームなんかだと
ハイエンドクラスに使われてる石はデュアルコアARMとかもあるよ。
たいがい片方をDSPの制御に使ってたりするんだが。
あと日立の携帯はSHの2コアとか使ってるね。
しかし4コア以上はたいがいペーパーリリースで終わってる。
ん? マルチコアから4コア以上に摩り替わってる気がするぞ?
ん?デュアルコアも「マルチ」コアに含めちゃって良いのか? ちなみに2コアのうちDSP制御専用に使われて ARMとしてプログラム触るのが1コアだけ、 ってパターンでもマルチコアって言っちゃって良い? 1コアがI/O周り専用でもう1コアがメイン処理用みたいなのもあるね。 DSがこのパターン。ARM7+ARM9で。 CPU+コプロセッサっていうありがちな構成の延長として2コアまではいけるんだけど それ以上はなかなか普及が進まないんだが。 メイン処理の分割はいろいろめんどうなのよ。
少なくともルネサスとQNXは2コアでもマルチコアに含んでいる、
正直Atomは今の位置がベストだと思うけど MooresTown出る前にSkyFireリリースされて終了じゃん?
587 :
レトリック君 :2008/11/26(水) 20:50:08 ID:CJ6baMfg
つ AMP
はぁー Skyfireってさ、 サーバサイドで前処理して携帯の画面表示用に表示データを落とし込むソフト連携型の「Webサービス」だよ。 Atomを蹴散らせせるほどの顧客を抱え込むことが出来るサービスとはとても思えない。 たとえばだけど、HTMLはテキストの解析からやらないといけないけど、DOMの構造をサーバ側で解析して 構造化されたバイナリデータにして送ればクライアント側のCPU負荷はそんなに少ないわけだ。 で、これが月額いくらとかだろこれ。 この手のよくある 株式会社<商標名>の新興企業の作るものって掲げるものは立派なんだけど いざ実物が出てみるとメッキが剥がれて終了か、いつの間にか会社がなくなってたり するパターンが多いんだけどあてになるの? MSもコレと似たDeepfishなるWebブラウザ開発してるけど、MSのWebサービス部門は数年連続赤字だ。
まあモバイル機器はブラウザさえまともに動けば問題ないもんなー JavascriptのJITの最適化がし易いアーキが勝利じゃね?
>>567-590 えっとモノ知らずのヒトに釣られているみたいすけど、基本的に機械制御等の多くの組込
分野わ『ホンモノ』の並列プロセスの世界す。
単一のプロセッサをOSがあたかも複数のプロセッサがあるように見せかけているPCと
異なって、本当に沢山のコントローラが並列動作しているすけど。。。
ヴァカだねぇそれ言ったらPCのほうがより多くのプロセッサが走ってるよ
だから汎用プロセッサのコア数について話してんだって
594 :
MACオタ :2008/11/26(水) 22:19:37 ID:Ix4vgDrA
UMCが45nm HKMGプロセスの検証を終了したとのことす。
http://www.eetimes.com/news/semi/showArticle.jhtml?articleID=212200407 -----------------
United Microelectronics Corp. has validated its high-k metal gate process with a test
SRAM design run at the 45nm node. The move is a step toward the company's goal of
offering a high-k process at the 32nm node in 2010.
-----------------
量産わ32nm世代からとのことす。
一口に組み込みといっても、クルマのように百単位のものからリモコンのような1個のみまであってだな・・・
複数の専用プロセッサを使うことになると言ってもモジュール毎に開発グループが違うからな。 汎用コア複数だと1グループで複数のCPUをどう使うか考えないといけない。
>>596 > 複数の専用プロセッサを使うことになると言ってもモジュール毎に開発グループが違うからな。
> 汎用コア複数だと1グループで複数のCPUをどう使うか考えないといけない。
(μITRONでいう)タスク分割は組み込みの基本ですがな。
スケジューラも一般に単純だからタイムスライスでラウンドロビンなPCより
注意深く設計しないといけないよ。
>>599 10TFも実効性能上がらなかったんだな。実効効率50%切っている。
4種類のプロセッサを協調させるのは容易ではないんだな。
京速計算機はスカラベクトル混合になるらしいけど大丈夫なんだろうか?
Linpackでも効率出にくいのに実際のアプリケーションで連携させるとなると
更に難しい気がしてしまう。
>>601 非同期型というのは珍しいと思う
forthチップは昔から根強い人気
ゼロサイクル通信萌え
>>600 京速のベクトル部は飾りです
偉い人にはそれがわからんのです
605 :
MACオタ :2008/11/29(土) 21:07:08 ID:/fC9cO28
ベクトルと言えば、牧野教授がSX9について語っているす。
http://www.artcompsci.org/~makino/articles/future_sc/note067.html#rdocsect72 ------------------
これを x86 PC と比べると、例えば Opteron で DDR2-800 2チャネルだと理論値は1ソケット
12.8GB/s ですが実力はまあ 7GB/s くらい、これが Core 2 になると同じ理論値で実力は
5GB/s 程度まで低下します。
これは面白い状況で、 x86 並列機をソケット 100万で買うとメモリバンド幅 1GB/s 当りのコスト
は 14-20万円ですが、 SX9 が1ノード2億円だとすると (地球シミュレータセンターの買い値は
もうちょっと安いです)1GB/s 当りの価格は7万円となって、大きな差があるわけです。
------------------
安易にベクトル機を叩くヒトもモノ知らずに過ぎないらしい。。。ということで。
その他面白いコメントわ、こんな感じす。
-------------------
1年前の議論で若干問題だったのは、 x86 のメモリバンド幅を理論ピーク値で評価している
ことです。Opteron (少なくとも 1ソケットや2ソケットなら)はまあ実力がピーク 6-7割がでるの
でそれほど大きな乖離はないのですが、 Core 2 は4割くらいしかでないので結 2.5倍の差に
なり、2倍程度の差を議論している時には結論が変わってきます。
これは、HPC でベクタ向けに書かれたアプリケーションだと、Opteron のほうが Core 2 より
も速いこともある、ということでもあります。
-------------------
同時期に設計されたプロセッサにわ、優劣わ無く向き不向きがあるだけという普通の話かと。
MACヲタタタタタタアアアァァァァ...
>>607 そこにNehalemも載せると楽しいだろうな
>>608 リンク先読めばわかるが、
もちろん、来月になって Nehalem がでてくるとメモリバンド幅の実力が Core 2 に比べて
3倍程度になるようなので、SX9 と同等になり、メモリバンド幅当りのコストとしては地球
シミュレータ当時と同様に x86 ベースの高い計算機とベクトル機で同等、 x86 で安く上げる
ことができれば1桁良い、ということになります。
とも言ってるぞ。
>>608 -----------------
そこにNehalemも載せると楽しいだろうな
-----------------
Intelによる準公式の数値わ、下記の通りす。
http://journal.mycom.co.jp/articles/2008/09/02/hotchips4/index.html ==================
Stream Benchmarkで測定したメモリバンド幅は、現状のCore 2プロセサであるHarpertown
では、クロック3.0GHz、FSB 1600MHzのチップに800MHzのDDR2メモリをつけた場合は
約9.8GB/sであるが、2.66GHzクロックのNehalemに 1066MHzのDDR3メモリを接続した場合
は33.4GB/sと3.4倍の向上を示している。
==================
>33.4GB/sと 3ch DDR3 1066MHzの理論地より増えているんだが
>>611 2-socketシステムでの値だと思われるす。
大規模共有メモリがSXの大きな利点かと思っていたけど、 同程度のコストパフォーマンスなら楽できるSXの方が選ばれるだろうから メモリバンド幅が壁になる分野ではマルチノードシステムも有用なんだな。
似たような理由で、東大の情報基盤センターでも ピーク性能が圧倒的に高いT2Kよりメモリバンド幅重視&大規模SMPのSR11000の方が 遥かに重用されてるらしい LINPACKは通信量のオーダが計算量に比べて低いので、飾りにしかならないんだと
>>614 それ、大学の計算機センターという利用形態のために複数ノードをまたぐような並列化アプリが
少ないというだけでわ?
箱の中だけで完結する並列化しか行っていない場合わ、当たり前だと思うす。
おそらくT2K仕様も、スーパーコンピュータとしてのコストパファーマンスの悪い4-socketノードを
選択したのも、同様の事情を考慮したものと思われるす。
616 :
MACオタ :2008/11/30(日) 16:54:09 ID:Cnm2ifs0
MACヲタタタタタタタタアアアアアアアアアアアアアァァァァ……
算数が出来ないMACオタ
>>616 わ電力効率が上下ひっくり返っていたす。
誤)
- x86 (K10/2.3GHz): 1.059 PFlops, 6.95MW, 444.9 MFlops/W
- Cell (PowerXCell 8i): 1.105 PFlops, 2.48MW, 152.4 MFlops/W
正)
- x86 (K10/2.3GHz): 1.059 PFlops, 6.95MW, 152.4 MFlops/W
- Cell (PowerXCell 8i): 1.105 PFlops, 2.48MW, 444.9 MFlops/W
だが情報収集だけなら人一倍だぞ
622 :
MACオタ :2008/12/03(水) 22:12:02 ID:Rm/iubZB
>>622 これQCDOCに比べてあまりQCD計算専用と言えるような作りではないよね?
LS増やすかeDRAM付けるとか、そういうのはお金掛かるからダメなのかな。
QCD専用機イラネ 理由:役に立たないから
QCDなんぞGPGPUでいいわ! んじゃ次世代BlueGeneって何よ… それこそTSUBAMEライクになるんか?
>同労組には、これまでに70〜80件の相談が寄せられているという。 _~~~~~~~ ほっとけつーのw こういう和田岩。本質に関係ないから。
630 :
MACオタ :2008/12/09(火) 23:40:58 ID:nCxPmPYF
VIAを振った甲斐あってか、Nvidiaがatomのチップセットビジネスにありついた模様す。
http://www.digitimes.com/news/a20081209PD206.html ----------------------
Nvidia chipset support to come for Intel Atom nettops
Monica Chen, Taipei; Joseph Tsai, DIGITIMES [Tuesday 9 December 2008]
Intel and Nvidia will join forces to enable Nvidia chipset support to the Atom platform
in order to enhance graphics performance, according to sources at PC vendors.
Nvidia's MCP79 chipset will be the first to support Atom CPUs, however the support
will only apply to nettops during the initial period.
Asustek Computer, Gigabyte Technology and Micro-Star International (MSI) have said
they welcome the partnership between Nvidia and Intel and believe the cooperation
would give them more pricing flexibility.
----------------------
それはviaにとって朗報ですね MACみたいにならなくてすむ
632 :
Socket774 :2008/12/09(火) 23:45:51 ID:707M0Aln
IntelはNVIDIAの首に鈴をつけるような真似しないでとっとと買収しちゃえばいいのに
633 :
MACオタ :2008/12/09(火) 23:53:17 ID:nCxPmPYF
中国のファウンダリ企業SMICも45-nmプロセスでの生産を開始したとのことす。
http://www.eetimes.com/news/semi/showArticle.jhtml?articleID=212300071 ---------------------
Semiconductor Manufacturing International Corp. (Shanghai, China) has said that it
has produced its first 45-nm yield lot, signifying a working 45-nm manufacturing process.
This has been achieved less than one year after SMIC signed an agreement with IBM
to license its low-power and high-performance bulk CMOS technologies in December 2007.
---------------------
記事に書いてある通り、SMICわIBM連合のバルクプロセスを導入しているす。
634 :
MACオタ :2008/12/09(火) 23:58:08 ID:nCxPmPYF
Roadrunnerの電力効率について言えばCellに混じって少し載ってるOpteronが足を引っ張ってるんだよな。 全てQS22で構成してればさらに電力効率上がってたのに。 次世代CellではPPEもパワーアップするらしいからデバイス制御用にOpteronを入れる必要もなくなるだろうな。
全部QS22だったら実行効率1ペタはなかったろうな
どのようにしたら、そんな一個か二個の数値で コンピュータの善し悪しを決めつけられるまで 脳を退化させることができるかね…
Windows向けのOpenCL対応処理系ってどこが用意するの? OpenGLはMSVCも含め多くのWindows向け商用コンパイラが対応したけど DirectXのCompute Shaderと直接競合するようなものをMSが支持するわけもなく。 まあデファクトスタンダードの断裂は確定したようなもんだ。
すこしそれるが、OpenGLとDirectXは同列かな? まいいけど
640 :
Socket774 :2008/12/10(水) 01:34:23 ID:RiiV/cHn
OpenCL(CUDA) vs Ct vs DirectXという認識でおk? CtはTBBの正統進化系で中身はOpenMPという認識でおk?
641 :
Μ ◆M//jisakuk @株主 ★ :2008/12/10(水) 01:35:10 ID:v3o2zyk/
アキバ 秋山 飽きてきた。 アーティクル。
なんで言語とライブラリーが… まいいや、語るも疲れる…
CgとHLSLが似てる程度にはCompute ShaderのそれもCUDAには似せてくるんじゃないかな。
で、ECMA標準規格に登録したりして混乱させるかもしれんね。
.NET Framework互換環境のMonoでWindows.FormがWineに依存だったりする程度に
MS環境依存なものになると。いつもどおり。
>>642 Javaは言語でありライブラリであり仮想マシン(ランタイムプログラム)であるけど
MSのC#はあくまで言語で、ライブラリはWindows.Formやその他諸々で実行環境は.NET Framework
まあそんなモンいちいち気にするのは不毛だ。
こういうスレばかり見てるから コテ=馬鹿ってのが摺り込まれてしまうんだなあ
OpenCLってメニーコアでソフトウェアレンダリングエンジンを書くのが主な目的なのかな。 Specification見たらそんな気がした。 結局一番得しそうなのはIntelかな。大学にエンジン書かせてそのままLarrabeeに持ってくっていう
【社会】経団連の御手洗会長、大分キヤノンの非正規雇用削減問題について「かなり誤解があったようだ」
http://mamono.2ch.net/test/read.cgi/newsplus/1228732999/608 608 名前:名無しさん@九周年[sage] 投稿日:2008/12/11(木) 01:38:17 ID:8UUJtlZR0
競争力という危険な幻想
つまり国と国も企業同士のように「食うか食われるか」の熾烈な競争を展開しており、
これに破れれば国が滅びるというのである。ここから「貿易戦争」「経済戦争」などとい
う言葉も生まれてきた。この戦争に勝つためには、「競争力」をつけなければならない
という主張である。
クルーグマンはこうした「競争力至上主義」の経済学を、正統な経済学では明確に
否定された「俗説」であるという。そして、こうした俗説があたかも正統な経済理論のよ
うに流布し、幅を利かせている現状を、世界にとってとても危険な状態だと警告している。
> 正統な経済学では明確に否定された「俗説」である w
先進国のほとんどで、交際競争力への懸念が高まっているが、それを裏付ける事実
があるわけではなく、逆に、的外れであることを示す大量の事実があるなかでも、
そう信じられているのである。しかし、そう信じたがっている人たちが多いのも、明らかだ。
競争力の教義を説く人たちが、主張を裏付けようと、ずさんで間違いだらけの数値をあ
げる傾向があることを見れば、この見方を信じたいという欲求がいかに強いかがわかる。
http://www.enpitu.ne.jp/usr/bin/month?id=7246&pg=200405
裸の王サマと同じく、みんな喉元まで出かかって、あえて黙っているお為ごかしをバラしやがってw まんざら遠大なる誤爆でもなさげだな…
650 :
Socket774 :2008/12/11(木) 23:09:04 ID:XuYrg+uH
水面下では某国と某国が今経済戦争してるってこと? 今回の金融危機も国家レベルの謀略? それとCPUアーキテクチャがどう関係するの?
尻の蒼い、嘴の黄色い、駆け出しの青二才には 分からないとしても、無理はないか
どうでもいいが、一々クソスレageんなよ、うぜーよ 禿げどもが
654 :
MACオタ :2008/12/14(日) 00:06:49 ID:OB3UwlbL
他人の日記にケチをつけるのも失礼かとわ思うすけど、牧野教授の公開日記
http://www.artcompsci.org/~makino/journal/journal-2008-12.html#8 ----------------------
まず、 Nehalem, Phenom II でのコスト概算は
Nehalem:
CPU i7 920 30k
マザーボード FOXCONN Renaissance 28k
メモリ DDR3 2GB x 6 45k
Phenom II
CPU Phenom II 940BE 30K
マザーボード K9A2 Planinum 14K
メモリ DDR2 4GB x 4 40k (2GBx4 ならもっと安い、、、)
電源 安く上げるなら 600W クラスのを2台、 14K
普通なら 1200W x 1 25K
というわけで、もっとも高いと 128k (Ci7, 1200W)
安いと 98k (PhII, 600Wx2)
----------------------
電源が異常に巨大な気がするすけど、GPGPUとかGRAPE-DRの母艦なんすかね。。。
ECCも気にしていない模様すけど、最近のHPCクラスタ用のノード仕様ってこんな感じ
なんすか?
失礼。。。
656 :
Socket774 :2008/12/14(日) 02:41:40 ID:AR5X0nO6
マキーノ日記にCore i7 920のSTREAM Bench来たよ Ci7 920 での STREAM (OMP+SSE版) ./stream-omp-sse ------------------------------------------------------------- This system uses 8 bytes per DOUBLE PRECISION word. ------------------------------------------------------------- Array size = 51200000, Offset = 0 Total memory required = 1171.9 MB. Each test is run 10 times, but only the *best* time for each is used. ------------------------------------------------------------- Your clock granularity/precision appears to be 1 microseconds. Each test below will take on the order of 76557 microseconds. (= 76557 clock ticks) Increase the size of the arrays if this shows that you are not getting at least 20 clock ticks per test. ------------------------------------------------------------- WARNING -- The above is only a rough guideline. For best results, please be sure you know the precision of your system timer. ------------------------------------------------------------- Function Rate (MB/s) RMS time Min time Max time Copy: 18926.6056 0.0436 0.0433 0.0443 Scale: 15997.1965 0.0513 0.0512 0.0515 Add: 17925.6354 0.0687 0.0685 0.0688 Triad: 18027.3972 0.0684 0.0682 0.0687
657 :
Socket774 :2008/12/14(日) 02:47:56 ID:AR5X0nO6
Function Rate (MB/s) RMS time Min time Max time Copy: 18926.6056 0.0436 0.0433 0.0443 Scale: 15997.1965 0.0513 0.0512 0.0515 Add: 17925.6354 0.0687 0.0685 0.0688 Triad: 18027.3972 0.0684 0.0682 0.0687 下5行のズレ修正。 プレビュー見なかった結果がこれだよ!
やるならきっちりやれ Function Rate (MB/s) RMS time Min time Max time Copy: 18926.6056 0.0436 0.0433 0.0443 Scale: 15997.1965 0.0513 0.0512 0.0515 Add: ... 17925.6354 0.0687 0.0685 0.0688 Triad:.... 18027.3972 0.0684 0.0682 0.0687
659 :
レトリック君 :2008/12/14(日) 23:50:03 ID:kT/hHTcC
ふ〜ん、他のcぷのstream性能は具体的な数値を覚えていないが stream見たいに単純な構造をしたプログラムのベンチにおいてすらも PC用のCPUが結構いい性能を出すようになったってことじゃないのコレ? おっそろしいのはi7は、HPC分野に良くある直線番長型CPU(wと違って コーナリングも速けりゃ、入り組んだ道も速い、しかも金になる市場でジャンジャン売れる その昔、川下産業とかいってバカにされていたが、よもやここまでくるば勝負あったな。ニヤリ。 オレは今のIntelを(AMDもだがw)応援してるぜ。その方がユーザにとってもIT分野にとっても そこではたらくエンジニアにとっても吉だ。今はな。
デスクトップ用途としては、あとは順調に改良が進んで消費電力が減ってくれれば 文句なしなんだけどね …ノートPC用が問題なわけよ…Havendaleがオオコケしなければ… 来年出なけりゃもう45nmはないってことじゃん
他と比べてくれなきゃどれだけすごいのか分からんが
上記ベンチなら、core2duoの3倍弱くらいか? 演算器とのバランスという意味ではそこまでの改善ではないが、大したもんだぜ
それにしてもP6アーキも長持ちするな ハイエンドx86もPOWER6やRockのようにインオーダーベースになる日は来るのかね
RockはOoO Retirementじゃなかったっけ
インオーダーベースを改造してOoOを実現している、と言えばいいか
666 :
Socket774 :2008/12/15(月) 03:26:41 ID:2E/FjGR6
Rockは肩透かしだった・・・
>>659 ッフ、、x86の小汚い命令セットごときが何をたわけたことをほざいておる!!
>>663 Power6はクロック電力を抑えクロック上げるためにインオーダーにした。
>>667 >>668 とか言ってるが、実際にはx86CPUの自作PCしかつかったことがないし
RISCマシンを使う意義も見当たらん。
一応、最近安くBlade150(ultraSparcA550Mhz)を買ったが、「この程度か
」といった感想だな。
670 :
>>659 >>661 :2008/12/15(月) 18:26:01 ID:2E/FjGR6
長いのでXeon 5130 OpenMPでスレッド4つの結果だけ抜粋
STREAM results for Core 2 CPUs
ttp://www.cs.virginia.edu/stream/stream_mail/2007/0018.html ***** Dual Xeon 5130 on Supermicro X7DBE (IntelR 5000P (Blackford) Chipset)
### OMP_NUM_THREADS=4
----------------------------------------------
Double precision appears to have 16 digits of accuracy
Assuming 8 bytes per DOUBLE PRECISION word
----------------------------------------------
----------------------------------------------
STREAM Version $Revision: 5.6 $
----------------------------------------------
Array size = 20000000
Offset = 0
The total memory requirement is 457 MB
You are running each test 10 times
--
The *best* time for each test is used
*EXCLUDING* the first and last iterations
----------------------------------------------
Number of Threads = 4
----------------------------------------------
Printing one line per active thread....
Printing one line per active thread....
Printing one line per active thread....
Printing one line per active thread....
----------------------------------------------------
Your clock granularity/precision appears to be 1 microseconds
----------------------------------------------------
Function Rate (MB/s) Avg time Min time Max time
Copy: 6194.1117 0.0517 0.0517 0.0519
Scale: 4893.0285 0.0687 0.0654 0.0943
Add: 5271.2542 0.0923 0.0911 0.1017
Triad: 5279.5896 0.0944 0.0909 0.1216
671 :
Socket774 :2008/12/15(月) 18:27:08 ID:2E/FjGR6
長いので適当に抜粋
Stream result for AMD Opteron 2360SE "Barcelona"
ttp://www.cs.virginia.edu/stream/stream_mail/2008/0008.html -------------------------------------------------------------
This system uses 8 bytes per DOUBLE PRECISION word.
-------------------------------------------------------------
Array size = 4000000, Offset = 0
Total memory required = 91.6 MB.
Each test is run 10 times, but only
the *best* time for each is used.
-------------------------------------------------------------
Number of Threads requested = 8
-------------------------------------------------------------
Printing one line per active thread....
Printing one line per active thread....
Printing one line per active thread....
Printing one line per active thread....
Printing one line per active thread....
Printing one line per active thread....
Printing one line per active thread....
Printing one line per active thread....
-------------------------------------------------------------
Your clock granularity/precision appears to be 1 microseconds.
Each test below will take on the order of 28773 microseconds.
(= 28773 clock ticks)
Increase the size of the arrays if this shows that
you are not getting at least 20 clock ticks per test.
-------------------------------------------------------------
WARNING -- The above is only a rough guideline.
For best results, please be sure you know the
precision of your system timer.
-------------------------------------------------------------
Function Rate (MB/s) Avg time Min time Max time
Copy: 17942.3472 0.0036 0.0036 0.0036
Scale: 17856.4130 0.0036 0.0036 0.0036
Add: 17259.7704 0.0056 0.0056 0.0056
Triad: 17341.5386 0.0055 0.0055 0.0056
この手の物ってArray size違うもの同士比較していいの?
673 :
Socket774 :2008/12/15(月) 20:12:02 ID:2E/FjGR6
STREAMをキャッシュ効くような設定で計測する人はいない、、、と思う。
674 :
レトリック君 :2008/12/15(月) 20:47:28 ID:sIAfiA++
>>670 >>671 実測しくれててdクスコ。
memory throught neckに持ち込むとOpteronも結構頑張る傾向は出てますね。
まぁmemory throught勝負は、最後の砦なのかもしれないがw
がーしかーし、
Array size = 20000000
The total memory requirement is 457 MB
Number of Threads = 4
Array size = 4000000, Offset = 0
Total memory required = 91.6 MB.
Number of Threads requested = 8
これはちょっとどうかと思ったけど、大勢にはたぶん影響なさげだね。
オレも暇があったら職場の…いや時間まるっきり無いの介…orz
ちなみにCPUがmemory throughtばかりを前面に出し始めたら黄信号かな
(商売がじり貧で先がなくHPC分野に逃げ場を探している)とオレは見ている。
今までの経験からそう感じているだけだが。
ほな乙かれさん、お先です。ノシ
HPC用途だとどうせクラスタなんだから、CPU単体のスループットよりは価格性能比、電力性能比のが重要と思う。
ネットワークが安くて高速に出来るのなら確かにそうなんだがな
質問。某KumaさんはPentium E5x00よりキャッシュの総容量が多くて、メモリアクセスが全然速いはずなのに、 せいぜいドッコイの性能しか出せないのは何故?
ループ特化してないから
256bit版AltiVecとか出して欲しいんだけどね。 このまま色褪せていくのは惜しい。 てな話を、PPCマカーの人と話してました。 2chにPowerPC最適化プログラミングについて語るスレが無いことに気がついた。
俺はMACヲタとは違う観点でPowerPCの設計を評価してるからな。
682 :
レトリック君 :2008/12/17(水) 23:56:24 ID:sv2B0Xvp
興味本位で聞くけれどPPCのどこを評価しているの? PPCはasmの視点から見ると、きれいと言うより以外と複雑な面があるよ あるよ、というかあったよという印象の記憶があるだけだけれどもさw ちなみにオレはPPCも嫌いではなかったりする。 えぇ、CPUと女には節操がないものでw
AlphaとPOWERとx86は好きでPAとARMは微妙でMIPSとSPARCと68kの嫌いな俺様が
・レジスタ本数が多すぎず少なすぎない ・3オペランド x86に比べてエレガントな割には実効性能が悪いのは玉に瑕
685 :
レトリック君 :2008/12/18(木) 00:37:49 ID:BterSzDD
ふ〜ん、その程度なの…いや悪い意味じゃなくて。 オレが気に入っていた点は例えば ・FPレジスタ構成がflat、そこへqloadで2x倍精度一気に読めて load throughputと倍精度FMA演算throughputがバランス良く稼働できたこと ・FMA命令がタイミング良く決まるとclock×2×2の演算性能が発揮できたところ (といってもlinpacなど極端に有効な用途はそれ程広くなかったが) ・GR個数がそこそこあってlist引きのAU計算にゆとりがあったところ (といってもstreamの細い短いpipeline長のloop限定) ・特に初期のPower、3あたりまでは周波数が低い分各種latencyが小さく、 ミスっても起きあがり小坊師のようにずっこけてもすぐ立ち上がり走り出して 極端なstallが起きにくくLispなどlsitの嵐やあるいはcache hitの見込めないアプリで 失速が少な目だったこと etc.etc… 逆にイヤだなと思った点は ・(ry etc.etc… まぁいいや、いいこだからもう寝なさい。
686 :
Socket774 :2008/12/18(木) 03:43:11 ID:2slSwYPS
Shanghaiの4S構成で公式に登録が来たのでまとめてみた。
Dunnington 2.66GHz 4Sockets/24Cores/24Threads
Number of benchmark users & comp.: 5,300 SD (Sales & Distribution)
SAPS: 26,550
http://download.sap.com/download.epd?context=40E2D9D5E00EEF7C9B0CC4EEC41DA7C8FD6BCD35CDB5238BFD97E1A7A4A02389 Nehalem-EP 2.93GHz 2S/8C/16T
Number of benchmark users & comp.: 4,995 SD (Sales & Distribution)
SAPS: 25,000
http://download.sap.com/download.epd?context=40E2D9D5E00EEF7C98569165701A8C64017D9991F441020572812DEF4019E6C6 Nehalem-EP 2.93GHz 2S/8C/8T (スレッド数はAnandtech予測)
Number of benchmark users & comp.: 4,715 SD (Sales & Distribution)
SAPS: 23,650
http://download.sap.com/download.epd?context=40FA5C91FAAE3E61F95E567201A0045C4AC5DB17A6F22BD05281664F5BE58A6C517AFA8A2AB0C666 Dunnington 2.66GHz 4S/24C/24T (RHEL5.2 + XEN3.1の仮想マシン上で計測)
Number of benchmark users & comp.: 4,400 SD (Sales & Distribution)
SAPS: 22,030
http://download.sap.com/download.epd?context=C204AB680DC3C9C9621499C46000FB4D27B9BB1C32A022E35CD002D8D1364FFF2C067F2EE98B60A97B32ABA7B53B398F Shanghai 2.7GHz 4S/16C/16T
Number of benchmark users & comp.: 4,386 SD (Sales & Distribution)
SAPS: 22,000
http://download.sap.com/download.epd?context=C204AB680DC3C9C99E517E3F38CDECBD48373813E84BE4BBDD5752F147180BEEBEB9071EC1B5ACB3 Shanghai 2.7GHz 2S/8C/8T
Number of benchmark users & comp.: 2,752 SD (Sales & Distribution)
SAPS: 13,780
http://download.sap.com/download.epd?context=40E2D9D5E00EEF7CC1A4F3F5AAA2A28343EF5EEFABD344FBD4BC7E5F39ABE5A9 Shanghai 2.7GHz x 2を1とした時の相対性能
Dunnington Nehalem 2S/16T Nehalem 2S/8T Dunnington with Virtualization Shanghai 4S Shanghai 2S
1.92 1.81 1.71 1.59 1.59 1.00
687 :
Socket774 :2008/12/18(木) 03:43:58 ID:2slSwYPS
ISAと実装がごっちゃになっとるぞw 不可分といえば不可分だが、実装の足を引っ張りそうなISAってあるだろ、そういう話はない? MIPSだと比較と分岐が1命令になっているところとか。
ISAにあった実装しかできないってのもある。 2引数しか取れないのに積和算ユニット載せても無駄だろ? Intelは「実装」のためにISAを拡張していってるし ある程度は不可分じゃね? 特にAVXの3〜4オペランド化なんか重大な変革だと思うけどね。
LNIとの整合性はどう取るつもりなんだろうか。 MMXみたいな扱いになるか
691 :
レトリック君 :2008/12/18(木) 20:54:59 ID:NCr1RL1d
IPCの意味が悩ましくなるがまんざら無駄ではないのでは? まぁいいけど
x86は速い これは動かしがたい事実だ 何か本質的なところで優れたISAだとしか考えられない これはむしろx86 ISAは実装の足をクリティカルにひっぱる要素が比較的少ないからではないか
俺は紳士じゃないんでね 諦め悪いんですよ というかだから没落するんだ なぜ・・・ なぜ最後まで戦わない・・・ この 闇
>>692 これはむしろ、の前に
確かに古臭いし欠点だらけのように見えるのだが
が抜けた
レジスタウィンドウや遅延分岐スロットみたいに当時は気の利いたアイデアが後々祟るというのがx86には意外と少ないんじゃね?ということだ
>>692 x86は単にコード資産が多いから、資金が集まり
何が何でも延命させようと巨額のお金がつぎ込まれた
ってことに過ぎない
単に規模の論理で他社には出来ない額の超大規模投資で最新理論で設計
最新プロセスで省電力低発熱を実現できたので
x86の根本的な欠陥をごまかし続けられた
ってことに過ぎない
たられば厳禁だが、おなじ開発費と製造プロセスでPowerPCを作れば
1.5倍くらいの性能のあるものを作れるだろう
696 :
Socket774 :2008/12/19(金) 07:45:07 ID:pURXnMv6
>>695 そう、けっきょく根拠もなくタラレバでしか言えないのよね
そもそも、古い設計に金かけて高性能になるためには元の設計が優れたものである必要があるんだ
AMDがそんなにリソースリッチとも考えられないしね
x86がハードウェアソフトウェア両方の拡張に耐えうる十分に優れたISAである、ということは確かだろうけど、 だから他のISAと比べて優れている、というのはあまり適切ではないとは思うが・・
いや、べつに他のISAより優れているというつもりはなくて、 ・ISAには皆が指摘するような明らかな欠点を数多く抱えている にもかかわらず ・高性能な実装が存在する のはなぜか?ということ ・指摘者が揃ってボンクラで、実はx86 ISAの明かな欠点はごく表面的なもので本質的ではないのか または ・本当にシビアな欠点をかかえているが、それを帳消しにするほどには本質的なところで優れているのか のどちらかなのかを知りたいということ
>>695 どうせならARMでヨロ。
そういやStrongARMって、その方向を目指してたんだっけ?
>>701 ARMは開発当時のプアなリソースに最適化されていて、将来を見越したアーキテクチャという気がしないよね
何十年先を見通すことは不可能だけど、悪い意味でのhackが多すぎる>arm,hppa,mips.sparc
x86はあまりにもクソすぎてそういうhackすら不可能だったのが災い転じてというのはありうるな ia64はパッとしないままだがw
プロセスルール開発。 プロセス毎に物理デザインを行うツールの開発・カスタマイズ。 この2つに徹底的に経営資源を投下。 微細化とトランジスタ密度の勝負に持ち込んで、 パフォーマンス÷ダイ面積で優位に立ち、他社を赤字に転落させる。 優れたあーきてくちゃあ開発とやらに資源を投下して、 巷で評価されつつ市場から退場していった幾多の企業の反面教師。
ARMは悪くないよ。元々組み込み特化の汎用コントローラじゃないか PCとかHPCとかに使うわけでもないし。 AtomとハイエンドARMは競合する可能性があるわけだが、Atomからすればx86資産ありきの勝負だからね。 電力効率面でARMに対する優位性はあんましない。現状ね。
Cortex-A9(ARMv7)のNEON拡張命令って使ってる人いる? 128bit版ってさ、ただの64bit版2回実行だったりしない?
ARMはもともとパソコン用だったんだけど
前身?の6502とかAcorn RISC MachineまでのARMはね。 AcornからスピンオフしてAdvanced RISC MachineになってからはApple Newtonへの採用からはじまり モバイル向けとしての色合いを強めていった、と。 今ではMIPS、SHをしのぎ、年間30億個、Intelプロセッサの10倍売れてる。個数だけは。
ARMは最初はあくまでパソコン用に設計されたんだよ。wikipediaでもなんでも見てくれ。 現在ではパソコンにもHPCにも使われないけど > 元々組み込み特化の汎用コントローラ これだけ訂正してくれ
ARMもPOWERもx86もそれぞれ利点・欠点があるのはわかる。 ただアポーみたいにころころCPUを変えるのはおかしい―― と思ったら禿げが死にかけだったか
今度のMacはARMかPOWERになる予定でもあるのか?
今度のMacはH8になります
714 :
Socket774 :2008/12/20(土) 19:55:33 ID:TAAFOvwI
>>712 713
ないない、しばらくはintelだろ。
iPod の CPU は ARM系?
コード密度の観点からは H16 なんか面白かったのにな。 利点はキャッシュにヒットしやすいことくらいか?
>>715 ARMだね。
俺はただ単にNewtonの血筋が未だに残ってるもんだと思ってるが。
現実問題としてARM以外の選択肢はないも同然だったわけだが 血筋などとキモい事をよく思いつくものだとちょっと感心している NewtonでARMの経験を積んでいたからとでも言えばいいのに
719 :
レトリック君 :2008/12/21(日) 00:31:06 ID:LoMN+YLW
ジョブスがまた具合悪いの? あのオッチャン、クセが強いけれど、いなくなったら寂しい…
安心して レトリック君はいなくなっても寂しくないよ
721 :
MACオタ :2008/12/21(日) 15:24:42 ID:7nMlheg+
昨日の安藤氏のサイトのIEDMネタより。
http://www.geocities.jp/andosprocinfo/wadai08/20081220.htm ------------------
45nm世代ではIntelだけがHigh-K Metal Gateだったのですが,32nm世代では各社ともにHigh-K
Metal GateでEOTでは1nmを切るゲート絶縁膜を実現しています。また,露光は液浸のArFです。
TSMCは,予稿では32nmと書かれていたのですが,本番の発表では28nmに書き換えた発表を
行い,EOTは0.9nmでゲート長は 24nmでOn電流はN-trが1360uA/um(@80nA/um),P-Trが
960uA/um(@40nA/um)と発表されました。しかし,ゲートピッチは100nmとのことで,他社の32nm
とあまり違わない気がします。
Intelは第二世代のHigh K/Metal Gateと称して32nmプロセスを発表しました。EOTは0.9nmで,
On電流はN-trが1550uA/um(@100nA/um),P-trが 1310uA/um(@100nA/um)と発表されました。
SRAMセルは0.171um2と32nmプロセスとしては大きめのセルで,Intelは動作安定度を重視して
セルサイズを極限まで小さくするという方針でないのは45nmの時と同じです。
このIntelの32nmプロセスのTrのOn電流はTSMCより大きいのですが,Off電流もTSMCより大
きく取っているので,見掛けほどの差はなく,技術的にはTSMCが急追している感じです。
------------------
大手ファウンダリ企業のプロセスがIntelに追いつき、新興企業がアーキテクチャ勝負の商売を
できるようになる日も遠くないのかもしれないす。
どのみちASICじゃフルスクラッチのプロセッサに勝つのは無理だけど。
723 :
Socket774 :2008/12/21(日) 15:51:08 ID:Mjs81X8p
>プロセスの提供を開始する時期だけならTSMCはIntelに追いついていたと思うの いいや、Intelは32nmの量産技術既に確立してるからその意味じゃおくれてる
725 :
Socket774 :2008/12/21(日) 16:13:44 ID:Mjs81X8p
そーなのかー
確立してねーし
馬鹿の発言は失笑で流せ
馬鹿は馬鹿だしな
量産技術が確立されてるならなんで今すぐ量産しないんだ?
>>731 > 量産技術が確立されてるならなんで今すぐ量産しないんだ?
45nmの償却が済むまで45nmを生産続ける必要があるからだよ
技術の確立と体制の確立は別物
へー それじゃ歩留まりも十分でファブが出来てないだけなんだ。
735 :
Socket774 :2008/12/22(月) 21:54:01 ID:lxpfS2TJ
プロセッサのバグフィクスもまだJARO
Windowsが起動するWestmereができたら数週間以内に発表するはずだからな
バグ取らずに平気で出せるのがIntel
738 :
Socket774 :2008/12/22(月) 22:36:13 ID:lxpfS2TJ
>>736 とっくの昔にテープアウトしてファーストシリコンも出来ているはずなんだけどな。
そういう報道すらないのはIntelが特にアピールする必要性を感じてないということかと。
Penrynの豪華な報道はHigh-k/Metal-Gate実用化でIntelが浮かれまくっていて笑えた。
逆にMeromの時は必死だったな。(w
まあIDF SpringまでWestmereのネタは出てこないと思うよん。
ISSCCにも論文がないみたいだし。
メッキ団子が剥げ剥げだな
741 :
,,・´∀`・,,)`・,,)`・,,)`・,,)`・,,)っ-○◎● :2008/12/22(月) 23:18:00 ID:VR8BIXAn
量産技術
90nmだとプロセス開発が終わったと言った後もごたごたしてたけどな。
StrongARMのMMX実装ってどうなってるの? PentiumのMMXとどう違うんですか?
ググったら45nmの量産技術確立が出ました ↓ ま、いいや ↓ いいや、Intelは32nmの量産技術既に確立してるからその意味じゃおくれてる
747 :
Socket774 :2008/12/23(火) 14:53:08 ID:Ro+hrz/X
うん?降順にソートしているのか?
>>746 馬鹿だな。読解力ないやつはとことん脳みそ足りないな。
君が見つけた45nmの例見てみればわかるように、最初の製品出荷まで1年切ると
量産技術は確立してるものなのよ。
歩留まりがいいとか悪いとかは別問題としてね。
たとえ歩留まり1割程度でも1枚のウェハから製品をいくつも作る以上は量産なんだよ。
Westmereに対応する32nmの生産技術確立もこの前発表があった。
まだWestmereそのものの1stシリコンが出たという話は聞かないがそのうち出るだろう。
ファウンダリ企業はとりあえずSRAMなりロジックなりが最新プロセスで出来るようになってから
ファブレス企業に話を持ちかける。
そういう点でIntelとTSMCを対等に見ると、やっぱり数ヶ月程度は遅れてるでしょ。
749 :
Socket774 :2008/12/23(火) 15:15:25 ID:Ro+hrz/X
>>744 ああ、CopyExactlyがexactlyではなかったというアレか
90nm Pentium Mはリーク電流を抑えこむのに苦労して一部再設計したなんて話があったな。 しかし量産に関しては好調そのものだったとか。 90nmのi945GC/945GSEをAtomに抱き合わせて安売りできるのも、安価に量産できるからこそだろ。
チップセット向けじゃリーク低減のためにCPUとはプロセス変えてるって話だけどね>90nm あとTSMCも32nmのSRAMは去年作ってるよ。 量産開始時期も2009年と言ってるし。製品が出てくるのはそれより遅いけど。 それにTSMCの32nmは他社と比べるとハーフノードって感じなんだよな。 シュリンクは出来るだろうけど。 フルノードでHKMGな28nmが本命か。 しかし数ヶ月差にせよIntelに迫ってるのは十分凄いと思うけどな。 まあプロセス世代なんて最近は言ったもん勝ちだが。
SRAMって一番作りやすい箇所じゃね? IBM連合の65nm SOIは散々だったようだけど
> SRAMって一番作りやすい箇所じゃね? そうでもない
歩留まりの悪い量産技術w
755 :
Socket774 :2008/12/23(火) 16:55:48 ID:Ro+hrz/X
CELLを馬鹿にしてはいけません GKが来てしまう
合格基準を下げれば9割越すことはできるだろ。冗長構成にしておけば一部を無効にしても合格品として出せる。 CellのSPE1個無効だってそうだし、Intelが伝統的にやってるキャッシュの一部無効化だってそう。 更に、某A社のように選別落ちを3コアとして出したりネイティブクアッド発売記念キーホルダーとして出せば100パーセントだ。
馬鹿は黙れよ 開発Fabと製造Fabは別だしw
設備を多数揃えるのが量産技術で 歩留まりを良くするのが量産体制なわけですね 解りません
760 :
,,・´∀`・,,)`・,,)`・,,)`・,,)`・,,)っ-○◎● :2008/12/23(火) 19:11:19 ID:ScZ+x1f2
言ってみれば理学と工学とライン工の違い
761 :
,,・´∀`・,,)`・,,)`・,,)`・,,)`・,,)っ-○◎● :2008/12/23(火) 19:19:32 ID:ScZ+x1f2
SRAMは冗長化しやすいからそう言う意味では難易度低いと思う。 ロジックだと1カ所欠陥があればコア全体があぼーんな感じ。
SRAMって作りやすいか作りにくいか関係なく、セルの構造がどのプロセスで作っても同じだから使われてるだけじゃないの? ダイサイズでしか比較されないし
>>761 不良率という意味ではその通りだが、微細化が進んで
まともに動くSRAMを作ること自体が難しくなってる
そうは言ってもSRAMが作れないとCPU自体作れないわけだから CPU作るよりはハードルはだいぶ低い
766 :
,,・´∀`・,,)`・,,)`・,,)`・,,)`・,,)っ-○◎● :2008/12/23(火) 23:42:05 ID:ScZ+x1f2
orenikikuna
なんか冗長化さえできれば物が作れると思い込んでいるやつがいるが 製造欠陥の話とデバイスの特性の話がごっちゃになってるな。 全体の特性が狙いからシフトしたり、そもそもマージンがなくて狙った物が作れなければ いくら冗長化してても良品なんか取れないよ。
768 :
,,・´∀`・,,)`・,,)`・,,)`・,,)`・,,)っ-○◎● :2008/12/23(火) 23:49:32 ID:ScZ+x1f2
IDがあやよ乙 もう高校生になったんだっけ?
Intelの場合初期量産品も開発ファブで作られるよね。 量産ファブが出来て無くても少量ならさっさと作れば良いのに。
770 :
,,・´∀`・,,)`・,,)`・,,)`・,,)`・,,)っ-○◎● :2008/12/24(水) 00:29:25 ID:UYorAobG
さっさと作った結果が去年の45nm版Core 2 Extreme と今年のCore i7なんだろ
771 :
,,・´∀`・,,)`・,,)`・,,)`・,,)`・,,)っ-○◎● :2008/12/24(水) 00:30:59 ID:UYorAobG
逆に、製造専門Fabの立ち上がり時期は他の会社と極端な差はないってこと。 それでもAMDとの差は大きくなってる感はある。
また馬鹿に荒らされてる
馬鹿のダンゴがやってくる って映画もあったな
釣りダンゴ日誌
776 :
Socket774 :2008/12/24(水) 20:46:49 ID:ozBDR96k
中身は全く別物なんだがトランジスタでテラヘルツって聞くと2001年のIntelを思い出すなw
777 :
MACオタ :2008/12/25(木) 06:03:26 ID:by/c+D10
PowerVRコアの権利を持つ企業、Imagination Technogogy Groupに関して、AppleとIntelの綱引き
が始まった模様す。
http://www.eetimes.com/news/semi/showArticle.jhtml?articleID=212501807 ----------------------
Following a move by Apple to invest $5 million in graphics cores licensor Imagination
Technologies Group plc (Kings Langley, England) Intel Corp. has topped up its shareholding
in Imagination to a similar level.
Through its wholly owned subsidiary Intel Capital Corp. Intel has acquired a further
934,422 shares, which when added to an original holding of 6 million shares represents
3.04 percent of Imagination's total issued voting rights. Intel said it has no current
intention to make an offer for Imagination.
----------------------
モバイル用途に好適な上、マルチコアでのスケーラビリティに優れるという特長に注目が集まって
PowerVRがホットになってきた様す。
778 :
MACオタ :2008/12/25(木) 06:08:03 ID:by/c+D10
台湾DigitimesよりNVIDIAのatomチップセット参入に対し、Intelわ断固拒否とのことす。
http://www.digitimes.com/news/a20081223PD216.html -----------------------
However, in an internal statement distributed to hardware makers recently, Intel
reiterated that Atom CPUs for netbooks and nettops are only available bundled
with its 945GSE and 945GC chipsets, the makers said.
-----------------------
781 :
MACオタ :2008/12/30(火) 07:09:12 ID:lb36ze6A
台湾Digitimeの記事より二題。
最初わ、VIAがNetbook市場で10-15%と取れるという予測の話題す。
http://www.digitimes.com/news/a20081229PB202.html ----------------------
VIA platform accounts for 10-15% of netbook shipments in 2008, says paper
Apple Daily, December 29; Joseph Tsai, DIGITIMES [Monday 29 December 2008]
VIA's platform will account for 10-15% of the total netbook shipments this year, according
to a Chinese language Apply Daily report cited sources at VIA.
Power saving is VIA's major direction for CPU development continuing into next year;
the company's CPU size and power consumption were reduced by 30% and 33%, respectively
in 2008, and the company expects the values to see further drops of 25% and 41% in 2009,
added the paper.
----------------------
PC全体のノートへの移行と、世界不況の影響でますます市場拡大が予測されるNetbookすけど
VIA復権のキーになるのかどうか。。。
782 :
MACオタ :2008/12/30(火) 07:15:34 ID:lb36ze6A
次わ、Nvidiaの急速な40nmプロセス製品へのシフトの話題す。
http://www.digitimes.com/news/a20081229PD206.html --------------------
Nvidia to add more members to 40nm GT200 family
Monica Chen, Taipei; Joseph Tsai, DIGITIMES [Monday 29 December 2008]
In addition to the high-end GT212, Nvidia plans to launch 40nm GT214 and GT216 GPUs
to replace the current G94 and G96 chips for the mainstream market in the third quarter
of 2009, accord to sources at graphics card makers.
Meanwhile, the company will launch the GT218 to replace the G98 for the entry-level market.
For the integrated graphics processor (IGP) market, Nvidia will launch the iGT209 to replace
the current GeForce 9400 and 9300, added the sources.
Nvidia declined the opportunity to respond to this report saying it cannot comment on
unannounced products.
--------------------
パッケージ工程での不良をかかえているNvidiaだけに、火急速やかに新世代に移行したいのだと
思われるす。
実際にはnetbookよりもチョイ上のレンジで10-12inchクラスと思うが PC用途で使うにゃ、Atomはちょっと非力
784 :
Socket774 :2008/12/30(火) 09:06:12 ID:5qRYZ646
火急速やかに ってなんだ 可及的速やかに だろ
FAQヲタは下級戦士ですので
786 :
MACオタ :2008/12/30(火) 10:00:57 ID:lb36ze6A
>>784 さん
訂正感謝するす。流石に恥ずかしい間違いすね。。。
さて、ReadWorldTechやAcesHardware掲示板で話題になっているすけど、LNALからNehalem,
Barcelona, TigertonのHPC分野での性能を比較した論文が公開されているす。
http://www.worldscinet.com/ppl/mkt/free/S012962640800351X.html ■ 構成
- Dual Nehalem-EP/2.8GHz, 3ch. DDR3-1333MHz
- Quad Barcelona/2.0GHz, 2ch. DDR2-667MHz
- Quad Tigerton/2.93GHz, (total)4ch. FBDIMM-667MHz
■ 結果
- Memory (STREAM)
Nehalem: 35.8GB/s (コア当たり12,1GB/s)
Barcelona: 17.4GB/s (コア当たり4.4GB/s)
Tigerton: 10.2GB/s (コア当たり3.7GB/s)
- MPI latency (NehalemわHT on, TigertonわMCMであることに注意)
Nehalem: 0.76-0.80us (same core), 0.85-1.00us (same socket), 1.25-1.42us (QPI)
Barcelona: 1.20-1.21us (same socket), 1.47-1.49us (HT 1-hop), 1.55-1.56us (HT 2-hop)
Tigerton: 0.43-0.44us (same die), 0.84-0.85us (same socket), 1.63-1.64us (FSB)
- HPC applications 下記7種のコードを用いて評価
GTC (核融合シミュレーション), Partisn (原子炉シミュレーション)、SAGE (流体力学)、
SPaSM (分子動力学), Sweep3D (原子炉シミュレーション), VH1 (流体力学),
VPIC (プラズマシミュレーション)
・シングルコア性能
Nehalem vs. Barcelona: 1.4-3.6倍 Nehalemが速い
Nehalem vs. Tigerton: 1.5-3.3倍 Nehalemが速い
・ノードレベルの性能 (Nehalemのみ8-coreであることに注意)
Nehalem vs. Barcelona: 6項目でNehalemが高速
Nehalem vs. Tigerton: 5項目でNehalemが高速
その他、興味深い言及や結果わ、下記の通りす。 ・発表前の段階でNehalem-EP (Gainestown)が重要顧客の下でテストされていることわ 論文内容から明らかすけど、彼らに公開されているXeon-MPの仕様が書いてあるす。 - Nehalem-EX - 6 or 8 core - QPIリンクが増える - 大容量L3 ・SMTわHPC分野でも効果アリ。7項目中、4項目で性能向上。以下わ性能に変化が顕著に 現れたアプリケーションとその効果す。 - SPaSM: +54% - VPIC: +22% - GTC: +10% - Sweep3D & SAGE: -4% 本題からわ外れるすけど、この論文で比較されているK8L/2GHzからAMDも2.7-3.0GHzへ進歩 していることを考えると、Nehalemに及ばないとわ言え、論文の結果より最大50%程度の性能向上 が期待できるす。 安価にECCサポートの構成が可能なことを考えると、貧乏HPCにわ悪くない選択のような気もするす。
788 :
MACオタ :2008/12/30(火) 10:31:12 ID:lb36ze6A
789 :
MACオタ :2008/12/30(火) 10:57:10 ID:lb36ze6A
低脳火病中
2009をローマ数字で表すとMMIXになるわけだが Knuth先生は何かしら動きはあるかな?
ttp://forums.vr-zone.com/showthread.php?t=373252 >Nano 3000 will upgrade some of the micro-architecture designed to further
>improve the performance and joined the new SSE4 instruction set support.
>In addition, Nano 3000 will focus on strengthening the capacity of an integer and floating-point operations, at the same time improve the L1, L2
>Cache efficiency, although the Nano 3000 processors are still using 65 nm process, the VIA to the industry pointed out that as a mature technology
>and further fine-tuning process, VIA Nano 3000 compared to the performance of the power Nano 1000/2000 will be significantly improved.
> the dual-core version is expected in the second half of 2009 before the introduction of engineering samples of undetermined time to market.
C7のときで知りうる限りではC5J,C5Rの2つしか出なかったが
nano世代はC3世代並みの毎年更新になりそうだ
CNAは第1弾としてはまずまずの出来で
>>792 にあるように
演算自体は速いがキャッシュ、メモリ関係に難あり状態
Centaurも認識していたようで、CNBでその部分と
さらにアーキテクチャのチューニングがなされると
>>794 P6やK7の様に、コアの素性が良ければ10年以上に亘って派生種が続くす。
isaiahも改良を積み重ねて歴史に残るような製品になってくれるかもしれないすね。
3D Now!って64bit版OSでは使えないって本当?
MMレジスタってx64で拡張対象として放置されたレジスタセットじゃん コンテクストスイッチの際にMMレジスタの値を退避・復帰しなければ、安全には使えない。 でも実は(Windows XP/Vistaのx64版関しては)退避してる。 でも、今となってはAMDも3DNow!の利用自体を推奨してない。 K11からは命令自体が使えなくなるなんて話もあります。 VS2008だとMMX/3DNow!を使うコードはコンパイルが通らない
補足:64ビットコードを生成する場合の話。32ビット用については現状はまだ使えます。
800 :
MACオタ :2009/01/01(木) 08:30:31 ID:os1mREWn
新年おめでとうす。
さて海の向こうわ、まだ2008年すけどCell/B.EとXenonの開発に関する暴露本が出版された
らしいす。
http://online.wsj.com/article/SB123069467545545011.html ----------------------
In 2003, IBM's Adam Bennett showed Microsoft specs for the still-in-development Cell core.
[中略]
Mr. Shippy and Ms. Phipps detail the resulting absurdity: IBM employees hiding their work
from Sony and Toshiba engineers in the cubicles next to them; the Xbox chip being tested
a few floors above the Cell design teams.
----------------------
XenonのCPUコアがVMX128の拡張部分を除いて、CELL PPUと全く同じモノなのわ周知の事実
すけど、「CELL/B.E.の設計をMicrosoftにリークしてた」とか、「Sonyや東芝にわ秘密にしてた」
というのわ、中々エグい話す。
天罰覿面と言うべきなのか、IBMの次期組込コアとなる筈だったPPEわPS3とXbox360での派手な
デビューにもかかわらず、SPEの足を引っ張っているという悪評からか、その後の採用例を聞いた
ことわ無いす。
結局、アメリカの会社だからね
理論派のMACヲタと屁理屈しか言わない団子(笑)
理論派(笑) ただのコピペマンじゃん。まかり間違っても学者でも技術者じゃないよ。
コピペでソースしてるだけマシ ソースは俺というお前より(笑)
PowerPCの浮動小数加算命令のレイテンシが1なんて大嘘を言う池沼を 【理論派】と評する馬鹿を初めて見た。
806 :
MACオタ :2009/01/01(木) 11:37:04 ID:os1mREWn
>>804 さん
-------------------
ソースは俺というお前より(笑)
-------------------
団子さんわ、実際にソフトウェア的な実験を色々やっているのも事実す。
>>803 団子さん
特に皮肉でもなく、私わ団子さんに色々期待しているす。
でも、読者が自分と同じ資料を読んで、同じ知識を持ち、自分のネット上の著作を全て
読んでいるという前提で話をするのわヤメた方が良いと思うす。
自分の業績に関してわ、ちょっとリンクを貼るだけの話だし、ネットで仕入れた話なら
引用ついでに再確認すると、妙な思い違いで恥をかくことも無くなると思うす。
浮動小数の加算命令のレイテンシが1という思い違いによる恥は忘れたらしい
>>807 ------------------
浮動小数の加算命令のレイテンシが1という思い違いによる恥は忘れたらしい
------------------
「加算命令のレイテンシ」でなく、浮動小数点加算回路のレイテンシの話をMotorolaの
マニュアルで説明した筈すけど、理解できなかったなら仕方の無い話すね(笑)
お前の独り相撲には最初からかまってない。詭弁に詭弁を重ねても積み重なるのは恥だけ。
両方馬鹿でFA
「中間ステージ」のサイクル数が1だとか云々には意味がない。 命令のレイテンシが3〜4という事実 元々は浮動小数【命令】のレイテンシが整数より大きいと言う話だったような。。 そこでなぜ融合積和算が出てきたのか意味不明なんだが。 スループットを向上する技術ではあるがレイテンシの短縮とは直接関係ない。
>>809 そういう態度も独り善がりでみっともないぜ
多少知識が怪しくても一生懸命ソースを探して説明してるほうが好感持てる
「近くのコンビニまでパン買って来い」と言ってから買って戻ってくるまで4分かかった。 一方でパシリは「コンビニの店まで入ってパンを探してレジで会計する時間が1分で済んだ」と言う。 かかった時間の内訳なんて聞いてないんだよ。 結局4分かかったんだろって話。 あたまのわるいひとはいいました 「パンと牛乳を一緒に買えば時間短縮になるす(笑)」 ならねーよ(ぷ) そもそも一人だけ所要時間の概念がずれてるから いつまでも平行線
>>812 残念だが、めぼしい海外ニュースサイトはRSSに登録してるのでそれ以外関心がない。
興味のある人間だけ読めばいいだろ。読みたくもない記事貼られても鬱陶しいだけ。
>>814 結局自分の感情が判断基準か。やっぱり独り善がりだ
毎度毎度MACヲタは同じ言い訳ばかり したり顔で「加算処理は1クロックす(笑)」 「MMXのpmaddwdの後半の水平加算処理は実質0クロック」って言うくらい意味がない。 どんだけ脳みそ不自由なんだよ
817 :
MACオタ :2009/01/01(木) 12:37:50 ID:os1mREWn
>>800 の補足すけど、著者のDavid Shippyわ単なる下っ端のエンジニアでわ無いす。
IBMのCELL/B.E.論文の著者として名前を連ねる程度にわ大物す。
http://www.research.ibm.com/journal/rd/494/kahleaut.html --------------------
David Shippy
IBM Systems and Technology Group, STI Design Center, 11400 Burnet Road, Austin,
Texas 78758 (
[email protected] ).
Mr. Shippy received a B.S. degree in electrical engineering from the University of
Kentucky in 1983 and an M.S. degree in computer engineering from Syracuse University
in 1987. He has been involved with the design of high-performance processors for more
than 20 years, working on processors from notebooks to game machines to mainframes.
He was one of the lead architects for the POWER2*, G3 PowerPC, and POWER4*
processor designs. He is currently the chief architect for the power processing unit for
the Cell processor. Mr. Shippy holds numerous patents, has received an IBM Tenth
Plateau Invention Achievement Award, and has been recognized as an IBM Master
Inventor. He is an expert in the area of high-performance processor architecture and design.
--------------------
元日からこれか 今年も平和だね
割れ鍋に綴じ蓋ってやつだっけ
>>808 > 「加算命令のレイテンシ」でなく、浮動小数点加算回路のレイテンシの話をMotorolaの
> マニュアルで説明した筈すけど、理解できなかったなら仕方の無い話すね(笑)
お前はそんなことはしなかったと思うぞ。
引用してみてくれ。
このあたりか
pc11.2ch.net/test/read.cgi/jisaku/1217915128/
211 :Socket774:2008/10/18(土) 15:00:46 ID:r6fuKvHT
浮動小数演算のレイテンシが1のプロセッサがあると聞いた事があるんだけど誰か知らない?
212 :MACオタ>211 さん:2008/10/18(土) 15:12:13 ID:8sSawSax
>>211 当該コメントわ、依存命令へのフィードバック(デノーマル等の丸め処理無し)の話で、実例も
下記のように書いたかと思うす。未だに粘着しているということわ、内容が理解できなかったすか。。。
http://pc11.2ch.net/test/read.cgi/jisaku/1214999146/213 ========================
213 名前:MACオタ>団子 さん 投稿日:2008/08/17(日) 16:46:04 ID:Zsenu7UF
>>207 ------------------
スループット1をレイテンシ1だと思ってますなwwwww
------------------
古いコアデザインが回帰しているということで、PowerPC G4あたりのマニュアルでもどうぞ。
FMAをやるから加算のみでも1を乗ずる分余計にサイクルがかかるだけで、シングルステージ
で加算を行うす。
http://www.freescale.com/files/32bit/doc/ref_manual/MPC7410UM.pdf (Figure 6-3参照)
========================
pc11.2ch.net/test/read.cgi/jisaku/1217915128/
217 :MACオタ>団子 さん:2008/10/18(土) 16:40:12 ID:8sSawSax
>>216 恥ずかしい間違いを取り繕うために、ソースも無い電波説を書き込むから恥を書くす。。。
-----------------
AltiVecの積和算
-----------------
>>213 のリンク先を読めば判るようにスカラFPUの話題で、Altivecじゃ無いす。
そして、3段のステージの解説わFigure 6-3に「Multiply, Add, Round/Normalize」と明記されているす。
ちなみに、この当時のClassic PowerPCの解説わ沢山あるす。例えば
http://www-01.ibm.com/chips/techlib/techlib.nsf/techdocs/852569B20050FF7785256996007558C6/$file/cwg.pdf (p.105)
-----------------------
Figure 4-4 shows the floating-point pipeline. The execute stages have a multiply-add
structure: 1 cycle for multiply, 1 cycle for add, and one cycle for normalization.
-----------------------
どう考えても往復するだけで3〜4分かかるコンビニに行って帰ってくるのに 「牛乳を買うついでにパンを買ってくれば1分で済むす」 とわけのわからないことを言ってるのがMACヲタだよ。
Core 2でのLatency-Throughput PMULHW 3-1 PMULLW 3-1 PMADDWD 3-1 →「PMADDWDを使えば積和算が実質0クロックで出来るのでお得す」 5万円のデジタルビデオレコーダを買うと20%ポイントポイント還元 →「タダで1万円もらえるす」 どれだけアホなことを言ってるか本人にはまったくわかってない
普通に考えれば3ステージFMAの構成はこうだろう 1. 仮数部の(固定小数点)乗算、指数部の加算とシフト幅の決定 2. 仮数部のシフトおよび固定小数点加算 3. 丸め、正規化 3ステージすべてが浮動小数点加算にかかわるね 2だけ取り出して > 浮動小数点加算回路のレイテンシの話をMotorolaの マニュアルで説明した筈すけど、 つもりになるとは、しょせんは最後はMACオタか
浮動小数の加算なんてデノーマライズ&ノーマライズを抜けば 仮数部の24ビットor53ビットの整数加算+指数部補正だし。 そりゃ1クロック程度で済むよ。 何の意味もない数字だけどな
>>826 ----------------
仮数部の24ビットor53ビットの整数加算+指数部補正だし。
----------------
徐々に正しい理解に至りつつあるのわ結構な話す。ついでに
>>831 に引用されている部分だけでも
読み直して、後続命令に結果をフォワードする際にノーマライズが必要かどうかを考えてみると
良いかと。
「スループット」は1サイクルだけどレイテンシは単純に4クロックかかるが? お前プログラム組んだことあるの? 本当にレイテンシ1で済むのか検証してやるからアセンブリコード出してみろよ。 MPC7450機ならあるからよ。
むしろMacOSの開発ツールについてるSimG4って使ったことある? レイテンシチェインが視覚化できるんだが ど こ が 1サイクル なんですか?
>>829-830 -------------------
ど こ が 1サイクル なんですか?
-------------------
前回の議論わ、現実の実装の話でわ無かった筈す。
ただし、誰かさんが火病を起こして実装例を示せと大騒ぎしていたような。。。
正月から妙な展開わ勘弁して欲しいすから回答わ、この程度ということで。
・G3/G4のFPUわFMAパイプラインなので、加算専用のパイプラインわ無い
・元がショートパイプラインなので、特に専用のフォワーディングネットワークも無い
VFPUじゃなくてFPUのほうか。まあどっちでも言うことは同じだけどな。
> The execute stage consists of the time between dispatch to the execution unit (or reservation
> station) and the point at which the instruction vacates the execution unit.
>
> Most integer instructions have a one-cycle latency; results of these instructions can be used in the
> clock cycle after an instruction enters the execution unit. However, integer multiply and divide
> instructions take multiple clock cycles to complete. The IU1 can process all integer instructions;
> the IU2 can process all integer instructions except multiply and divide instructions.
> The LSU, FPU, VCIU and VFPU units are pipelined, as shown in Figure 6-2.
http://a-draw.com/uploader/src/up8310.gif
> ・G3/G4のFPUわFMAパイプラインなので、加算専用のパイプラインわ無い
> ・元がショートパイプラインなので、特に専用のフォワーディングネットワークも無い
それって結局レイテンシ3〜4かかるんだろ
結局
>>823 のパターン通りだ。
> 正月から妙な展開わ勘弁して欲しいす
敗者は忙しい。弁解に忙しい
835 :
Socket774 :2009/01/01(木) 20:03:37 ID:QMoyTjHp
ダンゴは今日も論破されてるな
つーか、元々の話題がLarrabeeだったと思うがx86アーキにとっては3〜4サイクルのレイテンシですら死活問題だ。 論理レジスタ本数が少ないからな。 (だからこそFGMTが実効性能を引き上げるのに有効なわけだが)
6502ジャあるまいし、今どきlatency1の演算あるわけねーのに throughputとlatencyを取り違えた勘違いレスをネタにして 正しいだの間違いだの 年が改まっても人の心は変わらずか… 一生やってろw
そこは心じゃなく脳というべきだろう
>>832 > ・元がショートパイプラインなので、特に専用のフォワーディングネットワークも無い
ショートパイプラインなのと、「専用の」フォワーディングネットワークがないのも事実だが
全然関係のない事柄を「なので」で結んで論理的に破綻しているMACオタクオリティ
841 :
マクドオタ :2009/01/02(金) 06:41:44 ID:4xStEnap
新年早々MACオタさんの
>>800 をソースとしてν速でスレが立っていた模様す。
http://tsushima.2ch.net/test/read.cgi/news/1230774890/ レスには昔を懐かしむ声が多数寄せられているす(笑)
----------------------
270:名無しさん@涙目です。 :2009/01/01(木) 11:42:37.38 ID:3038KtlV
マックオタとか言うのいまだに生きてたのか・・・
AIXスレに来てマルチメディアだの、Powerはクソだの言って
笑われてたのを思い出したわ・・・
----------------------
MACオタさんにわ,これからも長寿コテとして頑張ってもらいたいと思っているす。
カスだな
つまり、あなたと似たようなモノということです。
>>832 >前回の議論わ、現実の実装の話でわ無かった筈す。
古いPPCの3ステージFPUについて当時
>依存命令へのフィードバック(デノーマル等の丸め処理無し)の話で、実例も
>下記のように書いたかと思うす
「実例」って自分で発言してるじゃん。
実際は1サイクルで依存命令へのフィードバックなんてやってないわけだが?
馬鹿は相手しちゃいけません 論破じゃない。論理破綻だ。
浮動小数演算【命令】のレイテンシが長いことに対してFGMTでの命令間のレイテンシ隠蔽ができるだろといったんだが
どっかのアホは「1サイクルでできるす」
いまだアホ発言を繰り返すんだな
結局
>>823 なんだな
平行線なわけだ。
>古いコアデザインが回帰しているということで
x86はP6より更に前の古いコアデザインに回帰すると、浮動小数はパイプライン実行すらできません。
レイテンシどころかスループットもマルチサイクルです。【常識】です。
PowerPCとx86は別物だし作るのはIntelです。
> 過去ログに証拠が残っているのに、難癖をつけるヒト達わ、「嘘も百回言えば」の信奉者なのか、 > 本気で記憶力が皆無なのか。。。 過去ログに恥ずかしい発言が残ってるのにいまだ訂正もなしですか?www
191 :MACオタ>団子 さん [↓] :2008/08/17(日) 13:15:36 ID:Zsenu7UF
>>190 ---------------
命令間のレイテンシ隠蔽のための方策も全然違う。
4Wayのマルチスレッドによりプログラム側から見たレイテンシを小さくしたのがLarrabee
---------------
4-wayマルチスレッドわロード・ストアの隠蔽だと思われるす。
ショートパイプラインが売り(多分クロックわ低め)すから、命令レイテンシわ隠蔽するまでもなく
小さいんじゃないすかね。
レジスタわ少なそうすから、後続命令への演算結果のフォワーディングがCell/B.E.より重要になるし。。。
無知蒙昧なMACヲタの誤解 「x86では浮動小数演算命令も演算結果のフォワーディングをやっている」 Executeパイプラインの深い浮動小数演算命令で「フォワーディング」なんて、 Nehalemですらやっちゃいませんよ。 Future Fileを用いたショートカットをやってるのはフォワーディングによって レイテンシ1で済む整数系の演算のみです。 ショートカットファイルって消費電力が大きいからね。 インターリーブして隠蔽が常套手段。 AMDのSIMD整数が簡単な論理加減算すらレイテンシが伝統的に2なのも、 フォワーディングやってないから。Intelはやってるから基本的に1。
↓これも勝利宣言のつもりらしい。恥の上塗りにしかなってない
236 :MACオタ>団子 さん [↓] :2008/08/17(日) 18:28:58 ID:Zsenu7UF
>>232 ------------------
どういう発想で、より高クロックのLarrabeeでFPの加減算がレイテンシ1で済む
なんて妄想に至ったのか理解に苦しむな
------------------
誹謗も百回言えば信じてもらえて大勝利と(笑)
しかし将来引用されるのわ
>>190-192 な訳すけど。。。
もちろんLarrabeeのマイクロアーキテクチャがより明確になった段階で、的中している可能性もある
すから楽しみにすると良いかと思うす。
団子も恥ずかしい発言を無かったことにする点では同じだけどな
ソフトから見た見た目のレジスタ本数を増やさずにより多くの実レジスタを駆使して命令のレイテンシを隠蔽し スループットをあげるという点ではOoO+レジスタリネーミングもHWマルチスレッディングも同じだ CUDAなんか1ワープだけ動かしても4サイクルでインターリーブがデフォだし。 ↓しかしこれは笑うしかない > 長レイテンシの命令を隠蔽するんじゃ無かったすか?加減算だけなら浮動小数点でもシングルサイクル > で終わるかと思うす。
プログラミングの知識全く無いしなぁ IntelはLarrabeeの設計に当たってCellは「反面教師」としてしかみてないのに「参考にした」と思い込んでるあたり英語能力も低い
反面教師は立派に参考になってるじゃないw ていうかリングバスの採用とか考え方が全然違うという訳でもないんでしょ?
>>848 >「浮動小数点加算回路のレイテンシ」の実例す。
いやいやいやw
>依存命令へのフィードバック(デノーマル等の丸め処理無し)の話で、実例も
「依存命令へのフィードバック(デノーマル等の丸め処理無し)の話」って書いてるしw
自分で書いた文章が読めないのか?
LarrabeeはCellを参考にしたどころかパクリそのものだろ しかし中途半端にキャッシュに拘り劣化パクリになってしまったというオチ
>中途半端にキャッシュに拘り劣化パクリになってしまったというオチ 「反面教師」という言葉の意味がわかってなかったというオチ
>>848 > 808に書いたように「浮動小数点加算回路のレイテンシ」の実例す。
G4のFMAには「浮動小数点加算回路」は存在しないのね。
レイテンシ1の「固定小数点加算回路部」は存在するけど。
http://pc11.2ch.net/test/read.cgi/jisaku/1214999146/213 > 213 名前:MACオタ>団子 さん 投稿日:2008/08/17(日) 16:46:04 ID:Zsenu7UF
> 古いコアデザインが回帰しているということで、PowerPC G4あたりのマニュアルでもどうぞ。
> FMAをやるから加算のみでも1を乗ずる分余計にサイクルがかかるだけで、シングルステージ
> で加算を行うす。
G4の3サイクルFMAは「浮動小数点加算」には
1. シフト幅決定
2. シフト及び固定小数点加算
3. 丸めとノーマライズ
の3サイクルかけてるのはほぼ間違いがない。
MACオタは浮動小数点加算回路の構成を知らないんだと思うけど。
>>859 おい馬鹿、ワールドワイドでPS3より売れてるXbox 360もWiiもキャッシュアーキテクチャだが?
失敗したんだよCell【のほうが】
東芝もキャッシュを採用しようって言ってたのに山崎剛が猛反対したんだよ。
たまたまx86の延長で設計したら、同じく新設計で滑ったアーキがあったって話で。
Intelがx86という命令セットに拘るのはItaniumで痛い経験してるからであって
別にCellの失敗経験をフィードバックしたわけではない
また、x86互換を取る以上はスクラッチパッドメモリみたいな構成は不可能だし
SPUはこれ以上命令セットを拡張しようがない。
命令空間に余裕が無いもん。
x86のSIMD演算命令の拡張性は256ビットから1024ビットへ、あるいはそれ以上のスケーラビリティがある。
可変長命令セットのメリットだな。
そもそもどうしてキャッシュがスクラッチパッドメモリに対して劣化なんだ? ソフト開発者は逆のこと言ってるぞ。
k6-2とNanoのFP加算のレイテンシは2だったな
k6-2はクロックが上げられなかったけどね Nanoは知らん。
後期の「K6-2+」はK6-IIIのオンダイキャッシュ半減版
うぜ
>>854 > 団子も恥ずかしい発言を無かったことにする点では同じだけどな
>>855 > ソフトから見た見た目のレジスタ本数を増やさずにより多くの実レジスタを駆使して命令のレイテンシを隠蔽し
見た目の話題をそらしたり中傷やらでより多くの実レスを駆使して恥しい発言を隠蔽してるんだよww
CPUはモトローラのMC6800が傑作だったな、アドレッシングモードとかエレガントだった。
>>852 > Executeパイプラインの深い浮動小数演算命令で「フォワーディング」なんて、
> Nehalemですらやっちゃいませんよ。
>
> Future Fileを用いたショートカットをやってるのはフォワーディングによって
> レイテンシ1で済む整数系の演算のみです。
>
> ショートカットファイルって消費電力が大きいからね。
> インターリーブして隠蔽が常套手段。
????
フォワーディングって、一般的にはバイパスともいって、演算器の出力から入力へ直結することだけど。
初代MIPSだってやってるよ。
団子用語だと違うのか?
> AMDのSIMD整数が簡単な論理加減算すらレイテンシが伝統的に2なのも、
> フォワーディングやってないから。Intelはやってるから基本的に1。
AMDはSIMDユニットが64bit幅だからじゃないの?
872 :
レトリック君 :2009/01/03(土) 23:30:56 ID:gHxNpGsX
68000ジャなくて6800? PDP-11やNS16032の方が美人だった希ガス その一方VAXはブサw
CISCなんて所詮マイクロコードの厚化粧 命令だけ見てもねえ
>>871 んぁ?「Future File」って概念知らないのか?
消費電力がでかいから整数演算にしか採用されてないけどな。イスラエルチームのアーキは2〜3基しか備えてない。
Nehalemで大幅拡張された。
浮動小数はタグインデックスによる管理。
Intel CPUにおいてSIMD整数演算から浮動小数演算命令、またはその逆に繋げるとレイテンシが生じるのはそのせい。
AMDもBarcelona/Phenom以降のSIMD演算ユニットは128ビットだしIntelもPentium M/Core 1までは64ビットだった。
Pentium 4は1ポートに半速64ビット×2ユニット構成
あたまわりーんだからちゃんと勉強しろ
>>874 > んぁ?「Future File」って概念知らないのか?
> 消費電力がでかいから整数演算にしか採用されてないけどな。イスラエルチームのアーキは2〜3基しか備えてない。
> Nehalemで大幅拡張された。
おお、もうちょっと説明してくれ
> 浮動小数はタグインデックスによる管理。
> Intel CPUにおいてSIMD整数演算から浮動小数演算命令、またはその逆に繋げるとレイテンシが生じるのはそのせい。
こっちもお願いするぜ
> AMDもBarcelona/Phenom以降のSIMD演算ユニットは128ビットだしIntelもPentium M/Core 1までは64ビットだった。
> Pentium 4は1ポートに半速64ビット×2ユニット構成
> あたまわりーんだからちゃんと勉強しろ
AMDとかインテルでくくらずに最初からコア名で書けボケカス
Wikipedia 「レジスタリネーミング」を参照のこと。下手ないんちき本より詳しく概要が書いてある。 AMDは整数パイプ・浮動小数パイプで使い分けてて、FPパイプで実行されるSIMD整数命令もタグインデックス方式による管理。 一方で整数・浮動小数統合型パイプラインを採用するIntelは、SIMD・スカラに限らず整数か浮動小数かでレジスタ管理方法を 変えている。 x86におけるFuture Fileはレジスタのフォワーディングに相当するものだろ? Intel用語ではActive Register File。古いIntelアーキテクチャ最適化マニュアルで説明されてる。 整数・浮動小数間で具体的に何クロック遅延があるかはAgner.orgで計測結果があるから目を通しておくといい。 それとIntel Fanboy Blogの中の人がム板に貼ったCore 2におけるRegister Read Stallの症状のネタを、 大原がネタにしたことがあったろ? これがFuture Fileの枯渇だよ。 Pentium MでSSE2を使うとMMXより遅くなるなんて問題とかx64で遅くなるとか云々もこれが原因だ。 データバス幅64ビットベースだから128ビットSSE2整数命令を使うと1命令で2エントリ使っちゃう。 x64だとレジスタ増えた分調子に乗って命令をインターリーブするとレジスタ利用の局所性が(ry レジスタ少ないことは使用レジスタの局所性というメリットはあるわけだ。 HTとか論理レジスタ本数/幅増加なんてのは局所性を破壊する。 NehalemまでHTの採用が見送られた理由。Sandy BridgeのAVXで整数SIMD演算の256ビット版が提供されない理由。 全部繋がってるんだよ。 > AMDとかインテルでくくらずに最初からコア名で書けボケカス SIMD演算ユニット幅は関係ないって言ってるんだよ。レジスタ管理の手法がIntelはP6からCore i7まで、 AMDはK7からPhenomまでずっと同じなんだから。 それこそPentium 3とAthlonのMMXでもIntelはレイテンシ1、AMDは2だったわけよ。
Future Fileってこれのことか? wikipedia: 初期のアウト・オブ・オーダー実行マシンはリネーミング機構とROB/PRFを分離していなかった。そのため、初期のマシンではスケジューリングとリネーミングとデータ格納域が一体化していたのである。 最近のマシンは論理レジスタ番号でインデックスされたマップテーブルをRAMとして持っている。 たとえば、P6 がそうなっていて、Future Fileがそれである。他にも同様の構造のデータ格納域を持っている。 しかし、初期のマシンはリネーム機構に連想メモリを使っていた。 アウト・オブ・オーダー実行のマイクロアーキテクチャは連想メモリを排除することで進化してきたと言える。 小さな連想メモリは便利だが、大きな連想メモリは現実的でない。
>>876 フォワーディングってこれのこと?
www.archi.is.tohoku.ac.jp/people/usami/pdfs/6_4.pdf
最初にハザードを検出し、それからそのハザードを解消するために適切な値をフォワーディングしなければな
らない。詳しく見ると、EX ステージで読み出そうとするレジスタが、その前の命令においてWB ステージで書
き込もうとしているレジスタであるときに、その値をALU 入力として必要であることがわかる。ここで、表記
法を定めることにする。この表記法を用いて、”IF/ID.Register Rs”は、IF/ID パイプラインレジスタ中の読み出し
レジスタ1 を指すことにする。データハザードが発生する条件は下記の2 種類である。
1a EX/MEM.Register Rd=ID/EX.Register Rs
1b EX/MEM. Register Rd= ID/EX. Register Rt
2a MEM/WB. Register Rd= ID/EX.RegisterRs
2b MEM/WB. Register Rd= ID/EX.RegisterRt
命令の中には、レジスタに書き込みを行わないものがある。よって上記では、必要のないときにもフォワーデ
ィングを行ってしまう。この解決策の一つは、RegWrite信号がアサートされているかで判断する方法である。
>>877 レジスタ本数が少ないx86にはうってつけの機構だろ。予約機構って。
しかし浮動小数はレイテンシが決して小さくないから予約機構を使うのは現実的ではない。
で、どうやったか?
Pentium IIIでは64ビット(単精度×2)のSIMDユニットに対して128ビット(単精度×4)のSIMD演算をサポートした。
内部的に2回のSIMD論理演算に分解されて実行される。
実質的にレジスタ本数2倍で2回にアンロールして実行してるのと同等のスループットが得られるわけだ。
MACヲタはIntelがこういうテクニックを駆使して性能を向上させてきた経緯を知らない。
>>879 イエスかノーかで答えてくれないとわからん
MACオタはそもそもコード書けないからアンロールなんてわからないよ
×内部的に2回のSIMD論理演算 ○内部的に2回の2Way 単精度SIMD演算
>>880 IntelのそれとRISCのそれでは、実装方法も抱える問題も別だから単純にイコールでは結べないよ。
ただx86においてはFuture Fileを用いた予約機構がフォワーディングネットワークに相当する
ショートカット機構と考えて差し支えないと思う
>>879 > Pentium IIIでは64ビット(単精度×2)のSIMDユニットに対して128ビット(単精度×4)のSIMD演算をサポートした。
> 内部的に2回のSIMD論理演算に分解されて実行される。
> 実質的にレジスタ本数2倍で2回にアンロールして実行してるのと同等のスループットが得られるわけだ。
よくわからないけど、パイプライン化された1ビット演算命令では32ビット加算のスループットは32サイクルだと思うよ
>>883 > ただx86においてはFuture Fileを用いた予約機構がフォワーディングネットワークに相当する
> ショートカット機構と考えて差し支えないと思う
ヘネパタとかパタヘネのMIPS R2000相当品のバイパスネットワークとは別物?
どうちがうの?
>>884 何の関係があるんだ?w
SIMD演算だから上位64ビットと下位64ビットには依存関係がなく、スループット2サイクルで完了するんだよ。
Pentium IIIにおけるaddpsのレイテンシ-スループットは3-2、mulpsは5-2だ。
>>886 あんたインテルのスループットは基本的に1だって言ってるじゃん
インテルは1なのか2なのかどっちなのよ
>>852 > AMDのSIMD整数が簡単な論理加減算すらレイテンシが伝統的に2なのも、
> フォワーディングやってないから。Intelはやってるから基本的に1。
内部アーキテクチャレベルではスループット1だよ。 実装の倍のベクトルデータを処理すれば2になるだろ。当然の理屈だ ただし上下で依存関係がないから実質的なレイテンシは増えない。
っていうか、レイテンシとスループット混同病がここにも
だんごって技術系お笑い芸人だな 分かってる奴が読むと爆笑できるが 分かってない奴は本気にしちゃうかも知れない
レイテンシ1サイクル<スループット2サイクルとはまた奇妙な回路だ
×分かってる奴 ○分かってるつもりになってる奴 例:MACヲタ、フェンス(イサギ悪い)君、その他
ときどき変なこと言い出すのはネタってこと?
>>891 整数演算と浮動小数演算を混同してるな。やっぱ君頭悪い。
手に負えないね
ごちゃごちゃしてきたので整理してくれないか インテルアーキのSIMD整数演算命令のレイテンシとスループットを表にできる?できたらAMDも
896 :
Socket774 :2009/01/04(日) 01:02:55 ID:pyzhwMQ6
>>893 素で間違ってると思う。指摘しても絶対に素直に間違いは認めないのが特徴。あと指摘する際に煽ると確実に荒れる。
指摘を受けた後には己の過ちを改めて書き込みをしている(=成長している)ので優しく見守ってあげよう。
Pentium III/Pentium M/のSIMDユニットは
・整数論理加減算(レイテンシ1)/FP加算(単精度レイテンシ3)
・整数論理加減算(レイテンシ1)/整数乗算(レイテンシ3)/FP乗算(単精度レイテンシ5)
の2機構成。AMDのK8まではPenMまでの整数のレイテンシ+1であとは大体同じ。
>>895 http://agner.org/optimize/
単発ID(笑)
>>897 団子の口から語るのに意味があるので、団子さんコピペしてくださいな
リンク先はただのリンク集だしね
あとこの質問にも答えて欲しい
団子は自分がわかっているからか、用語の説明をしなくて困る
885 名前: Socket774 [sage] 投稿日: 2009/01/04(日) 00:38:32 ID:M+pbHESG
>>883 > ただx86においてはFuture Fileを用いた予約機構がフォワーディングネットワークに相当する
> ショートカット機構と考えて差し支えないと思う
ヘネパタとかパタヘネのMIPS R2000相当品のバイパスネットワークとは別物?
どうちがうの?
整数はFuture Fileによるレイテンシ短縮
浮動小数はベクトル長引き伸ばしやSMTでレイテンシ隠蔽
スループットを稼ぐ方策が違う。
浮動小数でフォワーディングだの正規化を省くだの馬鹿丸出しだよMACヲタは
>>897 面倒な作業はやる気は無い。お前がそうであるようにな
>4. Instruction tables: Lists of instruction latencies, throughputs and micro-operation breakdowns for Intel and AMD CPU's
http://agner.org/optimize/instruction_tables.pdf
902 :
MACオタ :2009/01/04(日) 01:13:38 ID:3NBBjJhf
実際のところ、つい数ヶ月前までフォワーディングそのものを知らなかった団子さんが
それをネタにして他人を煽っているのは、進歩と言えない事も無いですね。
http://pc11.2ch.net/test/read.cgi/jisaku/1214999146/256 -----------------
256 名前:,,・´∀`・,,)っ 投稿日:2008/08/17(日) 20:37:06 ID:C0ppS6h9
>フォワーディングネットワーク
これ予約機構のことかね?
Intel用語ではActive Register FileといってP6アーキのレジスタリネーミング機構の特徴の一つです。
結局LarrabeeはP5じゃないって言いたいんだな。
-----------------
>>900 違うとは言ってないだろ。足りない頭で考えろ。
AMDアーキのSIMDユニット幅がいまだに64ビットだと思ってる頭では無理かもしれないが。
>>903 違うとは言ってないけど、同じだとも言ってないんだよね
だから説明して欲しいんだってば
>>901 サンクス
>>902 よう恥大王
その引用が知らないなんていってるように見えるのか?おめでたい頭だな。
的確なレスだろ?
906 :
レトリック君 :2009/01/04(日) 01:17:50 ID:V/L0C+ul
フォワーディングがあるからlatencyが短いんじゃないだろ フォワーディングが効いたときは見かけ上latencyが短く演算が終わったように実行されるだろ 根本的にずれてるぞ
907 :
レトリック君 :2009/01/04(日) 01:19:31 ID:V/L0C+ul
正月からなにふぁふょってんだか… いい子だから寝なさい。オシッコ忘れるなよ
つまるところFuture Fileはレジスタファイルに対するキャッシュみたいなもんです。
>>876 > x86におけるFuture Fileはレジスタのフォワーディングに相当するものだろ?
さっきは見過してしまったんだけど、
レジスタのフォワーディングって何?
フォワードされるのはデータじゃないの?
団子アーキでは違うのか?
>>906 それ言い出したらレイテンシは命令フェッチからリタイヤまでの全パイプライン段数分になっちゃうんだが。
Intelは「latency」を依存関係のある後続命令を実行するまでにかかるサイクル数と説明してるから
それを前提に議論してる
addps xmm1, xmm2
xorps xmm1, xmm3←ビット論理演算です
みたいな命令シーケンスを、正規化サボってフォワーディングできると思ってるのがFUCKヲタクオリティ
>>909 またおかしなことを言い出すね
Pentium 4のマニュアルを読めばわかるが、WriteBack Bufferと呼ばれる
メモリへのストアに対するフォワーディング機構が別にある。
Future Fileはレジスタファイルへのストアフォワーディング機構だろ。
>>911 何がどこからどこにフォワードされるのか皆目わからん
5W1Hをちゃんと説明してくれんと困るよ
>5W1H 俺の前持ってた携帯の機種言われても困る おっとそれはW51Hだったかな
やっぱりお笑い芸人は無理筋じゃね?
push, popを延々繰り返すコードをクロックサイクル数はかってみればわかるよ。 現行の大半のx86アーキのロードレイテンシはL1キャッシュに対してすら3はあると言われてる。 同じアドレスに対するストア+ロードにかかるサイクルは最低6くらいあってしかりなんだが、 多くのCPUはそれ未満(実装依存)で処理されるんだよ。 メモリに対するストアフォワーディングだな。 たまにライターで「L0.5キャッシュ」なんて表現をする人もいるが本質的にはキャッシュではない
>>915 それがFuture Fileとどう関係があるの?
Macオタもう煽りしかしてないなあ。がんばれよ。
ないよ。 「レジスタのフォワーディング」って言ったのが意味が分からなかったんだろ メモリに対するフォワーディング機構が別にあるから区別するためそう言ったんだよ。
>>918 団子の説明したやつは、
ストアデータを、「演算器に対して」、フォワードする機構、だよ
> メモリに対するフォワーディング機構が別にあるから区別するためそう言ったんだよ。
メモリに対するフォワーディング機構ではないよ
つーかAMDのSIMD整数系の命令のレイテンシが2なのは 本当にフォワーディングをやってないからなの? 単に実行ステージが本当に2段あるんじゃなくて?
無限ループ状態か…
>>920 SIMDユニット側に予約機構がないのはガチだし逆に整数パイプ側では予約機構を使ってる。
汎用整数ユニットでやるとレイテンシ1で済むがMMXだと2かかる。
同じ64ビット幅なのになんでMMX側が2クロックかかると思う?
AMDのx86-64のもともとの計画では、FPパイプ側からSIMD整数命令を廃止して
汎用整数演算ユニット側でSIMDを含めた整数演算をやる予定だった。
K8ではSIMD整数ユニットは2Wayだが汎用ALUは3Wayだから、同じ演算をやるなら
汎用整数でやったほうがスループットも上回る。
Opteronリリース前までSSE2は浮動小数命令だけ互換と言っていたのも
浮動小数側でSIMD整数を実行したくない理由があったからと考えていい。
もちろん
>>901 をパイプラインの区別の段階でやってしまいたいから。
本当はSIMD処理を含めた「性能アップ」のために64ビットを売り込むつもりだったのだが
SSE2がそれなり普及しちゃったことで計画変更を余儀なくされた。
つまるところFPパイプ側でSIMD命令を実行する形態をとってる現状が、AMDにとっては不本意。
FPパイプラインがSIMD整数命令の実行に最適化されてないのは確かだろうね。
>>883 > IntelのそれとRISCのそれでは、実装方法も抱える問題も別だから単純にイコールでは結べないよ。
> ただx86においてはFuture Fileを用いた予約機構がフォワーディングネットワークに相当する
> ショートカット機構と考えて差し支えないと思う
団子の予約機構がどういうものかは説明がないのでわからんが
Future FileのないMIPS R2000にもフォワーディング(=バイパス)ネットワークは存在するわけよ
やっぱりFuture Fileは関係ないんじゃないの?
単純にイコールでは結べないとか言ってるけど、一言も説明できてないし、あんたやっぱり理解してないんじゃないの?
君の相手をする気は無い。最低限Agnerの書いたPDF読破してからおいで
とりあえず浮動小数ってのが気持ち悪いです。
>>922 なるほど。
つーか調べてみたらPPC970はスカラfp以外は(何故?)
フォワーディングをやってないように見える...
>>924 追い詰めて悪かった
フォワーディング(=バイパス)ネットワークというと、
一般的には演算器から演算器へレジスタをバイパスしてつなぐネットワークで、
パイプライン化されたプロセッサで整数演算命令のレイテンシを1にするためにはどうしても必要なものだけど
(ヘネパタにもパタヘネにも出てくるよ)
Future Fileとか言ってる君の念頭にあるものとは違うようなので、説明して欲しいんだ
R2000にはレジスタリネーミング機構自体がないからな。 そもそもレジスタリネーミングを理解してないだろ。 数行で説明できる概念じゃないよ。
>>928 レジスタリネーミングとフォワーディングネットワークは関係ないってこと?
団子の主張と違うじゃん
また的外れな低能発言を
だから予約機構についてちゃんと調べて来い
余談だがこれは去年Penrynの性能評価するために書いたコードだ
http://download.kousaku.in/trip/popcnt-ssse3.zip レジスタリネーミングがどれだけ有効か試す意味もあって作った
頭の固い腐れにはほとんど並列実行できないように見える釣りコードでもある。
これを2〜3命令並列でアウトオブオーダで実行できるようにしてしまうのがレジスタリネーミングだ
案の定インオーダのAtomだとボロボロの性能なんだけどな
R2000みたいなシングルスカラにも UltraSPARCみたいなインオーダースーパースカラにも 21264みたいなタグインデックス付きレジスタファイルのOoOにも K8の整数部みたいな予約機構のOoOにも どのプロセッサにもフォワーディングネットワークはあるんだけど、団子さんどう説明するのかな
フォワーディングネットワークなんてアーキテクチャの基本中の基本だから そんな余談を持ち出して誤魔化すほどではないと思うよ
パイプラインのライトバックステージの完了を待たずに 後続の依存命令を実行できるようにするのがフォワーディングでしょ? それ以上でも以下でもないと思うが...
>>930 > また的外れな低能発言を
> だから予約機構についてちゃんと調べて来い
僕はフォワーディングネットワークについて団子さんに質問しているんだけど、
こういう答えをするということは、団子さんは予約機構とフォワーディングネットワークに深い関係があると考えてるの?
>>933 僕もそう思うんだけど、団子はそう考えていないみたい
>>931-932 お前が理解の足りない馬鹿なだけだからさっさと寝ろ
誤魔化してなんかない。解決の糸口だ。
なぜこんなスループットが叩き出せるのか疑問を抱くところからスタートしてくれ。
考えることを辞めた腐れた脳みそでは理解できない。
>>936 団子さん、
>>874 あたりでは機嫌良く答えてくれてたんだから、今になってファビョって中傷に走らなくてもいいじゃない
>>933 OoO・レジスタリネーミングでレジスタファイルが巨大化して遠くなったから
演算ユニットに近いところにレジスタファイルのキャッシュを作りましょう
それがFuture Fileの概念。
まあ結局は言ってることは同じなんだけどな。
しかし違うとも違わないとも言ってないのに粘着だねこの馬鹿
うざいから ID:M+pbHESGをあぼーんした。
出たー 団子さんのあぼーん宣言
だって堂々巡りなんだもん。俺に同意を求めるな。
レイテンシとスループットの違いもわからないカスに論理的思考は無理だということだよ
あぼーんされたから多くは書かないけど
>>938 もFuture Fileは演算器に近くないぞ…
演算器に近いのは予約機構(=Reservation Station)だけど
レス番がdでるが、レイテンシとスループットを混同した負け犬がまだ遠吠えやってるのか
>>943 M+pbHESG君が何を言いたいのか良く分からないなぁ
池沼はどこまでも池沼だな Pentium 4の整数レジスタは128本ですがwww RSは実行前のμOPs(内部命令)を格納するところ。データはあくまでFuture File。
Googleでかじった知識でどうにかなるとでも思ったか?www
あぼーんしてなかったのか
V2C使ってるから消えたところマウスオーバーすると嫌でもポップアップが見えちゃうからね
まあいいや、Googleでかじってみました
http://www.springerlink.com/content/l313r14k351k248l/ The majority of register file designs follow one of two well?known approaches.
Many modern high-performance processors (POWER4 [1] , Pentium4 [2]) use a merged register file that holds both architectural and rename registers.
Other processors use a Future File (eg, Opteron [3]) with rename registers kept separately in reservation stations.
だそうです
団子さん、英語読めますか? なんなら解説しますけど。
ポップアップ出さない方法わかったわ これでごみが消える
黙って消えてくれて結構ですよ また明日よろしくお願いします
RSがレジスタファイルのキャッシュだと思ってるのは笑ったわ。
【LatencyとThroughputの違いの分からない負け犬除け】
http://www.tommesani.com/IntelPentiumIII.html μops are decoded, they will be issued from the in-order front-end into the Reservation Station (RS),
which is the beginning stage of the out-of-order core. In the RS, the μops wait until their data
operands are available; once a μop has all data sources available, it will be dispatched from the RS
to an execution unit. Once the μop has been executed it returns to the ReOrder Buffer and waits
for retirement. In this stage, all data values are written back to memory and all μops are retired in-order, three at a time.
>>955 > RSがレジスタファイルのキャッシュだと思ってるのは笑ったわ。
自分の間違いを、さも相手が言ったかのように捏造するのわ感心しないす
>>956 いや間違ってるのは君じゃないか?
違うのかい
>>957 ID変えてまで投稿しないでいいよ…そんなに怒ってないから
イサギ悪い馬鹿に触っちゃいけません。
960 :
●テヘ権田● :2009/01/04(日) 05:13:50 ID:66KvueeA
>>958 俺はID変えてないが?
というかさ、君はずっとダンゴ君に絡んでいるようだが・・・
何を言いたいのかさっぱり分からんのだが・・・
もう少し君の主張を分かり易くまとめて貰えるとありがたい
見えない敵と戦う人は素敵すぎます。 リアルエネミーゼロ
>>960 もう一人くらい解説希望者が出たらやります
フェンスから火病取ったら何も残りません
何でもいいや Pentium4はFuture Fileを採用していない、理解した?団子さん
965 :
●テヘ権田● :2009/01/04(日) 05:18:44 ID:Rl/DixMx
じゃあ俺もこれでいくわ
966 :
●テヘ権田● :2009/01/04(日) 05:22:53 ID:Rl/DixMx
Pentium M以降は具体的な物理レジスタ本数を公開してないんだが Pentium Pro以降のIntelアーキの整数レジスタ本数は決して少なくは無かったな。 P6でも40本程度かそれ以上あった気がする。
ポップアップ出さない方法も間違えてたの? 何をやらせても駄目だなあ、団子さん
968 :
●テヘ権田● :2009/01/04(日) 05:41:25 ID:Rl/DixMx
P6の物理レジスタ数を探してきてどうするんですか 今までの話には何の関係もありません
基本的な5段のパイプライン(命令フェッチ、命令デコード、実行、メモリアクセス、レジスタライトバック)だと、 ある命令のEXステージの演算結果は、直ちに次の命令のEXステージの入力にすることができる。 IF ID EX ME WB ↓ ←これ IF ID EX ME WB EXステージの直後からEXステージの直前にデータを転送するので、フォワーディングと言ったり、 後続のテージをバイパスするので、バイパスと言ったりする
団子の理解はこれ
883 名前: ,,・´∀`・,,)っ-●◎○ [sage] 投稿日: 2009/01/04(日) 00:36:55 ID:Rl/DixMx
>>880 IntelのそれとRISCのそれでは、実装方法も抱える問題も別だから単純にイコールでは結べないよ。
ただx86においてはFuture Fileを用いた予約機構がフォワーディングネットワークに相当する
ショートカット機構と考えて差し支えないと思う
どこまでも池沼だな。レイテンシ=スループットくんは
技術←→体制 を駆使して本格的に荒らして来たな
Intel用語だと"operand forwarding"って言うらしいんだが "operand forwarding" site:intel.com 1件だけ見つかったPDF見るにPentium 4の資料なんだが、例の倍速ALUがそれなんだろうな。 アレさ、デスティネーションレジスタの違う命令を2つ以上インターリーブすると ストールするんだよね。 嵌れば速いけど、遅いコードはとことん遅い。 池沼くんの説明するALUに結果を保持して結果を後続命令にフォワーディングする方式は NetBurstで途絶えてると思うんだ。 インターリーブしてもある程度は性能が落ちない程度の実装にしようと思えば 実レジスタファイルとALUの間の小規模なレジスタに保持する方式だ。 それがP6アーキテクチャでいうActive Register File(Future FileのIntel用語)だな。 だから、IntelのそれはRISCのそれとは違うと言えば違う。
池沼だらけ
アーキテクチャレジスタって書いてるのに128本とか40本とか 物理レジスタの本数を書いてる馬鹿は何なんだ
977 :
MACオタ :2009/01/04(日) 15:00:56 ID:3NBBjJhf
978 :
MACオタ :2009/01/04(日) 15:07:24 ID:3NBBjJhf
>>976 ウン大丈夫
私には8本の限界を超えた陰のレジスタが手に取るように見えるのだよギコハハハ
>>978 これは助かるね
MACオタさんも
> 「俺は何でも知っている」の方も、原著論文を探すのは面倒でしょうから、浅はかな記憶
> 内容の確認用に使うとよろしいのではないでしょうか。
こう言っていることですし、団子さんよく勉強してください
ところでMACオタさんは今年もROBはx86用語だと主張するんですか?
>>980 ----------------
ところでMACオタさんは今年もROBはx86用語だと主張するんですか?
----------------
事実上、そういうことなのではないのでしょうか?
かつての議論の際にIBM, DEC, ARM, etc.の資料を参考にしたかと思いますが、
"re-order buffer"とその同種の機構を"ROB"と表記しているのは、不思議なことに
x86互換ベンダばかりのようです。
>>978 まぁお前は読んでも脳みそがスカスカだから役に立たないもんな。
てか、ただの講義資料じゃねーか。学部生向けのwww
論文読め論文。IEEEとかACMとか情報処理学会とかのをな。
M電機の松井充の論文とか面白いぞ。
>>982 ---------------
論文読め論文。
---------------
論文は、読者がその分野の体系を知っているという前提で書かれていますから、一部のレビュー
ペーパーを除くと、参加者の知識ベースが一定していない掲示板では意味を成さないことも
あります。
それに、以前からあなたには随分論文を紹介してあげたと思いますけれど、難しすぎたのか、
あまりタメになっているようにも見えませんね。
----------------
M電機の松井充の論文とか面白いぞ。
----------------
論文を紹介するには、タイトル・著者;雑誌名・巻号・発行年・ページ数、等の情報が必須である
ことは、書いたことがある方ならご存知かと思いますが?
MACオタどうしちゃったの 今さら丁寧語とか 気持ち悪すぎて受け付けないんですが
ID辿ってったら 男色ゴリラ=ホモデロリアンだと自演白状してんだな こりゃすげえ
MACヲタは低学歴だから学会論文を読んだこともないんだろうね。
Re-order BufferなんてIntelとは直接関係のない大学の論文ですら普通に出てくる単語だ
SimpleScalerを弄って独自CPUアーキテクチャ作って性能評価なんてことやってる大学はたくさんある。
http://sitar.cs.inf.shizuoka.ac.jp/results/kitukawa1.pdf > 2048 BTB entries with 2bit satulatingcounter Speculative exection mechanism:
> out of order issue/commit of 4 op/cycle, 32entry reorder buffer,
~~~~~~~~~~~~~~~
> 32 entry load/store queue. Maximum of 8 unresolved branches.
> Loads execute only after all the precedingstore address are known.
> Values bypassed toloads from matching stores ahead load/storequeue.
987 :
●テヘ権田● :2009/01/04(日) 15:59:17 ID:Rl/DixMx
ちなみにこれ●持ってれば誰でも名乗れる名前
>>986 MACオタさんは、Re-order BufferとROBは別物だとおっしゃってるのですわ
989 :
●テヘ権田● :2009/01/04(日) 16:05:15 ID:Rl/DixMx
http://sslab.cs.nthu.edu.tw/~mayasky/Simulation%20of%20Computer%20Architectures_Simulators,%20Benchmarks,%20Methodologies,%20and%20Recommendations_slide.pdf Simulation of Computer Architectures:
Simulators, Benchmarks, Methodologies,
and Recommendations
Joshua J. Yi, Member, IEEE, and David J. Lilja, Fellow, IEEE
Found in: IEEE Transactions on Computers
> Single-processor performance simulators(2/2)
> ??Version 4.0 of sim-outorder-MASE (Micro Architectural Simulation Environment)
> ??notable features
> ??Splitting the RUU into a ROB (Reorder Buffer)andseparate reservation stations
~~~~~~~~~~~~~~~~~~~~~~~~
> ??A “checker”unit that verifies the correct execution
> ??more realistic memory interface
>>984 --------------
今さら丁寧語とか
--------------
もう十年も続けているので、皆さんとっくに気付いていると思いますが、「MACオタ」の設定は
アングラっぽかった昔の2ちゃんねるで、海外の腐れルーマーサイトと広告目当てで糞も味噌
も混ぜこぜにして垂れ流す国内のニュースサイトを叩くためのものでした。
初期設定では以下のような形を想定していました。
腐れルーマーサイトで仕入れデマを厨房さんが喜び勇んでカキコミ
-> MACオタさん、物凄く頭の悪そうな口調で事実を指摘
-> 厨房さん、ナメてかかって反論
-> MACオタさん、信頼度の高いソース付でやり込める
-> 厨房さん逆切れ
しかしながら、流石に十年も続けると色々事情が変わってきます。
1. 「あれはMACオタのキャラ」ということで、釣り効果が低くなった
2. そもそも若い人が技術に興味を持たなくなって、フレームに勝つために勉強するという
ことが無くなったように見える
3. 2ちゃんねるも世代交代で、最初から耳障りの悪い書き込みは読まれない傾向が散見される
4. 上記の現象で、正しい知識を書くにもとっつきが良いことが求められている
そういう訳で、2ちゃんねるも法人化したことを期に、やり方を変えてみました。
「勤勉な馬鹿ほど手に負えないものは無い」って有名な言葉がある。
旧AIM連合が作ったデファクトスタンダードは綺麗なデファクトスタンダード Intelが作ったデファクトスタンダードは汚いデファクトスタンダード ですね。わかります。
>>990 >もう十年も続けているので
中の人はずっと同じなの?
俺が2代目ロックオン先生でよくね? 狙い撃つぜ
>>994 騙りのヒト以外は同じですよ。
過去何人もいた騙りの人達は、自説を論証するにあたってきちんとしたソースを探して
くることができませんから、読者も簡単に区別できて長続きしなかった様です。
じゃあ始終論理破綻してる今のMACヲタは偽者なんだな。
>>997 ---------------
Reorder BufferをROBと略するのがx86陣営の比類なき独創性だということですか、
---------------
むしろその質問は、他のプロセッサベンダにして欲しいですね。私も不思議に思っています。
何だよw 真人間の自演だったらキモー。 でも、暇人であることにはかわり無さそうだな。
1001 :
1001 :
Over 1000 Thread