[uae] euae not using all available cycles?

  • From: Don Venhaus <76665.562@xxxxxxxxxxxxxx>
  • To: uae@xxxxxxxxxxxxx
  • Date: Sat, 21 Apr 2007 20:15:15 -0400

I always keep a cpu monitor up ( xosview ) and have noticed that, when
cpu_speed=max, all of the available cpu time is not always used. Shouldn't the
host cpu be running full blast in that case? I have noticed that it is sound
dependent. With sound off cpu usage is about 100%, as I would expect. Sometimes
( with sound on ) it will be at 100%, then drop to 20% when a program that uses
sound is started. Sometimes it will be at 100% 10 or 15 seconds before
dropping.

It took some time to narrow this down, but it seems to be sound buffer size
related. With the sound latency at the default value (100 ), only about 20% of
the available host cpu time is used (On my machine, anyway). It's just loafing
for 80% of the time. However with latency=200, it jumps to 80%. The sound part
of config looks like...

sound_output=normal
sound_channels=stereo
sound_bits=16
sound_frequency=22050
sound_interpol=none
sound_latency=100

Surprisingly, I get about a 20% increase in amiga execution speed by
changing frequency to 44100. That's right, more samples means more
instructions per second! ?  Can this be right?

This is without the JIT, to keep it simple. It happens with the JIT, but not
as quickly.

Just for the record, this is on an Athlon XP 2500 running Slackware 10.2,
alsa 1.0.9b, e-uae-0.8.29-WIP4 with config...

./configure --with-alsa --with-sdl-gfx  --disable-action-replay \
       --disable-bsdsoc

This might explain why setting latency low causes such a perfomance hit.
E-uae is just not using all the cpu time available. Has anyone else seen
this?

don




Other related posts: