Tweet
|
NVMe(Non-Volatile Memory Express)とは |
株式会社アークブレインでは、Deep Learning(深層学習)を研究するための カスタム・オーダーメイドの ワークステーション(GPU × 1~4)や、サーバー(GPU × 1~4)を販売しております。
Intel® Xeon® Scalable Processor 搭載 Arcbrain オリジナル サーバー、ワークステーション製品 最新ラインナップ GPUを使用せず、Intel® Xeon® / Core™ Processor、インテル® Parallel Studio、インテル® MKL(Math Kernel Library) の DNN(Deep Neural Network) プリミティブ、インテル® Distribution for Python® による Deep Learning(深層学習)の開発環境を構築することも可能です。 お気軽に弊社までお見積り依頼をお願いいたします。 ご希望の仕様に合った構成のカスタマイズに、ご対応させていただきます。 |
SATA AHCI SSD から、NVMe SSD へ | |||
NVMe 「NVM Express(Non-Volatile Memory Express、NVMe)」 は、SATA(Serial ATA) の AHCI(Advanced Host Controller Interface) と同様に、コネクタの形状のことではなく、SSD(Solid State Drive) ストレージのための ソフトウェア規格 のことを意味します。 NVMHCI(Non-Volatile Memory Host Controller Interface Specification )の詳細な仕様は、Non-Volatile Memory Host Controller Interface Working Group という団体によって決められています。 http://www.nvmexpress.org/specifications/ (2017年12月時点での最新規格は 1.3a) ■ HDD(Hard Disk Drive)用に設計された SATA(Serial Advanced Technology Attachment)の物理的な限界 SATAの転送速度は上限が6Gb/s(約600MB/sec)ですので、転送速度は、絶対にこの値を越えることができません。 サーバー用のストレージ向けに開発された SAS(Serial Attaced SCSI)だと、12Gb/s(約1,200MB/sec.)という更に高速な規格もありますが、デスクトップPC向けマザーボードには、恐らく価格が高くなるという理由で、標準では搭載されていません。SASのRAID コントローラーは PMC Adaptec社や、Avago Technologies社(旧LSI)より各種出されていますが、64bitのブロセッサを搭載して、Mini-SAS HD(SFF-8643コネクター、12Gb/s × 4=Max. 48Gb/s)、RAID 5/6 に対応した高性能なものは、10万円以上の価格となってしまいます。 そこで、SSDが本来持つ速度を最大限に引き出すために作られた技術が NVMe です。 SSD NVMe は、Thunderbold の基盤ともなっており、グラフィックス・カードで使われている PCI Express(Peripheral Component Interconnect Express) の技術を利用しています。 PCI Express は、IDE、PCI や AGP の様な パラレル・インターフェイスではなく、RS-232Cや、Ethernet® の様な、シリアル・インターフェイス になっています。 (Express の語源は、ラテン語の「expressus」で、「外に押し出す」という意味。 ドリップコーヒーより抽出が早い イタリア語の expresso と同じ語源。 英語では、「表現する」という意味で使われることが多い。 名詞的には、「急行」、「速達」(英)、「至急」(米) という意味で使われる。) PCI Express Gen(Generation)3 は 1レーン 当たりで、約1GB/sの転送速度があります。 PCI Express Gen3 4レーン の場合、その4倍の、最大 4GB/s という転送速度があります。 一方、SAS RAID コントローラーは、PCI Express Gen3 8レーン(最大8GB/s)を、グラフィックスカード、GPU、インテル® Xeon® Phi™ coprocessor(Knights Conner)は、PCI Express 16レーン(Gen3 は 最大16GB/s、Gen2 は最大8GB/s)を採用しています。 現在の SATA SSD は、SATA の 600MB/s という転送速度の壁にぶつかってしまっています。 PCI-E 3 x4 を使った、現在の NVMe SSD は、まだ 4,000MB/s には少し余裕がありますが、何れは SATA SSD の場合と同じように壁にぶつかることは間違ありません。その場合は、PCI-E 3 x8 や x16 を採用した NVMe SSD が登場してくるかもしれません。もし、それでも転送速度が足りないという場合でも、PCI-E Gen4 x16(一方向あたり 32GB/s) や x64(128GB/s)や、次世代の Intel Xeon Phi processor(Knights Landing) から採用される インテル® Omi Path(Gen1 : 1リンクが 2×100Gbit/s の伝送速度) を採用した NVMe SSD も登場するようになってくるかもしれません。 実際のところ、データセンター向けの非常に高価な NVMe SSD とはなりますが、2015年の9月に 「インテル® SSD DC P3608 シリーズ」がリリースされています。 今のところ、この NVMe SSD だけですが、PCIe NVMe 3.0 x8(片方向 最大 8GB/s)を採用しています。 シーケンシャル・リード は何と5,000 MB/s、ライトは 3,000 MB/s、ランダム・リード(100% スパン)は、驚くべきことに 何と 850,000 IOPS を実現しています。 [仕様] この数字は、インテル® SSD 750 シリーズの、読み込みについては2倍以上、書き込みについては、何と約3倍高速となっています。 ■ AHCI と NVMe の仕様の違い AHCI は、HDD(Hard Disk Drive)用に決められた仕様ですが、NVMe は、最初から HDD よりは一桁高速な SSD という、ストレージ・デバイスのために決められた仕様ですので、大きく仕様が向上しています。 例えば、4KBの転送に必要なコマンド・パラメータは、AHCIの場合、2 serialized host DRAM フェッチ 必要なのに対して、 NVMe の方は、1フェッチ(64 Byte)で済んでしまいます。 コマンドを処理するキューが、AHCI の場合は 1つ なのに対して、NVMe の方は、データーセンター等の用途での複数のデーターアクセスを想定しており、高い IOPS(I/O Per Second) を実現できるように、何と 65,536 に増やされています。 また、キュー(命令)数は、AHCI の場合、最大32個 なのに対して、NVMe の方は、同様な理由により、最大65,536 になっています。 |
AHCI (Advanced Host Controller Interface) |
NVMe (Non-Volatile Memory Express) |
|
---|---|---|
最大キュー 深度 | 1 コマンド キュー 32 コマンド / キュー |
65536 キュー 65536 コマンド / キュー |
Uncacheable register accesses (各々 2000 サイクル) |
6 / Non キュー コマンド 9 / キュー コマンド |
2 / コマンド |
MSI-X (Message Signaled Interrupts) と 割り込みステアリング |
単一の割り込み ステアリング 無し |
2048 MSI-X 割り込み |
パラレリズム および、マルティプル・スレッド |
コマンドを発行するために、 synchronization lock が必要 |
No locking |
4 KB コマンドの効率 |
コマンド・パラメータ は 2 serialized host DRAM フェッチ必要 |
コマンド・パラメータ は 1 フェッチ(64 Byte)で済む |
レイテンシー(遅延時間) |
80(Read) / 85(Write) µs 程度 (インテル® SSD 535 シリーズ) |
20(Read) / 20(Write) µs 程度 (インテル® SSD 750 シリーズ) |
IOPS(8GBスパン) |
48,000(Read) / 37,000(Write) (インテル® SSD 535 シリーズ 480GB) |
440,000(Read) / 290,000(Write) (インテル® SSD 750 シリーズ 1.2TB) |
|
---|
|
||
Intel®、インテル®、Intel® ロゴ、Atom™、Core™、Xeon®、Phi™、Pentinum®は、米国およびその他の国におけるIntel® Corporation の商標です。 NVIDIA®、NVIDIA®ロゴ、GeForce、Quadroは、米国NVIDIA® corporationの登録商標です。 AMD®, AMD® Arrowロゴ、ならびにその組み合わせは、Advanced Micro Devices, Inc.の商標です。 Microsoft®(その他商標・登録商標名)は、米国 Microsoft® Corporation の米国およびその他の国における登録商標または商標です。 Windows®の正式名称は、Microsoft® Windows® Operating Systemです。 Linux® は、Linus Torvalds 氏の米国およびその他の国における登録商標です。 RED HATとShadowman logoは米国およびそのほかの国において登録されたRed Hat, Inc. の商標です。 CentOSの名称およびそのロゴは、CentOS ltdの商標または登録商標です。 Ubuntu は Canonical Ltd. の登録商標です。 Linux Mint は Linux Mark Institute の商標です。 IMSL® は、米国およびその他の国における Rouge Wave Software, Inc. の商標です。 Avast™ は、Avast Software の商標です。 AVG® は AVG Technologies の登録商標です。 Python® はPSFの登録商標です。 その他、記載されている会社名、製品名は、各社の登録商標または商標です。 | ||
|