NVM Express (NVMe) support status

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

NVM Express (NVMe) support status

Evgeniy Sudyr
Hi all,

I'm looking status of NVM Express support in -current (got Intel 750
consumer device
https://www-ssl.intel.com/content/www/us/en/solid-state-drives/solid-state-drives-750-series.html
for home desktop, but it looks like all devices are using the same
Specification).

I found 2 commits of nvme_pci.c from @dlg there:

http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sys/dev/pci/nvme_pci.c

But commit message sounds work is abandoned, because of problems faced.

I found specification exists there http://www.nvmexpress.org/specifications/

It also works for me under Linux and NVMe driver is maintained by
Intel developer Matthew Wilcox.
https://github.com/torvalds/linux/tree/master/drivers/nvme

Looks already implemented in FreeBSD (didn't tested yet):

http://svnweb.freebsd.org/base/head/sys/dev/nvme/nvme.h?view=log&pathrev=240616
https://svnweb.freebsd.org/base/head/sys/dev/nvme/

It will be great to get this "awesome fast" storage support in next
OpenBSD release(s).

Anybody aware of any plans on this?

--
With regards,
Evgeniy

Reply | Threaded
Open this post in threaded view
|

Re: NVM Express (NVMe) support status

Chris Cappuccio
Evgeniy Sudyr [[hidden email]] wrote:

> Hi all,
>
> I'm looking status of NVM Express support in -current (got Intel 750
> consumer device
> https://www-ssl.intel.com/content/www/us/en/solid-state-drives/solid-state-drives-750-series.html
> for home desktop, but it looks like all devices are using the same
> Specification).
>
> I found 2 commits of nvme_pci.c from @dlg there:
>
> http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sys/dev/pci/nvme_pci.c
>
> But commit message sounds work is abandoned, because of problems faced.
>

If it was abandoned, it would be in the Attic.

Lack of progress is a matter of time and hardware access to developers.

> It will be great to get this "awesome fast" storage support in next
> OpenBSD release(s).
>
> Anybody aware of any plans on this?
>

Feel free to submit a patch improving it.

Reply | Threaded
Open this post in threaded view
|

Re: NVM Express (NVMe) support status

David Gwynne-5
In reply to this post by Evgeniy Sudyr
> On 12 Feb 2016, at 7:01 PM, Evgeniy Sudyr <[hidden email]> wrote:
>
> Hi all,
>
> I'm looking status of NVM Express support in -current (got Intel 750
> consumer device
>
https://www-ssl.intel.com/content/www/us/en/solid-state-drives/solid-state-dr
ives-750-series.html

> for home desktop, but it looks like all devices are using the same
> Specification).
>
> I found 2 commits of nvme_pci.c from @dlg there:
>
> http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sys/dev/pci/nvme_pci.c
>
> But commit message sounds work is abandoned, because of problems faced.
>
> I found specification exists there
http://www.nvmexpress.org/specifications/
>
> It also works for me under Linux and NVMe driver is maintained by
> Intel developer Matthew Wilcox.
> https://github.com/torvalds/linux/tree/master/drivers/nvme
>
> Looks already implemented in FreeBSD (didn't tested yet):
>
>
http://svnweb.freebsd.org/base/head/sys/dev/nvme/nvme.h?view=log&pathrev=2406
16
> https://svnweb.freebsd.org/base/head/sys/dev/nvme/
>
> It will be great to get this "awesome fast" storage support in next
> OpenBSD release(s).
>
> Anybody aware of any plans on this?

it might work if you give it a go now.

Reply | Threaded
Open this post in threaded view
|

Re: NVM Express (NVMe) support status

Evgeniy Sudyr
Great news! I will make testing and will let you know how it works.

On Sat, Apr 16, 2016 at 12:18 AM, David Gwynne <[hidden email]> wrote:

>
>> On 12 Feb 2016, at 7:01 PM, Evgeniy Sudyr <[hidden email]> wrote:
>>
>> Hi all,
>>
>> I'm looking status of NVM Express support in -current (got Intel 750
>> consumer device
>> https://www-ssl.intel.com/content/www/us/en/solid-state-drives/solid-state-drives-750-series.html
>> for home desktop, but it looks like all devices are using the same
>> Specification).
>>
>> I found 2 commits of nvme_pci.c from @dlg there:
>>
>> http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sys/dev/pci/nvme_pci.c
>>
>> But commit message sounds work is abandoned, because of problems faced.
>>
>> I found specification exists there http://www.nvmexpress.org/specifications/
>>
>> It also works for me under Linux and NVMe driver is maintained by
>> Intel developer Matthew Wilcox.
>> https://github.com/torvalds/linux/tree/master/drivers/nvme
>>
>> Looks already implemented in FreeBSD (didn't tested yet):
>>
>> http://svnweb.freebsd.org/base/head/sys/dev/nvme/nvme.h?view=log&pathrev=240616
>> https://svnweb.freebsd.org/base/head/sys/dev/nvme/
>>
>> It will be great to get this "awesome fast" storage support in next
>> OpenBSD release(s).
>>
>> Anybody aware of any plans on this?
>
> it might work if you give it a go now.



--
--
With regards,
Eugene Sudyr

Reply | Threaded
Open this post in threaded view
|

Re: NVM Express (NVMe) support status

Evgeniy Sudyr
Working for me my NVMe disk is Intel 750

http://www.intel.com/content/www/us/en/solid-state-drives/solid-state-drives-750-series.html
http://www.intel.com/content/dam/www/public/us/en/documents/product-specifications/ssd-750-spec.pdf

dmesg | grep -i nvme
nvme0 at pci1 dev 0 function 0 "Intel SSD DC P3700/P3600/P3500" rev
0x01: apic 2 int 16, NVMe 1.0
nvme0: INTEL SSDPE2MW012T4, firmware 8EV10174, serial CVCQ5222005G1P2DGN
scsibus0 at nvme0: 1 targets


I even did quick disk write performance testing (not analysed yet)

TEST #1
bonnie++ -u root -b -d /mnt -s 64g:128k -n 0

# iostat -w 5 sd0
      tty              sd0             cpu

 tin tout  KB/t  t/s  MB/s  us ni sy in id
   0   53 64.00 7953 497.06   0  0 12 11 77
   0   18 64.00 8267 516.72   0  0 13 11 76
   0   18 64.00 8586 536.64   0  0 13 11 75
   0   18 64.00 8638 539.90   0  0 14 13 73

TEST #2
dd if=/dev/zero of=/mnt/test bs=10M count=1000000000 conv=sync
7490+0 records in
7489+0 records out
78527856640 bytes transferred in 72.323 secs (1085792228 bytes/sec)

iostat -w 5 sd0
      tty              sd0             cpu
 tin tout  KB/t  t/s  MB/s  us ni sy in id
   0   53 64.00 16092 1005.78   1  0 14 22 63
   0   19 64.00 16741 1046.27   1  0 15 24 59
   0   19 64.00 16619 1038.70   1  0 17 24 58
   0   19 64.00 16610 1038.10   1  0 17 24 58
   0   19 64.00 16582 1036.38   1  0 18 24 57
   0   19 64.00 16402 1025.11   1  0 17 24 58
   0   19 64.00 16371 1023.14   1  0 14 24 61
   0   19 64.00 16646 1040.38   1  0 15 24 61

Looks good so far for me for start.

Thanks dlg@ !

On Tue, Apr 19, 2016 at 10:14 AM, Evgeniy Sudyr <[hidden email]> wrote:

> Great news! I will make testing and will let you know how it works.
>
> On Sat, Apr 16, 2016 at 12:18 AM, David Gwynne <[hidden email]> wrote:
>>
>>> On 12 Feb 2016, at 7:01 PM, Evgeniy Sudyr <[hidden email]> wrote:
>>>
>>> Hi all,
>>>
>>> I'm looking status of NVM Express support in -current (got Intel 750
>>> consumer device
>>> https://www-ssl.intel.com/content/www/us/en/solid-state-drives/solid-state-drives-750-series.html
>>> for home desktop, but it looks like all devices are using the same
>>> Specification).
>>>
>>> I found 2 commits of nvme_pci.c from @dlg there:
>>>
>>> http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sys/dev/pci/nvme_pci.c
>>>
>>> But commit message sounds work is abandoned, because of problems faced.
>>>
>>> I found specification exists there http://www.nvmexpress.org/specifications/
>>>
>>> It also works for me under Linux and NVMe driver is maintained by
>>> Intel developer Matthew Wilcox.
>>> https://github.com/torvalds/linux/tree/master/drivers/nvme
>>>
>>> Looks already implemented in FreeBSD (didn't tested yet):
>>>
>>> http://svnweb.freebsd.org/base/head/sys/dev/nvme/nvme.h?view=log&pathrev=240616
>>> https://svnweb.freebsd.org/base/head/sys/dev/nvme/
>>>
>>> It will be great to get this "awesome fast" storage support in next
>>> OpenBSD release(s).
>>>
>>> Anybody aware of any plans on this?
>>
>> it might work if you give it a go now.
>
>
>
> --
> --
> With regards,
> Eugene Sudyr



--
--
With regards,
Eugene Sudyr