• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 754
  • Last Modified:

What is fastest hard disk/raid order for programmer?

I got Widows 7 Professional 64-bit installed on raid 0 (2*velociRaptor (10k/rpm)). I also got one velociRaptor for pagefile and temp files. I am a programmer and my programming tools is installed on raid disk. My programs is also compiled to raid disk.

Now I am gonna buy two fast SSD drives and make second raid 0 with them. Can anyone tell me what is fastest solution for these two raids and one temp disk. My main target is to get programs compile time low as possible. All my programs use mysql or mssql with PHP when starting, so is it better install those sql-servers (databases) to another disk than compiled files are?

I think the best solution is keep the windows in old raid (slower) and left faster raid for programming tools and compiled programs. I believe that compilers usually dont use pagefile or temp directories when compile programs, but I dont know that for sure (I mostly programming with Flash Builder 4 (Flex)).

I'm gladly hear any experiences and suggestions of this matter.

1 Solution
Craig BowmanIT Services ManagerCommented:
IMO - RAID 0 on two mechanical drives will not even come close to a good SSD RAID
The newest Intel RAID controllers are actually the fastest, on the i7 boards that is.

A single SSD is faster then 2 10k RAID 0 drives, but really more info on your overall system might be more relevant than just RAID performance, how bad are your compile times?
Mircci, first of all, make sure you have a backup-system you can rely on :-) raid0 is not fail safe...
Try to make the first slice with a maximum capacity of 60-80 Gb, stripe: 64k. The remaining part will be the other partition.
The smaller you create it, the faster will be. Remember that the first partition would be faster because it uses the inner part of the disk (closer to the center)...
If you are going to use Raid1 (Mirroring), remember that it will be fast when reading, but not when writing, so it can be the "right place" for placing your code.
Hope this helps
Upgrade your Question Security!

Your question, your audience. Choose who sees your identity—and your question—with question security.

Gary CaseRetiredCommented:
"... Remember that the first partition would be faster because it uses the inner part of the disk (closer to the center)... "    ==>   WRONG.      It's true that the first partition on the disk is the fastest ... but the reason is it's on the OUTER part of the disk (furthest from the center).     All modern disks use zoned sectoring, which means there are more sectors/cylinder on the outermost cylinders.     Since the disk rotates at a fixed speed, the data transfers from the outermost cylinders are much faster.

Note that most RAID controllers will NOT implement TRIM for your SSDs.    If you buy a high-end SSD (or pair of them) I'd use them individually rather than in a RAID array to ensure that Windows 7 is using the TRIM feature to maintain their performance.     I think you'll find the performance is excellent without the need for a RAID array.    I'd buy either one of the Sandforce-based OCZ Vertex 2's or an Intel SSD -- I'd put both the page file and your programming tools on the SSDs, and be sure you've configured your compiler to use an SSD for all its temporary files.
RAID0 is just plain wrong for for you.
  * Higher probability of catastrophic data loss
  * NTFS is going to be reading/writing 4KB at a time anyway due to the requirements of setting up the boot device.  RAID0 is appropriate for throughput-oriented I/O (specifically sequential reads/writes).   RAID0 will make the system actually run slower in normal day to day operations (editing, compiling).  If you were running the database exclusively on a 2nd partition with 64KB block size and differently configured NTFS, then it would be different.  The big thing is if you want better performance for what you are generally going to be doing then RAID1 is better than RAID0.

  * However, a SSD is going to provide both higher performance then RAID0 or RAID1 ... and arguably better reliability then RAID1, and much better reliability than RAID0.
Choose your SSD carefully. there are inherent incompatibilities with many models & motherboard combinations.  Also SSDs are not created equal.  Specs matter.  MTBF, write cycles, TRIM, SLC vs MLC, IOPs, density.  There are SSDs out there under $500 which will give you up to 50,000 RANDOM 4KB I/Os per second.   You'll be lucky to get 1/100th of that on a pair of SATA disks.

Right, one of the important things about having SQL databases on RAID is to try to match-up the block size on the raid disk with the block size of the SQL database.  So, the blocking for MSSQL, vs Sybase vs Oracle vs MySQL etc to get maximum performance there is going to vary according to tuning it to match the database engine.  Meanwhile everything else should likely be on different partitions tuned for their purpose.
"All your programs use mysql or PHP when starting" k, that's when you launch the program and want to trace or debug line by line or what have you, so that's not your main speed concern, although clearly you'd like the program to load up and get to your set breakpoint sooner, faster is better, and then you make it wait while you debug.   It's not like you're talking about checking your code into and out of some code database that's sql backended though.
Compilers can use lots of RAM and lots of virtual memory, depending on the size of your programs you're building.  Some people turn virtual memory management off so it's all ram, with the idea the programmer's box far exceeds the ram of the end-users who will be running the programs.

CAREFUL though, there's one slippery slope aspect you may be forgetting.  Often programmers love to have the fastest most souped-up machines, and then they create bloatware, and wonder why everybody hates their work, well because it crawls exceedingly slow on the typical hardware of the intended users.  SO the users go elsewhere.  In our shop, programmers' test-bed machines mimic the specs of typical users so they are encouraged to program for performance.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Cloud Class® Course: Amazon Web Services - Basic

Are you thinking about creating an Amazon Web Services account for your business? Not sure where to start? In this course you’ll get an overview of the history of AWS and take a tour of their user interface.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now