Are computers about to be turned inside out?

Computers process information, so information goes in gets processed and comes out.

Now computers are really really fast at processing the data, but very slow at getting the data.

This could be because we have built computers the wrong way.

Partially this is because data was too big for the computer’s main memory and had to be stored externally on slower but higher storage capacity devices.

Even system ram is a bus journey away from the processor, and processors then have layers of caches or ‘queues’ before they get to the processor.

How fast would your computer be if it’s processor had instant access to the data it needed, well we would say goodbye to loading bars and file transfer dialogues.

But this is crazy talk without some magical technology that provides Quantum Linked or Entangled Bits we will always have to move the data to the processor.

Now look at the trend, HD, SSD, Larger Caches, HBM, SSD strapped onto a GPU, 3D Crosspoint and other Memristor style technologies.

One way could be to strap cheap ARM cpus to every RAM stick, making smart ram. The CPU would request the data and send the processing code then just flag the data as processed when it’s done.


(early attempt at smart ram, a Raspberry Pi supercomputer ;)).

Another way to make RAM smarter could be the use of Memristor technology so RAM would also include a FPGA memristor element that can be configured by the code needed to process the data.

So we could end up with computers that move the processing to the data rather than the data to the processor.

We are seeing a subset of this problem in gaming with the divide between the CPU, GPU and their data.

It’s logical really what’s larger to move, the data or the processing code needed to act on it!

What would a gaming smart ram system look like?

Would smart ram systems be more modular?

Would we still be limited by bandwidth between smart ram blocks?

Sigh.

Well, you outdid yourself this time. This post tops your previous ones. Even the one about double precision.

I’d advise to do some OpenCL/CUDA programming or at least programming in a language that allows direct memory access. C or Assembly. That would give you better ideas about memory/etc.

12 Likes

Here’s an example of timings for computer operations based on a 1Ghz cpu

execute typical instruction 1/1,000,000,000 sec = 1 nanosec

fetch from L1 cache memory 0.5 nanosec
branch misprediction 5 nanosec
fetch from L2 cache memory 7 nanosec
Mutex lock/unlock 25 nanosec
fetch from main memory 100 nanosec
send 2K bytes over 1Gbps network 20,000 nanosec
read 1MB sequentially from memory 250,000 nanosec
fetch from new disk location (seek) 8,000,000 nanosec
read 1MB sequentially from disk 20,000,000 nanosec
send packet US to Europe and back 150 milliseconds = 150,000,000 nanosec

source → http://norvig.com/21-days.html

Note the nearly 10x speed change between L1, L2 and main memory, the source is a bit dated but RAM access involves more than just the raw timings on your DRAM.

Or have you read Forget Moore’s law: Hot and slow DRAM is a major roadblock to exascale and beyond

Right well, this doesn’t solve Unity not moving fast enough to make my game for me.

2 Likes

“Are computers about to be turned inside out?”

Only if they go through the Galaxy Quest transporter.

They’ll also explode…

4 Likes

Think how fast a SmartRAM(tm pending) computer could be at lightbaking.

You mean you guys aren’t using Quantum Entanglement Ram yet?

What the heck, get with the program guys geez.

2 Likes

“And it exploded…”

https://www.youtube.com/watch?v=k9JihWhN4zk

7 Likes

Sorry dude but most indie developers don’t work for the NSA or Google!

It wouldn’t be any faster. Because the primary bottleneck is not memory, but computational power. Wanna speed it up, parallelize while using normal hardware.

Besides, you’d need to explain how the heck your “smart memory” is supposed to work.

Honestly, it just sounds like you found a new buzzword idea and decided that this one should be a “miracle that changes everything forever!” or something like that. That’s not really how it works.

When i read the forum, I never check who post what, i just read the information contained in the threads.
But strangely, i can always guess when a thread has been posted by Arowx :smile:

4 Likes

@Arowx : Basically… a supercomputer cluster will destroy any of your “smart memory” (how the hell is this supposed to work anyway?) machine in terms of light baking speed. Except that computer cluster can be composed out of large numbers of identical nodes which will exchange data over network, and not necessarily at a high speed.

As another example, you may have human brain. IIRC closest equivalent of a clock speed of a human brain is 100 Hz top. That’s Hertz, not Megahertz and not Gigahertz. However, (if we simplify things a bit) one could say that brain has hundred billion cpus. As a result, you have massive computational power which governs locomotion, body functions, and is wasted on things like watching cats on youtube.

Basically… I’d recommend to improve your programming knowledge, because a lot of your threads revolve around concentrating on a minor non-problem and then trying to find a “revolutionary never seen before magical way that will change the world forever!” approach to “fix” it.

3 Likes

Nitpicking but new studies show that the brain a way, way faster than 100hz. In fact even seeing (and understanding what is seen) is proven to take 13ms.

Reacting to it is another matter entirely though. And actually, lightmap baking would be a LOT faster if it all fit in L1, so yeah, memory really kinda matters.

Just not the solutions proposed in this thread… still doesn’t help me make my game though.

1 Like

Well,brain is analog circuitry (with loads of gotchas, like chemical signals in addition to electrical ones), so there’s no clock. So a speed of signal passing through a neuron can be indeed very high. However, there’s still going to be some cyclical process going on all the time, and that cycle can be treated as a clock of sorts. That’ll be 100 hz.

I think it is a decent comparison, because clock in computer CPU orchestrates everything in similar fashion… except the speed is much higher.

I’m sure it will all gradually get faster. Memory chips are now much faster than they used to be. Caches are bigger. Also take playstation 4 for example, they strapped on ‘graphics memory’ chips as the main memory for a major speed boost. The other issue though is parallelization… more cpu cores have to struggle to share memory access bus etc. Obviously the closer stuff gets to the cpu the faster things will be.

@negininity good point the brain could be classed as the ultimate Smart RAM as it combines memory and logic into biological neurons and axons. The logic that makes a neuron fire and the memory that neuron represents are combined.

In traditional IT we have separated memory and logic.

That’s why the concept of the Memristor could massively change the IT industry and due to is similarity to a neuron AI research as well. Combined with it’s low power needs compared to DRAM.

Computing is just bringing logic and data together, funny that nature has already provided an amazing nanometer scale solution to this problem with neurons weighing in around the 10 nm level.

The question is what level of granularity should Smart RAM work to, bits, bytes, kilobytes, megabytes, gigabytes for optimal bandwidth?

Smart RAM would be dumb, because it would create a processing bottleneck instead of removing a bandwidth bottleneck.

A better solution would be something like HBM where the RAM is installed on the CPU. Eventually we will probably see a CPU or APU with enough HBM to be useful in many use cases. This would most likely be at 8GB.

Are “computers” even still a thing?

1 Like

So isn’t a CPU or GPU with Stacked HBM a single Smart RAM module.

You do understand that HBM on modern CPU’s would be a L4 cache, there are already L1, L2 and L3 ram caches built into modern PC’s if putting memory next to your processor or Smart RAM is so dumb why do Intel, Amd and Arm build chips with caches (hint)

Isn’t that the wrong question?

“Is anything not a computer?” would have been more relevant.