- Joined
- Sep 18, 2011
- Messages
- 742
I hacked that into function. Everything's a little... off
My implementation is probably pretty bad. There are pieces sticking out of glxgears. Unreal Tournament just renders a white screen.
However, it doesn't crash. That's promising.
http://bochs.info/~aegis/qemu-fpu - code is in the fpu branch at https://github.com/lunixbochs/qemu
I'm seeing a noticeable improvement in unproxied alsa payback:
aegis@rebirth:~$ time qemu-i386 ./aplay piano2.wav
Playing WAVE 'piano2.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, Stereo
real 0m35.232s
user 0m33.461s
sys 0m0.336s
Versus proxied:
aegis@rebirth:~$ time qemu-i386 ./aplay piano2.wav
Playing WAVE 'piano2.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, Stereo
real 0m6.684s
user 0m0.453s
sys 0m0.109s
aegis@rebirth:~$ time qemu-fpu ./aplay piano2.wav
Playing WAVE 'piano2.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, Stereo
real 0m6.684s
user 0m0.414s
sys 0m0.148s
The software-rendered 3d Jazz2 intro is also far smoother.
This shows us we can potentially get a 2x improvement on FPU performance by using native floating point. Probably more if we put NEON behind the SSE core. I'm probably not going to invest much more time into it however.
My implementation is probably pretty bad. There are pieces sticking out of glxgears. Unreal Tournament just renders a white screen.
However, it doesn't crash. That's promising.
http://bochs.info/~aegis/qemu-fpu - code is in the fpu branch at https://github.com/lunixbochs/qemu
I'm seeing a noticeable improvement in unproxied alsa payback:
aegis@rebirth:~$ time qemu-i386 ./aplay piano2.wav
Playing WAVE 'piano2.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, Stereo
real 0m35.232s
user 0m33.461s
sys 0m0.336s
Code:
aegis@rebirth:~$ time qemu-fpu ./aplay piano2.wav
Playing WAVE 'piano2.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, Stereo
real 0m16.935s
user 0m14.992s
sys 0m0.289s
aegis@rebirth:~$ time qemu-i386 ./aplay piano2.wav
Playing WAVE 'piano2.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, Stereo
real 0m6.684s
user 0m0.453s
sys 0m0.109s
aegis@rebirth:~$ time qemu-fpu ./aplay piano2.wav
Playing WAVE 'piano2.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, Stereo
real 0m6.684s
user 0m0.414s
sys 0m0.148s
The software-rendered 3d Jazz2 intro is also far smoother.
This shows us we can potentially get a 2x improvement on FPU performance by using native floating point. Probably more if we put NEON behind the SSE core. I'm probably not going to invest much more time into it however.
Last edited by a moderator: