Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

MauiPa

macrumors 68040
Apr 18, 2018
3,438
5,084
Is it really even necessary to build out that much unified memory? If you have 1.6TB/s access to 256GB of RAM in package, why not page it in from a marginally slower external bus to as many DDR5 DIMMS as you care to load?

The number of workloads that will truly require random access from anywhere to anywhere at minimal latency have to be tiny. As it stands, the purpose of system RAM is to keep the caches full without needing the high bandwidth/low latency you have on chip. Why wouldn’t you follow a similar architecture to keep the on package RAMs fresh without needing the moderate bandwidth/moderate latency you have to on package RAM?
Good point, I’d love to hear what the business case would be for all that ram in the first place. 64 Gb is a lot, 128 GB is twice a lot. But a TB? I suppose you could load your entire big freakin database and avoid SSD access. I suppose you could have hundreds of simultaneous queries on a web server (limited to physical cores) I guess to avoid SSD access

Seriously, anyone advocating for this, 1) can you spell out business case, and 2) define how big the market is?

Many thanks
 

Bug-Creator

macrumors 68000
May 30, 2011
1,783
4,717
Germany
It isn't the support issue but more on how short the product cycle was before it was replaced.

The ideal product cycle is short and (by default) only offers small improvements.

This way you still get a big uplift if upgrading after 5 years and there will never be a time where you have to feel bad for buying last year's model.
 

JouniS

macrumors 6502a
Nov 22, 2020
638
399
Good point, I’d love to hear what the business case would be for all that ram in the first place. 64 Gb is a lot, 128 GB is twice a lot. But a TB? I suppose you could load your entire big freakin database and avoid SSD access. I suppose you could have hundreds of simultaneous queries on a web server (limited to physical cores) I guess to avoid SSD access
128 GB is not twice as much as 64 GB, but only a little bit more.

Many data-centric problems scale exponentially. If you adjust one parameter a bit, resource requirements double. If you adjust a few parameters, you need an order of magnitude more resources. Because of this, it's often better to use logarithmic scale for computational resources.

Roughly speaking, M1 Macs have 37 units of CPU power, 41 units of GPU power, and 33-34 units of RAM. Macs with M1 Max have 38 units of CPU power, 43 units of GPU power, and 35-36 units of RAM. A hypothetical Mac Pro with 4x M1 Max and 1 TB of RAM would have 40 units of CPU power, 45 units of GPU power, and 40 units of RAM. Apart from the RAM, the Mac Pro would only be marginally more capable than a lowly M1 Mac.

There is no real limit to how much CPU power / GPU power / RAM you can use, because there is always more data than you can analyze. You just buy as much power as you can reasonably afford and adjust your ambitions to your resources. As the price scales linearly with the amount of data, while the utility tends to scale logarithmically, the best trade-off is usually easy to find.

Seriously, anyone advocating for this, 1) can you spell out business case, and 2) define how big the market is?
I would expect that the market for high-memory computers is much larger than the market for workstations. However, I'm not sure how many people need high-memory workstations. Workstations are a small niche these days, because most people who need computational power can have it remotely.
 
  • Like
Reactions: Argoduck

deconstruct60

macrumors G5
Mar 10, 2009
12,493
4,053
I assume you mean cores, not threads? (I.e. currently-executing streams, not executable streams)

Simultaneous Multithreading (SMT) [ a.k.a. as Hyperthreading in Intel marketing speak] is a real thing. Threads/processes that the OS has instantiated and are being scheduled for possible active execution time is different than thread assignments to the CPU for active/concurrent execution. Those two are different parts of the overall thread management task. "What is all the possible running stuff?" is substantively different from "Where did the currently active stuff get assigned?"

Thread is a overload term where need to use context to resolve what actually talking about.

Cores can have multiple active execution instructions streams going on concurrently (threads). There are 2, 4, 8 SMT implementations out there. Apple cores don't because they don't have SMT. iOS and iPadOS don't have coverage on cores with SMT. macOS does. macOS chokes/hiccups on AMD x86 cores with 64 cores (and 128 execution threads) now. macOS would have also had issues with a two socket Xeon SP 6200 series ( 2 * 28 = 56. 2 * 56 = 112 112 > 64 ).

A 'core' is more firmly grounded in a physical. Execution streams aren't solely grounded there. In modern operating systems each process gets its own virtual address space. "Load data from address 12345678 into register 22" actually is dependent upon which execution thread that is to determine what actual physical memory address that resolves to (on many systems '22' is virtual context relative also). Threads are pragmatically not solely in hardware implementation.

The macOS limitation has to do with tracking onto what where in the CPU the thread is assigned to active execution.

Apple is going to lots of effort to transparently to the macOS process/thread scheduler to offload workload off the execution units that aren't scheduled the classic way. AMX , NPU , IMG , GPU 'cores' are more scheduled by proxy by the operating system. ( and Apple presumably secures/translates the memory accesses so that don't loose virtual memory security features. )

Apple doesn't need a huge number of generic general purpose cores if their primary market objective is into more specific workloads with accelerators to match the workload. Unified memory means for whatever concurrent thread that is running the accelerator can grab and do a significant part of the workload. That way apps don't have to chop work into pieces for more generic cores/threads to extract more parallelism. The OS ends up with less scheduling work ( the proxy effect gives it a "force multiplier". )
 
  • Like
Reactions: alien3dx

deconstruct60

macrumors G5
Mar 10, 2009
12,493
4,053
128 GB is not twice as much as 64 GB, but only a little bit more.

128 / 64 = 2 is a fact. It isn't rationally subject to "alternative facts" or "in my opinion".
It might be time to go out and rake some leaves , do some chores , or take some other break because if the basic principles of math have to change to make your argument ... you are off in the weeds. Way off.
 

Jack Neill

macrumors 68020
Sep 13, 2015
2,272
2,308
San Antonio Texas
128 / 64 = 2 is a fact. It isn't rationally subject to "alternative facts" or "in my opinion".
It might be time to go out and rake some leaves , do some chores , or take some other break because if the basic principles of math have to change to make your argument ... you are off in the weeds. Way off.
At first I was skeptical, but after exhausting research I can confirm..
Screen Shot 2021-11-14 at 10.15.53 AM.png
 

cmaier

Suspended
Jul 25, 2007
25,405
33,474
California
This is why Apple have gone to a unified memory architecture (and why they are making such a big noise about it) - and they are going to be doing anything they can to preserve that paradigm in order to maintain its advantages.

Bolting on pools of memory for the CPU, that the GPU can't access defeats that.

It doesn‘t defeat that unless the GPU needs access to that memory. As someone who’s spent some time on memory architecture (https://www.ecse.rpi.edu/frisc/theses/MaierThesis/), it wouldn’t surprise me tremendously if Apple provided a Mac Pro where, say, the first 256GB are shared, and anything over that is not. I thing the odds of that happening are not great, but it wouldn’t be a tremendous surprise to me.

It also wouldn’t surprise me if memory is not expandable beyond whatever they offer on the SoC package (i think that’s the most likely case).

And it also wouldn’t surprise me if all memory is socketed and shared, and they make up for the additional latency and reduced bandwidth with a giant cache.

None of these solutions is without problems, so it just comes down to whether Apple thinks the highest priority is raw performance (and whether it thinks GPGPU performance is more important that GPU performance) or post-sale expandability.
 

Larabee119

Suspended
Sep 16, 2014
225
386
Out of curiosity, what kind of workflows need 1TB or even 2TB of RAM?

Fluid dynamic simulation
Material structure simulation
DNA folding


Is it really even necessary to build out that much unified memory? If you have 1.6TB/s access to 256GB of RAM in package, why not page it in from a marginally slower external bus to as many DDR5 DIMMS as you care to load?

For example, when you try to analyze air flowing through wing tips and how the new material react to it to optimize the curve and the shape of the wings (during test flight), the amount of RAM needed easily exceeds 512GB and the GPU / CPU need the memory fast, so, the lower the latency, the better. That's just one niche but Im sure others will come up with more usage for such pro machine.
 

cmaier

Suspended
Jul 25, 2007
25,405
33,474
California
Simultaneous Multithreading (SMT) [ a.k.a. as Hyperthreading in Intel marketing speak] is a real thing. Threads/processes that the OS has instantiated and are being scheduled for possible active execution time is different than thread assignments to the CPU for active/concurrent execution. Those two are different parts of the overall thread management task. "What is all the possible running stuff?" is substantively different from "Where did the currently active stuff get assigned?"

Thread is a overload term where need to use context to resolve what actually talking about.

Cores can have multiple active execution instructions streams going on concurrently (threads). There are 2, 4, 8 SMT implementations out there. Apple cores don't because they don't have SMT. iOS and iPadOS don't have coverage on cores with SMT. macOS does. macOS chokes/hiccups on AMD x86 cores with 64 cores (and 128 execution threads) now. macOS would have also had issues with a two socket Xeon SP 6200 series ( 2 * 28 = 56. 2 * 56 = 112 112 > 64 ).

A 'core' is more firmly grounded in a physical. Execution streams aren't solely grounded there. In modern operating systems each process gets its own virtual address space. "Load data from address 12345678 into register 22" actually is dependent upon which execution thread that is to determine what actual physical memory address that resolves to (on many systems '22' is virtual context relative also). Threads are pragmatically not solely in hardware implementation.

The macOS limitation has to do with tracking onto what where in the CPU the thread is assigned to active execution.

Apple is going to lots of effort to transparently to the macOS process/thread scheduler to offload workload off the execution units that aren't scheduled the classic way. AMX , NPU , IMG , GPU 'cores' are more scheduled by proxy by the operating system. ( and Apple presumably secures/translates the memory accesses so that don't loose virtual memory security features. )

Apple doesn't need a huge number of generic general purpose cores if their primary market objective is into more specific workloads with accelerators to match the workload. Unified memory means for whatever concurrent thread that is running the accelerator can grab and do a significant part of the workload. That way apps don't have to chop work into pieces for more generic cores/threads to extract more parallelism. The OS ends up with less scheduling work ( the proxy effect gives it a "force multiplier". )

I’m not sure what this has to do with my post. Also, you might not have known I have designed many CPUs, some of which you may have used, so I kind of know all this.

The variable in question in Darwin, MAX_CPUS, is used to determine a cpu_mask, which is used to identify cores, not threads.
 
  • Like
Reactions: Tagbert

pshufd

macrumors G4
Oct 24, 2013
10,151
14,574
New Hampshire
Good point, I’d love to hear what the business case would be for all that ram in the first place. 64 Gb is a lot, 128 GB is twice a lot. But a TB? I suppose you could load your entire big freakin database and avoid SSD access. I suppose you could have hundreds of simultaneous queries on a web server (limited to physical cores) I guess to avoid SSD access

Seriously, anyone advocating for this, 1) can you spell out business case, and 2) define how big the market is?

Many thanks

How much RAM do I need bioinformatics?

In general, 32 cores and 128 GB of RAM is usually sufficient for most common bioinformatics pipelines to run within a reasonable timeframe. With that being said, some programs might require much less than this, while others may have much higher memory requirements or enable greater parallelisation.Feb 18, 2021



My son's workplace does this stuff running multiple pipelines simultaneously.

My last job typically allocated servers with 1.4 TB of RAM so I assume that our customers were doing something big to require that much RAM. One of my friends (Senior Manager) at a big semiconductor company told me that this is the kind of configuration that his engineers use for chip design.
 
  • Like
Reactions: Argoduck

Romanesco

macrumors regular
Jul 8, 2015
126
65
New York City
Yes, people who earn a living are disingenuous.

They presented the concept of a multi die M1 Max for pro desktops accessible to more people.

Especially those who do not want to read.

The guys complained for months about their channel being demonetized. If monetization weren’t their priority, they’d been quiet about it.

I’m not saying monetization is wrong or hold that against them, but it’s essential to know these things in order to make informed decisions. If a channel's sole purpose is profit, their opinions are most certainly biased and skewed towards that.
 

Bug-Creator

macrumors 68000
May 30, 2011
1,783
4,717
Germany
If a channel's sole purpose is profit, their opinions are most certainly biased and skewed towards that.


So your saying that if you do you job for the money you make you can't be trusted to do your job?

"Monetization" just means they make money from views which might lead them to do more clickbaited titles of videos just rehashing past rumours but thats a long way from being biased (beyond what their personal believes might be).
 

pshufd

macrumors G4
Oct 24, 2013
10,151
14,574
New Hampshire
So your saying that if you do you job for the money you make you can't be trusted to do your job?

This is correct. That's why businesses have processes in place to check their employees.

The best example that i can think of is the Mortgage crisis. You had people working to make bonuses in buying and trading mortgage paper that they knew had problems. Why? They were getting bonuses for buying stuff but, if things went south, they'd take their money and get a job doing something else while their companies would suffer. The banks did not expect this behavior of course.

Similar thing in engineering. If you pay stock options and bonuses for a particular type of behavior, you're going to get more of that behavior. You can tell engineers that they are also to do x, y, and z; but, if x, y, and z do not affect compensation, then engineers are going to give x, y and z low priority or try to push off those things on other engineers.
 
  • Like
Reactions: Argoduck

Romanesco

macrumors regular
Jul 8, 2015
126
65
New York City
So your saying that if you do you job for the money you make you can't be trusted to do your job?

"Monetization" just means they make money from views which might lead them to do more clickbaited titles of videos just rehashing past rumours but thats a long way from being biased (beyond what their personal believes might be).

Don’t put words in my mouth. I do not have a negative stance against monetization.

Their video is based on rumors and assumptions, not facts or an Apple Silicon Mac Pro production release. What other motivation outside money-making drives the creation of such content?

Do you want an honest public forum discussion? Do it without incentives.
 

ouimetnick

macrumors 68040
Aug 28, 2008
3,552
6,345
Beverly, Massachusetts
Mac Pro owners can still enjoy 5 years or more of use. Apple doesn't start winding down support for a Mac until 5 years after it was removed from sale. It is another two years before it is declared obsolete.

It isn't the support issue but more on how short the product cycle was before it was replaced.

The length of time a model was on sale only matters in so far as it effects the support lifetime.
I think you all may be misunderstanding how Apple's vintage & obsolete designation process works.
Products are considered vintage when Apple stopped distributing them for sale more than 5 and less than 7 years ago.

Products are considered obsolete when Apple stopped distributing them for sale more than 7 years ago.

Nothing to do with when the product was introduced. Apple doesn't seem to adhere to those rules 100% of the time though.

The 7th gen iPod nano was introduced in 2012 and discontinued on July 27, 2017. It's already classified as vintage even though Apple stopped distributing it 4 years ago. HomePod was discontinued March 12, 2021, so it shouldn't be declared vintage until March 12, 2026, and obsolete until March 2028.

The clock doesn't start ticking until the product is discontinued, so the current 2019 Mac Pro is okay. The 2013 Mac Pro was discontinued on December 10, 2019, so it should be supported (hardware wise anyway) until December 2024.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.