Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!wuarchive!gem.mps.ohio-state.edu!tut.cis.ohio-state.edu!bloom-beacon!bu-cs!madd From: madd@bu-cs.BU.EDU (Jim Frost) Newsgroups: comp.unix.i386 Subject: Re: DOS emulation under 386/ix Message-ID: <40455@bu-cs.BU.EDU> Date: 15 Oct 89 21:28:08 GMT References: <1779@lamont.ldgo.columbia.edu> <1989Oct13.230333.19030@jdyx.UUCP> Reply-To: madd@cs.bu.edu (Jim Frost) Followup-To: comp.unix.i386 Organization: Software Tool & Die Lines: 40 In article <1989Oct13.230333.19030@jdyx.UUCP> tpf@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 |>pure DOS. | | |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 nonetheless. jim frost software tool & die madd@std.com