パスワードを忘れた? アカウント作成
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。

Skylake/Kaby LakeプロセッサのHTTに不具合」記事へのコメント

  • > short loops of less than 64 instructions that use AH, BH, CH or DH registers as well as their corresponding wider register (e.g. RAX, EAX or AX for AH) may cause unpredictable system behavior

    x64って、8080時代から拡張を重ねてきたレジスタ(HL→BX→EBX→RBXみたいな)を持っているけど、下から2番目のバイト(AH/BH/CH/DH)を特に挙げているのって何故だろう? AL/BL/CL/DLでは問題ないのだろうか?
    あと、レジスタ演算を多用して64命令以内でループしたらほとんど一次キャッシュに納まったまま実行されそうだけど、それが関係するんだろうか。
    あと、すこしオフトピですまんけど、x64の時代になった今でも(8080のHLレジスタの子孫である)EBX/RBXって高頻度で使用されるレジスタなんでしょうか?

    • by Anonymous Coward on 2017年06月27日 23時31分 (#3235194)

      ハイパースレッディングのために1個のコアは2セットの論理レジスタ(と大量の物理レジスタ)を持っているけど、
      1次キャッシュに収まるようなループで忙しくなるとどちらのスレッドでどのレジスタを使っていたか分からなくなって
      間違ったレジスタにアクセスしてしまうのかなぁと想像した。

      とりあえずPC Watchが簡単にまとめて [impress.co.jp]いた。

      親コメント

海軍に入るくらいなら海賊になった方がいい -- Steven Paul Jobs

処理中...