[Last Call] Learn how to a build a cloud-first strategyRegister Now


patitioning 1TB HD for maximum performance

Posted on 2010-08-24
Medium Priority
Last Modified: 2012-05-10
If I want four or five different programs to each have best possible access time, would I put each one on a separate partition?  Would I put the OS on a separate partition?
Question by:AE_JB

Accepted Solution

zkrieger earned 572 total points
ID: 33517854
the first partition is the fastest part of the disk (the outside edge) this is reverse from DVDs/CDs

for most drives the first 40% is the fastest. so what you really need to consider is the size of the 4 programs plus the operating system.

for me on a 1TB drive, my partitions are:

300gb primary.
700gb (roughly) secondary.

these are your C: and D: drives. because i mostly store disk images on drive D:. i set the block size from the default of 4k to 64k.

the block size controls the smallest unit of measurement used by the partition. so if you wrote a small text file (less than 1kb in size) it would still use a full 64kb minumum.

I do that because it shrinks the size of the file allocation table (FAT) and makes searches and drive access a bit faster. it also makes reads faster since data is retrieved in 64k chunks instead of 4k.
LVL 70

Assisted Solution

garycase earned 568 total points
ID: 33517878
Agree with using the first partition for the OS;  but disagree with using 64k block sizes for that partition.    A 64k block size is definitely a good idea for a partition which stores most large files (e.g. video), but can actually slow down the OS ... especially if the page file is on that partition.    The page file is always read/written in 4k blocks, so you'll get the best performance if it's on a drive that's using 4k blocks.    If the drive uses 64k blocks, it requires a 64k read (and transfer) to access a single 4k page file entry.     Note that as long as files are stored contiguously (which most will be -- especially if you defrag the disk regularly), even large files (such as programs you're loading) will be read just as fast with 4k blocks as with larger blocks, since the disk reads a full cylinder at a time regardless of the block size (that's one of the functions of the cache).

You do not need multiple partitions for the various programs -- just put your OS and programs on the first (fastest) partition of the drive -- the 300GB/700GB allocation noted above is fine, although I use about half that for my first partition (which ensures the entire OS is on the outermost zone of the drive [all modern drives use zoned sectoring].

Assisted Solution

zkrieger earned 572 total points
ID: 33517901
Gary i think you misread what i said.

"because i mostly store disk images on D: {the second partition} i set the block size from the default 4k to 64k."

I do not recommend setting the C: drive partition to anything but 4k and in fact most windows OS installs will not let you anyway.
Get free NFR key for Veeam Availability Suite 9.5

Veeam is happy to provide a free NFR license (1 year, 2 sockets) to all certified IT Pros. The license allows for the non-production use of Veeam Availability Suite v9.5 in your home lab, without any feature limitations. It works for both VMware and Hyper-V environments

LVL 70

Assisted Solution

garycase earned 568 total points
ID: 33517969
Yes, I thought you were implying you'd used a larger block size for the OS (You CAN use whatever size you want ... although you have to pre-format it as the installer will use a default size).

64k blocks are okay for the second partition -- although I wouldn't go that large.    16k is a good trade-off between large files and performance.     The only time I use 64k blocks is for partitions that I use to CAPTURE video -- the larger block size lets you have a lot higher capture bandwidth without any missing frames.    For files that aren't real-time sensitive (like video captures) the block size doesn't matter in terms of file integrity ... only in storage efficiency and read performance.

Assisted Solution

DarrylHadfield earned 284 total points
ID: 33518184
Hi AE.

If you want four or five different programs to each have "best possible access time" - do not put them on the same drive.  Block size doesn't matter here; your limiting factor here is that you're dealing with a finite number of read/write heads accessing the same physical spinning platter.

While it may exist, I know of no solution that will let you classify data based on the application used to access it, and subsequently 'stripe' a single disk to give you equivalent access times to the data used by those apps.

If performance is a major concern for you, I would suggest multiple drives, one for storage of data specific to the application that uses it.  In this fashion, you can achieve great access times for each application without having to partition a drive.

For whatever it's worth, partitioning will generally only slow your system down..  Generally, not in a noticeable fashion, but it certainly won't help you any.
LVL 47

Assisted Solution

David earned 288 total points
ID: 33518394
Best possible "access time" is incompatible with best possible throughput.   Gary said 16KB block size.  I agree, that is a good general-purpose fit.  In grand scheme of things, you aren't going to see much of a difference unless you run benchmarks, but the problem is, any tuning you do for a specific benchmark will actually make your general-purpose I/O slower!

As for striping, I've done quite a bit of it over the years, and you can certainly get higher throughput on a single-disk system (if you really need to improve throughput at the expense of IOPs), if you configure the disk as a RAID0 volume.   You have to get the block size and file system settings right, but nothing wrong with configuring a single disk this way.   (But I've done this mostly on IRIX & LINUX, never even bothered to see if it is possible under Windows, and I certainly have not run data integrity tests to insure it is safe)

Assisted Solution

Theo01237 earned 288 total points
ID: 33519677
Best would be to have a separate drive for your OS. The performance you get from just partitioning the drive is minimal compares to having a separate smaller drive for the OS on it's own. I suggest getting a 160GB reasonably fast drive and use it for the OS and any software installs(I usually use a different drive for game installs to prevent thrashing).
LVL 11

Expert Comment

ID: 33527804
And look at PerfectDisk defrag software

Featured Post

Veeam and MySQL: How to Perform Backup & Recovery

MySQL and the MariaDB variant are among the most used databases in Linux environments, and many critical applications support their data on them. Watch this recorded webinar to find out how Veeam Backup & Replication allows you to get consistent backups of MySQL databases.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

You have seen this as an option on your internet browser before or it may be completely new to you.  But what does this mean and why would I use this?
this article is a guided solution for most of the common server issues in server hardware tasks we are facing in our routine job works. the topics in the following article covered are, 1) dell hardware raidlevel (Perc) 2) adding HDD 3) how t…
This video Micro Tutorial explains how to clone a hard drive using a commercial software product for Windows systems called Casper from Future Systems Solutions (FSS). Cloning makes an exact, complete copy of one hard disk drive (HDD) onto another d…
The viewer will learn how to successfully download and install the SARDU utility on Windows 8, without downloading adware.
Suggested Courses
Course of the Month18 days, 7 hours left to enroll

830 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question