ZFS block size and padding calculator

See how one uncompressed ZFS block is split into data, parity, sector rounding, and padding on a RAIDZ vdev. Compare block sizes and inspect the exact theoretical allocation before changing recordsize or volblocksize.

RAIDZ level
Workload

What each option changes

The calculator needs five details about the block and the RAIDZ vdev that will store it.

OptionWhat it means
RAIDZ levelRAIDZ1, RAIDZ2, or RAIDZ3. The number tells you how many parity sectors each stripe row needs.
Vdev widthThe total number of drives in this RAIDZ vdev.
WorkloadChoose a filesystem dataset or a zvol. This decides whether the block setting is called recordsize or volblocksize.
Block sizeThe logical size of the one block being tested.
ashiftThe physical sector size ZFS uses for allocation. For example, ashift=12 means 4 KiB sectors.

recordsize and volblocksize describe different blocks

recordsize is the largest block ZFS normally uses for file data in a dataset. A small file or the end of a file can use a smaller block. volblocksize is the block size used by a zvol. The calculator changes the name and valid range when you switch between these workloads.

Why an 8 KiB block can occupy 24 KiB

Consider a six-drive RAIDZ2 vdev with ashift=12. Each sector is 4 KiB, so an 8 KiB logical block starts as two data sectors. RAIDZ2 adds two parity sectors, then ZFS adds two padding sectors to complete the allocation.

PartSectorsSpace
Logical data28 KiB
Sector rounding00 B
Parity28 KiB
Padding28 KiB
Physical allocation624 KiB

Space efficiency is not a performance recommendation

A block size can use space efficiently in this calculation and still be a poor fit for your workload. Block size also affects reads, writes, compression opportunities, and how an application accesses data. Use the result to understand allocation, not as a universal setting for every system.

What this calculator leaves out

This is a theoretical calculation for one uncompressed block on one RAIDZ vdev. It does not calculate:

  • Compression, deduplication, or extra copies.
  • Metadata, snapshots, reservations, slop space, or fragmentation.
  • Special vdevs, dRAID, gang blocks, or expansion history.
  • Whole-pool capacity, real free space, or storage performance.

Your calculation stays in your browser

Typing values and calculating do not send your configuration to a server. Copy and share actions use the result only when you choose them. A shared link includes the configuration in its URL.

Need whole-pool capacity?

Use the ZFS pool capacity calculator to combine top-level vdevs and estimate writable space, redundancy, slop, and planning headroom.