|
|
Subscribe / Log in / New account

Costs and benefits are multi-dimensional

Costs and benefits are multi-dimensional

Posted Sep 7, 2025 9:42 UTC (Sun) by jreiser (subscriber, #11027)
In reply to: Missing the reason by hsivonen
Parent article: No more 32-bit Firefox support

A 64-bit build is not necessarily better in every dimension of cost than a 32-bit build, and users may regard different dimensions as more important. For instance, the hardware memory cache might have a lower miss ratio on a 32-bit build because a pointer occupies only half as much space. Also, using the "x32" code model on x86_64, which restricts process address space to 4GiB but still enables using 16 CPU registers, might compensate for some of the advantages of full 64-bit. Even pointer tagging can be done on 32-bit pointers by segregating allocations that have different tag values into aligned 32KiB or 64KiB subspaces, and associating the tag with the subspace instead of directly in the pointer.


to post comments

Costs and benefits are multi-dimensional

Posted Sep 7, 2025 9:49 UTC (Sun) by wtarreau (subscriber, #51152) [Link]

> A 64-bit build is not necessarily better in every dimension of cost than a 32-bit build

I absolutely agree. For example my build farm at home runs on cortex A72 cores. After long testing, it appears that 32-bit thumb2 binaries are up to ~20% faster than aarch64 ones. Needless to say that I've built my toolchains for that target! In all my tests, aarch64 code is systematically bigger and slower than thumb2, it's sad that they've not worked on a compact and efficient instruction set for aarch64.


Copyright © 2025, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds