Panem et circenses! ("Bread and circuses!")
(c) very hungry Romans
As you may have noticed, this year Intel IOMeter test has become very important for our storage products tests, little by little ousting all other benchmarks from the preferred test set. Our readers were not very happy with the too many synthetic benchmarks we use, so in order to prevent this discontent from growing into something more dangerous we had to think of a solution, which could satisfy the sophisticated users' taste.
As you remember, we have already undertaken an attempt to use PCMark2002 from MadOnion (see our article called PCMark2002 as Hard Disk Drive Test), which ended up in failure. So, we continued searching for more "real" tests. And another bit later, when I was reading the Internet in the original for the fifth time, it suddenly occurred to my swollen head: if you want something to be done correctly, do it yourself. So, I started looking for someone who could do the programming better than me :)
Luckily an old acquaintance of mine, Serguey Gromov aka SnakE agreed to help me and to write the test I needed so badly. The whole thing didn't take too long, so today I am happy to offer you a new benchmark, a public version of the new File-Copy Test (FC-Test).
As it follows from the name, the program copies the files measuring the time it required to complete the task. But this is not just a more convenient stop-watch in the tester's hand, but…
As you see, the utility interface is very modest and laconic:
But the simpler is the interface, the fewer chances you have to get lost there. So, we see that after starting the program there are only two pages available: File and Help. In the Help page you can now find only the "About" info, so we will omit it for now. And in the File page you can find the following two options:
By clicking the "Open" option, we can load the preliminarily prepared list of files into the test (we will refer to it as to a pattern). The pattern contains the following info, actually:
FC-test Pattern 1.0
In other words a pattern is none other but a list of file sizes and number of files of the same size. This form of file sets representation allows creating patterns with your own hands just with the help of an ordinary editor program. But if we want our patterns to be not synthetic, we can use Scan option, which will automatically create a pattern according to any directory you select on your HDD (it will even include all the files from the subdirectories).
Once you have selected the directory, you have to set the format it will be processed in and decide whether you need the list to be optimized or not. Optimization implies that the files are sorted according to their size, so that the files of the same size fall into the same packs, which reduces the pattern file size. However, you should remember that the regular and the optimized patterns on an empty HDD will have different file location schemes on the physical tracks.
As for me, I do not optimize the patterns I use.
If we select Open option, we will be offered to choose a pattern file, which we would like to load into the program:
And once the pattern is loaded, we get new horizons open in front of us:
Wow, so many new buttons! Let's find out what they all stand for.
Let me describe the buttons from left to right: "Close pattern", "Save Pattern", "Add Pattern Element", Remove Pattern Element", Edit Pattern Element", "Optimize Pattern", "Create Files by Pattern".
Of course, the last button is the most important one. Having clicked it, you will have to select a directory where we will create the filed for the current pattern.
Please, be careful when selecting the directory, because it will be a really tough task to remove 9000 files from the Windows directory afterwards :)
Having created the real files on your hard drive according to the selected pattern, you are ready to run those copy operations, which were actually our major goal here.
For instance, you can simply read these files:
In this case you will get how fast the files are read from the HDD (and when we created the files we got how fats they were written onto the HDD).
If we select Copy, then we will find out how fast the files will be copied from a certain location to another selected location. As you understand, there is the whole bunch of copy scenarios from one logical drive to another and the choice of scenarios is totally up to you.
The time spent on each operation is saved in the Log page and then in a file with a very gloomy name:
In conclusion to our FC-Test description, I would like to sincerely thank its author, Serguey Gromov once again.
So, we've now got the instrument, it is tuned up and ready to start sounding. However, in our case we should carefully follow the score, otherwise the not versed in music neigbours will wash down some really cold and wet water on you.
For the tests the HDD is formatted as two equal logical drives in NTFS or FAT32. Then we create a set of files on the first logical drive according to the selected pattern and measure the time we need to complete this task.
Then the files are copied to the same logical drive where our initial file set is located and onto the second (still empty) HDD. The mentioned tests are run three times, with the system rebooted between the tests. The average results are taken for the analysis.
This way we get four HDD speeds:
- Writing a set of files onto the HDD;
- Reading a set of files from the HDD;
- "Short-distance" copying the set of files;
- "Long-distance" copying of the set of files.
The workload on the disk subsystem is in this case determined by the patterns contents, which can be easily measured manually, as I have already told you. If we need to measure how fast the streaming data is written onto/read from the HDD, then we create a pattern of one single large-size file. If we are investigating the performance of our HDD when working with many smaller files, then we simply create a pattern of one (two, three, etc.) thousand 1-byte files :)
However, since I stated from the very beginning, that I was looking for a real test, i.e. a test measuring the performance of the hard disk drive with real non-synthetic file sets, then I simply scanned 5 directories on my home PC.
|Patterns for FC-Test|
|Total files||Size, MB|
In conclusion I would like to say that FC-Test and the testing methodology are not something static, set once and for all. I hope that with your feedback we will be able to improve this test to make it perfectly suit our needs.
FC-Test utility is spread "as is". We bear no responsibility for any harm the improper use of this program may cause your system.
You are free to use this utility once you put a link to X-bit labs site. Commercial use of this program requires prior written consent of X-bit labs team.
Download the program here.