- 1 名前:デフォルトの名無しさん [2007/08/14(火) 17:18:08 ]
-
アセンブラ全般に関するスレッドです。 【前スレ】 アセンブラ… ( ゚д゚)ウッウー pc11.2ch.net/test/read.cgi/tech/1174825173/
- 381 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 21:49:11 ]
- >>390
だから、位置付けのどこが対応してるんだ? # 中身は、言わずもがなだろ。
- 382 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 21:49:29 ]
- 対抗するチップ、のほうがしっくり来るな。
- 383 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 21:50:25 ]
- はいはい、おじさん同士喧嘩しないの!
- 384 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 22:13:22 ]
- 横からお邪魔しますが,型番が全てを表してるんじゃないの?
- 385 名前:デフォルトの名無しさん mailto:sage 全てって何さ [2008/04/18(金) 12:22:59 ]
- いえ、型番だけではビット数もパッケージのピン数も
開発者の嫁の顔もわかりません。
- 386 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 13:02:05 ]
- 【コラム】Hello Worldコレクション (5) アセンブラ編 - OSごとに微妙に異なるスタイルを使い分ける
ttp://journal.mycom.co.jp/column/helloworld/005/index.html
- 387 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 15:08:28 ]
- 昔はVRAMのアドレスやジョイステックのポートを直接読んだり書いたり、Hello World なんかよりよほど面白かったんだけどな
アセンブラがわからなくても、ベーシックについているモニタモードなどでアドレス指定して直に書き換えしているうちに憶ちまった人もいるし 今はいちいちOSにお問い合わせしないと何もできないからすぐに結果が出せなくて面白くないね。 言語関係をやっている人以外には興味の湧くところでなくなった。
- 388 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 16:20:14 ]
- > 昔はVRAMのアドレスやジョイステックのポートを直接読んだり書いたり
必要なのはアセンブラではなくてメモリのマッピングの情報だったりする。 自身でも書いているけど、ベーシックだろうがCだろうが可能だよね。 ちょっと前に趣味でDSの自作ソフト作ってみたけど、 そこでもARMのアセンブラの知識が有効活用されたと思ったことはあまりなかったな。 本当にもうコンパイラ屋さんしか必要ない情報なのかも
- 389 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 16:21:53 ]
- 思い出した。ゲームのプロテクトを外すのにはアセンブラ必須だったね。
9801のディスクアクセス割り込みの CD 1B とか懐かしいな。
- 390 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 17:48:26 ]
- >>388
コンパイラのアセンブリ出力見たりしない? 私は最適化をどう行なったのか当たりをつけるために、しばしば見てるんだけどねぇ。
- 391 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 18:08:06 ]
- >>388
> 本当にもうコンパイラ屋さんしか必要ない情報なのかも ブート部分を書く人にも必須だよ。 まあ、流通量の多い機器ならコンパイラ屋さんがサンプル提供している ケースも多いけど。 >>390 >>388 は知らんけど、俺は何か問題かある時とかよっぽどきちきちに組み たい時以外は見なくなった。
- 392 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 18:26:12 ]
- 最近はコンパイラの品質も高く
あとは言わな(ry
- 393 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 18:31:45 ]
- >必要なのはアセンブラではなくてメモリのマッピングの情報だったりする。
最近のハードウェアがまたI/Oをメモリーにマップする(x86場合はIO空間か?)より 通信が中心になってパケットをDMAまたは、それに類似する方式で送る形式になっているので、 「すぐにアクセスできる感」は直に触ってもないんだよな。 近年のハイパフォーマンスを実現するにはアドレスとデータのペアなんか送っていたのでは性能が出ないというのも難解にしているような気がする。 すっかり総ネットワークプログラミング状態だよ。 昔ながらのアクセス方法が今に続いているのはメモリーだけになってきている。
- 394 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 18:37:08 ]
- >>392
高くはないけれど、最近のハードウェアの特性が地味チューンを無意味にしている所はある。 メモリーキャッシュに乗せる技術でほぼ全部だし、それ以外はやってもやらなくても殆ど変わらない。
- 395 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 18:46:25 ]
- うーむ、アセンブリ出力を眺めてループ内にdivがいくつあるか数えるような使い方するのはうちくらいか?w
- 396 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 19:06:55 ]
- よし、みんなで秋葉原の鈴商にHD64180を買いに行こう!
- 397 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 20:50:36 ]
- >>389
よく SYMDEB で弄ったな。 >>396 作りかけのCP/Mボードが部屋に転がってるw まだ64180なんて売ってるのか。 まぁ8085とか6800とかも売ってる所が在るから不思議では無いか。
- 398 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 21:33:00 ]
- 6800系はまだ現役だね。マイクロコントローラになっちゃってるけど。
- 399 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 23:24:05 ]
- >>395
多分君のところだけ。 普通のところはそんなことする必要がある部分は初めからアセンブラで書くと思う。
- 400 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 11:24:59 ]
- 86や使いこなせばこなすほどコンパイラなる我が身なりけり
68kどれを使えばよいのやらgccに道を問ふまで 引用元忘れた
- 401 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 16:31:46 ]
- 最初のコンパイラはASMで書いたけど、cができたらそのcもcで書き直すよね。
そうすると新しいチップができてもそのコンパイラはコンパイラで書くんじゃないの?
- 402 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/04/21(月) 16:45:42 ]
- 機械語やデータのバイト列生成するだけならfwriteとかfputcharで十分だな
- 403 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 17:42:38 ]
- sレコードとかならprintfでいける。
- 404 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 17:47:04 ]
- ところで昨日鈴商いったんですよ、でね、HD64180探してたら目の前に8085があるじゃないですか。
マルチプレクスされたバスなんて、ちょっと回路組んだ気分にひたるには丁度よさそうなんで、 そのまま8255と8251と8KSRAMまで買って帰ってきちゃいましたよ。 あと373とかも。 あとはROMが欲しいので、今日、若松でDIPのFlash買って来ました。 さて、ハンダ付けハンダ付け・・・ >>397 CP/M関連でお勧めのサイトありますか? あったら教えてください。
- 405 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 17:58:42 ]
- www.auction.co.jp/mem1/item/mem_itm_item.asp?LOT=1036477
120円、高っ、いつか10円になっていた時代があったような・・・
- 406 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 19:56:06 ]
- >>396
俺が知っているのはTMP64180だな。
- 407 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 21:52:02 ]
- >>401
コンパイラ本体は C で書くけど、どんなコード生成すればいいかはアセンブラと 言うか機械語の知識が必要でしょ。 あと、コンパイラによってはアセンブラソースを吐く奴もいるし。
- 408 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 15:14:04 ]
- >>407 コンパイラの最終一歩手前フェーズ(機械語生成フェーズ)がその知識を抱え込めば
いいはずですよね。 その後に最適化フェーズが何パスかあるかも。 アセンブラソースを吐かすのはデバックとかそのフェーズ検証のためが第一義で、 コンパイラでアプリを開発する人には、ゼロとは言わんがあんまりメリット無い気がする。
- 409 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 07:22:49 ]
- >>408
いや。コンパイラ使いにも、-S 出力のメリットはある。 同じ処理で、どっちの書き方が効率良さそうかをみる時には活用できる。 もちろんベンチを取るでもいいんだけど。
- 410 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 18:19:15 ]
- 半田づけする時のヤニが焦げる香りが好きで吸い込んでいた事があったのを思い出して今ぞっとした。鉛中毒は何年後にでるかなorz
融点が高いという話は聞いていますが今の鉛フリーの半田は取り扱い難くなっているとかあるんですかね?
- 411 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 18:32:06 ]
- はげしく板違いだな。
鉛フリーは使った事ないけど、濡れにくいと聞いている。
- 412 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 19:40:41 ]
- 上でも言われてるけどコンパイラの最適化具合見る為にアセンブリ吐かせるっしょ。
iclもifort単純な演算にハメてやらないとすぐベクトル化諦めやがる。 ま、大抵の場合はそこまで単純化出来ないから結局intrinsics使う事になるんだけどな。
- 413 名前:デフォルトの名無しさん mailto:sage [2008/04/26(土) 12:41:25 ]
- >>411 処女みたいなもんだな。
- 414 名前:デフォルトの名無しさん mailto:sage [2008/04/28(月) 01:55:57 ]
- 技量に大きく依存する点も似てるな
- 415 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:28:01 ]
- intelプロセッサに未だにDWORDの並列演算が無いのは嫌がらせか?
- 416 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:49:34 ]
- DWORD*4ならSSE2になかったっけ?
- 417 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 10:33:42 ]
- 〜〜やるのに都合のいい命令が無いっていうならわかるけど、
並列演算が無いっていうのは調べて無さすぎだろ MMX かなり限定的な使用のみ SSE 大幅に拡張された SSE2 かなりのところまで使えるようになった SSE3/SSE4 さらに便利に wlog.flatlib.jp/archive/1/2007-4-21
- 418 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 23:00:14 ]
- 415だが正しくは32bitの飽和並列演算が無いの間違いだった。
- 419 名前:デフォルトの名無しさん mailto:sage [2008/05/03(土) 01:24:48 ]
- 実行頻度低そー
- 420 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/05/03(土) 11:49:23 ]
- 2byte空間にOpcode余ってないからじゃないの?
それよりSIMDにNEG代替命令が無くて困る。 NANDやNOR入れてくれよ。
- 421 名前:デフォルトの名無しさん mailto:sage [2008/05/03(土) 11:53:14 ]
- >>420
pcmpeq で all 1 つくって、pxor じゃ駄目なの? レジスタ節約したいとか、クロック節約したいとか切実に思うけど。
- 422 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/05/03(土) 12:07:40 ]
- ぼくがかんがえたAVX 2に入れるべき最強命令(笑)
vpnand ymm0, ymm1, ymm2 vpnor ymm0, ymm1, ymm2 vporn ymm0, ymm1, ymm2 vpeqv ymm0, ymm1, ymm2 vpcmov ymm0, ymm1, ymm2, ymm3 あと、3〜4入力のAND, OR, XORがあってもいいくらいだな これなんてDSP? つーかDWORDの飽和演算なんてARGB128bitとか使わない限り要らんな。
- 423 名前:デフォルトの名無しさん mailto:sage [2008/05/03(土) 14:51:40 ]
- >3〜4入力のAND, OR, XOR
これいいな
- 424 名前:デフォルトの名無しさん mailto:sage [2008/05/03(土) 20:38:30 ]
- >>420
AVXの発表で思ったんだが、まだ1byte空間に空きがある事の方が驚き。 NEGは俺も凄く欲しい。しかしVMXにも無いよな。 マイナス取るって事はその後演算するって事なんだろうから、 可能な限り演算順序を入れ替えて対処しろって事かと。 あとはuOP Fusionみたいのでxor/subの組み合わせを特別に認識している可能性はある。 もしくは入れ替えに対処出来ない状況というのはa*(-b)のような積や商に入っている場合だから、 どっちにしろ積のレイテンシ待ちだしその間にやれば?って発想かも知れん。 >>423 ハードウェアの仕組みを知らんが、入力ポートと出力ポートの数に制限があるんじゃないか? そうじゃないと配線が大変な希ガス。
- 425 名前:デフォルトの名無しさん mailto:sage [2008/05/03(土) 22:00:04 ]
- > ハードウェアの仕組みを知らんが
ハードウェアの勉強してから書けよ。
- 426 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/05/03(土) 22:57:45 ]
- negはできるわ。SSSE3のpsign*が使える。まあ2段構えになるが。
無いのはNOTだな。 AVXでは4引数(3入力1出力)を実現するのにVEXの他にimm8の上位4ビットを使ってるが 下位4ビットも使えば5引数(4入力1出力)も可能だろうし、実際に何かしらやる計画はあるのだろう。
- 427 名前:デフォルトの名無しさん mailto:sage [2008/05/04(日) 00:34:13 ]
- >>425
スマン。 >>426 命令にエンコード出来るかどうかじゃなくて、実装出来るかどうか。 多分レジスタファイルが何十とあって、 そこから処理する値を取ってきて保管する場所があって、 それを処理して、出力を保管する場所があるんじゃないか? 例えばパラレル配線で繋がっているメモリからの読み出しをクロック当たり1byte増やそうと思ったら CPUのピン、メモリのピン、基盤の配線が全て8本増えるって事だと思うんだが、 オペランド数を増やすのも似たようなことが起きそうな気がする。 3オペランド化は殆どの命令に恩恵があるからやる価値があったのだろうけど たった数命令の為に膨大なトランジスタリソースを裂く必要があれば全く目もくれないと思うんだが。
- 428 名前:デフォルトの名無しさん mailto:sage [2008/05/04(日) 11:58:02 ]
- 謝る暇があったら、勉強しなよ。
> 多分レジスタファイルが何十とあって、 > そこから処理する値を取ってきて保管する場所があって、 > それを処理して、出力を保管する場所があるんじゃないか? 何を言いたいのかさっぱりわからん。 そのあとの文章も同様。
- 429 名前:デフォルトの名無しさん mailto:sage [2008/05/04(日) 13:31:06 ]
- >>428
お前は分かっているのか。 大雑把に教えてくれるなり指摘してくれ。 CPUにレジスタファイルが何十と入っているのは分かるよな。 処理部分がVHDLで記述されていようと自分で回路書いていようと、結局は回路な訳だ。 例えば1bitのAND回路があった時に、通常入力は2つで出力は1つだろう。 レジスタファイルが100あってもその全てがAND回路に繋がっているはずがない。 入力として必要な2つだけが選択的に一次レジスタのような格好で取り出され、処理が選択されるんじゃないかと。 > そのあとの文章も同様。 妄想だらけな文章でも、そのあとの方が理解しやすいと思うんだがどの辺が分からなかった?
- 430 名前:デフォルトの名無しさん mailto:sage [2008/05/04(日) 14:56:18 ]
- >>429
「CPUの作り方」みたいな本が沢山出てるから、どれでも一冊読んでみ。 バスとかセレクタとか・・・
- 431 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/05/04(日) 19:48:18 ]
- 「imm8を使えばとれる引数増やせるじゃん」って言ったら
「デコーダが複雑になるだろ」とか集中砲火浴びたことがあった。 今じゃ、 Opcode ModRM [SIB] [DISP] imm8, imm8 なんて命令すらありますね。AMDだけど。 SSE5では最初のimm8をDREXに置き換えたのかな?
- 432 名前:デフォルトの名無しさん mailto:sage [2008/05/04(日) 20:14:41 ]
- ダンゴさんは先見の明がありすぎるな
- 433 名前:デフォルトの名無しさん mailto:sage [2008/05/04(日) 20:34:10 ]
- >>429
デコーダはあっち置いといて。 4入力ANDを追加するとして、バスから4入力ANDへ引く線と AND回路と、結果を書き戻す回路が必要になるだけだろう。 ファンアウトでも気にしてるのか?
- 434 名前:デフォルトの名無しさん mailto:sage [2008/05/04(日) 20:43:56 ]
- つ「74LS181」
focus.ti.com/lit/ds/symlink/sn74s181.pdf
- 435 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/05/04(日) 21:22:57 ]
- 4入力のANDは
[A]─AND─AND-[E] [B]─┘ │ [C]─AND─┘ [D]─┘ 一方、VMXでいうvselbとかAMD SSE5のpcmovは [A]━━━━AND-OR-[D] [B]─AND─╂─┘ [C]━┷NOT┛ VMXに関してはvand/vor/vnor/vxorと同じレイテンシで実現できてることを考えれば 3〜4入力はそんなに実装難易度は高くない気がする。
- 436 名前:デフォルトの名無しさん mailto:sage [2008/05/04(日) 21:45:39 ]
- 多オペランド演算の問題はALUではなく
レジスタからALUへのパスが複雑化することにあるんだが。 どうせ回路を複雑にするなら特殊な専用命令を追加するより スーパースカラやベクトル演算器を入れた方が効率がいい。
- 437 名前:デフォルトの名無しさん mailto:sage [2008/05/04(日) 22:00:32 ]
- 今はregister fileのportからALUへのpathはoperandの数だけ独立に引いてる?
それとも時分割してる?
- 438 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 02:19:03 ]
- レジスタファイルって何を指してる?
ただのレジスタってか、FFのことを言ってるのか?
- 439 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 08:01:28 ]
- 何十って言ってるから、32/64bit レジスタを1個と思ってるんじゃね?
- 440 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 11:15:38 ]
- 64ビットx8本くらいのレジスタファイルが100セットくらいあると思ってるのかもよ。
- 441 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 11:41:00 ]
- いや、だから、そのファイルって、何を言おうとしてるのかなと。
どこかのメーカの用語か?
- 442 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 11:48:39 ]
- ああ、レジスタ全体のことか。失礼。
- 443 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 12:08:55 ]
- つ ttp://en.wikipedia.org/wiki/Register_file
- 444 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 12:45:41 ]
- レジスタファイルはプロセッサコア方面では普通に使われる。
CPU作ろう系の本には必ず出てくるよ。
- 445 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 12:56:12 ]
- アーキテクチャによるだろ
- 446 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 13:10:05 ]
- アーキテクチャはあんまり関係ないだろ。
全部ワイアードでも、マイクロプログラムの説明は出てくるように。 ただ、萌え系のあの本にはレジスタファイルの解説は無さそうだ。
- 447 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 13:20:06 ]
- レジスタファイルの概念が確立した以後の本で、その本で造ろうとする石で
プロセッサファイルを使っているか、総合的な解説に字数を割いていれば 出てくるとは思うけど。
- 448 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/05/05(月) 13:23:53 ]
- とりあえずレジスタリネーミング機構のあるプロセッサには確実にあるものだと思ってるが。
ATOMにすらあるようだな。2スレッドで独立してるらしいが。
- 449 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 15:20:32 ]
- >>447
> プロセッサファイルを また、俺の知らない単語が出てきたよ...。
- 450 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 15:26:06 ]
- おれも初耳だよ(´・ω・`)
- 451 名前:447 mailto:sage [2008/05/05(月) 15:27:42 ]
- かきまつがえたorz
- 452 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 15:47:13 ]
- いまのうちに実用新案出しておくんだ!
- 453 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 20:06:44 ]
- 商標登録でもいいんじゃね?
- 454 名前:デフォルトの名無しさん mailto:sage [2008/05/06(火) 11:50:06 ]
- おれはネコ耳だよ
- 455 名前:デフォルトの名無しさん mailto:sage [2008/05/06(火) 18:41:44 ]
- 娘さんを下さい
- 456 名前:デフォルトの名無しさん [2008/05/16(金) 11:56:11 ]
- x86 について調べていますが、Core 2 にも U パイプラインや V パイプラインがあって、それぞれペアリングできる条件がありますか?
intel の資料で「ペアリング」や「Uパイプライン」で検索してもヒットしないので、どうすればペアリングされるのか分かりません。
- 457 名前:デフォルトの名無しさん [2008/05/16(金) 12:01:59 ]
- OSもなにもなしにx86系のCPUに直接マシン語を読ませて、実行するには
どういう環境が必要でしょうか
- 458 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 12:05:45 ]
- コードをROMに書いてみるなりしたら?
- 459 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/05/16(金) 12:10:11 ]
- >>456
Core 2は4Wayパイプラインでアウトオブオーダ実行だからそんな古い知識は捨ててしまいなさい ALUのポートとレイテンシさえ知ってればいい。 まあAtomではまた必要になりそうだがな
- 460 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 12:36:46 ]
- >>457
WindowsやLinuxなどのUnixなどたいていのOSは、 CPUの保護モードを利用して、普通の機械語プログラムは 直接CPUにくべて走らせています。 もし、OSの保護下でなく直接機械語を実行させたいなら、 MS-DOSのような保護のないOSを使うか、ブートセクタに 書き込んで実行させるのが手軽です。
- 461 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 16:34:03 ]
- >>457
『30日でできる!OS自作入門』という本が参考になるかもしれない。 読んだことないけど。
- 462 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 17:33:42 ]
- リアルタイムOSを利用しましょう
- 463 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 18:12:26 ]
- >>459
U/V パイプラインというものはないということでしょうか? 参考にしていたサイトが古かったようです。 ALUのポートは Core 2 では確か 3 つですよね。ということは、ALU を使う演算は同時に 3 つできるのですね。 レイテンシは Intel の資料の付録にあったので、それを参考にします。 スループットは大事ではないのですか?
- 464 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/05/16(金) 18:44:09 ]
- >>463
もちろん大事。 スループットは、殆どの命令で1クロックサイクル。 ALUの3ポートのどれでも実行出来る命令は1/3と表現される。 んで、レイテンシ・スループットサイクル数が多い命令は概して複数のμOpsに分解して実行する命令ですね。 まあ各命令ごとの使用ポートの詳細はagner.orgあたりが詳しいと思う。 掛け算とかシフトとか発行できるポートが決まってるから、その辺さえ抑えておけばOK。 ちなみにPentium Pro以降のx86アーキテクチャは命令の並べ方自体にはそんなに意味はない。 10数命令前後する程度なら、依存関係さえ無ければ平気で並べ替えて実行できます。
- 465 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 02:32:22 ]
- >>464
なるほど、ありがとうございました。
- 466 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 02:40:59 ]
- レジスタ少ないからこの
>依存関係さえ無ければ って意外と手で書くには難しいところはあるかもしれないけどね。
- 467 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 19:54:18 ]
- >>466
それは団子に散々指摘してるんだが学習しないんだよな。 ストレステスト(笑)しか作った事無いんじゃないかと。 CPUが割と広い視野を見てくれる事は事実だろうから知識として与えてもいいが、 質問者がわざわざintrinsicsじゃなくてアセンブラでやりたい/出来るだけの知識がある人なんだから 重要なところから目を反らすような発言はいただけない。
- 468 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/05/17(土) 19:56:24 ]
- >>467←レジスタリネーミングも知らないのかこいつ
- 469 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 20:11:11 ]
- 依存関係がなければリネームできるけど
あったら無理だろ
- 470 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/05/17(土) 20:28:31 ]
- 依存関係を断ち切る方法だってIntelの最適化マヌアルに載ってるんだがな。
逆に、OoO・レジスタリネーム機構で断ち切れない依存関係なんて インオーダ時代のアーキテクチャの知識があってもどうにかなるわけがないだろう。 tripper.kousaku.in/20080307.html#p01 ↑これだってレジスタ利用数を意図的に絞ってコード組んでるんだけどね。
- 471 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 21:13:29 ]
- > 依存関係を断ち切る方法だってIntelの最適化マヌアルに載ってるんだがな。
最初からそういう方向性でものを言った方がいいだろって言ってるんだよ。 否定されたものだから否定で返しやがって ほんっと主語が読めてないな。
- 472 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/05/17(土) 21:17:27 ]
- 前述のagnerのにもIntelの資料読む必要ないくらい詳しく載ってる。
- 473 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 22:01:13 ]
- >>471
>ほんっと主語が読めてないな。 期待したあなたの負け
- 474 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 22:15:40 ]
- ダ●ゴさんのカキコでスレが一気にヒートアップしたな
- 475 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/05/17(土) 22:26:26 ]
- 474 名前:あぼ〜ん[あぼ〜ん] 投稿日:あぼ〜ん
- 476 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/05/17(土) 22:27:36 ]
- >>471
自分の了見の狭さを露呈したからといって相手に理解力がないことにするのは詭弁以外のなんでもないよ。
- 477 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 23:25:54 ]
- 自分の了見の狭さ
- 478 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 00:44:31 ]
- いちいち例は挙げないが団子が知ってる知識だけ披露して、
外野の煽りはまだしも理論的に攻められてもスルーするのは昔から。
- 479 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 01:39:07 ]
- 団子さんの知識に嫉妬する輩のせいでスレがションボリしたな
- 480 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 01:40:45 ]
- 外野アァン
- 481 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 02:17:41 ]
- 壊れたラジオみたいなもんだ
使い方によっては便利?
|

|