Squidge
Certified Guru
[Oops, this should be posted in the developer section, as it's only intended for developers. None developers don't need to worry about this.]
More and more people seem to using the memory above the 32Mb GP2X Linux limit, so I thought I'd just drop in this small piece of information before they go overboard with it.
Did you know that in GP2X Linux, memory above 32Mb (ie, 0x02000000 and above) is 65% slower than memory < 32Mb (ie, memory allocated with malloc & c++'s new operator) ?
So, please don't store ROMs and other constantly accessed data in the upper memory, as it'll only slow your program down by a significant amount.
As a small benchmark, a simple byte copying 'for' loop can read and write 32Mb/sec with memory that was malloc'd, and 19Mb/sec with memory mmap'd to access above the 32Mb barrier.
More and more people seem to using the memory above the 32Mb GP2X Linux limit, so I thought I'd just drop in this small piece of information before they go overboard with it.
Did you know that in GP2X Linux, memory above 32Mb (ie, 0x02000000 and above) is 65% slower than memory < 32Mb (ie, memory allocated with malloc & c++'s new operator) ?
So, please don't store ROMs and other constantly accessed data in the upper memory, as it'll only slow your program down by a significant amount.
As a small benchmark, a simple byte copying 'for' loop can read and write 32Mb/sec with memory that was malloc'd, and 19Mb/sec with memory mmap'd to access above the 32Mb barrier.