Remix.run Logo
peter_d_sherman 2 days ago

CPU's are silicon where some of the gates, some of the circuits that are etched into that silicon are turned into RAM.

That is, Modern CPU's (as opposed to truly ancient ones, around 50 or more years ago) implement caches -- regions of gates/circuits/transistors or mostly transistors -- which implement the equivalent of RAM.

When a silicon wafer specifically destined to become a stick of consumer RAM is etched, most of its space is etched in a gate/circuit/transistor (or mostly transistor!) pattern that implements RAM.

There may be other timing/coordination/refresh etc. circuits etched on the region of the silicon wafer which is to become the RAM, but those are usually a small portion of the space.

But, fundamentally CPU's and RAM -- are created from the same substrate, transistors and other very small electronic components etched into a silicon wafer, although these days due to manufacturing constraints and cost issues, RAM usually uses a larger process node, a larger (less expensive, older) size, i.e., the latest CPU might use 2nm process, and consumer RAM might use 10nm or 12nm process.

But, fundamentally, at the lowest level, both RAM and CPU are mostly transistors and other minature electronic components.

So, if they're both the same at that level (ignoring process node size), then my engineering question to you is as follows:

Why exactly can a CPU contain RAM electronic circuitry, but RAM can't contain CPU electronic circuitry, if both, at the lowest level, the level of the minaturized transistor, the minaturized electronic circuit, are created from the same substrate, the same basic building blocks?

>You seem to think that "compute in memory" would mean the disappearance of commodity DRAM parts and their replacement with parts that had compute capabilities.

You seem to imply that I think that, but I am merely speculating on possible futures, possible outcomes...

>This is impossible.

That might be speculation on your part...

>Nobody is going to be putting compute in memory chips onto standard consumer DIMMs.

That also might be speculation on your part...

Seymour Cray was heralded as a genius back in time in computer history, because he put memory physically closer to the CPU. Since his time, compute and memory have been getting closer and closer together, in various forms, including, but not limited to CPU caches, or say, 64GB HBM on Intel Xeon Max 9480... Cerebras, for example, mixes as much memory and compute as they can, on the same wafer...

But historically, memory and compute have been getting closer and closer together... that's because higher performance (which is the goal, the continual holy grail of the computing industry) typically requires less space, less latency, less delay, between the two...

Is putting a CPU or other processing unit/computing device/computing circuitry into a stick of DRAM a good idea?

Well, that I don't know, but the industry, always in search of better performance, might head that way, in whole or in part, in the future... we don't as-of-yet-know...

articulatepang a day ago | parent | next [-]

There’s a big difference between DRAM and SRAM. SRAM stores bits in the state of a couple transistors. DRAM stores bits in the charge of a capacitor.

A CPU is mostly transistors, so SRAM is made of the same “stuff” as the CPU logic itself.

This makes it easy to put SRAM on the same chip as a CPU, but difficult to put dense amounts of DRAM on that same chip. You could etch CPU and DRAM with the same process but both would suffer in density and therefore speed, cost and power efficiency. That’s the fundamental reason why DRAM and CPU/GPU are on different chips with a fast interconnect between them. This is so even in devices like the iPhone where one designer controls and designs the whole thing and could, in theory, fab a single design with both. But they don’t.

(There are some old exceptions to this like the PS2 shipping with a small amount of on-die DRAM. And process incompatibility is not the only reason for keeping the two chips separate. But if the processes weren’t incompatible there would certainly be high-end fast CPUs/GPUs with big gobs of DRAM.)

wtallis 2 days ago | parent | prev | next [-]

I'm going to ignore the first half of your comment, because it really only serves to disclose the limits of your knowledge.

The problem with your rambling and speculation is that you're not making any attempt to think about what conditions would be necessary for a technology to succeed in the market and gain widespread adoption across many market segments. I stand by my assertion that it is impossible for compute-in-memory chips to entirely replace commodity DRAM, especially in any market segment where the compute portion of those memory chips is not critically valuable. Any remotely plausible, useful compute-in-memory design will have significantly lower capacity and higher cost than pure commodity DRAM; this is not a low-overhead added feature. Any market segment where the compute capabilities of compute-in-memory were so marginally valuable that a non-trivial number of the customers wanted to disable the compute is a market segment where everybody would still be buying mostly ordinary DRAM.

peter_d_sherman a day ago | parent [-]

>"I'm going to ignore the first half of your comment, because it really only serves to disclose the limits of your knowledge."

Read my profile: https://news.ycombinator.com/user?id=peter_d_sherman

On there, you will find the following quote:

"The true knowledge consists of knowing that one knows nothing..."

- Socrates

See, I'm agreeing with you(!), at least on that part of your message, at least on that comment!

You see, I truly don't know...

And, I don't truly know what the future as-of-yet holds...

I suggest and submit to you that this is the foundation of intellectual humility, which is the starting point of all forms of inquiry which have the potential to lead to genuine knowledge, at least in the specific areas of inquiry, and at least for specific amounts of time ("the only constant is change", aka, many forms of specific knowledge, if acquired, are time bounded, bounded in time -- but I digress!)

>"The problem with your rambling and speculation..."

My inquiry into the nature of this phenomena, but sure, your (perceived!) "rambling and speculation" on my part (I'm chuckling to myself, because that's rather funny from my perspective(!) -- yours is the first message on HN that has truly made me laugh!)

>is that you're not making any attempt to think about what conditions would be necessary for a technology to succeed in the market and gain widespread adoption across many market segments. I stand by my assertion that it is impossible for compute-in-memory chips to entirely replace commodity DRAM, especially in any market segment where the compute portion of those memory chips is not critically valuable. Any remotely plausible, useful compute-in-memory design will have significantly lower capacity and higher cost than pure commodity DRAM; this is not a low-overhead added feature. Any market segment where the compute capabilities of compute-in-memory were so marginally valuable that a non-trivial number of the customers wanted to disable the compute is a market segment where everybody would still be buying mostly ordinary DRAM.

I see...

So the premise of your argument is The Market (specifically the future consumer commodity DRAM market)... correct?

jcranmer 2 days ago | parent | prev [-]

> Why exactly can a CPU contain RAM electronic circuitry, but RAM can't contain CPU electronic circuitry, if both, at the lowest level, the level of the minaturized transistor, the minaturized electronic circuit, are created from the same substrate, the same basic building blocks?

There's different kinds of RAM. CPUs are using SRAM for their caches (which usually have ~6 transistors per bit cell, IIRC, although I'm not a hardware guy, so take this stuff with a grain of salt). Your RAM sticks are using DRAM, which are 1 transistor and one capacitor per bit cell.

Now, this is where my understanding of the actual physical issues really gets sketchy, but the processes that are good at making the CPUs just aren't good at making DRAM, and vice versa. (I would guess that it has specifically to do with the capacitor, but that's purely a guess.) SRAM isn't a problem for the CPU processes, because SRAM cells are closer to the other kind of logic you set up in CPUs.