Page MenuHomeVyOS Platform

Support for x32 user space ABI (32-bit pointers) on x86-64 arch
Open, WishlistPublicFEATURE REQUEST

Description

Please consider a VyOS build for x32 ABI - unchanged 64-bit kernel, but using 32-bit pointers in user space means significant reduction in memory usage, fewer cache misses, better performance, while still keeping advantages of 64-bit vs 32-bit like more registers. This limits address space to 4GB per process (whole machine can still have more than 4GB RAM though) which is still more than enough even with multiple full BGP feeds today. Many machines VyOS runs on have <=4GB RAM anyway, in this case imited address space per process doesn't matter at all, but better performance does. More about the unofficial Debian x32 port - https://wiki.debian.org/X32Port

Back in the old days (a few years ago) when working x32 Debian installer was available, I was actually running a small Debian x32 installation with BIRD doing full BGP, on an old machine with just 1GB of RAM (which was not enough for Vyatta back then anymore) and it worked quite well for a year or so (until the hardware physically failed). So it should be reasonably stable, might uncover a few bugs in some software (assumptions about pointer size etc.) though.

Details

Difficulty level
Hard (possibly days)
Version
-
Why the issue appeared?
Will be filled on close
Is it a breaking change?
Unspecified (possibly destroys the router)
Issue type
Performance optimization

Event Timeline

marekm changed Difficulty level from Unknown (require assessment) to Hard (possibly days).Aug 25 2020, 8:53 AM
dmbaturin triaged this task as Wishlist priority.Jan 9 2024, 8:11 PM
dmbaturin set Issue type to Unspecified (please specify).
marekm changed Issue type from Unspecified (please specify) to Performance optimization.Tue, Sep 17, 7:09 AM

Not sure if still relevant after these years, as hardware has progressed to larger RAM sizes, but Debian x32 port doesn't seem to be very active anymore.