From 7fd979e49f9a3ce75cfd74030f27c3b58cda04de Mon Sep 17 00:00:00 2001 From: George Melikov Date: Sun, 13 Sep 2020 14:22:39 +0300 Subject: [PATCH] Hardware: reworked for sphinx --- docs/Performance and Tuning/Hardware.rst | 48 ++++++++++++++---------- 1 file changed, 29 insertions(+), 19 deletions(-) diff --git a/docs/Performance and Tuning/Hardware.rst b/docs/Performance and Tuning/Hardware.rst index 43951d1..75c515b 100644 --- a/docs/Performance and Tuning/Hardware.rst +++ b/docs/Performance and Tuning/Hardware.rst @@ -1,3 +1,6 @@ +Hardware +******** + Introduction ============ @@ -196,8 +199,7 @@ not be as reliable as it would be on its own. misreports its sector size. Such drives are typically NAND-flash based solid state drives and older SATA drives from the advanced format (4K sector size) transition before Windows XP EoL occurred. - This can be `manually - corrected `__ at + This can be :ref:`manually corrected ` at vdev creation. - It is possible for the RAID header to cause misalignment of sector writes on RAID 1 by starting the array within a sector on an @@ -387,8 +389,8 @@ requires command queuing. Almost all drives manufactured within the past system BIOS. Each Open ZFS system has different methods for checking whether command -queuing is supported. On Linux, \`hdparm -I /path/to/device \| grep -Queue\` is used. On FreeBSD, \`camcontrol identify $DEVICE\` is used. +queuing is supported. On Linux, ``hdparm -I /path/to/device \| grep +Queue`` is used. On FreeBSD, ``camcontrol identify $DEVICE`` is used. .. _nand_flash_ssds: @@ -425,13 +427,13 @@ NVMe drives should be to use 4096-byte sectors without metadata prior to being given to ZFS for best performance unless they indicate that 512-byte sectors are as performant as 4096-byte sectors, although this is unlikely. Lower -numbers in the Rel_Perf of Supported LBA Sizes from \`smartctl -a -/dev/$device_namespace\` (for example \`smartctl -a /dev/nvme1n1`) +numbers in the Rel_Perf of Supported LBA Sizes from ``smartctl -a +/dev/$device_namespace`` (for example ``smartctl -a /dev/nvme1n1``) indicate higher performance low level formats, with 0 being the best. The current formatting will be marked by a plus sign under the format Fmt. -You may format a drive using \`nvme format /dev/nvme1n1 -l $ID`. The $ID +You may format a drive using ``nvme format /dev/nvme1n1 -l $ID``. The $ID corresponds to the Id field value from the Supported LBA Sizes SMART information. @@ -453,12 +455,12 @@ the drive firmware is not available for review, the traditional conclusion was that all drives that lack hardware features to avoid power failure events cannot be trusted, which was found to be the case multiple times in the -past\ `1 `__\ `2 `__\ `3 `__. +past [#ssd_analysis]_ [#ssd_analysis2]_ [#ssd_analysis3]_. Discussion of power failures bricking NAND flash SSDs appears to have vanished from literature following the year 2015. SSD manufacturers now claim that firmware power loss protection is robust enough to provide -equivalent protection to hardware power loss protection. Kingston is one -example\ `4 `__. +equivalent protection to hardware power loss protection. `Kingston is one +example `__. Firmware power loss protection is used to guarantee the protection of flushed data and the drives’ own metadata, which is all that filesystems such as ZFS need. @@ -577,8 +579,8 @@ follows: - Intel 320 - Early reports claimed that the 330 and 335 had power failure - protection too, but they do - not.\ `5 `__ + protection too, `but they do + not `__. - Intel 710 - Intel 730 @@ -594,8 +596,8 @@ follows: - Samsung 845DC Evo - Samsung 845DC Pro - - High sustained write - IOPS\ `6 `__ + - `High sustained write + IOPS `__ - Toshiba HK4E/HK3E2 - Toshiba HK4R/HK3R2/HK3R @@ -621,7 +623,7 @@ protects flushed data is sufficient for ZFS to ensure that data remains safe. Anyone who believes an unlisted drive to provide adequate power failure -protection may contact the `OpenZFS mailing list `__ with +protection may contact the :ref:`mailing_lists` with a request for inclusion and substantiation for the claim that power failure protection is provided. Examples of substantiation include pictures of drive internals showing the presence of capacitors, @@ -640,7 +642,7 @@ Flash pages The smallest unit on a NAND chip that can be written is a flash page. The first NAND-flash SSDs on the market had 4096-byte pages. Further complicating matters is that the the page size has been doubled twice -since then. NAND flash SSDs \*should\* report these pages as being +since then. NAND flash SSDs **should** report these pages as being sectors, but so far, all of them incorrectly report 512-byte sectors for Windows XP compatibility. The consequence is that we have a similar situation to what we had with early advanced format hard drives. @@ -695,8 +697,8 @@ need to run TRIM on them. However, they cost more per GB than NAND flash (as of 2020). The enterprise models make excellent SLOG devices. Here is a list of models that are known to perform well: -- Intel DC - P4800X\ `7 `__ +- `Intel DC + P4800X `__ - This gives basically the highest performance you can get as of June 2020. @@ -793,5 +795,13 @@ UPS batteries The lead acid batteries in UPS units generally need to be replaced regularly to ensure that they provide power during power outages. For home systems, this is every 3 to 5 years, although this varies with -temperature\ `8 `__. For +temperature [#ups_temp]_. For enterprise systems, contact your vendor. + + +.. rubric:: Footnotes + +.. [#ssd_analysis] +.. [#ssd_analysis2] +.. [#ssd_analysis3] +.. [#ups_temp]