This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Performance for AArch64 in ILP32 ABI


Hi,

According to this mail thread https://gcc.gnu.org/ml/gcc-patches/2013-12/msg00282.html GCC has ILP32 GNU/Linux support.

1. The question is: how reasonable it can be to use ILP32 mode for building of the *whole* Linux distribution from the side of view of performance?

IIRC gcc built for i686 can work faster than gcc built for x86_64 architecture on the same hardware, because there are a lot of data structures with fields of pointer type, and if 32 pointers are used, less memory is allocated for these structures. As a result, smaller structures are loaded from memory faster and less cache misses happen. Is this the same case for AArch64 ILP32 ABI?

2nd idea is that if integers are of 32 bit size, than 2 times more integers can be saved in CPU registers than if they were of 64 bit size, and thus less loads/stores to the memory are needed.

2. What's the current status of ILP32 support implementation in GCC?

3. Did anybody try to benchmark AArch64 binaries ILP32 vs. LP64 builds? Is it possible to compare the performance of these modes?

Best regards,
Ilya Palachev


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]