Benchmarking 201

SSD Benchmarking 201, Part 3: Three Enterprise SSDs on One Test Method

My Iometer runs on a Micron 9100 MAX, a Kingston DCP1000 and an Intel DC P4510, compared at matched queue depths and mixes, with latency read beside IOPS.

On this page 9 sections

Part 1 of this series built a repeatable Iometer job, and Part 2 covered when a drive is ready to measure and how to read its latency. Here that job runs on three enterprise SSDs I tested between 2016 and 2018: a Micron 9100 MAX 2.4TB, a Kingston DCP1000 1.6TB, and an Intel DC P4510 2TB. Each one comes out ahead somewhere. Where it leads depends on the queue depth (QD) and on how much of the load is writes.

The same Iometer job run on three enterprise SSDs, compared across queue depthA three-panel cover. Left: one job file listing its settings, transfer size, read share, randomness, workers times outstanding I/Os, and ramp and run times. Center: the three drives it ran on, a Micron 9100 MAX add-in card, a Kingston DCP1000 add-in card drawn as four small M.2 drives on one board, and an Intel DC P4510 2.5-inch drive. Right: a queue depth axis from QD1 to QD256 with two curves, a write rate that climbs and then goes flat, and a wait time that keeps rising after the rate stops.GUIDE / BENCHMARKING 201, PART 3One job, three enterprise drivesJOB FILE · DRIVES · QUEUE DEPTH01 ONE JOB02 THREE DRIVES03 DEPTHsize 4KiBreads 0 to 100%random 100%workers × I/Osramp, run, repeat9100 MAX cardDCP1000, 4 drivesP4510 U.2QD1QD256ratewait

All the results are mine, recomputed from the raw Iometer rows of each run instead of the summary sheets I built at the time. They’re given in I/O operations per second (IOPS), with the average response time beside them wherever it changes the reading. Two wider sets follow the three. One checks workers against depth on 16 drives from the same years, and one takes eight drives from 2019 across the whole read mix. A 2022 job on an engineering sample comes last.

Three drives, one job file

All three drives ran on my test system with the set of Iometer 1.1.0 configs that Part 1 walks through. Before its 4KiB and 8KiB sweeps, each drive got a 6h random write precondition at QD256. Each queue depth step then recorded for 300s after a 30s ramp. QD on this page always means the total number of I/Os the drive has in flight, as in Part 1. From QD1 to QD8 the job adds workers at one outstanding I/O each, and from QD16 to QD256 it holds 16 workers and raises each one’s outstanding I/Os. Each sweep number on this page comes from a single 300s step, and only my SNIA-style results average more than one reading, the mean of rounds 22 to 25 of 25. Each of the 56 access specs in a round ran for 60s at QD256, and the rounds followed a 2h sequential fill.

Three drives, one job file

Queue depth is workers times outstanding I/Os per worker

QD1 to QD256 in the sweeps; 25 rounds at QD256 in the SNIA-style run

A diagram of how the job builds load. Nine columns, one per queue depth from QD1 to QD256. Each column is a stack of worker rows, and the number in each row is that worker’s outstanding I/Os. From QD1 to QD8 the job adds workers, 1, 2, 4 and then 8, each holding one I/O. From QD16 to QD256 it keeps 16 workers and raises each one’s outstanding I/Os through 1, 2, 4, 8 and 16. Below, a strip of 25 numbered rounds stands for the SNIA-style run at QD256, with rounds 22 to 25 marked as the four that are averaged into the result.1×1QD12×1QD24×1QD48×1QD816×1QD1616×2QD3216×4QD6416×8QD12816×16QD256Each bar is one worker; the label is workers × I/Os per workerSNIA-STYLE RUN AT QD256, 25 ROUNDS12225Workers added (QD1 to QD8)Depth added (QD16 up)Rounds averaged
Figure 3.1 · The sweeps add workers up to QD8, then hold 16 workers and add depth; the SNIA-style result is the mean of rounds 22 to 25. Source: my enterprise test runs, Iometer 1.1.0 configs.

Iometer wrote each drive’s model and firmware strings into its results files, along with the number of targets it saw.

Drive Model and firmware strings Targets Tested
Micron 9100 MAX 2.4TB MTFDHAX2T4MCF-1A, 0091 1 June 2016
Kingston DCP1000 1.6TB SEDC1000H400G, E7FT03.C 4 April and May 2017
Intel DC P4510 2TB SSDPE2KX02, 0120 1 February 2018

Source: my Iometer 1.1.0 results files.

Kingston’s datasheet describes the DCP1000 as four M.2 SSDs on one card and rates the card on the four combined. Iometer saw them as four 400GB targets, so every DCP1000 number on this page is the sum across all four, and the last section looks at what that does to a comparison.

The 9100 MAX’s 8KiB random read results on this page start at QD16.

At QD1 the newest drive answers first

QD1 stands for a single thread that waits for each I/O before it sends the next. Benchmarking 101, Part 2 ties random reads at QD1 to boot and app launches on a desktop, and on a server the same depth is one request stream with nothing queued behind it. With one I/O in flight, IOPS is close to the inverse of the average response time, so the drive that answers each request soonest wins. The P4510 returned 4KiB random reads in 0.079ms on average, for 12,653 IOPS. On the DCP1000 a read took 0.106ms for 9,408 IOPS, from one of its four drives, and the 9100 MAX took 0.153ms for 6,491. Writes at QD1 came back sooner than reads on all three. They took 0.020ms on the P4510 for 47,586 IOPS, 0.039ms on the DCP1000 for 25,313, and 0.060ms on the 9100 MAX for 16,531.

At QD1 the newest drive answers first

One I/O at a time, the 2018 P4510 answered soonest

Average response time, 4KiB random, QD1

A horizontal bar chart of average response time at queue depth 1 for 4KiB random I/O. Reads: Intel DC P4510 0.079 milliseconds, Kingston DCP1000 0.106 milliseconds from one of its four drives, Micron 9100 MAX 0.153 milliseconds. Writes came back sooner on all three: P4510 0.020 milliseconds, DCP1000 0.039, 9100 MAX 0.060. Read bars are solid teal and write bars are dashed copper outlines.Drive and direction00.040.080.120.16Average response time at QD1, msIntel DC P4510read0.079msKingston DCP1000read, one drive0.106msMicron 9100 MAXread0.153msIntel DC P4510write0.020msKingston DCP1000write, one drive0.039msMicron 9100 MAXwrite0.060ms4KiB random read4KiB random write
Figure 3.2 · At QD1 IOPS is the inverse of response time, so these bars set each drive’s single-thread rate. Source: my enterprise test runs, Iometer 1.1.0, 2016 to 2018, after a six-hour random write precondition.

At 67% reads, the 8KiB Database mix keeps the same order at low depth. At QD1 the P4510 ran 12,470 IOPS to the 9100 MAX’s 6,638, almost twice as many. Between QD8 and QD16 the 9100 MAX caught up. At QD8 the P4510 still led, 53,033 to 49,424, and at QD16 the 9100 MAX led 79,204 to 72,595.

For reads and the read-heavy Database mix, a host that seldom keeps more than eight I/Os in flight gets more from the P4510. A host that stacks deeper queues gets more from the 9100 MAX, and the next section shows how much more once writes join the load.

Writes split the drives at depth

Each drive ran seven read shares at every block size in the SNIA-style rounds, all at QD256. The chart shows the 4KiB results at four of them.

Writes split the drives at depth

With any writes in the mix, the 9100 MAX pulls ahead at QD256

SNIA-style rounds, 4KiB random, QD256, mean of rounds 22 to 25

A line chart of 4KiB random IOPS at queue depth 256 against the read share, at 0, 65, 95 and 100 percent reads. Micron 9100 MAX: 337,722, 459,641, 623,068 and 738,007. Kingston DCP1000, four drives on one card: 211,167, 285,723, 642,773 and 1,085,819. Intel DC P4510: 97,029, 176,721, 371,690 and 657,325. The 9100 MAX is highest at every read share below 100 percent; the DCP1000 is highest at 100 percent.4KiB random IOPS at QD2560300,000600,000900,0001,200,0000%65%95%100%Share of the I/O that is readsMicron 9100 MAXKingston DCP1000, 4 drivesIntel DC P4510
Figure 3.3 · The DCP1000 leads only with every I/O a read; 5% writes cost the P4510 43% and the 9100 MAX 16%. Source: my enterprise test runs, Iometer 1.1.0, 16 workers at 16 outstanding I/Os.

Moving 5% of the I/O to writes cost the P4510 43% of its all-read rate and the DCP1000 41%. For the 9100 MAX the same change cost 16%. With every I/O a write, the 9100 MAX ran 3.5 times the P4510’s rate. At 8KiB the gap held, 169,261 write IOPS against 48,897, while their all-read results sat close together at 377,987 and 361,567.

My QD sweep shows where each drive’s writes stop climbing. The P4510’s stopped at QD8, as the next section shows, and the other two flattened deeper in the sweep. The 9100 MAX reached 300,697 IOPS at QD16 and 311,479 at QD256, and the DCP1000 reached 177,199 at QD32 and 182,622 at QD256, with one lower step between them that I can’t explain. Past those depths each of the three gained under 4%, so the depth where a drive’s writes stop climbing tells more about it than its QD256 number.

Four server mixes tell the same story. Database is 8KiB at 67% reads, Email Server is 8KiB at 50%, File Server spreads eight sizes from 512B to 64KiB at 80%, and Web Server spreads ten sizes from 512B to 512KiB with no writes at all.

Mix at QD256 9100 MAX DCP1000 P4510
Database 249,237 159,137 93,558
Email Server 206,786 120,412 70,791
File Server 198,116 137,337 87,423
Web Server 181,932 399,155 178,477

Source: my Iometer QD sweeps, IOPS at 16 workers with 16 outstanding I/Os each.

On Web Server the P4510 came within 2% of the 9100 MAX. In the three mixes that write, the 9100 MAX ran 2.3 to 2.9 times the P4510’s rate. So the choice between those two comes down to the write share. For a read-only service the P4510 gives up almost nothing, and for anything that writes under deep queues the 9100 MAX is the better drive by a wide margin.

Latency is the other half of every IOPS number

Part 1 checked the 9100 MAX’s QD256 read run against Little’s law, which says the I/Os in flight equal IOPS times the average response time. Both other drives pass it. The P4510 ran 657,240 IOPS at 0.389ms, and 256 / 0.389ms gives 658,098, within 0.2%. For the DCP1000, 1,089,673 IOPS at 0.235ms sits within 0.1% of the 1,089,362 the law gives.

Read the other way, the law says what happens past a drive’s peak. Once IOPS stops rising, the average response time is the queue depth divided by a fixed rate, so each doubling of the queue doubles the wait. My P4510 4KiB write runs show it. From QD16 to QD256 their rate rose 1.6%, from 87,403 to 88,758 IOPS, while the average response time went from 0.183ms to 2.884ms, about 16 times as long. Part 1 found the 9100 MAX’s writes doing the same past QD16. A write result at QD256 on either drive mostly measures how long the queue was.

Latency is the other half of every IOPS number

Past QD8 the P4510’s write rate is flat and its wait doubles

Intel DC P4510 2TB, 4KiB random write, QD1 to QD256

Two charts side by side for the Intel DC P4510 2TB running 4KiB random writes. Left: IOPS against queue depth, rising from 47,586 at QD1 to 88,080 at QD8, then flat between 87,403 and 88,837 up to QD256. Right: average response time against queue depth on a log scale, from 0.020 milliseconds at QD1 to 0.183 at QD16, 0.364 at QD32, 0.724 at QD64, 1.440 at QD128 and 2.884 at QD256, doubling with each doubling of the queue once the rate is flat.01 RATE02 WAIT4KiB write IOPS025,00050,00075,000100,000141664256Queue depthAverage response, ms, log scale0.010.1110141664256Queue depthIOPSAverage response time
Figure 3.4 · From QD16 to QD256 IOPS rose 1.6% while average response time grew about 16 times. Source: my enterprise test runs, Iometer 1.1.0, February 2018.

Sequential reads level off the same way. In 128KiB sequential reads the 9100 MAX reached 3,144MB/s at QD32 and 3,196MB/s at QD256, and the P4510 reached 3,306MB/s and 3,310MB/s. By QD256 the average response time had grown to 10.497ms on the 9100 MAX and 10.137ms on the P4510, for less than 2% more data than at QD32.

Iometer logs the host’s CPU load too, and at these rates it isn’t small. My test system ran at 28.1% CPU during the 9100 MAX’s QD256 read step, 26.0% during the P4510’s, and 39.5% during the DCP1000’s 1,089,673 IOPS. None of these runs shows the host holding a drive back, and the CPU column is what would show it, so it belongs beside the IOPS in any result near a million.

What four drives on one card do to the numbers

Iometer’s results show where each worker sent its I/O. On the DCP1000, worker 1 went to the first target, worker 2 to the second, and so on around the four, with worker 5 back on the first. At QD1 one 400GB drive did all the work, for 9,408 IOPS. At QD4 each drive held one I/O, and the card ran 37,695 IOPS, four times the QD1 rate within 0.2%.

Average read response time was 0.106ms at QD1 and still 0.106ms at QD16, where each drive held four I/Os and the card ran 150,532 IOPS. At QD256 each drive held 64 and delivered 268,206 to 276,620 IOPS. Together they ran 1,089,673. A QD label on this card is four times the depth any one of its drives saw. QD16 on the DCP1000 is four drives at QD4, and setting it beside QD16 on a single drive compares two different loads.

What four drives on one card do to the numbers

On the DCP1000, a QD label is four times what each drive sees

Kingston DCP1000 1.6TB, 4KiB random read, I/Os in flight per drive

A diagram of the Kingston DCP1000, a card made of four drives, at four queue depths. Each column shows the four drives and the number of I/Os each one holds. At QD1 one drive holds one I/O and the other three are idle, and the card runs 9,408 IOPS. At QD4 each drive holds one I/O, for 37,695 IOPS. At QD16 each holds four, for 150,532 IOPS. At QD256 each holds 64, for 1,089,673 IOPS.QD1ONE CARDDrive 11 in flightDrive 2idleDrive 3idleDrive 4idle9,408IOPS, card totalQD4ONE CARDDrive 11 in flightDrive 21 in flightDrive 31 in flightDrive 41 in flight37,695IOPS, card totalQD16ONE CARDDrive 14 in flightDrive 24 in flightDrive 34 in flightDrive 44 in flight150,532IOPS, card totalQD256ONE CARDDrive 164 in flightDrive 264 in flightDrive 364 in flightDrive 464 in flight1,089,673IOPS, card totalDrive with I/O in flightIdle drive
Figure 3.5 · Iometer sent workers to the four drives in turn, so QD1 used one drive and QD256 put 64 I/Os on each. Source: my enterprise test runs, Iometer 1.1.0, May 2017.

Kingston rates the 1.6TB card at 1,100,000 IOPS of 4K random reads and 200,000 of writes at steady state, measured across its four drives. My SNIA-style rounds came in at 1,085,819 and 211,167. Those writes still trailed the 9100 MAX on its own, which wrote 337,722 IOPS at the same settings. With one worker per drive, the card’s 128KiB sequential reads reached 7,152MB/s at QD32 against its rated 6,800MB/s.

My runs addressed each of the four drives directly. Kingston’s datasheet says the card can be configured as a RAID volume through host software, and a stripe between the job and the drives changes which drive each I/O reaches, so a RAID setup needs runs of its own before its numbers can stand beside these.

Workers or depth, two ways to reach QD256

Every drive in my 2016 to 2018 set ran QD256 4KiB random writes twice. The 6h precondition used 8 workers at 32 outstanding I/Os each, and the QD256 step of the sweep that followed used 16 workers at 16. A controller that handled one shape of load better than the other would split those two results. I set the last hour of each precondition, summed second by second from Iometer’s per-worker log, against the sweep step on 16 drives.

On 15 of the 16 the two agreed within 2.3%. The 9100 MAX ran 311,309 IOPS in its precondition’s last hour and 311,479 in the sweep, and a Toshiba HK4R 1,920GB ran 17,298 and 17,297. Only the DCP1000 differed, with the sweep 5.5% higher. Its precondition was still sliding, from 184,919 IOPS in the first hour to 173,145 in the last, and on that card both layouts give each of its four drives QD64 anyway. The two runs in each pair come from different points in a drive’s life, so they only agree once a drive is steady. Where a drive was steady, the flash set the write rate and the host’s split of QD256 made no difference I could measure.

Workers or depth, two ways to reach QD256

8 workers at 32 or 16 at 16 gave the same write rate on 15 of 16

QD256 4KiB random write, last hour of the precondition against the sweep step

A dot plot of 16 drives on a log scale of IOPS from 5,000 to 500,000. Each row has two marks: a hollow ring for the last hour of the six-hour precondition, run as 8 workers with 32 outstanding I/Os each, and a small solid diamond for the QD256 step of the later sweep, run as 16 workers with 16 each. On 15 drives the two marks sit on top of each other, from the Micron 9100 MAX at 311,309 and 311,479 IOPS down to the Kingston DC400 at 9,819 and 9,832. Only the Kingston DCP1000 shows a gap, 173,145 against 182,622.Drive5,00050,000500,0004KiB random write IOPS at QD256, log scaleMicron 9100 MAX 2.4TBKingston DCP1000 1.6TBIntel DC P3700 1.6TBIntel DC P4510 8TBHGST SN100 3.2TBHGST SN100 1.6TBTechman XC100E5C 3.2TBIntel DC P4510 2TBMicron 5100 MAXToshiba HK4E 800GBIntel DC P3520 1.2TBMicron 5100 ECOMicron M510DC 480GBSamsung SM863 960GBToshiba HK4R 1,920GBKingston DC400 960GB8 workers × 32, precondition last hour16 × 16, sweep step
Figure 3.6 · 15 of 16 drives agree within 2.3%; the DCP1000’s sweep is 5.5% higher because its precondition was still falling. Source: my enterprise test runs, Iometer 1.1.0, 2016 to 2018, per-second precondition logs summed over eight workers.

Read results seem to favor added workers, but the sweep can’t tell. It doubles the load twice in a row. QD8 to QD16 doubles the workers, and QD16 to QD32 doubles each worker’s outstanding I/Os. Reads on the 9100 MAX went from 66,444 to 132,818 to 250,164 IOPS. Nine of the 16 drives gained 1.83 to 2.00 times from the added workers and 1.61 to 1.91 times from the added depth. The other seven stopped at QD32, with gains of 1.48 to 1.64 times and then 1.00 to 1.17 times. Those seven are three Micron drives (5100 ECO, 5100 MAX and M510DC) plus the Kingston DC400, Samsung SM863, and Toshiba HK4E and HK4R.

Because the depth step always comes second and starts from twice the load, a smaller gain there says where a drive ran out of parallel work and nothing about workers against depth. Only a test that holds the total fixed and trades one for the other answers that question. My QD256 write pair is that test, and on these 16 drives the answer was no difference.

Optane, low-latency flash and TLC NAND across the read mix

In 2019 I ran a newer job on eight drives, so its results stay apart from the 2016 to 2018 set. After a 4KiB random write precondition at QD128, it stepped the read share from 0 to 100% in 10% steps at every queue depth from QD1 to QD256, 99 steps per drive. Three of the drives use three kinds of memory. Intel’s 905P brief lists 3D XPoint for the Optane SSD 905P, Samsung’s 983 ZET brief lists its own Low Latency V-NAND, and Micron’s 9300 brief lists 64-layer 3D TLC NAND. I tested the 905P and the 983 ZET at 960GB and the 9300 PRO at 7.68TB.

The memory shows up in QD1 reads. A 4KiB read took 0.0168ms on average on the 905P, 0.0241ms on the 983 ZET, and 0.113ms on the 9300 PRO. Writes at QD1 hid the difference, at 0.0184ms, 0.0187ms and 0.0189ms. Across the mix at QD1 the 905P barely moved, from 53,499 IOPS with all writes to 58,854 with all reads. Over the same range at QD1 the 983 ZET slid from 52,632 to 41,111, and the 9300 PRO fell from 52,275 to 8,825, about six times lower, as reads took over.

Deep queues turn the all-read order around. With every request a read at QD256, the 9300 PRO ran 847,866 IOPS and the 983 ZET 789,649, against 579,632 on the 905P. With all writes the 905P ran 583,711 IOPS against 147,277 on the 9300 PRO and 79,503 on the 983 ZET. The 905P’s lowest point at that depth came at 40% reads, 511,459 IOPS or about 12% under its all-write rate, while both flash drives gained with every step toward all reads. At QD16 and 70% reads, the 905P ran 530,219 IOPS against 182,537 on the 983 ZET and 148,968 on the 9300 PRO.

Optane, low-latency flash and TLC NAND across the read mix

Optane holds its rate across the mix; flash needs reads and depth

4KiB random IOPS against the share of reads, 2019 runs

Two line charts of 4KiB random IOPS against the share of reads, from 0 to 100 percent in 10 percent steps. Left, queue depth 1: the Intel Optane SSD 905P stays between 53,499 and 58,854; the Samsung 983 ZET slides from 52,632 with all writes to 41,111 with all reads; the Micron 9300 PRO falls from 52,275 to 8,825. Right, queue depth 256: the 905P dips from 583,711 with all writes to a low of 511,459 at 40 percent reads and comes back to 579,632; the 983 ZET climbs from 79,503 to 789,649 and the 9300 PRO from 147,277 to 847,866, both passing the 905P only at 100 percent reads.01 QD102 QD2564KiB random IOPS020,00040,00060,000020406080100Reads, % of I/O4KiB random IOPS0300,000600,000900,000020406080100Reads, % of I/OOptane 905P983 ZET9300 PRO
Figure 3.7 · At QD1 the 905P barely moves while the 9300 PRO falls about six times; at QD256 both flash drives pass it on all reads. Source: my enterprise test runs, Iometer 1.1.0, 2019, after a 4KiB random write precondition at QD128.

Four other drives in the 2019 set took 0.0925 to 0.1167ms per QD1 read, close to the 9300 PRO. That group is an Intel DC P3520 1.2TB and a Toshiba PX04 3.2TB, along with a Samsung 860 DCT 3.84TB and a Toshiba HK4E 800GB. Optane earns its place on mixed loads and single requests, where it answered reads five to seven times sooner than the 9300 PRO and those four. Once enough all-read requests are queued, both flash drives pass it.

A 2022 sample on a newer job

My 2022 job for an E18DC-based enterprise NVMe engineering sample at 1,920GB ran on a different test system, so its numbers stay apart from the drives above. After a 3h 4KiB random write precondition at QD256, it swept 11 read shares from 0 to 100% at 9 queue depths. At QD256 the sample read 646,007 IOPS at 0.396ms and wrote 48,522 at 5.276ms.

A 2022 sample on a newer job

The first 10% of writes halved this sample’s read rate at QD256

E18DC-based engineering sample, 1,920GB, 4KiB random, QD256

A line chart of 4KiB random IOPS at queue depth 256 against the share of reads, from 0 to 100 percent in 10 percent steps, for an E18DC-based enterprise NVMe engineering sample at 1,920GB. The rate climbs slowly from 48,522 with all writes through 89,585 at 50 percent reads and 203,123 at 80 percent, then jumps to 319,837 at 90 percent and 646,007 with all reads. The step from 90 to 100 percent reads doubles the rate.4KiB random IOPS at QD2560175,000350,000525,000700,0000102030405060708090100Reads, % of I/OE18DC-based sample, 1,920GB
Figure 3.8 · At 90% reads the sample ran 319,837 IOPS, about half its 646,007 with all reads; no other 10% step cost as much. Source: my enterprise test runs, Iometer 1.1.0, July 2022, on a different test system from the 2016 to 2019 runs.

Like my 2019 job, this one steps through every 10% read share. At 90% reads the sample ran 319,837 IOPS, about half its all-read rate, and no other 10% step at that depth cost as much. On this drive at QD256, the first writes added to a read load did more damage than any later ones.

What a comparison has to match

Part 4 sets published reviews of enterprise drives beside my runs. Before I compare a review’s number with one of mine, I match its block size, read share, total queue depth, and preconditioning.

What a comparison has to match

Five settings decide whether a review’s number fits beside mine

What a published result has to state before it can be compared

A checklist of five settings a published SSD result has to match before it can stand beside one of these runs, each with the value the author’s runs used. Block size: 4KiB and 8KiB random and 128KiB sequential. Read share: seven shares from all writes to all reads. Total queue depth: QD1 to QD256, counting all I/Os in flight. Preconditioning: a six-hour random write at QD256. The fifth, added by the Kingston DCP1000, is how the depth is split across workers and targets, because QD4 on that card was four drives at QD1.01 BLOCK SIZE4KiB and 8KiB random, 128KiB sequential02 READ SHAREseven shares from all writes to all reads03 TOTAL QUEUE DEPTHQD1 to QD256, all I/Os in flight04 PRECONDITIONINGsix-hour random write at QD25605 WORKERS AND TARGETSQD4 on the DCP1000 is 4 drives at QD1Set in every job fileAdded by a multi-drive card
Figure 3.9 · Four settings come from any job file; the four-drive card adds the split across workers and targets. Source: my enterprise test runs, Iometer 1.1.0 configs, 2016 to 2018.

The DCP1000 adds one more item to that list, how the depth is split across workers and targets, because QD4 on that card was four drives at QD1. A review that states all five can sit beside my runs number for number, and that is the test Part 4 puts each review through.

KEEP GOING / NEXT CHAPTERContinue to Part 4

Sources

Primary is the original paper, standard or datasheet. Secondary is a review, a vendor summary or a news report. Measured is my own test data.

Show all 5 sources, 4 primary