2020年5月16日土曜日

PCエミュレータの方向性

最近は以前にも増してベンチマークオタクっぽく行動している
まあ分野はレトロなものが多いけど

で、各種PCエミュレータのお世話になっているのだが・・
以前から感じてはいたがエミュレータには2つの方向性がある

eFMR-50とかneko-projectのnp21とかはビンテージPCの再現を優先して製作されているもので実際のPC上で動かしていたゲームとかがその時の感覚で動く。
開発などに使うための逃れも用意されていてeFMRの場合だとメニュー>control>CPUx16とかを指定すると確かにCPUBENCH(-f指定)で指定通りの結果がでるので内部でCPUの実行の速度を上げていることが確認できる。ただ当方の環境だけかもしれないがキーボードをスキャンするタイミングがめっちゃシビアになってなかなか思う通りのタイピングが出来ないので使うとすればeFMR-50についていえばCPUx1での利用で、となる。

もう一つのエミュの方向性は当時のPCの仕様を今のハードウェアで実行するとどうなるか
(つまり現代的なcore iなんちゃらのclock 3GHzクラスのCPUだとどうなるか)
みたいな動きをするものもある。
その環境で種々の科学計算やコンパイルとかの実作業をするのなら大変ありがたい動きをするものである。反面、リアルタイムなゲームとかを実行するときには動きが速すぎて面白くもなんともなくゲームオーバーということになるのかもしれない
手持ちのPCエミュのなかではanex86がこのタイプのように思う。またDOSBOXやvirtualBoxの中にインストールしたPC-DOSも実PCの環境の影響を反映する。
(こうしたエミュ達は逆に普段は、かっとんで動いてゲームとかの時にエミュ先のビンテージPCの速度にタイミングを合わせるような設定があるのかしら?ゲームとかやらないせいか調べたことがないなあ)

これを検証するために往年の2つのベンチマークcpubenchdskbenchを実施した

すべて実行は270S(c:SSD)上
EmuPC名/テスト名CPUBenchDSKBench
キー反応RATIO
(vs PC98)
所要
時間(秒)
Seq
Write
Seq
Read
Rand
Write
Rand
Read
eFMR-50(486)普通15.184.550.080.070.270.23
CPUx2普通30.572.260.040.030.130.11
CPUx4やや反応悪60.611.140.020.020.080.06
CPUx8かなり無反応121.220.570.010.010.040.03
CPUx16ほぼ無反応246.780.2800.010.010
eFMR-50(386)----9.697.130.110.10.420.35
eFMR-50(286)----4.0117.210.210.180.720.62
anex86----153.550.450.020.010.090.04
DOSBox----265.760.260000
virtualbox DOS/V----69100.010.0100.030.02
当ブログの主のような利用方法ならeFMR-50を使うのなら486でCPUx2(or x4)辺りで使うのが好ましいのかな
DOSBoxのDSKBenchが速いのは素のSSDの速さを測っているのだからか
それにしてもvirtualBoxのDOS/Vの速さは際立つ

またエミュレートは原器に忠実な方が好ましいときにはeFMR-50は極めて忠実な設計がなされていると思われる。WinkipediaではFMR-50HE2がi386sx@20MHz,
FMR-250L4だとCPUはAm5x86@133MHz!判断しずらい!
cpubench添付のCPURACE.TXTによれば4.55秒は80386DX@25MHz( on J-3300)ほどの速度でありCPUx2の2.26秒は80486DX@25MHz( on PC-H98 model 100)のスピードと同じとなる(ちなみにCPUBenchの実行速度が母艦をm-bookに替えてもほとんど同じだったこともeFMRの設計が原器忠実再生を目指すものだとうかがわせる)

ま当ブログの方向性から行けばvirtualBoxの利用が正解なのかな?
(環境設定の手軽さだとDOSBoxも捨てがたい)

0 件のコメント:

dosvaxj3が更新されていた。

 最近、エミュレータ系をあまり触っていなかったのだけど久しぶりに見てみたらタイトルのようにdosvaxj3が更新されていた。 on emulatorでセルフにcなどのソースを書いて実行するのに母艦側の特定のフォルダをドライブとしてマウント出来たり普通に母艦のimeで漢字が入力でき...