Google Android engineers have released an update on their progress towards implementing 16KB page size support. The transition from the existing 4KB page size to 16KB has resulted in a performance boost of around 5-10%, however it also increases RAM utilisation by about 9%.
To improve overall operating system speed and provide device manufacturers more options, Android 15 will support both 4 KB and 16 KB page sizes. The first Android system, with a 16 KB page size, will be accessible as a developer option on select devices. This enables developers to test and tweak their programs in readiness for future devices that use 16 KB page sizes.
advertisement
According to Android developer blog “In most CPUs, dedicated hardware called memory management units (MMUs) translate addresses from what a program is using to a physical location in memory. This translation is done on a page-size basis. Every time a program needs more memory, the operating system needs to get involved and fill out a “page table” entry, assigning that piece of memory to a process. When the page size is 4 times larger, there is 4 times less bookkeeping. So, the system can spend more time making sure your videos look great, games play well, and applications run smoothly, and less time filling out low-level operating system paperwork.
Advertisement
Hostinger
NOON FOOD COUPON
NFD79
Dubai Store
Unlike 32-bit/64-bit mode, a page size is not an Application Binary Interface (ABI). In other words, once an application is fixed to be page size agnostic, the same application binary can run on both 4 KB and 16 KB devices.
In Android 15, we’ve refactored Android from the ground up to support running at different page sizes, thus making it page-size agnostic.
Android Applications
All applications with native code or dependencies need to be recompiled for compatibility with 16 KB page size devices.
Since most native code within Android applications and SDKs have been built with 4 KB page size in mind, they need to be re-aligned to 16 KB so the binaries are compatible with both 4 KB and 16 KB devices. For most applications and SDKs, this is a 2 step process:
Rebuild the native code with 16 KB alignment.
Test and fix on a 16 KB device/emulator in case there are hardcode assumptions about page size.”