Introduction to DMM
What is DMM?
The Disk Manufacturing Module or DMM is the multi-drive, multi-adapter high-performance disk testing tool which is included in the STB Suite.
DMM is fully threaded. This means that each drive under test (DUT) will have a completely separate test thread running. Each test thread can run at the full speed of the DUT – a fast drive will not be throttled by a slow drive. DMM is able to consistently deliver extremely high I/O performance. The I/O speed of each drive is shown/logged, as well as the system-wide throughput.
Each DUT will have an individual text log file created as well as having its test results logged into an Access data base file.
DMM is designed to create and then execute Test Sequences. A Test Sequence is simply a list of Test Steps. Test Steps can be simple operations such as “Record the drives Glist count”, or “Run a Sequential Write test to the entire drive”. You will see the Test Steps available in DMM in the next section.
DMM can be accessed in a number of ways. When starting the STB Suite you may choose the “Start in Multi-Drive Testing Mode” choice. Or if you are already in STB Original mode you may enter DMM by the top menu choice Advanced Tests->Disk Test choice, or the Disk->Advanced Testing choice. All of these choices lead to DMM.
Defining a Test Sequence
As we stated above, DMM executes a Test Sequence which is just a list of Test Steps. A Test Step is defined in the point and click “Test Setup” tab shown here:
Note the highlights in the picture above. Starting at the top and working down, these show that we are defining a Test Step which is a Sequential Write, is going to Stop After testing the entire drive (-1 blocks means do the whole drive), the test I/O will transfer 128 blocks per I/O, and the disk will be written with a “decrementing” data pattern with the first four bytes of each block overlaid with the LBA. Once this test is defined the way you want it you click the “Add This Test to Test Sequence” button and now your Test Sequence is a real sequence. It only has one Test Step right now but it is a Test Sequence.
Let’s go ahead and add another Test Step, this time we will tell DMM to read the entire drive and do a data compare with each block. Here is the setup for this:
You’ll notice that the only real change was to click on “Read” instead of “Write” in the Type of Test area, and we checked the checkbox “Compare on Reads”. Once again “Add This Test to Test Sequence” and now you have a test sequence which will write the entire drive, then read the entire drive doing data compares. This is the basis for almost all disk drive testing.
As you can see, defining Test Sequences is just as easy as picking the operations you want done from the menu of Test Types. You can specify to do Random access testing instead of Sequential, or CPAM access which is STB’s exclusive access method which guarantees all blocks on the drive will be hit once and only once. As far as Test Types you can choose Write or Read tests as above, or Verify, Write/Read, Seek, Spin Down/Up – any of the tests you see in the menu. The Test Types “Streaming” through “Workstation” are complex tests which will do a combination of writes and reads and a combination of sequential and random access – to simulate the real-world environments of the test name.
Also note there are Test Types for downloading firmware to SCSI/SAS/FC or SATA drives, to Format, etc.
Test sequences can be as many Test Steps long as you wish. And of course you can save your Test Sequence to reload and run later. Once a Test Sequence is defined you can also change the order of the Test Steps and also modify any Test Step. It’s all there in DMM!
A few notes-
A few important notes for creating Test Sequences…
- To test the entire drive enter -1 Blocks in the Stop Test After: section.
- If you are going to do data compare testing be certain to first write the entire drive with the data pattern of your choice. Do this in a Sequential Write pass – then you can do any kind of Read testing with “Compare on Reads” checked.
- Log Files – each DUT will have a log file created. The location of these logs is specified by clicking the “Advanced Options” button. You will see many interesting options available, such as the Queue Depth you’d like to attain, etc.
Running the Test Sequence
Running your Test Sequence is as simple as:
- Selecting all of the drives you want to test
- Clicking “Start Test”
- One last window will pop up giving you the option to loop your test sequence. The default is to run the Test Sequence once.
As tests are running the DUT display will show the drives status by color. Blue indicates tests are running. Red indicates a failure. Green indicates the Test Sequence ran with no errors.
You can look at the status of any DUT by right-clicking on the drive of interest. You will see where in the Test Sequence the drive is, and you will see the transfer rate and time to complete. You can pause/resume/stop any individual drive here, or you may stop testing on all drives with the “Stop Current Test” or “Stop All Tests” buttons.
Once the Test Sequence is complete you will have text log files for each drive. These logs will show all Test Steps and all test parameters, as well as performance statistics and/or error information.
A more advanced section of DMM is the “Pre-Test Actions”. These are things you want to do to all drives before starting the Test Sequence. For instance you can check and only run tests on certain manufacturers drives, you can check each drives firmware and if it isn’t the right version do a download of the right version. You can check and change the blocksize and/or capacity, and you can screen out drives with defects, etc
DMM is a very versatile high-performance test tool for testing many drives at once and creating detailed log files.
It only takes a few minutes to become comfortable creating your own custom Test Sequences that do any kind of test you can imagine, on many drives at once.