異なるx86CPU(組み込みのFPUを備え、かなり最近、たとえばこのミレニアムを起動した)は、比較対象のCPUで同じ命令が使用可能であり、同じ入力で同じ動作パラメーターを使用していると仮定して、浮動小数点プリミティブに対してまったく同じ結果を生成します。丸めモード?私はタイミングの違いにも、Pentium FDIVバグ(その事件が古くからあるという理由だけで資格がない)にも興味がありません。
加算、減算、否定、および整数への丸めについては、答えは「はい」だと思います。これらには正確な定義があり、実装の相違がどのようなものであるかはほとんど想像できません(オーバーフローの検出におけるバグの可能性はほとんどありません)。アンダーフローですが、それは一部のアプリケーションでは災害になるので、これはずっと前に捕らえられて修正されていたと思います)。
乗算は、実装が異なる可能性が高いようです。2つのDPFPNの積の(たとえば)最も近い表現可能な倍精度浮動小数点数(64ビット、仮数の52 + 1を含む)を決定するには、仮数の積を(約)104ビット精度。これは、数LSBの場合、おそらく労力の無駄です。これも試みられ、正しく行われたのだろうか。それとも、IEEE-754、またはいくつかのデファクトスタンダードが何かを規定していますか?
分割はさらに繊細に見えます。
そして、一般的な設計を除いて、使用できるさまざまな数学的方法を考えると、はるかに複雑なもの(三角関数、ログなど)のすべての実装が正確に同期できるとは思えません。
私は純粋な騒々しさの組み合わせからそれを求めています。私の答えを改善する意欲; また、VMで実行されているプログラムが、実行されているふりをしているCPUと実際のCPUとの間の不一致を検出できるようにする方法が必要です。