This is not the problem. You can find comments here how people literally said what 'it were running better than x86 Macs with 16+GBs'.
ADD: and 'nobody needs more than 8GB, because it works so fine'. Just to clarify.
Idk if it swaps fast or what, and I don't care.
M1 memory latency is 100ns, which wasn't really competitive with amd/intel at the time (70 something nano). Any SSD read be an order of magnitude slower than reading from ram - something to the tune of 5gb/s version vs 70gb/s for the SOC ram. For comparison, the intel trashcan mac pro clocked in at 60gb/sec a decade prior.
Reference:
https://www.anandtech.com/show/16252/mac-mini-apple-m1-teste...
https://www.anandtech.com/show/16214/amd-zen-3-ryzen-deep-di...
I'm basing my knowledge on discussions with other developers on rwkv.cpp because we were talking about how performance scales with the number of tokens per iteration. Memory speed/bandwidth came up and some things about M1 were said. Sorry about that.
Reading these always feels like winning an F1 race, then being gaslit about how that’s not possible because of inferior cylinder design.
I distinctly remember the reality distortion field that permeated the discussion ("Apple silicone doesn't need as much memory", "MacOS is more efficient than windows" and similar such idiocies) when those things first came out. Whoever Apple retained for this PR sure managed to bamboozle a lot of gullible people.
I will also say, Apple devices across the board are significantly better at memory management than both Android and Windows. Where on a Windows machine I feel I need 32 GBs, 16 GBs feels adequate on MacOS. And my understanding is the situation is similar between iOS and Android.
Ha no, I'm using 9.98Gb of ram with literally just a single tab browser window open in Mojave. You'll be swapping constantly with anything resembling a normal workflow.
It goes like this: new hardware comes out that is more powerful, people buy it because it feels good and everything is fast. Then new software uses all of it, and the cycle starts again with new hardware.
This.
It's not that people make their programs unacceptably slow on purpose. It's that they test their programs on incredibly and unrealistically powerful hardware.
I used to know someone that said they optimized their DOOM port or something like that for cheap old netbooks, and as a result, get hundreds of thousands of FPS on any vaguely modern system. And there's a video series on YouTube where someone is optimizing some voxelized game engine and uses the Intel iGPU - yes, the nearly-useless one you get on most of their Core-series CPUs - to vastly outperform a CPU implementation of a bunch of voxel algorithms anyway, because optimizing for such a weak GPU allows you to focus only on things that GPUs are actually fundamentally good at, as anything else will run unacceptably slowly. Unfortunately I don't remember what it was called.