HI

I and others have noticed that qemus-system-ppc sessions are running on the
Apple M1 at different speeds.
Randomly fast sessions and slower ones are started. The difference between
the speeds is 50%.
This has been tested on the Mac Mini M1 and Mac Studio M1. Tested on macOS
13 and 14.
Qemu versions tested were 7.2, 8.1 and the current 8.2. The system monitor
in macOS shows that performance cores are being used.
The problem does not occur on X86_64 - all sessions are equal.

A test program has been created:
http://zero.eik.bme.hu/~balaton/qemu/amiga/pegasos2-lame-test.zip
It runs the machine "qemu-system-ppc -machine pegasos2" with the lame
program to check the compression speed.

Here an example result - session '1' time 0:21 session '2' 0:47.
This is a random

--
*** Running test 1
Loading, please wait...
*** Running lame ***
LAME 3.100 32bits (http://lame.sf.net)
Using polyphase lowpass filter, transition band: 18671 Hz - 19205 Hz
Encoding /file_example_WAV_5MG.wav to <stdout>
Encoding as 44.1 kHz j-stereo MPEG-1 Layer III VBR(q=2)
    Frame          |  CPU time/estim | REAL time/estim | play/CPU |    ETA
  1149/1149  (100%)|    0:21/    0:21|    0:21/    0:21|   1.4096x|    0:00
QEMU 8.1.50 monitor - type 'help' for more information
Accelerator settings:
one-insn-per-tb: off

Translation buffer state:
gen code size       33089188/1073724416
TB count            52701
TB avg target size  24 max=2048 bytes
TB avg host size    290 bytes (expansion ratio: 11.9)
cross page TB count 0 (0%)
direct jump count   31901 (60%) (2 jumps=25814 48%)
TB hash buckets     24499/32768 (74.77% head buckets used)
TB hash occupancy   33.28% avg chain occ. Histogram: [0,10)%|▆ █
▅▁▃▁▁|[90,100]%
TB hash avg chain   1.019 buckets. Histogram: 1|█▁▁|3

*** Done
*** Running test 2
Loading, please wait...
*** Running lame ***
LAME 3.100 32bits (http://lame.sf.net)
Using polyphase lowpass filter, transition band: 18671 Hz - 19205 Hz
Encoding /file_example_WAV_5MG.wav to <stdout>
Encoding as 44.1 kHz j-stereo MPEG-1 Layer III VBR(q=2)
    Frame          |  CPU time/estim | REAL time/estim | play/CPU |    ETA
  1149/1149  (100%)|    0:47/    0:47|    0:47/    0:47|   0.6319x|    0:00
QEMU 8.1.50 monitor - type 'help' for more information
Accelerator settings:
one-insn-per-tb: off

Translation buffer state:
gen code size       34232132/1073724416
TB count            52750
TB avg target size  24 max=2048 bytes
TB avg host size    314 bytes (expansion ratio: 12.9)
cross page TB count 0 (0%)
direct jump count   31925 (60%) (2 jumps=25832 48%)
TB hash buckets     24479/32768 (74.70% head buckets used)
TB hash occupancy   33.39% avg chain occ. Histogram: [0,10)%|▆ █
▅▁▃▁▁|[90,100]%
TB hash avg chain   1.018 buckets. Histogram: 1|█▁|2
--

For more tesu than 3 passes, you can change lines ~43 by changing 3 to 10.
# Run test a few times
for i in `seq 1 3`; do


Request does anyone have Asahi Linux installed on Apple Silicon and QEmu to
check this test how it looks after Linux ?

Thank you in advance for your help
----

Reply via email to