Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

NVM Express

From Wikipedia, the free encyclopedia
(Redirected fromNVMe)
Interface used for connecting storage devices
NVM Express
Non-Volatile Memory Host Controller Interface Specification
AbbreviationNVMe
StatusPublished
Year started2011; 14 years ago (2011)
Latest version2.1
August 5, 2024[1]
OrganizationNVM Express, Inc. (since 2014)
NVM Express Work Group (before 2014)
Websitenvmexpress.org

NVM Express (NVMe) orNon-Volatile Memory Host Controller Interface Specification (NVMHCIS) is an open, logical-device interfacespecification for accessing a computer'snon-volatile storage media usually attached via thePCI Express bus. The initialNVM stands fornon-volatile memory, which is often NANDflash memory that comes in several physical form factors, includingsolid-state drives (SSDs), PCIe add-in cards, andM.2 cards, the successor tomSATA cards. NVM Express, as a logical-device interface, has been designed to capitalize on the lowlatency and internal parallelism of solid-state storage devices.[2]

Architecturally, the logic for NVMe is physically stored within and executed by the NVMe controller chip that is physically co-located with the storage media, usually an SSD. Version changes for NVMe, e.g., 1.3 to 1.4, are incorporated within the storage media, and do not affect PCIe-compatible components such as motherboards and CPUs.[3]

By its design, NVM Express allows host hardware and software to fully exploit the levels ofparallelism possible in modern SSDs. As a result, NVM Express reducesI/O overhead and brings various performance improvements relative to previous logical-device interfaces, including multiple long command queues, and reduced latency. The previous interface protocols likeAHCI were developed for use with far slowerhard disk drives (HDD) where a very lengthy delay (relative to CPU operations) exists between a request and data transfer, where data speeds are much slower than RAM speeds, and where disk rotation andseek time give rise to further optimization requirements.

NVM Express devices are chiefly available in the form of standard-sized PCI Expressexpansion cards[4] and as 2.5-inch form-factor devices that provide a four-lane PCI Express interface through theU.2 connector (formerly known as SFF-8639).[5][6] Storage devices usingU.2 and theM.2 specification which support NVM Express as the logical-device interface are a popular use-case for NVMe and have become a dominant form of solid-state storage for servers, desktops, and laptops alike.

Specifications

[edit]

Specifications for NVMe released to date include:[7]

  • 1.0e (January 2013)
  • 1.1b (July 2014) that adds standardizedCommand Sets to achieve better compatibility across different NVMe devices,Management Interface that provides standardized tools for managing NVMe devices, simplifying administration andTransport Specifications that defines how NVMe commands are transported over various physical interfaces, enhancing interoperability.[8]
  • 1.2 (November 2014)
    • 1.2a (October 2015)
    • 1.2b (June 2016)
    • 1.2.1 (June 2016) that introduces the following new features over version 1.1b:Multi-Queue to supports multiple I/O queues, enhancing data throughput and performance,Namespace Management that allows for dynamic creation, deletion, and resizing of namespaces, providing greater flexibility, andEndurance Management to monitor and manage SSD wear levels, optimizing performance and extending drive life.[9]
  • 1.3 (May 2017)
    • 1.3a (October 2017)
    • 1.3b (May 2018)
    • 1.3c (May 2018)
    • 1.3d (March 2019) that since version 1.2.1 addedNamespace Sharing to allow multiple hosts accessing a single namespace, facilitating shared storage environments,Namespace Reservation to provides mechanisms for hosts to reserve namespaces, preventing conflicts and ensuring data integrity, andNamespace Priority that sets priority levels for different namespaces, optimizing performance for critical workloads.[10][11]
  • 1.4 (June 2019)
    • 1.4a (March 2020)
    • 1.4b (September 2020)
    • 1.4c (June 2021), that has the following new features compared to 1.3d:IO Determinism to ensure consistent latency and performance by isolating workloads,Namespace Write Protect for preventing data corruption or unauthorized modifications,Persistent Event Log that stores event logs in non-volatile memory, aiding in diagnostics and troubleshooting, andVerify Command that checks the integrity of data.[12][13]
  • 2.0 (May 2021)[14]
    • 2.0a (July 2021)
    • 2.0b (January 2022)
    • 2.0c (October 2022)
    • 2.0d (January 2024),[15] that, compared to 1.4c, introducesZoned Namespaces (ZNS) to organize data into zones for efficient write operations, reducing write amplification and improving SSD longevity,Key Value (KV) for efficient storage and retrieval of key-value pairs directly on the NVMe device, bypassing traditional file systems,Endurance Group Management to manages groups of SSDs based on their endurance, optimizing usage and extending lifespan.[16][15][17]
  • 2.1 (August 2024)[1] that introducesLive Migration to maintaining service availability during migration,Key Per I/O for applying encryption keys at a per-operation level,NVMe-MI High Availability Out of Band Management for managing NVMe devices outside of regular data paths, andNVMe Network Boot / UEFI for booting NVMe devices over a network.[18]

Background

[edit]
Intel SSD 750 series, an SSD that uses NVM Express, in form of aPCI Express 3.0 ×4expansion card (front and rear views)

Historically, most SSDs usedbuses such asSATA,[19]SAS,[20][21] orFibre Channel for interfacing with the rest of a computer system. Since SSDs became available in mass markets, SATA has become the most typical way for connecting SSDs inpersonal computers; however, SATA was designed primarily for interfacing with mechanicalhard disk drives (HDDs), and it became increasingly inadequate for SSDs, which improved in speed over time.[22] For example, within about five years of mass market mainstream adoption (2005–2010) many SSDs were already held back by the comparatively slow data rates available for hard drives—unlike hard disk drives, some SSDs are limited by the maximumthroughput of SATA.

High-end SSDs had been made using thePCI Express bus before NVMe, but using non-standard specification interfaces, using a SAS to PCIe bridge[23] or by emulating a hardware RAID controller.[24] By standardizing the interface of SSDs,operating systems only need one commondevice driver to work with all SSDs adhering to the specification. It also means that each SSD manufacturer does not have to design specific interface drivers. This is similar to howUSB mass storage devices are built to follow theUSB mass-storage device class specification and work with all computers, with no per-device drivers needed.[25]

NVM Express devices are also used as the building block of theburst buffer storage in many leading supercomputers, such asFugaku Supercomputer,Summit Supercomputer andSierra Supercomputer, etc.[26][27]

History

[edit]

The first details of a new standard for accessing non-volatile memory emerged at theIntel Developer Forum 2007, when NVMHCI was shown as the host-side protocol of a proposed architectural design that hadOpen NAND Flash Interface Working Group (ONFI) on the memory (flash) chips side.[28] A NVMHCI working group led by Intel was formed that year. The NVMHCI 1.0 specification was completed in April 2008 and released on Intel's web site.[29][30][31]

Technical work on NVMe began in the second half of 2009.[32] The NVMe specifications were developed by the NVM Express Workgroup, which consists of more than 90 companies; Amber Huffman ofIntel was the working group's chair. Version 1.0 of the specification was released on 1 March 2011,[33] while version 1.1 of the specification was released on 11 October 2012.[34] Major features added in version 1.1 are multi-path I/O (with namespace sharing) and arbitrary-lengthscatter-gather I/O. It is expected that future revisions will significantly enhance namespace management.[32] Because of its feature focus, NVMe 1.1 was initially called "Enterprise NVMHCI".[35] An update for the base NVMe specification, called version 1.0e, was released in January 2013.[36] In June 2011, a Promoter Group led by seven companies was formed.

The first commercially available NVMe chipsets were released byIntegrated Device Technology (89HF16P04AG3 and 89HF32P08AG3) in August 2012.[37][38] The first NVMe drive,Samsung's XS1715enterprise drive, was announced in July 2013; according to Samsung, this drive supported 3 GB/s read speeds, six times faster than their previous enterprise offerings.[39] The LSISandForce SF3700 controller family, released in November 2013, also supports NVMe.[40][41] A KingstonHyperX "prosumer" product using this controller was showcased at theConsumer Electronics Show 2014 and promised similar performance.[42][43] In June 2014, Intel announced their first NVM Express products, the Intel SSD data center family that interfaces with the host through PCI Express bus, which includes the DC P3700 series, the DC P3600 series, and the DC P3500 series.[44] As of November 2014[update], NVMe drives are commercially available.

In March 2014, the group incorporated to become NVM Express, Inc., which as of November 2014[update] consists of more than 65 companies from across the industry. NVM Express specifications are owned and maintained by NVM Express, Inc., which also promotes industry awareness of NVM Express as an industry-wide standard. NVM Express, Inc. is directed by a thirteen-member board of directors selected from the Promoter Group, which includes Cisco, Dell, EMC, HGST, Intel, Micron, Microsoft, NetApp, Oracle, PMC, Samsung, SanDisk and Seagate.[45]

In September 2016, the CompactFlash Association announced that it would be releasing a new memory card specification,CFexpress, which uses NVMe.[citation needed]

NVMeHost Memory Buffer (HMB) feature added in version 1.2 of the NVMe specification.[46] HMB allows SSDs to utilize the host'sDRAM, which can improve the I/O performance for DRAM-less SSDs.[47] For example, HMB can be used for cache theFTL table by the SSD controller, which can improve I/O performance.[48] NVMe 2.0 added optionalZoned Namespaces (ZNS) feature andKey-Value (KV) feature, and support for rotating media such as hard drives. ZNS and KV allows data to be mapped directly to its physical location in flash memory to directly access data on an SSD.[49] ZNS and KV can also decreasewrite amplification of flash media.

Form factors

[edit]

There are many form factors of NVMe solid-state drive, such as AIC, U.2, U.3, M.2 etc.

AIC (add-in card)

[edit]

Almost all early NVMe solid-state drives are HHHL (half height, half length) or FHHL (full height, half length) AIC, with aPCIe 2.0 or 3.0 interface. A HHHL NVMe solid-state drive card is easy to insert into a PCIe slot of a server.

SATA Express, U.2 and U.3 (SFF-8639)

[edit]
Main article:SATA Express

SATA Express allows the use of two PCI Express 2.0 or 3.0 lanes and two SATA 3.0 (6 Gbit/s) ports through the same host-side SATA Express connector (but not both at the same time). SATA Express supports NVMe as the logical device interface for attached PCI Express storage devices. It is electrically compatible withMultiLink SAS, so a backplane can support both at the same time.

Main article:U.2

U.2, formerly known asSFF-8639, uses the same physical port as SATA Express but allows up to four PCI Express lanes. Available servers can combine up to 48 U.2 NVMe solid-state drives.[50]

U.3 (SFF-TA-1001) is built on the U.2 spec and uses the same SFF-8639 connector. Unlike in U.2, a single "tri-mode" (PCIe/SATA/SAS) backplane receptacle can handle all three types of connections; the controller automatically detects the type of connection used. This is unlike U.2, where users need to use separate controllers for SATA/SAS and NVMe. U.3 devices are required to be backwards-compatible with U.2 hosts, but U.2 drives are not compatible with U.3 hosts.[51][52]

M.2

[edit]
Main article:M.2

M.2, formerly known as theNext Generation Form Factor (NGFF), uses a M.2 NVMe solid-state drivecomputer bus. Interfaces provided through the M.2 connector arePCI Express 3.0 or higher (up to fourlanes).

EDSFF

[edit]
Main article:Enterprise and Data Center Standard Form Factor

NVMe-oF

[edit]

NVM Express over Fabrics (NVMe-oF) is the concept of using atransport protocol over a network to connect remote NVMe devices, contrary to regular NVMe where physical NVMe devices are connected to aPCIe bus either directly or over aPCIe switch to a PCIe bus. In August 2017, a standard for using NVMe overFibre Channel (FC) was submitted by the standards organizationInternational Committee for Information Technology Standards (ICITS), and this combination is often referred to as FC-NVMe or sometimes NVMe/FC.[53]

As of May 2021, supported NVMe transport protocols are:

The standard for NVMe over Fabrics was published by NVM Express, Inc. in 2016.[58][59]

The following software implements the NVMe-oF protocol:

Comparison with AHCI

[edit]

TheAdvanced Host Controller Interface (AHCI) has the benefit of wide software compatibility, but has the downside of not delivering optimal performance when used withSSDs connected via thePCI Express bus. As a logical-device interface, AHCI was developed when the purpose of ahost bus adapter (HBA) in a system was to connect the CPU/memory subsystem with a much slower storage subsystem based on rotatingmagnetic media. As a result, AHCI introduces certain inefficiencies when used with SSD devices, which behave much more likeRAM than like spinning media.[71]

The NVMe device interface has been designed from the ground up, capitalizing on the lower latency andparallelism of PCI Express SSDs, and complementing the parallelism of contemporary CPUs, platforms and applications. At a high level, the basic advantages of NVMe over AHCI relate to its ability to exploit parallelism in host hardware and software, manifested by the differences incommand queue depths, efficiency ofinterrupt processing, the number of uncacheableregister accesses, etc., resulting in various performance improvements.[71][72]: 17–18 

The table below summarizes high-level differences between the NVMe and AHCI logical-device interfaces.

High-level comparison of AHCI and NVMe[71]
 AHCINVMe
Maximum queue depthOne command queue;
Up to 32 commands per queue
Up to 65535 queues;[73]
Up to 65536 commands per queue
Uncacheable register accesses
(2000 cycles each)
Up to six per non-queued command;
Up to nine per queued command
Up to two per command
InterruptA single interruptUp to 2048MSI-X interrupts
Parallelism
and multiple threads
Requires synchronization lock
to issue a command
No locking
Efficiency
for 4 KB commands
Command parameters require
two serialized host DRAM fetches
Gets command parameters
in one 64-byte fetch
Data transmissionUsually half-duplexFull-duplex
Host Memory Buffer (HMB)NoYes

Operating system support

[edit]
The position of NVMe data paths and multiple internal queues within various layers of theLinux kernel's storage stack[74]
ChromeOS
On February 24, 2015, support for booting from NVM Express devices was added toChromeOS.[75][76]
DragonFly BSD
The first release ofDragonFly BSD with NVMe support is version 4.6.[77]
FreeBSD
Intel sponsored a NVM Express driver forFreeBSD's head and stable/9 branches.[78][79] The nvd(4) and nvme(4) drivers are included in the GENERIC kernel configuration by default since FreeBSD version 10.2 in 2015.[80]
Genode
Support for consumer-grade NVMe was added to the Genode framework as part of the 18.05[81] release.
Haiku
Haiku gained support for NVMe on April 18, 2019.[82][83]
illumos
illumos received support for NVMe on October 15, 2014.[84]
iOS
With the release of theiPhone 6S and6S Plus,Apple introduced the first mobile deployment of NVMe overPCIe in smartphones.[85] Apple followed these releases with the release of the first-generationiPad Pro andfirst-generation iPhone SE that also use NVMe over PCIe.[86]
Linux
Intel published an NVM Express driver forLinux on 3 March 2011,[87][88][89] which was merged into theLinux kernel mainline on 18 January 2012 and released as part of version 3.3 of the Linux kernel on 19 March 2012.[90] Linux kernel supports NVMe Host Memory Buffer[91] from version 4.13.1[92] with default maximum size 128 MB.[93] Linux kernel supports NVMe Zoned Namespaces start from version 5.9.
macOS
Apple introduced software support for NVM Express inYosemite 10.10.3. The NVMe hardware interface was introduced in the 2016MacBook andMacBook Pro.[94]
NetBSD
NetBSD added support for NVMe in NetBSD 8.0.[95] The implementation is derived from OpenBSD 6.0.
OpenBSD
Development work required to support NVMe inOpenBSD has been started in April 2014 by a senior developer formerly responsible forUSB 2.0 andAHCI support.[96] Support for NVMe has been enabled in the OpenBSD 6.0 release.[97]
OS/2
Arca Noae provides an NVMe driver forArcaOS, as of April, 2021. The driver requires advanced interrupts as provided by the ACPI PSD running in advanced interrupt mode (mode 2), thus requiring the SMP kernel, as well.[98]
Solaris
Solaris received support for NVMe in Oracle Solaris 11.2.[99]
VMware
Intel has provided an NVMe driver forVMware,[100] which is included invSphere 6.0 and later builds, supporting various NVMe devices.[101] As of vSphere 6 update 1, VMware's VSAN software-defined storage subsystem also supports NVMe devices.[102]
Windows
Microsoft added native support for NVMe toWindows 8.1 andWindows Server 2012 R2.[72][103] Native drivers forWindows 7 andWindows Server 2008 R2 have been added in updates.[104] Many vendors have released their own Windows drivers for their devices as well. There are also manually customized installer files available to install a specific vendor's driver to any NVMe card, such as using a Samsung NVMe driver with a non-Samsung NVMe device, which may be needed for additional features, performance, and stability.[105]
Support for NVMe HMB was added in Windows 10 Anniversary Update (Version 1607) in 2016.[46] In Microsoft Windows fromWindows 10 1607 toWindows 11 23H2, the maximum HMB size is 64 MB.Windows 11 24H2 updates the maximum HMB size to 1/64 of system RAM.[106]
Support for NVMe ZNS and KV was added inWindows 10 version 21H2 andWindows 11 in 2021.[107] TheOpenFabrics Alliance maintains an open-source NVMe Windows Driver for Windows 7/8/8.1 and Windows Server 2008R2/2012/2012R2, developed from the baseline code submitted by several promoter companies in the NVMe workgroup, specifically IDT, Intel, and LSI.[108] The current release is 1.5 from December 2016.[109]

Software support

[edit]
QEMU
NVMe is supported byQEMU since version 1.6 released on August 15, 2013.[110] NVMe devices presented to QEMU guests can be either real or emulated.
UEFI
An open source NVMe driver forUEFI called NvmExpressDxe is available as part of EDKII, the open-source reference implementation of UEFI.[111]

Management tools

[edit]
nvme-cli on Linux

nvmecontrol

[edit]

Thenvmecontrol tool is used to control an NVMe disk from the command line on FreeBSD. It was added in FreeBSD 9.2.[112]

nvme-cli

[edit]

NVM-Express user space tooling for Linux.[113]

See also

[edit]

References

[edit]
  1. ^ab"NVM Express® Base Specification, Revision 2.1"(PDF).nvmexpress.org. NVM Express, Inc. August 5, 2024. Retrieved2024-08-10.
  2. ^"NVM Express". NVM Express, Inc.Archived from the original on 2019-12-05. Retrieved2017-01-24.NVMe is designed from the ground up to deliver high bandwidth and low latency storage access for current and future NVM technologies.
  3. ^Tallis, Billy (June 14, 2019)."NVMe 1.4 Specification Published: Further Optimizing Performance and Reliability".AnandTech. Archived fromthe original on 2021-01-27.
  4. ^Drew Riley (2014-08-13)."Intel SSD DC P3700 800GB and 1.6TB Review: The Future of Storage".Tom's Hardware. Retrieved2014-11-21.
  5. ^"Intel Solid-State Drive DC P3600 Series"(PDF).Intel. 2015. pp. 18,20–22. Archived fromthe original(PDF) on Oct 28, 2015. Retrieved2015-04-11.
  6. ^Paul Alcorn (2015-06-05)."SFFWG Renames PCIe SSD SFF-8639 Connector To U.2".Tom's Hardware. Retrieved2015-06-09.
  7. ^NVMe Specifications
  8. ^"Specifications - NVM Express". 10 January 2020.Archived from the original on 25 July 2024. Retrieved10 July 2024.
  9. ^"NVM Express Releases 1.2 Specification - NVM Express". 12 November 2014.Archived from the original on 25 July 2024. Retrieved23 November 2024.
  10. ^"WEBCAST: NVME 1.3 – LEARN WHat's NEW - NVM Express". 30 June 2017.Archived from the original on 13 April 2024. Retrieved23 November 2024.
  11. ^"Changes in NVMe Revision 1.3 - NVM Express". May 2017.
  12. ^"Answering Your Questions: NVMe™ 1.4 Features and Compliance: Everything You Need to Know - NVM Express". 16 October 2019.Archived from the original on 14 July 2024. Retrieved23 November 2024.
  13. ^"NVMe 1.4 Features and Compliance: Everything You Need to Know - NVM Express". 2 October 2019.
  14. ^"NVM Express Announces the Rearchitected NVMe 2.0 Library of Specifications" (Press release). Beaverton, Oregon, USA: NVM Express, Inc. June 3, 2021.Archived from the original on 2023-01-18. Retrieved2024-03-31.
  15. ^ab"NVM Express Base Specification 2.0d"(PDF).nvmexpress.org. NVM Express, Inc. January 11, 2024.Archived(PDF) from the original on 2024-03-26. Retrieved2024-03-26.
  16. ^"Everything You Need to Know About the NVMe 2.0 Specifications and New Technical Proposals - NVM Express". 3 June 2021.
  17. ^"Everything You Need to Know About the NVMe® 2.0 Specifications and New Technical Proposals".
  18. ^"Everything You Need to Know: An Essential Overview of NVM Express® 2.1 Base Specification and New Key Features". 6 August 2024.Archived from the original on 13 September 2024. Retrieved23 November 2024.
  19. ^https://www.anandtech.com/show/8104/intel-ssd-dc-p3700-review-the-pcie-ssd-transition-begins-with-nvme
  20. ^https://www.tweaktown.com/news/25459/fms_2012_hgst_unveils_worlds_first_12gb_s_sas_enterprise_ssd/index.html
  21. ^https://www.storagereview.com/review/stec-s840-enterprise-ssd-review
  22. ^Walker, Don H."A Comparison of NVMe and AHCI"(PDF).31 July 2012. SATA-IO. Archived fromthe original(PDF) on 12 February 2019. Retrieved3 July 2013.
  23. ^https://www.anandtech.com/show/8104/intel-ssd-dc-p3700-review-the-pcie-ssd-transition-begins-with-nvme
  24. ^"ASUS ROG RAIDR Express 240GB PCIe SSD Review". 6 December 2013.
  25. ^"NVM Express Explained"(PDF).nvmexpress.org. 9 April 2014.Archived(PDF) from the original on 24 August 2015. Retrieved21 March 2015.
  26. ^"Using LC's Sierra Systems".hpc.llnl.gov. Retrieved2020-06-25.
  27. ^"SummitDev User Guide".olcf.ornl.gov. Archived fromthe original on 2020-08-06. Retrieved2020-06-25.
  28. ^"Speeding up Flash... in a flash". The Inquirer. 2007-10-13. Archived fromthe original on September 18, 2009. Retrieved2014-01-11.
  29. ^"Extending the NVMHCI Standard to Enterprise"(PDF). Santa Clara, CA USA: Flash Memory Summit. August 2009. Archived fromthe original(PDF) on 2017-06-17.
  30. ^"Flash new standard tips up". The Inquirer. 2008-04-16. Archived fromthe original on January 11, 2014. Retrieved2014-01-11.
  31. ^Amber Huffman (August 2008)."NVMHCI: The Optimized Interface for Caches and SSDs"(PDF). Santa Clara, CA USA: Flash Memory Summit.Archived(PDF) from the original on 2016-03-04. Retrieved2014-01-11.
  32. ^abPeter Onufryk (2013)."What's New in NVMe 1.1 and Future Directions"(PDF). Santa Clara, CA USA: Flash Memory Summit.
  33. ^"New Promoter Group Formed to Advance NVM Express"(PDF).Press release. June 1, 2011.Archived(PDF) from the original on December 30, 2013. RetrievedSeptember 18, 2013.
  34. ^Amber Huffman, ed. (October 11, 2012)."NVM Express Revision 1.1"(PDF).Specification. RetrievedSeptember 18, 2013.
  35. ^David A. Deming (2013-06-08)."PCIe-based Storage"(PDF).snia.org. Archived fromthe original(PDF) on 2013-09-20. Retrieved2014-01-12.
  36. ^Amber Huffman, ed. (January 23, 2013)."NVM Express Revision 1.0e"(PDF).Specification. RetrievedSeptember 18, 2013.
  37. ^"IDT releases two NVMe PCI-Express SSD controllers". The Inquirer. 2012-08-21. Archived fromthe original on August 24, 2012. Retrieved2014-01-11.
  38. ^"IDT Shows Off The First NVMe PCIe SSD Processor and Reference Design - FMS 2012 Update". The SSD Review. 2012-08-24.Archived from the original on 2016-01-01. Retrieved2014-01-11.
  39. ^"Samsung Announces Industry's First 2.5-inch NVMe SSD | StorageReview.com - Storage Reviews".StorageReview.com. 2013-07-18. Archived fromthe original on 2014-01-10. Retrieved2014-01-11.
  40. ^"LSI SF3700 SandForce Flash Controller Line Unveiled | StorageReview.com - Storage Reviews".StorageReview.com. 2013-11-18. Archived fromthe original on 2014-01-11. Retrieved2014-01-11.
  41. ^"LSI Introduces Blazing Fast SF3700 Series SSD Controller, Supports Both PCIe and SATA 6 Gbps".hothardware.com. Archived fromthe original on 5 March 2016. Retrieved21 March 2015.
  42. ^Jane McEntegart (7 January 2014)."Kingston Unveils First PCIe SSD: 1800 MB/s Read Speeds".Tom's Hardware. Retrieved21 March 2015.
  43. ^"Kingston HyperX Predator PCI Express SSD Unveiled With LSI SandForce SF3700 PCIe Flash Controller".hothardware.com. Archived fromthe original on 28 May 2016. Retrieved21 March 2015.
  44. ^"Intel® Solid-State Drive Data Center Family for PCIe*".Intel. Retrieved21 March 2015.
  45. ^"NVM Express Organization History".NVM Express. Archived fromthe original on 23 November 2015. Retrieved23 December 2015.
  46. ^abTallis, Billy (June 14, 2018)."The Toshiba RC100 SSD Review: Tiny Drive In A Big Market".AnandTech. Retrieved2024-03-30.
  47. ^Kim, Kyusik; Kim, Taeseok (2020)."HMB in DRAM-less NVMe SSDS: Their usage and effects on performance".PLOS ONE.15 (3): e0229645.Bibcode:2020PLoSO..1529645K.doi:10.1371/journal.pone.0229645.PMC 7051071.PMID 32119705.
  48. ^Kim, Kyusik; Kim, Seongmin; Kim, Taeseok (2020-06-24)."HMB-I/O: Fast Track for Handling Urgent I/Os in Nonvolatile Memory Express Solid-State Drives".Applied Sciences.10 (12): 4341.doi:10.3390/app10124341.ISSN 2076-3417.
  49. ^"NVMe Gets Refactored". 30 June 2021.Archived from the original on 27 February 2024. Retrieved27 February 2024.
  50. ^"All-Flash NVME Servers for Advanced Computing Supermicro". Supermicro. Retrieved2022-07-22.
  51. ^Siebenmann, Chris."U.2, U.3, and other server NVMe drive connector types (in mid 2022)". Retrieved2025-01-22.
  52. ^McRobert, Kyle."What you need to know about U.3".Quarch Technology. Retrieved2025-01-22.
  53. ^ab"NVMe over Fibre Channel (NVMe over FC) or FC-NVMe standard".Tech Target. January 1, 2018. RetrievedMay 26, 2021.
  54. ^"FC-NVMe rev 1.14 (T11/16-020vB)"(PDF).INCITS. April 19, 2017. Archived fromthe original(PDF) on April 10, 2022. RetrievedMay 26, 2021.
  55. ^"NVMe-oF Specification".NVMexpress. 15 April 2020. RetrievedMay 26, 2021.
  56. ^"Supplement to InfiniBandTMArchitecture Specification Volume 1 Release 1.2.1".Infiniband. September 2, 2014. Archived fromthe original on March 9, 2016. RetrievedMay 26, 2021.
  57. ^"What is NVMe-oF?".Storage Review. June 27, 2020. RetrievedMay 26, 2021.
  58. ^"NVM Express over Fabrics Revision 1.0"(PDF). NVM Express, Inc. 5 June 2016.Archived(PDF) from the original on 30 January 2019. Retrieved24 April 2018.
  59. ^Woolf, David (February 9, 2018)."What NVMe over Fabrics Means for Data Storage".Archived from the original on April 14, 2018. RetrievedApril 24, 2018.
  60. ^Hellwig, Christoph (July 17, 2016)."NVMe Over Fabrics Support in Linux"(PDF).Archived(PDF) from the original on April 14, 2018. RetrievedApril 24, 2018.
  61. ^Petros Koutoupis (June 10, 2019)."Data in a Flash, Part III: NVMe over Fabrics Using TCP".Linux Journal.Archived from the original on April 27, 2021. RetrievedMay 26, 2021.
  62. ^Stern, Jonathan (7 June 2016)."Announcing the SPDK NVMf Target".
  63. ^"SPDKNVMe-oFRDMA (Target & Initiator) Performance Report"(PDF).SPDK. February 1, 2021. RetrievedMay 26, 2021.
  64. ^"SPDKNVMe-oFTCP (Target & Initiator) Performance Report"(PDF).SPDK. February 1, 2020.Archived(PDF) from the original on May 25, 2021. RetrievedMay 26, 2021.
  65. ^"Hands On with StarWind NVMe-oF Initiator for Windows".StorageReview. October 6, 2021.Archived from the original on October 7, 2021. RetrievedOctober 6, 2021.
  66. ^"StarWind SAN & NAS over Fibre Channel".StorageReview. July 20, 2022.Archived from the original on July 20, 2022. RetrievedJuly 20, 2022.
  67. ^"Intel planning big Lightbits NVMe/TCP storage push".Blocks & Files. June 9, 2022.Archived from the original on July 6, 2022. RetrievedJune 9, 2022.
  68. ^"LightBits Super SSD brings NVMe on vanilla Ethernet".ComputerWeekly. April 29, 2021. RetrievedApril 29, 2021.
  69. ^"Announcing NVMe/TCP for ONTAP".www.netapp.com. Archived fromthe original on 2024-07-17. Retrieved2025-01-23.
  70. ^Schmidt, Michael (2024-05-22)."How We Built Our Distributed Data Placement Algorithm".simplyblock. Retrieved2025-01-23.
  71. ^abcDave Landsman (2013-08-09)."AHCI and NVMe as Interfaces for SATA Express Devices – Overview"(PDF).SATA-IO.Archived(PDF) from the original on 2013-10-05. Retrieved2013-10-02.
  72. ^abAndy Herron (2013)."Advancements in Storage and File Systems in Windows 8.1"(PDF).snia.org. Archived fromthe original(PDF) on 2014-01-10. Retrieved2014-01-11.
  73. ^Amber Huffman (March 9, 2020)."NVM Express Base Specification Revision 1.4a"(PDF).Specification. section 1.4 Theory of Operation, p. 7.Archived(PDF) from the original on December 13, 2023. RetrievedMay 16, 2020.
  74. ^Werner Fischer; Georg Schönberger (2015-06-01)."Linux Storage Stack Diagram". Thomas-Krenn.AG.Archived from the original on 2019-06-29. Retrieved2015-06-08.
  75. ^"ChromeOS adds boot support for NVM Express".NVM Express. 24 February 2015. Retrieved21 March 2015.
  76. ^Akers, Jason B. (Jan 22, 2015)."4f503189f7339c667b045ab80a949964ecbaf93e - chromiumos/platform/depthcharge".Git at Google.Archived from the original on 23 August 2017. Retrieved21 March 2015.
  77. ^"release46".DragonFly BSD.Archived from the original on 2016-09-04. Retrieved2016-09-08.
  78. ^"Log of /head/sys/dev/nvme".FreeBSD source tree. The FreeBSD Project.Archived from the original on 29 May 2013. Retrieved16 October 2012.
  79. ^"Log of /stable/9/sys/dev/nvme".FreeBSD source tree. The FreeBSD Project.Archived from the original on 16 February 2018. Retrieved3 July 2013.
  80. ^"FreeBSD 10.2-RELEASE Release Notes". The FreeBSD Project.Archived from the original on 18 June 2017. Retrieved5 August 2015.
  81. ^"Release notes for the Genode OS Framework 18.05".genode.org.
  82. ^"#9910 NVMe devices support".dev.haiku-os.org.Archived from the original on 2016-08-06. Retrieved2019-04-18.
  83. ^"NVMe Driver Now Available - Haiku Project".www.haiku-os.org. Retrieved2016-07-28.
  84. ^"4053 Add NVME Driver Support to Illumos".github.com.Archived from the original on 2017-05-10. Retrieved2016-05-23.
  85. ^Ho, Joshua (September 28, 2015)."iPhone 6s and iPhone 6s Plus Preliminary Results".AnandTech.Archived from the original on 2016-05-26. Retrieved2016-06-01.
  86. ^Chester, Brandon (May 16, 2016)."The iPhone SE Review".AnandTech.
  87. ^Matthew Wilcox (2011-03-03)."NVM Express driver".LWN.net. Archived fromthe original on 2012-07-17. Retrieved2013-11-05.
  88. ^Keith Busch (2013-08-12)."Linux NVMe Driver"(PDF).flashmemorysummit.com.Archived(PDF) from the original on 2013-11-05. Retrieved2013-11-05.
  89. ^"IDF13 Hands-on Lab: Compiling the NVM Express Linux Open Source Driver and SSD Linux Benchmarks and Optimizations"(PDF).activeevents.com. 2013. Archived fromthe original(PDF) on 2014-01-11. Retrieved2014-01-11.
  90. ^"Merge git://git.infradead.org/users/willy/linux-nvme".kernel.org. 2012-01-18. Retrieved2013-11-05.
  91. ^Kim, K.; Kim, T. (2020)."HMB in DRAM-less NVMe SSDs: Their usage and effects on performance".PLOS ONE.15 (3): e0229645.Bibcode:2020PLoSO..1529645K.doi:10.1371/journal.pone.0229645.PMC 7051071.PMID 32119705.
  92. ^"Linux 4.13 has been released on Sun, 3 Sep 2017".Archived from the original on 29 October 2017. Retrieved16 October 2021.
  93. ^"Pci.c « host « nvme « drivers - kernel/Git/Stable/Linux.git - Linux kernel stable tree".Archived from the original on 2021-10-16. Retrieved2021-10-16.
  94. ^"Faster 'NVM Express' SSD Interface Arrives on Retina MacBook and OS X 10.10.3".macrumors.com. 11 April 2015.Archived from the original on 23 August 2017. Retrieved11 April 2015.
  95. ^"nvme -- Non-Volatile Memory Host Controller Interface".NetBSD manual pages. 2021-05-16. Retrieved2021-05-16.
  96. ^David Gwynne (2014-04-16)."non volatile memory express controller (/sys/dev/ic/nvme.c)".BSD Cross Reference.Archived from the original on 2014-04-28. Retrieved2014-04-27.
  97. ^David Gwynne (2016-04-14)."man 4 nvme".OpenBSD man page.Archived from the original on 2016-08-21. Retrieved2016-08-07.
  98. ^"NVME".Arca Noae wiki. Arca Noae, LLC. 2021-04-03. Retrieved2021-06-08.
  99. ^"nvme(7D)". Oracle.Archived from the original on 2015-12-09. Retrieved2014-12-02.
  100. ^"Intel Solid-State for NVMe Drivers".intel.com. 2015-09-25.Archived from the original on 2016-03-25. Retrieved2016-03-17.
  101. ^"VMware Compatibility Guide for NVMe devices".vmware.com.Archived from the original on 2016-03-25. Retrieved2016-03-17.
  102. ^"VSAN Now Supporting NVMe Devices".vmware.com. 2015-11-11.Archived from the original on 2016-03-25. Retrieved2016-03-17.
  103. ^"Windows 8.1 to support hybrid disks and adds native NVMe driver".Myce.com. 2013-09-06.Archived from the original on 2014-01-10. Retrieved2014-01-11.
  104. ^"Update to support NVM Express by using native drivers in Windows 7 or Windows Server 2008 R2". Microsoft. 2014-11-13.Archived from the original on 2014-11-29. Retrieved2014-11-17.
  105. ^"Recommended AHCI/RAID and NVMe Drivers". 10 May 2013. Archived fromthe original on 24 February 2021. Retrieved19 February 2021.
  106. ^https://nvmexpress.org/wp-content/uploads/03_Lee_Windows-Windows-Driver_Final.pdf
  107. ^lorihollasch (2023-08-09)."NVMe Feature and Extended Capability Support - Windows drivers".learn.microsoft.com. Retrieved2024-04-11.
  108. ^"Windows NVM Express".Project web site. Archived fromthe original on June 12, 2013. RetrievedSeptember 18, 2013.
  109. ^"Nvmewin - Revision 157: /Releases". Archived fromthe original on 2017-05-10. Retrieved2016-08-13.
  110. ^"ChangeLog/1.6".qemu.org.Archived from the original on 29 September 2018. Retrieved21 March 2015.
  111. ^"Download EDK II from".SourceForge.net.Archived from the original on 2013-12-31. Retrieved2014-01-11.
  112. ^"NVM Express control utility". The FreeBSD Project. 2018-03-12. Retrieved2019-07-12.
  113. ^"GitHub - linux-nvme/nvme-cli: NVMe management command line interface". linux-nvme. 2019-03-26. Retrieved2019-03-27.

External links

[edit]
Wikimedia Commons has media related toNVM Express.
Key terminology
Flash manufacturers
Controllers
Captive
Independent
SSD manufacturers
Interfaces
Configurations
Related organizations
General
Standards
Storage
Peripheral
Audio
Portable
Embedded
Interfaces are listed by their speed in the (roughly) ascending order, so the interface at the end of each section should be the fastest.
Category
Retrieved from "https://en.wikipedia.org/w/index.php?title=NVM_Express&oldid=1276970632"
Categories:
Hidden categories:

[8]ページ先頭

©2009-2025 Movatter.jp