PINE64
PCIe -> SATA and NVMe work as of 0.6.59 - Printable Version

+- PINE64 (https://forum.pine64.org)
+-- Forum: ROCKPRO64 (https://forum.pine64.org/forumdisplay.php?fid=98)
+--- Forum: Linux on RockPro64 (https://forum.pine64.org/forumdisplay.php?fid=101)
+--- Thread: PCIe -> SATA and NVMe work as of 0.6.59 (/showthread.php?tid=6242)

Pages: 1 2


PCIe -> SATA and NVMe work as of 0.6.59 - Luke - 07-04-2018

Just relaying that PCIe -> SATA and PCIe NVMe work as of 0.6.59 on mainline and 4.4.
I'll let frankm share performance results as I am away and have no means of testing.

As always, massive kudos to ayufan for all the work.


RE: PCIe -> SATA and NVMe work as of 0.6.59 - Bullet64 - 07-04-2018

With an SanDisk SSD Plus 240GB


Code:
rock64@rockpro64:/mnt$ sudo iozone -e -I -a -s 100M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2
    Iozone: Performance Test of File I/O
            Version $Revision: 3.429 $
        Compiled for 64 bit mode.
        Build: linux

    Contributors:William Norcott, Don Capps, Isom Crawford, Kirby Collins
                 Al Slater, Scott Rhine, Mike Wisner, Ken Goss
                 Steve Landherr, Brad Smith, Mark Kelly, Dr. Alain CYR,
                 Randy Dunlap, Mark Montague, Dan Million, Gavin Brebner,
                 Jean-Marc Zucconi, Jeff Blomberg, Benny Halevy, Dave Boone,
                 Erik Habbinga, Kris Strecker, Walter Wong, Joshua Root,
                 Fabrice Bacchella, Zhenghua Xue, Qin Li, Darren Sawyer,
                 Vangel Bojaxhi, Ben England, Vikentsi Lapa.

    Run began: Wed Jul  4 15:05:37 2018

    Include fsync in write timing
    O_DIRECT feature enabled
    Auto Mode
    File size set to 102400 kB
    Record Size 4 kB
    Record Size 16 kB
    Record Size 512 kB
    Record Size 1024 kB
    Record Size 16384 kB
    Command line used: iozone -e -I -a -s 100M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2
    Output is in kBytes/sec
    Time Resolution = 0.000001 seconds.
    Processor cache size set to 1024 kBytes.
    Processor cache line size set to 32 bytes.
    File stride size set to 17 * record size.
                                                             random    random     bkwd    record    stride                                    
             kB  reclen    write  rewrite    read    reread    read     write     read   rewrite      read   fwrite frewrite    fread  freread
         102400       4    40073    65587    76408    76546    23702    13602                                                          
         102400      16   113539   157707   181745   182323    47126    51496                                                          
         102400     512   328802   326047   277146   278351   270958   336556                                                          
         102400    1024   331734   358670   313116   314032   313441   334537                                                          
         102400   16384   189982   225176   234192   346836   381690   370403                                                          

iozone test complete.

Thanks Ayufan!!


RE: PCIe -> SATA and NVMe work as of 0.6.59 - ayufan - 07-04-2018

So. I tested my nvme drive yesterday and got around 1.4GB/s Smile

https://gist.github.com/ayufan/30c46381c5e4e5c5264a834a752946db
https://gist.github.com/ayufan/7889334061db03c57c3f2ecf733c719a


RE: PCIe -> SATA and NVMe work as of 0.6.59 - pfeerick - 07-05-2018

My NVMe drive still isn't being picked up, but neither was the PCI sata card on the first boot with mainline... so I'm going to try again and reboot a few times. Edit: It still doesn't seem to like me - either NVMe is still not completely stable, drive's faulty or not compatible, or something else.... It's a new el-cheapo M.2 2280, and does seem to do something on startup, but I get the following in dmesg and it don't work.

Code:
[    7.624204] rockchip-pcie f8000000.pcie: PCIe link training gen1 timeout!
[    7.625029] rockchip-pcie: probe of f8000000.pcie failed with error -110

In the meantime, here are some results for a random 1.5TB Seagate 'Green' drive on the PCI SATA card on mainline 4.18 ... as I had nothing but lockups, endless "ata2: hard resetting link" loops and "cdn-dp fec00000.dp: Direct firmware load for rockchip/dptx.bin failed with error -2" errors with the 4.4 kernel.

Code:
                                                             random    random     bkwd    record    stride                                    
             kB  reclen    write  rewrite    read    reread    read     write     read   rewrite      read   fwrite frewrite    fread  freread
         102400       4    27191    31454    35270    36355      662      923                                                          
         102400      16    60049    69537    62676    75448     2603     3504                                                          
         102400     512   107696   109266   114872   115728    43650    66147                                                          
         102400    1024   109415   103687   119136   119073    65168    83687                                                          
         102400   16384   105158   112524   121737   125382   111152   102903                                                          

Full iozone output and lspci output here


RE: PCIe -> SATA and NVMe work as of 0.6.59 - dukla2000 - 07-08-2018

Would guess that el-cheapo is actually sata based (as it has the additional key to the M key for NVMe).

Certainly I am no expert: just lurking here in anticipation of next shipment..

Been watching IRC as well, thanks Ayufan!


RE: PCIe -> SATA and NVMe work as of 0.6.59 - pfeerick - 07-09-2018

(07-08-2018, 07:38 AM)dukla2000 Wrote: Would guess that el-cheapo is actually sata based (as it has the additional key to the M key for NVMe).

Certainly I am no expert: just lurking here in anticipation of next shipment..

Been watching IRC as well, thanks Ayufan!

Yeah, something certainly isn't right... it fits fine, and says all the right things in the description, but obviously doesn't work. 

So now I'm looking at some not so cheap Intel or Samsung M.2 drives... only 4 to 6 times the price! Confused


RE: PCIe -> SATA and NVMe work as of 0.6.59 - pfeerick - 07-17-2018

I bit the bullet and got a Samsung 960 EVO M.2 drive, which works OOTB with 0.7.6 (as it's the current pre-release build) with the stock 4.4 kernel: 

Full results are here (https://gist.github.com/pfeerick/c74d3075d4e6b5f943b68364dcb6b21e).

Code:
                                                     random    random
     kB  reclen    write  rewrite    read    reread    read     write
 102400       4    38433    79302   105834   102662    35497    77236
 102400      16   136010   245212   285828   287224   129220   229761
 102400     512   817004   742109   459952   457776   418119   543264
 102400    1024   513989   610949   475218   484782   457843   604607
 102400   16384  1048832   987167  1056497  1089687  1097510  1146656

I'll update the gist and this post later with the SATA results on the same kernel, and then the current mainline kernel for both on the same build for comparison.


RE: PCIe -> SATA and NVMe work as of 0.6.59 - dukla2000 - 07-25-2018

(07-17-2018, 11:31 PM)pfeerick Wrote: I bit the bullet and got a Samsung 960 EVO M.2 drive, which works OOTB with 0.7.6 (as it's the current pre-release build) with the stock 4.4 kernel: 
Nice :-)

Any idea why your top end is different to ayufan? He also has Samsung, I am not sure which precise model/size though. Or which release/kernel he was testing on to get 1.4G (you got 1.1G)

Last - do you have an eMMC? If so what size and how is it on iozone please?

My Rp64 now in the post - figure lashing out on nVME before it arrives would be a bit previous!

TIA


RE: PCIe -> SATA and NVMe work as of 0.6.59 - Bullet64 - 07-25-2018

(07-25-2018, 04:48 AM)dukla2000 Wrote:
(07-17-2018, 11:31 PM)pfeerick Wrote: I bit the bullet and got a Samsung 960 EVO M.2 drive, which works OOTB with 0.7.6 (as it's the current pre-release build) with the stock 4.4 kernel: 
Nice :-)

Any idea why your top end is different to ayufan? He also has Samsung, I am not sure which precise model/size though. Or which release/kernel he was testing on to get 1.4G (you got 1.1G)

Last - do you have an eMMC? If so what size and how is it on iozone please?

My Rp64 now in the post - figure lashing out on nVME before it arrives would be a bit previous!

TIA

Look -> https://gist.github.com/ayufan/30c46381c5e4e5c5264a834a752946db

He is using an Samsung PM961


RE: PCIe -> SATA and NVMe work as of 0.6.59 - dukla2000 - 07-25-2018

(07-25-2018, 05:17 AM)Bullet64 Wrote: Look -> https://gist.github.com/ayufan/30c46381c5e4e5c5264a834a752946db

He is using an Samsung PM961
I did see on his lspci output it was reported as
"Subsystem: Samsung Electronics Co Ltd NVMe SSD Controller SM961/PM961", but pfeerick 960 EVO output is identical.

My limited insight to Samsung 960 NVMe devices indicates SM961 and PM961 devices were released to OEMs early in 2016. And Samsung later released EVO and PRO versions for the general public. However, as per Anandtech there are differences in the NAND chips which is what I expect explains the difference in iozone numbers from ayufan and pfeerick?

If the table at Anandtech is accurate then actual PM961 devices should be the slowest of the lot.