Message board for the users of flat assembler.
> MenuetOS > Menuet OS & emulation: Sluggish, and high CPU load
Goto page Previous 1, 2
I agree with JohnFound, but there are other important things a hobby OS needs, like not crashing.
From my tests
All run at the same speed when running only one program.
KolibriOS ran mark amount faster on bochs and virtualbox, but it also crashed twice, once so bad i needed to reboot linux.
I may of just been unlucky.
So where do you draw the line ?.
|18 Feb 2012, 18:24||
Update, it seems i was using a 3 year old ver of KolibriOS, the latest ver runs fine without crashing.
But still just as fast, maybe they have a very fast 24bpp buffer to screen, as thats the mode most enulators use, but real hardware uses 32bpp vesa.
|19 Feb 2012, 20:56||
@Dex4u: I've discovered that in QEMU you cannot find a 32bpp mode. Actually MenuetOS could have only optimized code for 32bpp. Its a single DWORD write/read per pixel and it can be vectorized Q, DQ, QQ etc.
In the real world we need to support 24bpp modes which conserve space, but coding gets trickier. Should I do a WORD+BYTE transfer or a BYTE+BYTE+BYTE. Maybe if I transfered 4 pixels, I could write 12 bytes in 3 DWORDs. 16 bytes wide XMM fits 5 pixels and 1/3 of the 6th.
Getting this wrong is really easy and like you suggested - "very fast 24bpp buffer to screen" - probably is due to some research and optimizations.
Everything can be optimized (maybe not some NOPs ), lets hope we'll see faster graphics performance from MenuetOS in the near future.
|20 Feb 2012, 11:17||
I've discovered that in QEMU you cannot find a 32bpp mode.
I am using QEMU through "QEMU manager" front end. So, there is a hardware manager and I am able to choose between "Cirrus Logic GD5446", "Standard VGA" and "VMWare SVGA-II" video cards. Only GD5456 doesn't support 32bpp modes. All others does.
I tested KolibriOS with different modes and graphic addapters (including 320x200x8bpp and 640x480x4bpp) and I can't see any difference in the speed between them. (although it has sluggish response sometimes.)
Tox ID: 48C0321ADDB2FE5F644BB5E3D58B0D58C35E5BCBC81D7CD333633FEDF1047914A534256478D9
|20 Feb 2012, 12:23||
|Goto page Previous 1, 2
< Last Thread | Next Thread >
Copyright © 1999-2020, Tomasz Grysztar. Also on GitHub, YouTube, Twitter.
Website powered by rwasa.