critical, on the beebem site the guy says (I paraphrase) 
if the master compatible v0.34 runs slow try running the older, model B only version.
i'm sure there's lots of reasons why master compatibility might slow things down.
anyway I was just looking through beebmem.cpp and i found this on memory writes:
// BBC B Start
    if (MachineType==0) {
	 if (Address<0x8000) {
		 WholeRam[Address]=Value;
		 return;
	 }
	 if ((Address<0xc000) && (Address>=0x8000)) {
		if (RomWritable[ROMSEL]) Roms[ROMSEL][Address-0x8000]=Value;
		return;
	 }
	}
// BBC B End
so every single time a model B opcode does a memory write it also goes through this  
if (MachineType==0) test to check its not a master or a B+
what do you think?  I know its only a cycle or two for the ARM to do this test but if its occurring every single time the 6502 does a mem write would it slow things down!?  I thought it might.
obviously taking it out interferes with master compatibility maybe there could be several executables, like mame ??  one for the model B with no master checking and vice versa.  just a thought 
also, the bit I've highlighted below (for ROM writes) in bold is not needed, its redundant cos of the previous if test:
	 if ((Address<0xc000) 
&& (Address>=0x8000)) {
		if (RomWritable[ROMSEL]) Roms[ROMSEL][Address-0x8000]=Value;
		return;
	 }
(although I think this last one will make no difference to speed!  i know games don't try to switch ROMs much 

)
keep going critical !