MS-DOS Player の更新でメモリ関連が速くなったかもしれないので、
素数計算 SOSU4 で、各CPUのエミュレーション速度を計測してみました。
23-12-14版 24-02-19版
PC1 MS-DOS Player 231214 PC1 MS-DOS Player 240219
ia32_x64 ia32_x64
Number = 10000 0: 0' 3 Number = 10000 0: 0' 2
Number = 20000 0: 0' 9 Number = 20000 0: 0' 6
pentium4_x64
無し Number = 10000 0: 0' 5
Number = 20000 0: 0'14
i486_x64 i486_x64
Number = 10000 0: 0' 4 Number = 10000 0: 0' 2
Number = 20000 0: 0'14 Number = 20000 0: 0'14
i386_x64 i386_x64
Number = 10000 0: 1'40 Number = 10000 0: 1'39
Number = 20000 0: 5'31 Number = 20000 0: 5'27
i286_x64 i286_x64
Number = 10000 0: 0'45 Number = 10000 0: 0'50
Number = 20000 0: 2'29 Number = 20000 0: 2'42
v30_x64 v30_x64
Number = 10000 0: 0'43 Number = 10000 0: 0'45
Number = 20000 0: 2'21 Number = 20000 0: 2'30
ia32_x86 ia32_x86
Number = 10000 0: 0' 3 Number = 10000 0: 0' 3
Number = 20000 0: 0' 9 Number = 20000 0: 0' 9
pentium4_x86
無し Number = 10000 0: 0' 6
Number = 20000 0: 0'20
i486_x86 i486_x86
Number = 10000 0: 0' 6 Number = 10000 0: 0' 6
Number = 20000 0: 0'18 Number = 20000 0: 0'18
i386_x86 i386_x86
Number = 10000 0: 2' 4 Number = 10000 0: 2'13
Number = 20000 0: 6'51 Number = 20000 0: 7'22
i286_x86 i286_x86
Number = 10000 0: 0'47 Number = 10000 0: 0'56
Number = 20000 0: 2'33 Number = 20000 0: 3' 6
v30_x86 v30_x86
Number = 10000 0: 0'36 Number = 10000 0: 0'45
Number = 20000 0: 2' 2 Number = 20000 0: 2'28
こうしてみると、新しい版が少し速くなっているようですね。
でも i286 以下では逆に旧版より遅くなっているような。
計算式のアルゴリズムとの相性もあるかもです。
私が間違えてる可能性もあります。
i386 以下は CPU エミュレーション率が高いのか、遅くなっていますが
特に i386 が突出して遅いのが気になります。
CPUエミュレーションのルーチンはいくつか種類があると思いますが、
速さより正確さを優先した結果ということでしょうか。
うーん、この結果を武田さんに送ってみようかなぁ。
新しい版の ia32_x64 がメモリ速度では良さそうですね。
みなさん、CPUを選ぶときはこの表も参考にしてね。
MS-DOS Player の更新で CPU速度の変化が気になったので、
素数計算 SOSU4 で 各CPUのエミュレーション速度計測しました。
23-12-14版 24-02-19版 24-02-28版
MS-DOS Player 231214 240219 240228
ia32_x64 ia32_x64 ia32_x64
Number = 10000 0: 0' 3 0: 0' 2 0: 0' 3
Number = 20000 0: 0' 9 0: 0' 6 0: 0'10
i486_x64 i486_x64 i486_x64
Number = 10000 0: 0' 4 0: 0' 2 0: 0' 5
Number = 20000 0: 0'14 0: 0'14 0: 0'18
i386_x64 i386_x64 i386_x64
Number = 10000 0: 1'40 0: 1'39 0: 1'56
Number = 20000 0: 5'31 0: 5'27
i286_x64 i286_x64 i286_x64
Number = 10000 0: 0'45 0: 0'50 0: 1' 4
Number = 20000 0: 2'29 0: 2'42
最新版の速度計測は手抜きですが、少し遅くなったような気がします。
条件判定などが増えたからでしょうか。