"86u" is ambiguous, but given the 512kB memory I'm assuming you're talking about the RT-AC86U and not the RT-AX86U.
Some reasons are;
different architecture (32bit vs. 64bit)
different kernel version
different SDK
different hardware, requiring different drivers to be loaded
dynamic memory allocation (programs may alter their memory usage based on available memory)
etc.
The one thing that has almost zero effect on memory usage is the number of network connections.
"86u" is ambiguous, but given the 512kB memory I'm assuming you're talking about the RT-AC86U and not the RT-AX86U.
Some reasons are;
different architecture (32bit vs. 64bit)
different kernel version
different SDK
different hardware, requiring different drivers to be loaded
dynamic memory allocation (programs may alter their memory usage based on available memory)
etc.
The one thing that has almost zero effect on memory usage is the number of network connections.