-
Notifications
You must be signed in to change notification settings - Fork 47
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
od: rs90: Set page size to 4k #91
base: opendingux
Are you sure you want to change the base?
Conversation
I want to do more tests before deciding whether or not it's a good idea to revert back to 4 KiB pages. |
Makes sense. I've rebased the PR and added some details to the commit message and PR description. |
If #81 compensates for the performance loss of switching back to 4 KiB then I think it is OK. I just need to find some time to test things. |
This makes the OS and applications a lot more RAM efficient: 1. Reduces OS overhead by 3.5 MiB. 2. Reduces RAM usage of applications (amount varies). This comes at small performance cost, <1 FPS in the emulators and ports that I've tested. Measuring `MemAvailable` and `Slab` with just "Terminal" running: Before: MemAvailable: 9760 kB Slab: 6816 kB After: MemAvailable: 13812 kB Slab: 5904 kB DevilutionX now loads the dungeon (without audio) and the FPS is unchanged. Signed-off-by: Gleb Mazovetskiy <[email protected]>
|
@glebm latest (pcercuei/ReGBA.git), both at 360 MHz yes. Just leave the title screen run, you will eventually arrive to this point. Note that FPS won't be very different when there are not many memory accesses or these memory accesses are contained into a small memory area (that fits in 128 KiB, aka. 32 pages). When the emulator or app needs to access a broader area of memory, for instance when a dynarec is recompiling code, or when accessing various parts of the ROM, then you can see the real difference. |
I'm going to measure various versions but the latest release of pcercuei/ReGBA doesn't launch on RG99 at all (https://github.com/pcercuei/ReGBA/releases/tag/regba-2021.03.24) |
I wonder if it'd work better with 1 hugepage anyway? If that's the case, perhaps we can have both better performance and more memory |
@glebm reserving one huge page means having 2 MiB reserved at all times, I'm not sure that helps you much. |
I have tested this on RetroMini some time ago.
|
@SnDream F2FS doesn't work with 16 KiB pages? |
yes, see: torvalds/linux@5c9b469295fb |
This makes the OS and applications a lot more RAM efficient:
This comes at small performance cost,
<1 FPS in the emulators and ports that I've tested.
Measuring
MemAvailable
andSlab
with just "Terminal" running:Before:
After:
Makes more games playable:
Performance on ReGBA is identical (no frameskip, measured from particular stable-FPS scenes):
/proc/meminfo with 4k page size: https://gist.github.com/glebm/5aa5ad09ebfa62feb7b695d298f95ed7