DOS emulation under 386/ix
madd at bu-cs.BU.EDU
Mon Oct 16 07:28:08 AEST 1989
In article <1989Oct13.230333.19030 at jdyx.UUCP> tpf at jdyx.UUCP (Tom Friedel) writes:
|>I made some benchmarks with the VP/ix Dos emulation under
|>386/ix ver.2.02. The interesting thing was that running it
|>under VP/ix was about 5 times slower than running it under
|I've found most programs run less than 2 times slower, but I have
|one non-graphics program that runs probably five times slower. I
|have a math co-processor, if this is of interest. Any ideas...
Sure. I/O bound programs will run at nearly the same speed as under
pure DOS (emulation slows it down but the UNIX filesystem performance
is better than DOS much of the time), and compute-bound processes
will run markedly slower. A factor of five doesn't surprise me.
A lot of goo is running all the time under UNIX, sharing your CPU with
the DOS emulator. Thus your DOS emulator isn't going to get as much
CPU as pure DOS will. Additionally UNIX is using virtual memory
instead of real memory as DOS does. This causes two performance
penalties: first, memory fetches are something like 15% slower.
Second, a swapped-out page must be brought back from disk, forcing the
DOS emulator to wait while this happens.
What do you get in exchange for these losses? Additional UNIX
functionality in parallel with DOS functionality. Multiple DOS
emulations on one machine. Multiuser capability. And greater
apparent memory than physical memory. A lot of people think that the
losses are not as great as the gains. I agree.
Something to remember is that the DOS emulator is probably spending
most of its time in read-loops, so each DOS emulator is basically a
CPU-bound process, eating up quite a bit of resources. There are some
ways that the VP/ix writers could have reduced this, and they may have
-- I don't know for sure, but it's something to think about
software tool & die
madd at std.com
More information about the Comp.unix.i386