[Simh] VAX Emulation Speed Ramblings...
Kevin Brunt
k.brunt at ccs.bbk.ac.uk
Thu Aug 26 16:47:32 EDT 2004
On Thu, 26 Aug 2004 13:01:56 -0600 Kevin Handy <kth at srv.net> wrote:
> Robert Lawrence wrote:
>
> > According to
> > http://www.comwaretech.com/products/legacy_solutions/microvax.shtml,
> > "The REVIVER-VAX performance scales linearly with the PC's CPU speed.
> > For integer operations, REVIVER-VAX provides a performance of about
> > one VAX Unit of Processing (VUP) per 100 MHz of CPU clock. Disk I/O is
> > 5 to 20 times faster than on the original VAX."
> >
> > How are they doing this? Are they using some sort of JIT? I get
> > about 5 VUPs from a 1.2ghz using simh. According to their
> > calculations, 12 VUPs should be possible.
> >
> > What methods can be used to increase performance of simh/vax on any
> > given pc?
> >
> You are only looking at a ~2x difference in speed. Some possibilities:
>
> 1. Hand tuned machine language code.
>
> Compilers can do a good job, but handcrafted machine code can
> make a large improvement, and a 2x difference should be possible.
>
> However, you would then tie the emulator to run on only one
> specific CPU.
>
> 2. Improve the optimizers.
>
> Make the compilers produce better/faster code.
>
> 3. Hand optimization.
>
> Look for hot-spots in the simh code, and speed them up.
>
> 4. Less accurate emulation.
>
> If it doesn't have to produce the correct answer, you can make it
> as fast as you want.
>
> > Thanks,
You've possibly missed the underlying point which is that it's not
really fair comparing simh with a commercial product. Somebody is being
*paid* to make 'REVIVER-VAX' fast, no doubt getting the performance at
the expense of maintainability and portability - tuning a program up is
always something that is done *after* you've finished writing it.
The first place to look at in trying to speed up any emulator has to be
the memory access code - it's accessed repeatedly during (almost) every
instruction cycle. Every native instruction squeezed out here would
have the greatest overall effect.
Kevin
More information about the Simh
mailing list