5 ms·
I'm still assuming it's faster due to unified memory architecture, latest generation lithography and less on tailored behavior for their OS. An AMD/Intel using
by adriancr 5y ago
I'm still assuming it's faster due to unified memory architecture, latest generation lithography and less on tailored behavior for their OS.
An AMD/Intel using same soldered RAM next to CPU and same process node would give Apple a run for its money.
Still, the optimizations on OS side are interesting here.
- skohan 5y agoAs far as I understand, it has a lot to do with the actual design of the processor[1], and not so much to do with the on-chip memory or the software integration. [1]: https://news.ycombinator.com/item?id=25257932 https://news.ycombinator.com/item?id=25257932
- Toutouxc 5y agoI thought the "unified memory" meme had been debunked multiple times here.
- SigmundA 5y agoMemory is unified its just not on die. CPU and GPU and AI share unified memory which means zero copy transfers between them.
- icedchai 5y agoI laughed when they called it “unified memory.” Amazing what some marketing can do. In previous years, that was called “shared graphics memory” and it was only for low end systems.
- Aaargh20318 5y agoShared graphics-memory is not the same as unified memory. In a shared graphics-memory system, a part of the system RAM is reserved for the GPU. The amount of RAM reported to the OS is the total RAM minus the chunk reserved the GPU uses. The OS only can use it's own part, and cannot access the GPU memory (and vice versa). If you want to make something available to the GPU, it still has to be copied to the reserved GPU part. In unified memory both the OS and the GPU can access the entire range of memory, no need for a (slow) copy. Consoles use the same strategy (using fast GDDR for both system and GPU), and it's one of the reasons consoles punch above their weight graphically. The main reason that high-end GPUs use discrete memory is because they use high-bandwidth memory that has to live very close to the GPU. The user-replaceable RAM modules in a typical PC are much too far away from the GPU to use the same kind of high bandwidth memory. If you drop the 'user replaceable' requirement and place everything close together, you can have the benefits of both high bandwidth and unified memory.
- floatboth 5y ago> If you want to make something available to the GPU, it still has to be copied to the reserved GPU part. Or allocate on the GPU side and get direct access to it from the CPU, achieving zero-copy: https://software.intel.com/content/www/us/en/develop/articles/zero-copy-texture-uploads-in-chrome-os.html https://software.intel.com/content/www/us/en/develop/article...
- kllrnohj 5y ago> If you drop the 'user replaceable' requirement and place everything close together, you can have the benefits of both high bandwidth and unified memory Rather, if you drop the "big GPU" requirement then you can place everything close together. So called APUs have been unified memory for years & years now (so more or less Intel's entire lineup, and AMD's entire laptop SKUs & some desktop ones). It still ends up associated with low-end because there's only so much die space you can spend on an iGPU, and the M1 is no exception there. It doesn't come close to a mid-range discreet GPU and it likely won't ever unless Apple goes chiplets so that multiple dies can share a memory controller. With "normal" (LP)DDR you still run into severe memory bottlenecks on the GPU side as things get faster, so that becomes another issue with unified memory. Do you sacrifice CPU performance to feed the GPU by using higher-latency GDDR? Or do you sacrifice GPU performance with lower-bandwidth DDR?
- SigmundA 5y agoFrom the Anand article you linked further up: "The first Apple-built GPU for a Mac is significantly faster than any integrated GPU we’ve been able to get our hands on, and will no doubt set a new high bar for GPU performance in a laptop. Based on Apple’s own die shots, it’s clear that they spent a sizable portion of the M1’s die on the GPU and associated hardware, and the payoff is a GPU that can rival even low-end discrete GPUs." This is their first low end offering, they seem to be taking full advantage of UMA more so than anyone to this point. It will be interesting to see if they continue this with a higher "pro" offering or stick with a discrete CPU to stay competitive. My guess is Apple will be the one to make UMA integrated graphics rival discrete GPU's, it will be interesting to see if that happens.
- SigmundA 5y agoIts not a new term, copying data between cpu and gpu memory has always been expensive: https://docs.microsoft.com/en-us/windows/win32/direct3d11/unified-memory-architecture https://docs.microsoft.com/en-us/windows/win32/direct3d11/un... https://patents.justia.com/patent/9373182 https://patents.justia.com/patent/9373182
- floatboth 5y agoWell, any iGPU systems. Interestingly, game consoles too, where GDDR is the only memory, so it's kinda "inverted" in a sense from the laptop setup.
- kllrnohj 5y ago> I'm still assuming it's faster due to unified memory architecture AMD, Intel, ARM, & Qualcomm have all been shipping unified memory for 5+ years. I'd assume all the A* SoCs have been unified memory for that matter too unless Apple made the weirdest of cost cuts. Moreover literally none of the benchmarks out there include anything at all that involves copying/moving data between the CPU, GPU, and AI units. They are almost always strictly-CPU benchmarks (which the M1 does great in), or strictly-GPU benchmarks (where the M1 is good for integrated but that's about it) > An AMD/Intel using same soldered RAM next to CPU and same process node would give Apple a run for its money. AMD's memory latency is already better than the M1's. Apple's soldered RAM isn't a performance choice: "In terms of memory latency, we’re seeing a (rather expected) reduction compared to the A14, measuring 96ns at 128MB full random test depth, compared to 102ns on the A14." source: https://www.anandtech.com/show/16252/mac-mini-apple-m1-tested https://www.anandtech.com/show/16252/mac-mini-apple-m1-teste... "In the DRAM region, we’re measuring 78.8ns on the 5950X versus 86.0ns on the 3950X." https://www.anandtech.com/show/16214/amd-zen-3-ryzen-deep-dive-review-5950x-5900x-5800x-and-5700x-tested/5 https://www.anandtech.com/show/16214/amd-zen-3-ryzen-deep-di...
- adriancr 5y ago> AMD's memory latency is already better than the M1's. Apple's soldered RAM isn't a performance choice: Careful what you are comparing, in your examples the other CPU is also faster. 3950x is a desktop CPU and is faster then M1 -> https://gadgetversus.com/processor/apple-m1-vs-amd-ryzen-9-3950x/ https://gadgetversus.com/processor/apple-m1-vs-amd-ryzen-9-3... 5950x is even faster -> https://gadgetversus.com/processor/apple-m1-vs-amd-ryzen-9-5950x/ https://gadgetversus.com/processor/apple-m1-vs-amd-ryzen-9-5... Lower latencies are likely due to higher clock. For equivalent laptop specific CPU, you will get a speedup from on-package RAM vs user replaceable RAM placed further away, even desktops would benefit but it would not be a welcome change there.
- kllrnohj 5y ago> Lower latencies are likely due to higher clock. That's not really how dram latency works. In basically all CPUs the memory controller runs at a different clock than the CPU cores do, typically at the same clock as the DRAM itself but not always. If you meant the dram was running faster on the AMD system then also no. The M1 is using 4266mhz modules while the AMD system was running 3200mhz ram > For equivalent laptop specific CPU, you will get a speedup from on-package RAM vs user replaceable RAM placed further away, even desktops would benefit but it would not be a welcome change there. Huge citation needed. There's currently no real world product that matches that claim nor a theoretical one as the physical trace length is minimal latency difference and far from the major factor.