Thanks for the memory: How cheap RAM changes computing
arstechnica.co.uk
arstechnica.co.uk
Video Production - If I could store my video projects in a RAM Disk it really would be pretty amazing. The issue is SSD have really been able to speed up the input so much that the benefit would be much smaller. In video your write to disk is actually very small and usually only happens while you import, preview or render (Which is faster on GPU RAM). There is a lot of work to get a production RAM Disk up and being ready with a low benefit. It still would be nice to have all my clips just reside in Ram and able to "real time" render with less stutters on previews.
Data "Science" - I most use R and that is 100% in memory so it certainly has been a boom for that in my own usage. 64 GB of RAM is pretty cheap and then I can also use Spark if it isn't enough. My current biggest time restraint for big data sets is getting the sets more then anything else. Having large data sets reside in a RAM Disk would really speed things up but we now have Spark for the actual big data sets.
Oh man.
I manually stuffed 1.5mb (three 512mb RAM cards) for an image capture system. My thumbs got blisters. The PC was an over clocked Tandy 80286 (8 mhz!). I forget the name of the goofy Lotus/Intel/Microsoft memory expander contraption. That Tandy was a tank.
We were doing large format image capture for document archival. Totally not worth it. Results were unusable. But we had investers, so...
Before that, I thought I was pretty cool pimping my Apple //e with an 80 column character display and 128kb RAM. True word processing, WYSIWYG.
We put work-session data into the RAM disk, then saved it back to the hard drive at opportune times.
I still haven't forgiven Micron. Never forget!
http://www.ebay.com/itm/256GB-64x4GB-PC3-10600R-DDR3-1333-EC...
128GB for $144:
http://www.ebay.com/itm/128GB-32x4GB-DDR3-PC3-10600R-Server-...
I bought a botherboard with two LGA2011 sockets for £35 and built a system around it for only about £100, which included 32GB of RAM and 2 8-core xeons. Unfortunately, the motherboard was faulty, and I have been unable to find a repacement for a reasonable price.
http://www.ebay.com/itm/New-Genuine-Dell-Precision-T7610-Ser...
The usual complaint is often "you shouldn't need a modern computer to use an editor".
What people fail to realize is that Moore's Law and memory eventually make the problem go away. Spend a little extra on memory today and don't make memory requirements a deciding factor.
You run emacs / vim / sublime / atom exactly because it's much more than a simple text editor, it's a development environment of sorts.
What kind of person says "this is a job for nano, while this is a job for emacs?"
Me, I use nano for quick edits over SSH and a different editor/IDE for everything else (which is done locally and pushed, I (incredibly) rarely edit anything on the server.
Depends on what you're used to. Even I as a seasoned die-hard Emacs user who is aware of both TRAMP and emacsclient will still fire up VIM (or vi) for various reasons: because it's what I grew up on, because I can't remember how to use TRAMP to edit that file remotely or as root, or the system is really not up to the task of running emacs.
See also: http://vim.wikia.com/wiki/Toggle_auto-indenting_for_code_pas...
Or, if your terminal emulator supports "bracketed paste", use something like this: https://github.com/ConradIrwin/vim-bracketed-paste
(Some people even try to use emacs as their entire desktop environment.)
Vim is my "little" editor; JetBrains (and the like) are my "big" editor (albeit with vi[m] plugin to avoid the mental context switch).
Somewhere an emacs user is laughing at me, but I'll get over it.
What's interesting to consider, though, are unintended consequences. Even though the problem is old, take a look at Bufferbloat: https://en.wikipedia.org/wiki/Bufferbloat
Basically, as RAM got cheap, switch manufacturers started shoving more into switches, packets got delayed to where it broke protocols, and things had to be rethought. This wasn't just some off the cuff hacked together protocols either: it severely hampered TCP, one of the most widely tuned and tested protocols out there.
The modern need for patches and DLC makes that impossible now, in addition to the other reasons. But I think it would still be possible to greatly improve load times with a bit of optimisation - it's just not commercially important. Maybe if the console QA system imposed maximum load times it would be different - but then you'd see compromises made elsewhere, such as in level size.
(I play Cities:Skylines, where one of the more popular mods is simply called "Don't Crash", which lazy-loads other mod data to improve performance and reliability)
In practice, there have been a few games that have had patches released -- in almost all modern games a tiny fraction of the game is code, which can be easily replaced, leaving all the art and music which (hopefully) don't need as much patching.
That being said there are also many beautiful games that are amazingly fun, and the graphics do add to the experience, but they're more like the icing on the cake. That's not quite the metaphor I'm groping for, but you get the idea: the gameplay is a fundamental that has to be right, and then the graphics can really add something; without the gameplay the experience is always destined to be flat.
A lot of work goes into optimizing titles on consoles... it wouldn't make sense to skimp on such an important part of UX.
I miss the days of the PC RIP, where every byte counted.
There are plenty of high-speed decompressors that could possibly be adapted to PCM data, though, I'm sure RAD would sell you one.
Flash memory is still about a magnitude cheaper than RAM.
That's kind of what happens now (loading screens), but the problem is that console hardware is designed to barely pull off and play acceptable games and no more. From what I remember, the Xbox 360 was originally designed with 256 MB of RAM, but got bumped to 512. Games up until a few years ago had to deal with that. Many games go through many build cycles of simply optimizing RAM usage. When you have more demands on RAM during gameplay, there isn't any left over to load future levels. Add in that many games today are open world, and you don't know where the player is going to be, it's not worth it. Even PC exclusive games don't have this feature.
I imagine with some filesystem trickery you could even do it without the game even knowing, it just magically gets everything it asks for virtually instantly.
Console hardware is almost always sold at a loss. No company would build a console full of RAM (no matter how cheap it is) with almost no load times. Most people (having acclimated to loading screens) would rather buy the cheaper "good enough" alternative.
They seem to care about loading times....
[1] c.f. http://www.newegg.com/Product/Product.aspx?Item=N82E16820147... (I recently installed it in my desktop computer; my X99 motherboard had a slot for it.)
Except the modern console generation doesn't have dedicated GPU RAM. They are using AMD APU's that unify System/GPU ram.
Saying one is geared to graphics is just marketing.
GDDR5 trades latency for thoughtput
XboxONE DDR3: 68GB/s CAS 7
PS4: GDDR5: 127GB/s CAS 15
The reason GDDR is normally used in GPU's is the workloads are more predictive, you are doing the same calculation thousands of times, just iterating across a buffer. This is why SIMD/Cache prefetching shine in GPU's. It makes memory latency not as important.
http://www.newegg.com/Product/Product.aspx?Item=N82E16814132...
"SAP HANA is the in-memory computing platform that enables you to accelerate business processes, deliver more intelligence, and simplify your IT environment"
I found this podcast interesting but warn that it discusses the use of memory in the context of designing and implementing Alluxio:
This SE-Radio podcast http://www.se-radio.net/2016/06/se-radio-episode-260-haoyuan...
Star Citizen will probably get its own ram disk, if priced keep on dropping