For what it's worth, the apple silicon machines are much more efficient on RAM than most - a 16gb m1 absolutely mops the floor with the 32gb of ram I have in my thinkpad with an i7. It's not really even close.
Your comment might win you the argument on a random non tech forum but not here.
much more efficient in what? mops the floor by what? which year's i7?
Don't get me wrong, I 100% believe what happened, but if you mean "my macbook is faster than my i7 thinkpad" you should use those exact words, but not bring RAM into this discussion. If you want to make a point about RAM, you need to be clear about what workflow you were measuring, the methodology you were using, and what the exact result is. Otherwise your words have no meaning.
Repeating what I just commented elsewhere, but Mac uses several advanced memory management features: apps can share read-only memory for common frameworks, it will compress memory instead of paging out, better memory allocation, less fragmentation.
Bandwidth for copying things into memory is also vastly faster than what you get on Intel/AMD, for example on the Max chips you get 800GB/s which is the rough equivalent of 16 channels of DDR5-6400, something simply not available in consumer hardware. You can get 8 channels with AMD Epyc, but the motherboard for that alone will cost more than a Mac mini.
Sharing read-only/executable memory and compressed memory are also done on Windows 10+ and modern Linux distributions. No idea what "better memory allocation" and "less fragmentation" are.
800GB/s is a theoretical maximum but you wouldn't be able to use all of it from the CPU or even the GPU.
System design and stability. On MacOS a lot is shared between applications compared to the average Linux app. Dynamic linking has fallen out of favor in Linux recently [1], and the fragmentation in the ecosystem means apps have to deal with different GUI libraries, system lib versions etc, whereas on Mac you can safely target a minimum OS version when using system frameworks. Apps will also rarely use third party replacements as the provides libraries cover everything [2], from audio to image manipulation and ML.
People who need 64GB+ RAM are not running 1000 instances of native Apple apps. They run docker, VMs, they run AI models, compile huge projects, they run demanding graphics applications or IntelliJ on huge projects. Rich system libraries are irrelevant in these cases.
This thread started as question on how MacOS is more efficient, not the usefulness of more RAM. In any case, you might still benefit from the substantial increase in bandwidth and lower system / built-in apps memory usage, plus memory compression, making 16GB on Mac more useful than it seems.
I can run apps with 4 distinct toolkits on Linux and memory usage will barely go past the memory usage of opening one Facebook or Instagram tab in a browser.
Compared to compiling a single semi-large source file with -fsanitize=addresses which can cause one single instance of GCC or Clang to easily go past 5G of memory usage no matter the operating system...
I'm talking about memory bandwidth - maybe your workloads don't take advantage of that but most do and that's why apple designed their new chips to take advantage of it.
Video Editing. Backend and Frontend development utilizing docker containers. Just browsing the web with tons of tabs. Streaming video while doing other stuff in the background. Honestly most things I'd rather do on my M1.
So probably nothing that actually needs more than 16GB of RAM then. And realistically comparing M1 to an i7 several years older than it.
Having more RAM doesn't increase memory bandwidth and having more memory bandwidth doesn't necessarily mean better performance. You aren't even able to make use of all of the bandwidth your M1 is capable of in the real world [1].
Apple Silicon has good perf/watt but the gap probably isn't as big as you're thinking.
When did I say having more RAM increased memory bandwidth? Are you having a separate conversation with yourself right now? I feel like you might have misinterpreted what I originally said and just ran with it.
Not sure what you mean by 'efficient', they are faster for sure (amazing memory bandwidth thanks to on chip memory), but to my knowledge they would be the same for amount of data stored. So that same think pad will likely be faster at tasks that need 24GB for example, highly depend on the use case as always.
Memory requirements for general-purpose desktop usage usually don't come down to a single task with a large working set that needs to fit in RAM in its entirety. It's more often a matter of the aggregate memory usage of many tasks, which means that in practice there's a wide gray area where the OS can make a difference, depending on the effectiveness of its memory compression, swap, signalling memory pressure to applications, suspending background tasks or simply having fewer of them in the first place.
I run Ubuntu on my Thinkpad - I generally notice the biggest difference with video editing, but really multitasking anything is night and day because of the memory bandwidth. I use the same software on both machines for video editing, Davinci Resolve.