Announcement

Collapse
No announcement yet.

Newish NFS mount option I missed until now: "nconnect="

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Newish NFS mount option I missed until now: "nconnect="

    Source info here.

    the "nconnect=" option lets you assign up to 16 TCP channels for NFS connections to presumably speed up transfer rates. I booted up this morning with the option enabled and it definitely seems quicker. I averaged roughly 10MB a sec. on a 1.1GB file move.

    I haven't run a full set of comparison benchmarks yet, but thought it worth mentioning...

    Please Read Me

    #2
    Please let us know the results of your comparison benchmarks - thanks!
    Debian KDE & LXQt • Kubuntu & Lubuntu • openSUSE KDE • Windows • macOS X
    Desktop: Lenovo ThinkCentre M75s • Laptop: Apple MacBook Pro 13" • and others

    get rid of Snap script (20.04 +)reinstall Snap for release-upgrade script (20.04 +)
    install traditional Firefox script (22.04 +)​ • install traditional Thunderbird script (24.04)

    Comment


      #3
      Initial testing results were not good.

      TL/DR: Small (4K) files had little or no difference. Large file performance was noticeably worse.

      My conclusion is either I have some other obstacle to NFS or network performance - like TCP/IP - or the nconnect option isn't doing what it was supposed to do.

      Here's what I did.

      Test setup:
      • Created a folder with 1000x4K "zero" files in it
      • Created a folder with 10x1GB "zero" files in it
      • Both file systems are BTRFS
      • The server is Ubuntu 20.04 using platter HDs
      • The desktop is KDEneon using NVME drives
      I ran all commands while logged out of the GUI and from the TTY console to avoid Dolphin or Plasma lag.

      I copied each set of files from folder from my home NVME drive:
      /test/small_out
      /test/large_out

      To folders residing on my server 12TB NAS drive:
      /home/server/test/small
      /home/server/test/large

      Then copied them again the other direction:
      /server/test/small >> /home/test/small_in
      /server/test/large >> /home/test/large_in

      The results are labeled as "OUT" meaning from /home to /server and "IN" meaning from /server to /home. I used a basic "cp" command with "time" command preceding it.

      The results with nconnect=16 as a mount option:
      Small files:
      Code:
      OUT
      real 0m41.048s
      user 0m0.017s
      sys 0m0.391s
      
      IN
      real 0m0.281s
      user 0m0.000s
      sys 0m0.069s​​​
      Large files:
      ​​
      Code:
      OUT
      real 2m6.916s
      user 0m0.012s
      sys 0m10.631s
      
      IN
      real 0m59.033s
      user 0m0.005s
      sys 0m8.714s
      The results without nconnect=16 as a mount option:
      Small files:
      Code:
      OUT
      real 0m42.336s
      user 0m0.020s
      sys 0m0.342s
      
      IN
      real 0m0.826s
      user 0m0.011s
      sys 0m0.106s​​​
      Large files:
      ​​
      Code:
      OUT
      real 1m50.887s
      user 0m0.000s
      sys 0m11.617s
      
      IN
      real 0m12.987s
      user 0m0.005s
      sys 0m4.889s​​
      It's also very interesting to me that copying FROM the server happens faster than TO the server.

      Please Read Me

      Comment

      Working...
      X