Hi Mark,

On 17.8.2014 18:16, Mark Cave-Ayland wrote:
> Another issue I've found with my OpenBIOS tests is that HelenOS PPC
> appears to be quite sluggish under the latest qemu-system-ppc. I've
> attempted a few bisections but it's quite tricky to tie the regression
> down to one particular commit.
> 
> The slowness starts to appear in a minor form with the 1.6 timer rewrite
> and seems to have become worse with newer QEMU releases. There have been
> various changes to the OpenBIOS frequency/tb-frequency properties in
> order to support OS X PPC in this timeframe so I'm wondering if somehow
> HelenOS is exposing a bug in the qemu-system-ppc timer emulation?
> 
> In order to reproduce, grab a QEMU 2.1 release tarball, compile and
> install and then launch like this:
> 
> qemu-system-ppc -cdrom HelenOS-0.5.0-ppc32.iso -m 512 -boot d
> 
> As soon as the main kernel executes you can see the delay in writing
> characters to the VGA console.

I also noticed that as of QEMU 2.0, HelenOS/ppc32 under QEMU became
quite slow.

Now, I am not a ppc32 expert either, but I suspect that the problem is
related to the way HelenOS programs the decrementer exception. It always
does so using the instruction below:

  mtdec reg     ; reg = 1000

So we always use constant 1000, regardless of what the real frequency
property is. I guess this is a constant which used to work reasonably
well under PearPC back then and has stayed ever since. *Martin*, correct
me if I am wrong, please. Btw, was the actual frequency increased? That
could explain why HelenOS/ppc32 became slower - with more exceptions
you'd have bigger overhead.

Jakub


_______________________________________________
HelenOS-devel mailing list
[email protected]
http://lists.modry.cz/listinfo/helenos-devel

Reply via email to