Link to home
Start Free TrialLog in
Avatar of futr_vision
futr_vision

asked on

RAM Disk + SSD Raid 0 in new build

ok. This may be crazy but I just can't find an answer to anyone attempting this or considering it. I have a new PC build. At first I was going with 2 SSD's in RAID 0 with a backup of the entire system in case the RAID fails. I had toyed with the though of trying out a RAM disk but never really dove into the usefulness of one. After a decent amount of research I am thinking that maybe I definitely want to use a RAM disk. Now, I am wondering if the two can be used together and if so what would be a good strategy? The RAM disk is obviously volatile memory which will be cleared when power is gone. The will require a backup to a drive. Since this may take a long time (I will have 32GB installed and considering up to half dedicated to the RAM disk) I was thinking leaving the 2 SSD's in RAID 0 may be a good route to go due to the speed proficiency writing large amounts of data. The backup of the system will remain unchanged.

If this seems like a reasonable way to go and even if it isn't what would be the best strategy to install the OS, and software? I do a lot of Excel. Were talking spreadsheets in excess of 100k rows and now less than 10 calculations per row. these spreadsheets often run alongside at least one web browser with multiple tabs open, a chat client(Skype usually), email client and whatever other program I may need at the time.


Here is an idea of what the build looks like. Nothing is OC'd yet.

Asus Crosshair V Formula-Z
AMD FX-8350
Gskill Trident 32GB (4x8 at 1866mhz stock)
(2) 180GB Intel 520's

Not sure if you need the other specs or not.
Avatar of CompProbSolv
CompProbSolv
Flag of United States of America image

What would you put on the RAM disk?

I looked at something similar for a client who wanted a server for the sole purpose of running FileMaker Server with a database of about 10G.  The risks of a RAM disk were considered too high (not just system failure, but failure to copy data on normal shutdown) to use that.  We went with a fast drive for the data and 32G of RAM.  The hope/expectation is that disk caching will help here.

I'd look at lots of RAM.  It is pretty inexpensive and may accomplish what you want with less risk than other methods.

Another option is a PCIe-connected SSD.  The price is high, but the performance should be very good.
2 SSDs in a RAID0 in a PC is never a good way to go, unless this is used specifically for high-speed data recording and you need to sustain 300+MB/sec.

Assuming this is windows 7/8, then why not just do host-based RAID1.  Are you aware the o/s does read load balancing, so read performance in RAID1 will actually be almost twice as fast as RAID0?   Granted penalty is half your usable data, but then again, you win by having protection against data loss.

100K sized spreadsheets are NOT justification for RAID0.  RAID1 will be so much better for you.  That is because the data will always be in two places and the O/S will keep both drives busy in parallel.  Write performance in RAID1 is no better or worse than a single non-RAID disk (well, minor hit, but you won't see it in benchmarks, and the read performance in RAID1 will more than make up for the write hits)

Do NOT let your RAID controller (if you have one) do the RAID.  Install on the single disk, convert to dynamic, then let the O/S mirror it automatically.
Avatar of futr_vision
futr_vision

ASKER

"Do NOT let your RAID controller (if you have one) do the RAID"

I've heard that...I thnk. I went with the built in RAID route for no real reason. I am super early in the build and haven't installed all of the software going onto this machine until I figure out my final hardware config. I can certainly start over without too much hassle.

My goal is to have a system that can do some insane mounts multitasking and not skip a beat. If that means finding a way to read/write my Excel files faster so I can just close that program down than so be it. Right now I bounce between two machines just to offload some of the work and keep things moving along. Nothing is more frustrating than bottlenecks that break momentum. Sure, there are some things that will take time but I'd rather hove those things happening during downtime like a lunch-break, an idle PC or overnight.

RAID 1 is interesting but 180GB will go fast. I've got a NAS setup in RAID10 I'm pretty happy with but loosing half the capacity can be pretty big sacrifice. I'd prefer to just back up the system daily to the NAS or even do incremental backups throughout the day. that downtown can come in handy for that.
Then go with separate non-RAID disks and put separate data on each.  (Use one for the O/S, another for data to keep it simple, so I/O is somewhat balanced).

You probably have a $2.00 RAID controller that can't possibly keep up with a decent SSD. Not only that but the cheap hardware will block I/Os so that both disks really wont work efficiently and independently of each other.

If you do want to have at least SOME screamin' I/O, then you can always carve out a 5GB partition, as example on both disks, then let the O/S mirror that.  (The rest is non-RAID, so you have C:, D: .. ) Make that the "S:\" drive for SPEED.   When doing software-based RAID you have a lot of flexibility.

So on the S-drive, you could very well get 400+MB/sec for any and all read I/O when a file is big enough to warrant the kernel doing multiple reads in parallel on different parts of files. Otherwise, any particular I/O is sent to whatever disk can return the data the soonest.

By making the Sdrive really small, you can put whatever you need speed on whenever you want it, plus it is going to be the most backed up and protected logical device.
It's a pretty decent RAID controller from what I understand (AMD SB950 controller).

For really screamin' I/O wouldn't a RAM disk make sense? The speeds I have seen leave SSD's in the dust.
That controller is the proverbial $2.00 chip. No cache at all, no intelligence. It is a "fakeraid" chip.

Don't use it.  If you want more speed, of course RAMDISK is faster.
Thanks. Is setting up the software raid something you would do natively in Win8 or does it require another piece of software? Also, if i were to go ahead and dual/triple boot this thing with say Ubuntu 12 and win server 2012 would I run into issues?
no it comes with the O/S.   very painless. mirroring is done on partition level.  Only gotcha is if you want to mirror that same partition and access it from other operating systems.  If you do a read-only mount then you are ok, and then you can read from either mirror.

Linux will do a read-only safe NTFS mount. Win2K12 won't, but I have no idea if it will handle multiboot and software RAID from Win8 w/o getting confused.
I wonder about the RAM disk to. I believe Win requires additional software where Linux has the functionality built in.
Correct
So the RAM disk would need to be defined separately in each OS whereas an SSD would simply show up as a drive natively.
yes, the ram disk is volatile and doesn't survive power loss, or a reboot, or crash.
Hmmm. Seems like I may need to give some real thought to how I use my PC's and NAS (Synology 1812+).

I think this is how it will likely break down.

PC1 - Main workstation and gaming computer
PC2 - Server and/or testing server
NAS - Media server, lightweight web server, backup
Hmmm. So if I forgo the Ramdisk(I may still revisit it at some point in the future) and forgo the RAID 0 or even RAID 1 and just go with two spearate 180GB SSD's and the possible the small RAID'd partition as you mentioned what would be the best strategy for installing OS and software?
Somewhat ...  Software RAID1 a small partition, same size, from each SSD, and that will be the one that is protected against data loss.  Put the O/S there and anything that needs as much speed as possible.

Then use the rest with software RAID0.  So Let's say each SSD has 150GB and you feel that a 30GB "C" drive is sufficient.   Then partition the 1st SSD into 30 & 120GB partitions.  Install the OS on the 1st partition as C.  Leave rest empty for now.

Then patch and reboot the mandatory gazillion times before the OS is patched and working right.  Then run disk administrator, turn C into a dynamic drive (can be done hot and only takes a few secs.  Then tell it to mirror with the 1st 30GB free on the 2nd SSD.  That will sync up in a few mins.

Then with that 120GB x 2 free space, make a D drive of 240GB using software RAID0.  
You know the risk of data loss in drive failure, but at least easy to manage, and if you want best protection on critical files, then stick them on C drive where there are 2 copies, along with backing up.
Ok. I think I got that. Now to figure out just what to put on that 30GB RAID1. Obviously the OS as you said. Then what? I still giving very serious consideration to dual booting the machine with Ubunutu but then again, if visualization is an option, then maybe I go that route to avoid issues that could arise from RAID.
Rule of thumb, mirror whatever you don't want to lose forever or risk corruption.  If it costs you $100 of usable capacity, then decide what that $100 is worth to you in time and lost data. There is no best correct answer.  What is your time worth to you and how lucky do you feel ;)
It is typically my practice to save important docs either to my NAS or to a service such as box.net or Dropbox. That will cover me most of the time. My quest for speed is largely targeted at increasing speed in getting things done. Anytime I can eliminate downtime that is key. I hate sitting around waiting. Of course I hate redoing my work too and while rebuilding a software image is an opportunity to cleans things up it is also a significant amount of downtime. This is where the thoughts of RAID0 and Ramdisks came to life. I figured I can  get the speed there and my backup systems would keep me mostly covered. If I were to have a catastrophic failure I should at least have a full image from the night before.
RAID1 can and is often "faster" than RAID0 for most activities.  Think about it.  The data is in two places at once with RAID1, so nothing is locking on reads.

unless your machine is dedicated to data logging lots of HD streams, or doing a large amount of sequential writes, then you will benefit from overall improvement more on RAID1.
If that is the case then I can definitely see why RAID1 is the way to go. i wouldn't want to sacrifice the entire 180GB to RAId to 180GB SSD's but the partition you suggested sounds like an option. Looks like Win 8 recommends at least 50GB. Seems like a lot but I assume they are suggesting that amount based on typical usage and not the minority that are trying to really juice their system.

So I am thinking that the OS and mission critical programs going on the RAID1 partition. Most of the software I run appears to default to using as much RAM as is available and then to a swap/scratch disk when that is used up. That swap, scratch portion would point to a partition of its own - most likely in RAID 0. Now, what to do with the rest of the space? Non-mission critical apps I suppose would go there. Anything I am missing or misunderstanding?
ASKER CERTIFIED SOLUTION
Avatar of David
David
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Ok. So you're thinking a RAID1 partition for the OS and mission critical apps and the rest of the two drive in RAID0 for everything else unless I plan on a multiboot that I want to read and write too. In that case there would be a third FAT 32 partition. Or would there be two since there would be equal space on each drive? Here is the breakdown. I probably need to give more thought to how the breakdown should be but here is just for illustrating the general partitioning.

Disk1(180GB)
100GB RAID1
60GB RAID0
20GB left over FAT32

Disk1(180GB)
100GB RAID1
60GB RAID0
20GB left over FAT32

Or can those two 30GB partitions be combined and usable across multiple OS's?
Thanks for the feedback. I realize this is a tough question to answer because Pc usage varies so much from user to user. By the way my last post should have read Disk2 for the second set of partitions and I still need to figure out exactly how large those partitions should/will be.