Industry Insights

How Wide Should the Stripe Be? Choosing an Allocation Unit and Paying for It Twice

著者:JH Semiconductorstripe width / allocation unit / superblock

Stripe width looks like a bandwidth parameter but is really the choice of the firmware's smallest allocation and reclaim unit. The bandwidth gain saturates early, while blast radius and reclaim granularity both grow linearly with width.

Stripe width really defines an allocation unit

Opening the stripe wider or narrower looks like a bandwidth parameter. It is really the choice of the firmware's smallest allocation and reclaim unit. Once logical addresses are scattered at a fixed granularity, the physical units that land in one stripe stay bound together for their whole life: allocated together, filled together, erased together, rebuilt together. Bandwidth is only the first consequence of that choice; two costs sit behind it.

The bandwidth side saturates early

The J750/J770 target 7,400 MB/s sequential read, already close to the usable ceiling of a PCIe 4.0 x4 link — the bottleneck is the front-end interface, not the medium, so widening further does not return proportional bandwidth. The planned power budget is 18 W typical, 22 W maximum, 6 W idle, with concurrent media operations taking the larger share; once the stripe is wide enough to trip power capping regularly, steady-state bandwidth falls back instead of rising. The planned 5,500 MB/s write figure is bounded by program time and suspend policy, again not linear in width. All of these are product definition/EVT targets.

Cost one: blast radius grows linearly with width

The wider the stripe, the more stripes a single die failure touches. With die-level parity layered on top, rebuild must read every remaining unit in the stripe, so rebuild read volume scales with width — and the parity itself is deducted from over-provisioning. A wide stripe converts a bandwidth question into an availability question, which is the main reason enterprise and client designs settle on different values for the same parameter.

Cost two: reclaim granularity coarsens with it

The stripe usually doubles as the superblock unit. Larger superblocks mean more valid data must be relocated per garbage-collection pass, so reclaim occupies the medium for longer and in more concentrated bursts, and foreground tail latency becomes jumpier. In deployments dominated by steady-state mixed workloads this cost is often more tangible than the bandwidth it bought.

Different lines should take different values

  • QLC capacity lines (Q7 J760Q, Q9 J960Q) have long program times and favour wider write stripes to amortise each operation;
  • low-latency lines (X7 J790X, X9 J990X) narrow the stripe instead, trading parallelism for finer reclaim units and steadier P99;
  • general-purpose lines (CORE 7, TITAN 7) use wider interleaving on the read path while organising write and reclaim around smaller groups.

The J750/J770 controller route pairs an external Gen4 enterprise controller with JH's own firmware, evolving eventually to the in-house JHC400 controller platform. For stripe values calibrated today to survive that platform transition, they can only exist as configurable firmware parameters rather than constants frozen alongside the controller.

キーワード
stripe widthallocation unitsuperblockdie-level paritygarbage collection granularityconfigurable firmware parameterJH Semiconductor