Why Not Solid State Hard Drives?
waterlogged asks: "I was just wondering if anybody has heard of a cheap ram based network drive? Seems to me with the ram prices being at about US. $12.00 for 128 megs that someone hasn't developed a battery backup version of this to plug into a network or even a bus. A gig worth of 8ns seek time storage for $120 anyone? That would just about eliminate any wait in loading programs."
BigSlowTarget asks: "There are some previous articles on Slashdot about vendors selling solid state drives, but they all seem to be quite expensive - particularly given the slide in the cost of memory. Has anyone hacked together a solid state drive to take advantage of $60/GB memory prices? I'd really like to be able to boot and run at solid state speed without spending thousands."
Jah-Wren Ryel asks: "In case you haven't noticed, RAM is incredibly cheap, you can put a gigabyte of PC133 RAM into your machine for less than $60. A year ago, that would have cost more like $600. So now it is feasible for one to have a 10-15GB RAM disk, except for one thing - most motherboards won't support more than 2GB total (4 dimm slots x 512MB per dimm). It seems like it wouldn't be too hard to design a PCI card to hold 20-30 dimms and make that available through a hardware windowing scheme (like EMS/EMM back in the old 16-bit days). With the right drivers it could be used as a big RAM disk or for buffercache. Is there such a product out there? The closest I have seen are solid-state disks that sit on the other end of a scsi bus, are too expensive, and aren't anywhere near as fast as a PCI implementation could be."
So what technical details (and the issues of volatile data and price) may be preventing the construction of RAM based drives, and is there anything else that may be preventing some entrepreneurial soul from bringing such a thing to market?
You would still need a stable flow of juice to keep from losing everything in case of a blackout or something. I'll stick to the platters for now.
icksnay on hacking my boxsnay.
I've been saying this for years. Eventually, we need to scrap the spinning platters. Unless I have a butt-load of MP3's and other things I don't really need, I can easily fit most of my stuff into 4GB or less.
(heh. oops.)
Cenatek seems to be on a good track with these. They offer a PCI card with a handful of DIMM slots, a slap on rechargable battery panel, which holds enough power to run a connected hard drive of appropriate size which will dump the contents of what is essentially a RAM disk, in the event of a shutdown or power loss. A little spendy still, for consumer use, but to see something like this backend busy websites, or store database file structures would be pretty slick.
- billn
Okay, add a UPS and all, but wouldn't this still be much less stable than a HD that you can pull out and ship across the country without it losing data?
sulli
RTFJ.
RAM drives are a great idea, the problem is the IDE or SCSI bus. Seek times and retriveal times can be greatly reduced, but the total bandwidth is still a limitation.
Seagate had developed years ago a standard called IPI, I think. It was for the 30 and 40 megabyte RAM drives that had developed. I know it never took off, but it was specificlly for static RAM drives.
What would be really cool, would be RAM storage with an Infiniband interface. Its possible to use it for storage or for regular memory.
Huh? Unless I'm completely out to lunch, I don't see this....
Is my math wrong, or is Cliffs?
How many times has your CMOS been wiped out? Sure it happens once in awhile, but that doesn't really have any safeguards. Keeping juice flowing into RAM shouldn't really take too much, but you wouldn't want to let it sit on a shelf for very long.
Cenatek may make exactly what you're looking for. It's a PCI card, and uses standard SDRAM sticks.
From their site:
The Rocket Drive stores data in memory modules (standard dynamic random access memory, or DRAM) rather than on magnetic media.
L337 script kiddies would no longer have to worry about their Hard Drives telling the tale of all of their l337 ownz3r!ngs. As soon as the feds show up yank the plug.
This would also work for War3z fiends. *again, yanks plug* "What do you mean piracy, I don't even have an OS on there."
Seriously, I think it would only be useful if you could couple it with a RAID-like (I know it wouldn't be true RAID) system so if the power for whatever reason (Power outage, UPS goes bad, battery dies) you info wuold still be there, maybe a RAM-drive that does nightly/hourly back ups...
Note to self: No more arguing with the faithful.
$20 gets you about 256 MB of ram. $200 gets you about 75,000 MB of HD space. Ten times the price gets you 300 times the MBs. What are you smoking, and can you give some of it to my credit card companies?
We had a Megastore (core memory!) on a PDP11/45 (which was used as the swapping drive, hence upping the category to 11/50, IIRC) back in the 70's. My Nikon Coolpix uses flashram as a formatted dist, something I'm certain other's have noticed. Flashram is able to store and retain with the power off, but doesn't appear to transfer very fast. Using SDRAM would be fast, but only so long as: A) you have a constant source of current B) you don't test/clear on rebooting the CPU. Certainly old ideas, but as long as you can set up a big ramdisk in your OS and put your large temp/workfiles there, do it.
A feeling of having made the same mistake before: Deja Foobar
or else it would lose all data if the power goes out. SRAM and Flash ROM are _MUCH_ more expencive per MB that a harddrive is and will most likly stay that way.....for god sake, a 64 MB flash card for your digital camera is $50-$70 can you imagine the cost of a 100GB flash drive?
I am the Alpha and the Omega-3
RAM is now cheaper when it comes to memory-per-unitofcurrency than hard drives.
According to pricewatch, a 40 gig hard drive is $78. Let's say $120 for a good one. That makes RAM 20 times more expensive, at $60/gig.
It's still really cheap, but let's not get crazy. :)
Sometimes it's best to just let stupid people be stupid.
Can't comment for other OS, but Linux tends to be pretty good at using all the RAM you've got to cache disk data. Even though I rarely use more than 256 MB, upgrading to 768 MB made a significant performance improvement for me, as Linux quickly fill the remaining 512 MB with disk cache, without me bothering with setting up a ramdrive.
Opus: the Swiss army knife of audio codec
The problem of how to maintain power to all that RAM indefinately is still pretty tricky, but how about this idea. Why not put enough SDRAM on your hard drive to buffer the whole thing? Whenever you read anything off the platters, hold it in RAM, and whenever anything is written, page it back to disk as usual. Thus as you use your system, the speed will continue to improve (up to a point) without tying up system RAM.
Imagine the size/number of boards that would be needed to get 80 GB of storage. It may be quicker but engineering something that is feasible would quickly drive the cost up so that it wouldn't be that cheap. Further, the cost to modify existing controller technology or making a RAM drive fit the current controllers available. Then there's all kinds of other technical issues like power.
Of course we torture people, we need the information --Gen. Pinochet
If you ever played with a system with enough ram to support mounting a ramdrive on /tmp(and soft link to /usr/tmp etc...Solaris directly maps /tmp into virtual memory/swap??) you see a huge speed up increase for some takes that require generating temporary files.
If there is such a huge speed up why not make devices that act like drives that are really memory? Becuase the software has already been written (ramdrive drivers) and it is faster and cheaper than implimenting a completely seperate piece of hardware and driver.
Also consider the fact that you would have not only create hardware to plug into the SCIS/IDE system, the SCSI and IDE channel bandwidths aren't nearly as good as straight memory. Plus it is nice not to eat sometimes crowded cases with another piece of hardware.
I think that you might need a RAID (or RAIM- M == memory :) for RAM in case one of those dimms decides to die on you. Buggered up platters can be rescued in some cases, but if RAM dies, there's no recovery.
/*drunk.. fix later*/
Argh. Forgot to preview. Here's the guys you mean: http://www.soliddata.com/
Any sufficiently well-organized community is indistinguishable from Government.
i have been very pleased with my sandisk flashdrives. basically they are IDE-interface drives with flash memory instead of spinning platters. 0 ms seek time is nice, so is -silent- and -very very low power- storage. not to mention if you don't have to treat it like an egg.
i've used both the flashdrive from sandisk, and the IDE flash drives from simpletech.
the sandisk flashdrives have sizes from very small (4 MB) to big enough for your MP3s (2 GB). of course they get expensive at the high end :) best things about them are (1) can get them semi-cheap from ebay and (2) standard IDE interface.
-samThe REAL sam_at_caveman_dot_org is user ID 13833.
I assume MO here means magneto-optical.
Who the hell has an MO hard drive? MO WORM drives used to be pretty popular . . .
Hm.
-Peter
Given the plummeting price of high density/small footprint hard drives, you could have both the volatile drive and the nonvolatile drive in a single low price unit, with backup to/recovery from the nonvolatile drive occuring automatically on startup and shutdown.
It needs to be more often than startup/shutdown! Many of us don't shutdown for weeks at a time. You would want it to continually copy things to the disk when there is idle time. But then you're essentially using the RAM as a really big disk cache which is where we are already today.
As I read the article, the whole point is to shift to RAM and save money at the same time. If you're buying the hard disk anyhow then you're shifting to RAM but not saving any money. And you may not be improving performance much over a massive RAM cache either. So I find it hard to be enthusiastic about this idea of backing up the RAM to hard disk.
I'll be damned if I can find anything at ATTO's website, but they used to make the SiliconDisk II, essentially a SCSI hard drive made completely of DRAM (yes, it has power outage protection).
Redundant Array of Inexpensive Disks
or
Redundant Array of Inexpensive DIMMs
The slashdot crew over the past few days/weeks have been extremely out to lunch, has anyone else noticed this?
/. or Salon.
/. gets over 200 story submissions per day, and yet the average number of story postings has gone way down, now to about 10/day. What's going on here?
Example 1:
but RAM is now cheaper when it comes to memory-per-unitofcurrency than hard drives -- cliff
RAM is 30-40x more expensive than HDs, I don't know WHAT he was smoking when he thought that...
Example 2:
I suspect a fair number of people never try Linux or one of the BSDs because they're moderately happy with AOL as an ISP -- timothy
how many people do you know who would be running Linux if it wasn't for the fact that they were using AOL? (Let me rephrase, how many tech savvy people are using AOL (that aren't forced to)?)
And the anti-Microsoft hysteria has been especially harsh over the past few days. That article about File Extensions And Molopolies was so pathetic it didn't even qualify as satire. It should never have seen the light of day on either
And
If God gave us curiosity
These are an example (they even have Linux drivers), but an 8GB unit is still over $20k (see CDW). It's going to be a while until this is affordable (2 orders of magnitude price reduction).
Can You Say Linux? I Knew That You Could.
To get solid state hard drive they must be more desirable than platter HDs. All that solid state has going for it is speed. It's far more expensive, holds less data, and unless you get the expensive chips, looses all data when the power is turned off.
Current HD tech has HD's maxing out at 400GB. I'd perfer the robustness of solid state, but platter drives are simply better at this time.
Imagine a solid state file server though! Sigh.
Democrats or Republicans. They are both taking us to the same place and they are not afraid of us anymore.
There are two ways you can do this.
Way 1 -- Use a PCI card with 4GB of RAM on it as primary storage. At the end of the day, or week, or whatever, copy all of the data to more "permanent" storage. Like hard disks. This way a power loss (or battery failure) isn't too much of a nightmare.
The drawbacks are that you need special hardware and you could lose days of work.
Way 2 -- Cram your machine with as much RAM as possible. Which probably means 4GB. Configure your OS so that it uses about 95% of RAM as a buffer-cache.
Data will be loaded from disk initially on demand (which means slow startup) but will almost always stay memory resident thereafter. The OS will also commit dirty pages back to disk from time to time ensuring that you don't lose anything important.
This may be less doable with systems that insist on synchronous writes during file operations, but you can often disable these things if you want to take the risk.
The benefit of this approach is that you don't need special hardware and you're less likely to lose data than Way 1. Which basically means you can and have been experiencing this now.
If your system grinds disk consistently after several hours of use, it's a good indication that you should get more RAM considering how cheap it is.
I seem to remember that there was a company working on the idea about 2 years ago of using the rewritable film of a CD-RW as memory.
- - - If the sun is a star, why can't I see it at night?
We understand the concept of the battery, smartass.
We need a UPS instead. And the "u" part is the tough part.
-Kasreyn
Kasreyn: Cheerfully playing the part of Devil's Advocate to hairtrigger
Sure these are not cheaper by the MB, but they are incredibly cool!!
Co-founder and designer at Music Nearby: http://musicnearby.com
The last CompactFlash card I bought for my digital camera was well under $1/MB (actually about $0.67/MB).
The first SCSI hard disk I bought for my Mac Plus was over $10/MB, and held less than 1/4 the capacity of that CF card. And it weighed 14 lb.
Flash isn't cheaper than current technology disks, certainly; for the price of a 1/4 GB CF card you can get an 80GB IDE drive. But the growth of the digital camera and PDA markets has driven the cost/MB of flash down, and will continue to do so.
What would be cool is a RAID controller for CompactFlash; plug in 6 CF cards in a space the size of a standard hard drive and have it do RAID-5 in hardware. Slower than stock RAM, but non-volatile. The catch there is the number of read/write cycles...and I'm not sure how much work has been done on improving that side of flashRAM performance.
Oh, wait.. why am I recalling the joke about a solar powered flashlight?
Escher was the first MC and Giger invented the HR department.
What's the mtbf on Solid state drives?
Well, it can't be worse than the MTBF of IBM GXP drives..
Plus, it's pretty much a given that MTBF(device_with_moving_parts) is less than MTBF(device_with_no_moving_parts). You probably had more hard drives fail on you than memory chips, right?
So I think the only problem regarding reliability is solving the power issue to the satisfaction of the average induhvidual.
I think 10 more years max, and then it's the way of the dodo for our spinning friends.
Yan
I think this line's only filler
of course, a system crash or a reboot would do about the same thing.
This by itself would would preclude many script kiddies using notoriously unstable OSen, never mind systems that get infected by trojens etc.
"issue the reboot command now!"
heh
"It is a greater offense to steal men's labor, than their clothes"
If you're updating the platters in the background, then you're using the memory as a write-behind cache.
Now explain to me how this is different from using main memory as a VM cache in unix?
Ben "You have your mind on computers, it seems."
SSD's have been around for quite some time. Compaq had several commercial offerings based on Quantum's SSD. There are also several no-name companies that manufacture solid state drives (Memtech being just one: http://www.memtech.com/Prodinfo.htm).
We actually got our Alpha vendor to let us try an SSD for 30 days. The drive was fast, but we found that we quickly saturated the controller (something a couple U160 drives can easily do). In that regard, it wasn't that fast at all.
And, as has been said in other posts, it's not really economically fesible. We tested a 3.2GB SSD last Christmas that cost $25,000. For that application, we thought it was a good fit. But if you're concerned about capacity, we just bought some 180GB drives for our SAN for about $5,000.00 each.
While the RAM and disk capacity available now is amazing, I don't think we'll ever see the dollar/cost ratio for RAM beat the dollar/cost ratio for disks.
In 1994, which I had a 486/DX2 66 (which came with 4MB Ram), I bought 16MB of RAM for $560.00. Quake was 15MB, so I could load it into a ram drive and play from there. Guess what? It wasn't noticably faster than my IDE hard drive, but Windows screamed. =)
"All I ever wanted was to see Larry Wall give Bill Gates a Perl necklace."
http://www.eisenschmidt.org/jweisen
There is a company in Sweden developing technology that might make both RAM and HDD's obsolete.
:-):
6 01 2
:-)
;)
The swedish R&D site:
http://www.thinfilm.se/
The norwegian mothercompany:
http://www.opticomasa.com/
Article about it (in Swedish however
http://www.nyteknik.se/pub/pub26_3.asp?art_id=1
More material can be found by searching for Opticom, Plastic memory,thinfilm etc..
Interfaces should not be a big bootleneck. Whatever technology used to create the RAM disc. ATA-100 (100MB/s) and SCSI U160 (320MB/s) should be significant. U320 and U640 will come within years.
If the current number of RAM sockets are a limit.. one can always network some MB's stuffed with RAM.
pbRemove(a)ludd.NospamherEluth.RemovEthisse
Anyone in need of computer consulting with unix or programming btw?
You see solid-state disk drives used mainly in relational database management systems as a 'scratch pad' for highly-volatile data.
:D
In order to explain I'll have to do a quick primer on RDBMS' and how they handle memory management.
As you're probably aware, there are a multitude of different operations you can perform on a RDBMS; UPDATE, DELETE, SELECT, etc.
For more efficient queries the RDBMS will cache physical data structures in memory. It may cache parts of the index or recently accessed data. If the cache is full it will kick out the oldest, least used parts to make some room for the new stuff.
To make a long story short, most servers have way more disk space than RAM. As such, it will use a designated 'temp' or scratch area for some of those sorts (and temporary tables) if there are more important things in RAM or it cannot all fit. In Sybase / MS SQL you create a special database for this called 'tempDB'. I'm sure DB2 / Oracle have similar data structures.
Here is where solid-state disks enter the picture. You can buy a small solid-state disk (9GB or less) for cheap. You then 'create' tempDB on the solid state device. That way you can completely eliminate the relatively slow disk drive for things like sorting, temp tables, etc. and devote all of your RAM to caching database information.
To me, this seems a lot better than using solid-state devices exclusively as a storage medium. Initially when you start up your RDBMS the cache is clean. After people run a couple queries the important (and most hit) indexes and data are cached any way so you do not have to worry about touching the disk unless you perform a write. However in most OLTP (online transaction processing; a la web app) it's mostly selects so you wouldn't receive the benefit of the solid-state device unless it wasn't in the cache.
Most SSDD have a battery-backup in them in case of power failure and are generally mated to a corresponding hard drive. When the SSDD is idle it will flush the writes to the HD to keep the HD up-to-date. On a power failure it will immediately dump changed data to the HD (also battery-powered).
For 'home' systems I can't imagine anyone using SSDD as their primary storage. It doesn't make sense - rarely does anyone perform anything that 'demanding' as to require solid-state drives. Plus, if you have a single memory error you would lose the entire thing (break one of your DIMMs and tell me what happens when you try and boot.)
Thanks,
--
Matt
A disk array with a big front-end RAM cache effectively gives you RAM-like access speeds for cache hits. You can basically adjust the amount of cache to get as close as you want to RAM speed overall for your workload, while also taking advantage of rotating media's price and durability advantages. Ideally, either the cache is either battery backed or the array has enough of an internal power reserve to dump cache to disk even when external power is lost. This use of a large but safe RAM cache is the main thing that differentiates a Symmetrix or a Shark or a Lightning from some low-end POS that's really no more than a stack of disks with a plain old PC bolted on the front...and don't even get me started on the abomination that is host-based RAID.
Slashdot - News for Herds. Stuff that Splatters.
Is the low price these days due to more efficient manufacturing or market saturation? If it's an efficiency thing then it might make sense to put the effort into doing solid state drives now. But if this a transient glut in the market, then by the time you have something that will do the job, memory may be prohibitively expensive.
Personally I'm thinking just packing my system full of memory would be the best solution. As others have mentioned, an OS with good disk caching built in can be as good if not better than a RAM disk. It might be useful to have some way to expand memory through a PCI slot but it seems like, for now, solid state storage just isn't worth it.
This sig has been temporarily disconnected or is no longer in service
ramdisk.
Just load your programs into ramdisk.
Have the data that needs saving tossed onto the hard drive periodically by a script that dumps the data that needs to be saved from a ramdisk directory, to a HDD.
The Kruger Dunning explains most post on
(Oh yeah, RAM disks, cool. etc.)
sulli
RTFJ.
Compact flash already acts just like a hard drive, it just doesn't use the same connectors. From a logical/electrical standpoint they are identical.
"Prefiero morir de pie que vivir siempre arrodillado!"
It depends on your definition of the job, doesn't it? If all you need to do is store 256MB of data then, by all means, buy a $20 256MB DIMM (and just hope you never lose power.)
If, on the other hand, you need 100 GB of storage, you're not going to stock up on RAM, are you? In that case, both you and Cliff are still wrong: a usable amount of RAM is not cheaper than any new drive you could buy today to do the SAME job.
- A.P.
"Remember when the U.S. had a drug problem, and then we declared a War On Drugs, and now you can't buy drugs anymore?"
I just put 2 100 GB magnetic disks drives into my TiVo.
I think 200 of the 1 GB SDRAMs would take up quite a bit more space, even if the slots were there.
"Provided by the management for your protection."
Platypus Technology
http://platypustechnology.com
"Platypus Technology has designed a range of storage innovations that free applications from the bottlenecks caused by hard drives.
You can run mission critical files from silicon, rather from rotating platters".
The design appears to be quite nice.
The price appears to be outrageous.
From www.cdw.com
"Platypus QikDRIVE8 1GB
1GB PCI solid state hard drive card for PC and Mac workstations and servers $3229."
Dave Barnes 5 breweries within 6 blocks of my house
With this trend to continue, OSs should be redesigned. The hard disk has the advantage of keeping the data with no power, but the ram has speed. New pcs could have 3GB of ram and a 40GB ide HD for storage. When the pc boots it would copy the data into its ram and then execute all programs from ram, sure this would take a long boot but with new os to be stable this should not be a problem.
We would have to do some serius os and user interface redesign. If the pc is used for video editing the samples could be kept in memory this would speed thing up a bit, but you would have to save the data to the HD eventualy.
Another great application for this would be chase servers, imagin a organization that does video editing and all the clients have gigabit ethernet, implement servers that have 1TB of ram before the data storage server at night they could sync the data.
Seriusly, we have to think about this, our current view on pc is that ram is way more that hd storage. Diskless clients could make a come back...
hmm... for fun I enjoy launching DDoS attacks against 127.87.42.5
As such, they are fairly old technology, and most of the problems have been ironed out. The problem with power can be solved in a number of ways, for example. You can have battery-backed RAM, or you can have the "RAM" non-volatile by using a design that does not decay rapidly with time. (Flash RAM works this way.)
Another problem has been the capacity of a solid-state hard-drive. This, as has been mentioned, has largely been overcome. I =STILL= believe that wafer-scale chips are the way to go, for this, though. You should be able to make wafers that are tens of terrabytes in capacity, by now.
(The problem with making wafers has always been the purity and the defect levels. Purity just requires you to use something better than skimming. Double distillation, or atomic mass seperation, would give you near 100% purity. You then just cool the resultant in a vaccuum flask, so that the defect rate is negligable.)
Getting back to the modern day, though - how to turn cheap RAM into quality solidisk. This involves making a card, with a whole load of RAM on it. Since you're using conventional RAM, you can't rely on modern-day core memory. This means the fall-back of using battery-backed RAM.
You want TWO batteries, for this. One will be in discharge/recharge mode, the other will be in operational mode. When the batteries switch over, you want the recharged one to be switched first, so that the batteries are in parallel, BEFORE switching over the other. That way, there's no loss of power.
When switching to discharge/recharge mode, the battery must be fully drained, to prevent "memory", where a rechargable battery fails to recharge correctly from a semi-charged state. Once drained, you recharge it to capacity.
The switch-over should happen on one of two events:
This guarantees that you have 175% - 200% of any one battery's lifetime, which should be ample for most purposes. The recharger should tap off the bus' power supply, with the batteries directly powering the RAM at all times. This avoids any problems of messy spikes somehow getting into the computer.
If you want "extra-long-life" SSD technology, you are probably best off using very low-power RAM for the main disk, and using higher-power fast RAM for the cache. The lower the power of the main disk, the better. Static RAM is worth a glance, for this - I think it's usually more efficient than dynamic.
Of course, the =ULTIMATE= solution is to go back to using core memory. (For those who never went to computer science classes, "core memory" is one of the earliest non-volatile digital storage systems. It was a form of magnetic storage, and used semi-permanent magnets to retain the data. Data could only be read by destroying the copy in storage, which mean that a read cycle also had a write cycle. It was slow, but when you had RAM that was guaranteed to retain data for over a century, who cared?)
It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
2. This bus could be HyperTransport from the NB to a HyperTransport enabled memory controller that can control up to 16GB of memory. This will give you massive bandwidth and low latency - the best of all worlds.
3. 16 DIMM slots in a drive bay somewhere, or whatever. connect to the memory controller. Battery connected to power DIMMs in case of power down. Use DDR DIMMs, as they use less power. A large laptop battery should power 16 DIMMs for well over a day on their own.
Alternatively, just set up a massive RAM drive and cache the HD into it... rewards uptimes of course!
- Ram is so expensive that having it sit idle is a waste of money and time.
- Operating systems do an excellent job of keeping most recently used (and hence most likely to be used again) data in memory
- Keeping files on a ram disk prevents the operating system from using it
To learn this initially, I took a machine with 512mb of ram and made a 100mb ram disk partition on Win2k. I needed to speed up my compile times (>45 minutes) when using a bad cross compiler to the Nintendo Game Cube and a lot of templated C++ code (I didn't write it). After moving all the source code and object output files and executables to the ram disk volume, it turned out that it went even slower than before. This is because less ram was available, so it swapped out more frequently. Same principle applies when just adding more ram. The less you hit the hard drive, the faster your machine runs.The only reasonable purpose I can think of for a fast ram disk is if you can get some relatively slow ram on that device, which is cheap, but won't fit on your motherboard due to it requiring faster/more expensive ram, such as RDRAM or other exotica like ECC Registered SDRAM. But it's still cheaper to get a few hard drives.
Any connection between your reality and mine is purely coincidental.
I see some people debating ram disks.
The way I see it, the kernel is smart enough to use ram for buffering when it can - certainly smarter than a user creating a ram disk.
If you need more performance, give your system more ram and let the kernel decide how much of that ram should go to a ram disk.
A family of high performance, single-chip flash disks are available in a wide range of capacities from M-systems.
I'm listening to ideas about a pci card with ram sticks on it that backs up onto a harddrive in the event of power failure. Why the hell don't we just buy a whole ton of ram, make a ramdisk that's sync'd with a harddrive partition, so all the writes are written to a disk buffer and the ram while all the reads only access the ram. If we crank up the size of the write buffer, we've got some pretty impressive performance!
No, "per unit of currency" means per dollar or pound or franc or what have you. "Currency" means "money". Ram has *always* been cheaper per physical item - say, $200 for four 1MB 30-pin non-parity vs $450 for a 420MB hard drive in 1993 (when hard drives had been dropping in price for a couple of years while RAM remained stable at around $50/meg).
I was wondering the EXACT same thing, I was recently browsing the net to find if anyone did such a project for his master or just like a hobby. Or even if there was someone that actually made a home-made device (I'd even go for that).
;)
C'mon, shouldn't be too hard to tie up a buttload of 128M+ DIMMs together and plug in a ATA100 interface and some FPGA for decoding/driving the memory? How come nobody did it? what are the big problems? I don't see any problems from my perspective it's just a load of addressing issues and plugging off the shelf parts together, the only "hard" part I could see is the timing to get the maximum throughput to max out the interface, but that's only a software issue.
Heck someone that really wants could make the first low-cost IDE (or SCSI) board/case/adapter to which we would simply have to add ram... I'd pay a lot more than what the components are costing to get my hands on something scalable and cheap like that, and I am sure I'm not the only one.
Just imagine something like.
Model-1, 4 slots, accepts up to 1GB PC133 ram per slots, ATA/100 interface 1000$ (look at the price of the components for that kind of stuff and you EASILY beat the 3x the cost of the hardware to break a profit, even home-made you could make a LOT of money (and still beating the 300% law)
Model-2, 8 Slots, blabla 2000$
Model-2 Pro, Ultra160/320 interface 2500$
Model-3, loads of slots, still WAY cheaper than the current available solutions, error correction, etc etc.
Nice buisness plan eh? copy it, make a device and send me model 2 pro
--- Metamoderating abusive downgraders since my 300th post.
This is exactly what AGP was designed for -- high-bandwidth I/O to main memory, without blocking the PCI bus. Plus, the AGP GART can do most of the address translation you would need. All modern PC (and even Apple) chipsets have an AGP interface, which is wasted on a headless server. . . until now. AGP even provdes extra power (even the obscene AGP PRO), so that an onboard battery/HDD could be used to backup.
> To take advantage of RAMdisks, you pretty much need to have your computer on all the time, or in standby mode when you're not using it.
This is true. *or* you could have your computer net-boot from a a server with one of these. Even 100megabit transferring from memory will feel faster than a local hard disk. And gigabit over copper is becoming very affordabl these days.
What would be great would be a cheap backplane card that plugged into either an IDE or SCSI bus, on which you could mount zillions of old 4 meg 72-pin simms which are now obsolete.
I probably have a gig's worth of 4 and 8 meg 72-pin simms sitting around in my lab with no use other than collecting dust. It would be great if I could slap them into a device to use as fast storage. I guess the RAM companies would rather have us throw these old chips away and spend money on new RAM.
These are my friends, See how they glisten. See this one shine, how he smiles in the light.
Most modern operating systems have an advanced file cache. If you think of your disk cache as a dynamic RAM drive, you're getting the idea. A dedicated file server will serve commonly used files at RAM drive speeds due to the file data already located in the server's RAM.
Let's analyze the options.
2GB Network RAM Drive
Pros: None
Cons: Very expensive for the storage while bound by network bandwidth. No advantages over a harddrive-based network drive with a healthy RAM cache. Data is volitile -- needs constant power.
2GB RAM Drive
Pros: Very fast access for non-sequential access
Cons: Performance bound by IDE/SCSI bus. Low total storage when compared to hard drives. Data is volitile -- needs constant power.
40GB Hard Drive + 2GB RAM
Pros: Just about as fast as dedicated RAM drive access for most data sets. Hard drives 1/10 the cost of similar RAM-only solution. Very large sizes available. RAM cache adapts to filesets used. Data is non-volitile -- does not require constant power.Cons: Not as glamourous.
Conclusion: Unless you have nothing better to do or have a specific need (space or vibration-resistance?), hard drives backed with a RAM cache win.
- I don't need to go outside, my CRT tan'll do me just fine.
I agree - even a SDRAM controller right on the PCI bus can't be as fast as the system's main memory.
Linux, FreeBSD, and MacOSX (I dunno about Windows) all have excellent VM and file system caches (sometimes they're tightly integrated). If you have 4GB of RAM in your system, and your running processes have 64MB resident, then it's like having a 3.94GB RAM disk. That is, of course, unless you routinely access more than 3.94GB of files.
This is why having lots of RAM is good, even if your processes don't use much.
It's not prefect - I know that on FreeBSD 4, for example, if you have zillions of small frequently used files in the cache, and then you do a big tar, all those important little files will get pushed out of the cache in favor of the new file, which might only be accessed once. Also, the kernel will swap processes out to make room for file system cache, and there aren't a lot of knobs for tuning all of this. EG I don't think you tell the kernel "keep *all* my processes resident, even if they're idle... no really, I *do* have enough RAM!"
Anyway I just don't see any use for standalone RAM disks. There are very few real-world applications that need *deterministic* 1ms seek times. If you rely on the OS you will generally get the best performance.
"I never quite thought I'd see this in my life time, but RAM is now cheaper when it comes to memory-per-unitofcurrency than hard drives. "
256MB pc-100 dimms are like $20. That's $80/GB.
That's $6,400 for 80GB of memory.
An 80GB hard drive is about $250....
So what the heck are you talking about?
Per unit of currency means simply Number of bytes per (dollar or peso or escudo or lira or rupee or colone or peseta or pound)
What do you mean talking about MB for one and GB for another.. that makes no sense.. and would be meaningless.
Cliffy's just wrong.
It's called 'disk caching'. Linux does it. Windows even does it. Everyone does it these days.
And maintaing power to all that RAM indefinitely is....... surprise, what a UPS is for.
M-Systems offers offer some Flash-based "DiskOnChip" products used alot in embedded apps.
Back then, wasn't ram like $50/KB??
I recall 1MB dimms in 1992 or so costing $150
Aside from being expensive...
Flash is slow to write to.... and is limited in the number of writes. Flash wears out.
is basically how caching works. It's already done.. it's not something new. Linux does it. Every OS does it.. even windows...
The only difference is things aren't cached until they are loaded the first time.
If your computer had 80GB of memory, you would invariably end up with most of your HD (at least, what you were using) cached.
All you people who keep talking about power loss, think rechargeable battery...
Magnetic storage can sit (unconnected to any power source) for years and years and still maintain data integrity. Keeping several GB of RAM powered reliably and cheaply for that long may not be as practical.
Thats still a factor of 30!
Only since 9-11, I haven't RAM less than $100.
I read at a Flash RAM manufacturer's website that their devices reach MTBF in one million writes. If a sector gets written to once a minute in average, that's about two years. Too little.
They also have relatively slow writes, much slower than a platter I believe...
And they are limited in the number of erase/write cycles. Flash wears out.
Which is exactly what Western Digital did with their 100 Gig caviar drive. They've taken advantage of cheap dram to pump their cache up to 8MB from the usual 2 MB. The result is their 7200 rpm drive is outrunning 10k rpm drives and is quieter as well.
More info on the Western Digital drive is available at storage review.
Although disks are dropping to a couple of bucks per hour of programming ( one hour = two gigabytes => $4 ), tape cost is also dropping ( six hours per $1 tape => $0.15 ). Tape will always be an order of magnitude cheaper.
But whenever you make a programming fuckup in DOS, it hangs and you have to reboot... so how did you manage that? :)
Oh, this reminds me of another question: how do modern OSs do memory protection? I don't think the OSs can run everything in VM to trap all memory accesses? or do they scan their code for addresses and test them as it goees? or what
While I found the previous "5 Insightful" rather off too, one would think that in order to be "redundant" a post would actually have to have been made after other posts on the same subject. Having a post at 1:51 following several starting at 1:49 doesn't really seem to qualify for that either. So 3 people modded me up for making the same really obvious observation as 5 other people at the same time, and then three other people modded me down for making the same really obvious observation as 5 other people at the same time.
I'm starting to think that maybe Slashdot deserves to have articles that claim RAM is cheaper per MB than Hard Drives. It might even deserve to have Jon Katz as its feature writer.
The CMOS has never been SRAM. SRAM does not have to be refreshed like DRAM but it WILL lose data if subjected to a sustained power loss. The CMOS these days is Flash RAM; on older machines it was some form of ROM. SRAM is used in modern systems only for CPU and memory caches. SRAM is VERY fast, whereas flash and ROM are both slower than plain old DRAM.
I have seen the future, and it is inconvenient.
Agreed - we aren't there yet and I doubt that we ever will be. Platter disks are still lots more expensive than RAM. Quick check of my favorites shows PC 133 SDRAM at $.07-$.9 cents per MB and big IDE drives at $.002-$.004 per MB. That is roughly a 20X-40X spread. This is an order of magnitude improvement from the 300X or so spread mid-90's when memory was $100/MB and disk was about $350/GB.
So hybrid RAM/disk solutions are desirable. But RAM does not automatically equal performance. I had an interesting conversation circa 1995 where Mike Karels (of BSD fame) talked about how you were lucky if hard drive caches didn't slow down the drive. The real performance of real file systems is a very complex problem. Subsequent to this we did some random benchmarking at the time and found about a 50/50 split where disabling the read cacheing would speed up rather than slow down real I/O performance. Part of the issue is that many drives embedded processors were not very fast so the hit of maintaining the cache was worse (since the disk to interface data path was usually a seperate fast path but cache would hit the embedded CPU).
In most OS/Filesystem combinations a file open/inital access is very expensive - lots of little I/Os to chase directories and file allocation chains until you finally get the data - then maybe a big read-ahead for you buffer cache that may or may not get used. Most filesystems are better at some things at the expense of others. So whether some amount of caching saves you any real elapsed time on an actual I/O operation is highly variable. There's also been discussion about how many filesystems (like UFS) were originally designed to try to factor in optimizations to deal with things like rotational latency and transfer speed based on rotation - that all goes out the window with any modern hard drive using zone recording/constant angular velocity (see http://www.isi.edu/netstation/zcav/zcav.html).
Right now transfer speed of the interface is a big limiting factor, as drive density goes up more and more drives can fill the pipe-at least on the outside tracks. So without new - and incompatible - interfaces you are likely to see less and less performance wins from a RAM based disk versus platter based.
IMHO - I think real wins in storage performance need to come from greater abstractions in the storage model. Imagine a device that you gave a complete path to and it then gave you a byte stream - let it manage the consistency, metadata etc. In some ways this is happening. Look at NAS versus SANs.
Network attached storage is better performance using interfaces with higher and higher bandwidths (GigE, USB 2, Firewire, Infiniband) so that it gets closer to performance with local storage.
Meanwhile local storage looks more and more like a network and has more and more features than simple block read/write (look at Storage Area Networks) - so the convergence is close in many ways.
I think real persistant storage will be using platters for a long time - until some new paradigm comes along. Look how long it's been since the venerable "Winchester" drives replaced drums, tapes, cards, etc. The RAM will be used where it's used today - as memory for CPUs to provide more intelligence and caching.
"Per unit of currency is a multi-national way of saying 'Per Dollar' or 'Per Pound' or 'Per Peso'.
It means how many bytes you can store for $1.
IT does not mean 'usable chunks'. It means exactl what it says. Per Unit of Currency.
If you guys can really get a gig for $US60 I envy you. Here, one gig is $300 ($US140) at the very cheapest. Here, a 20gb drive costs $250 (US$120) 20gb of ram (using cheaper 512mb sticks at current prices) = $6,400
;-)
We're not quite ready for solid state hdds, nobody would give up that profit margin.
Still, at a gig for $60, you guys must have some expensive harddrives for it to be cheaper than disk space
Send lawyers, guns, and money!
Noise Pollution
Solid State Storage is coming in about 4 years. It's called MRAM (magnetic RAM) and is a form of RAM that does not need constant charge to hold information. It has the added benefit that it is faster than current electric charge based RAM. Most people do not want to have to deal with power loss destroying data, so current RAM willl never make a popular storage medium. MRAM is the answer.
A wired article on it is here.
Motorola and IBM are both working very hard on this.
I saw Platypus' (platipi?) products. They look like a great idea, but they seem a bit costly. I like the redundant deal, but I don't have any room on my desk for a 19" rack. I wonder if Cenatek's products have dual disk channels? Their product looks similar, but is cheaper. A plus for the Platypus, they are actualy for sale (although Cenatek says theirs will be on sale in November). I do a HELLUVA lot of compiles, and I will be purchasing an SSD as soon as they come down in price. I hate to wait for a compile while my hard drive thrashes so hard that my desk vibrates.
Another issue that has been overlooked is the size of the resulting RAMdrive. You can buy 3.5" drives at 75 gigs. All of the current products that I have seen are at least full sized PCI cards, or a PCI card controller connected to a seperate RAMdrive frame.
The amazing thing about this is, the spinning storage is smaller that RAM drives. This is quite counter intuitive, but I believe that it demonstrates what engineering marvels a state of the art disk drive really is.
I do believe that RAM drive/ RAM storage technology can achieve mich higher packaging densities, but not using today's off the shelf memory chips.
-tpg.
But....
They're expensive.
Keep in mind that the answer to the question "why don't they" is almost always to be found in the finances of the question at issue.
With that in mind, go visit here for exactly what you've all been looking for.
Btw/ if anyone wants to donate me a few (say 136) of the beasties and an controller to go with them, I'd be most appreciative...
That's a fairly narrow view. Yes, for read-only applications, flash is FINE. Hell.. Proms would be fine, and much cheaper. What do you think flash is? it's electronicly erasable read-only memory....
IF this is for a custom application.. fine. But if we're talking about a home PC.. they most certainly DO write to disk quite a bit. The discussion is about solid-state disks......
Flash is not a viable alternative for solid-state disks.
Disks write for both Swap, temporary files, etc. It hink you would be surprised how often your PC actually writes data to a disk.
Plus.. the number of erase/write cycles is also limited.. the flash wears out over time;.
For large scale DDNS servers solid state disks are great for when you have to write huge zone transfer files very frequently!!!
You could just use a "ram drive" as a cache to reads off a hard drive and as a small buffer to write to the drive. With a good ups and shutdown software you could get the stuff written to disk before any major problems.
-- Tim
TKrabec Pahh
Unless you have one with a backup battery like on a Psion 5Mx (my current pda) or the Jornada 56x (lust drool lust drool)
~~~~~ BigLig2? You mean there's another one of me?
I remember way back some of the guys I worked with at DEC Research had an Evil Plan(tm) to try to buy a bunch of RAM that had been culled at a fab plant. Apparently there were plenty of chips that "almost" worked but weren't fast enough (e.g. 100ns RAM that didn't work at 100ns but worked fine at 300ns...) or didn't store all the bits - the idea was to run them slower and keep parity for lossage. Interesting idea, anyhow, though I bet it'd be hard to get a microprocessor maker to sell their "seconds" - since they're "garbage" at that point, though, you could get 'em cheap, in theory. ;)
mjr.
In the mid 1990s I did commercial video game development. The largest hard drive I had during that time was 330MB, and it was never more than about half full. At home I had an 80MB hard drive for the longest time, but it was never more than a third full. Now I have a 6 gig drive at home, of which maybe 2 gigs are used. Most of that 2 gigs is for Windows plus some big applications, like Corel Draw and Delphi. That machine is used for commercial graphic arts plus software development in Lisp. I set aside a 2G partition for Linux for a while (Red Hat 5.2), but don't use it much.
My point? Solid state hard drives would work just fine, except that developers and consumers have gotten used to space being an infinite commodity. Games take 1 gig each to install. Windows XP takes over a gig just for the core OS. Now we have consumers buying 60 to 160 gigabyte hard drives. And the former is under $200. That much memory would cost thousands. But could I personally live within 1 gigabyte? Easily, provided I'm not using typical desktop OS that's designed to take up hard drive space (Windows, most Linux distributions, MacOS X).
One of the classic accelerators was the old Legato Prestoserve - it had a MB or so of battery-backed RAM, which was enough to provide a non-volatile buffer for the time it took for disk drives to write. Machines have gotten a lot faster since then, and disk drives now usually come with buffers of a few MB, but that kind of approach can still be a win.
Bill Stewart
New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
I primarily use RAMDISKS on Windows to accomplish the same thing - it's a convenient place to stash files I don't plan to keep, such as MSOffice attachments in incoming email messages, as well as to stash data I don't want on real disks, like decrypted emails (yes, I know they can get paged out, and there's memory persistence, but KGB/FBI/NSA attacks are really low on my threat models compared to generic theft.) It's an amazing performance win for many Windows applications, and Windows is happier running them from "disk" than running them from the temp files used by email while keeping the email messages open.
Both of those applications assume they're using main system RAM, and that they're relatively disposable - if the system crashes in the middle of a compile, you'll re-run the compile anyway. Some of the other approaches to RAM-disk boxes provide separate battery backup, which gives you persistence.
Bill Stewart
New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
Yes. I think the real issue is this: You can only add so much ram to the common motherboard before running out of slots, even though you could easily afford to buy more ram. So.. the next obvious solution is some sort of expansion card that you can add more ram to. Of course, said card won't run at the same bus speeds, because it would be PCI or some such... so it doesn't make sense to use it as main memory. A good kludge would be to use it as a 'disk' and then use it for an ultra-fast swap (though not as fast as main memory, it would be way faster than disk access).
Also.. as to why you need swap. Perhaps you don't; swap is just there because you CAN.. ie: if we ever run out of memory, we can start using the disk... makes good sense.
I didn't find any pricing. The store was open, but the shelves were empty. Don't they sell it as an unpopulated card?
now we need to go OSS in diesel cars
At what price for an UNpopulated card? There's no advantage to the lower prices of RAM these days if the use for that RAM is in a device that the manufacturer is going to rape your wallet for. The ideal device will be one that plugs into a PCI slot, does IDE I/O exactly like any IDE controller (hence no driver needed), has jumpers or BIOS config to make it work on any standard IDE device address or IRQ (there's way more than just primary and secondary, and Linux/BSD supports them). Long persistent storage (e.g a battery) should be an option, and short persistent storage should work if you just reboot/reset w/o cutting off the power. If I need longer than that, I can buy some newfangled device that records data magnetically in circles on the surface of rotating platters.
now we need to go OSS in diesel cars
I'm currently looking around for a Linux driver that can make a special RAMDISK out of whatever RAM exists beyond the point specified in mem= in the kernel parameters (append in LILO). If I can't find one, I may consider writing one.
As for your reference to a huge initrd, why not try out my cdinit loader that is part of my BICK [Bootable ISO Construction Kit] project. It comes to life via a smaller than usual initrd (having only /dev/console and cdinit named as /sbin/init). It expects to be booted from a CDROM, so it looks around for that CDROM and loads a tar file from it into tmpfs. I originally used ramfs instead of tmpfs when I started writing it. If you're going to run from RAM, either of those might work out better than RAMdisk. Given enough RAM and a patch to the kernel to tweak some limits, you could load 600+MB (even more if uncompression is implemented) from the CD into RAM and run a rather substantial system (at the cost of several minutes load up time, depending on CDROM speed). Or hack cdinit to use other data sources, like the network. You're not stuck with using initrd.
now we need to go OSS in diesel cars
It may be so $$$$$$ because of things like battery backup, low power RAM, and other crazy engineering marvels.
What I'd like to have is a PCI card with 4 or 8 DIMM slots on it, that can emulate IDE at any addr/IRQ (not just primary and secondary), comes unpopulated, and supports all DIMM sizes for which standards are in existance. I think such a card should be doable under $200 in quantity, although it's hard to say what quantities the market will demand.
now we need to go OSS in diesel cars
I was implying that if you have suspend to RAM then you don't need to worry about powering down or anything, and as long as you keep everything in RAM then hard disk access required to "boot" up the system again is next to nothing, thus giving even less importance to a 4GB "ramdrive"
If God gave us curiosity