From: Linda W on 20 Jun 2010 20:30 I can share what I have, but won't claim they are optimal for everyone. For win7, they give near theoretical performance on writes (with win7 tuned correctly as well). Will only mention a few pertinent items. Standard disclaimers concerning your software, work load and hardware all need to be considered when evaluating params. Biggest thing is in reserving enough memory. I just remeasured linear performance -- using a single task, using 'dd' to/from a server file of 1 or 4GB in size. I also figured out my Win7 performance was way below par -- and tried a WinXP performance improvement on it -- and had it work -- even though it's widely said around the net to no longer work in Vista or above. First the linux params, then the other params. linux: /proc/sys/net/ipv4 (same methods may work for ipv6, but haven't tested them) Comparing my distro's defaults to my modified values: *(don't know if this is important, as I don't think congestion enters into play in my setup, but:) default: tcp_allowed_congestion_control=cubic reno tcp_available_congestion_control=cubic reno tcp_congestion_control=cubic tcp_ecn=0 tcp_timestamps=1 mod: tcp_allowed_congestion_control=htcp reno tcp_available_congestion_control=htcp reno scalable tcp_congestion_control=htcp tcp_ecn=1 tcp_timestamps=0 Then memory for tcp: default: tcp_mem: 47136 62848 95272 tcp rmem 4096 87380 2011136 tcp wmem 4096 87380 2011136 mod: tcp_mem 2097152 8338608 268435456 tcp_rmem 1048576 4194304 134217728 tcp_wmem 1048576 4194304 134217728 Also, in /etc/samba/smb.conf: socket options = TCP_NODELAY IPTOS_LOWDELAY SO_SNDBUF=4194304 SO_RCVBUF=4194304 (also, not sure if they are as important, but also use:) aio read size=65536 aio write size=65536 min recievefile size=65536 max xmit=66576 --- On my clients, under the HKLM/currentcontrolset, under TcpIp/Parameters I have (both DWORDS): TcpMaxWindowSize=1048576 GlobalMaxTcpWindowSize 1048576 AND I have those same two DWORDS under my active "Interface" key (under Parameters). I looked for the one that corresponded to my client's active interface. ----------------------------------- Notes: In writing up these params I did some benchmark testings. Win7 (without the TCPMaxWindowSize) changes in the registry), gave 10MB/s reads and 12MB/s writes. WinXP (didn't already had those changes) came in at 35MB/s reads and 73MB/s writes. Putting in the MaxWinSize words in my Win7 registry (though several places around the net claim this param was no longer used, from Vista on), gives: 70MB/s reads 108MB/s writes. Note -- these are measured not just in terms of the execution time of 'dd', but also looking at "xosview" running (actually running remotely over X -- i.e. using up some of that file transfer bandwidth!). I.e. Xosview showed 108MB/s when I measured 108MB/s in 'dd'. So it wasn't a related to cache timings. Am glad you posted your question, as I wouldn't have experimented with the TCPMaxWinSize -- as every place I looked claimed that param was no longer used from Vista on -- so I had not previously tried it (being gullible enough to believe all the sites that claimed it was no longer supported. C'est la vi!). Hope this helps, Linda -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
From: Holger Rauch on 21 Jun 2010 08:10 Hi Linda, thanks a lot for sharing your params; IMHO it's very useful to them in combination (Win registry, Samba config, Linux sysctls). Would you mind telling us a bit about your client and server HW, the Samba server OS and version you use so that your test results obtained with dd appear in some context and can be judged better? Thanks in advance & Kind regards, Holger
From: Linda W on 21 Jun 2010 20:40 Holger Rauch wrote: > Hi Linda, > > thanks a lot for sharing your params; IMHO it's very useful to them in > combination (Win registry, Samba config, Linux sysctls). > Would you mind telling us a bit about your client and server HW, > the Samba server OS and version you use so that your test results > obtained with dd appear in some context and can be judged better? Both client machines are connected with Gb ethernet. XP client with an Intel 5000XVN based motherboard with Dual Xeon Core2 Duo's @ 3.2G, w/ 3GB of 667MHz memory. Win7-64 client is an based on the Intel 5020SC w/24GB memory with 1 Quad Core processor @ 2.7GH, with 1333MHz DDR3 RAM. Server is a Dell PowerEdge T610 with same processor and memory as the workstation, running Suse 11.2, w/vanilla 2.6.34 kernel compiled for the machine. The disks probably don't come into play with the server's cache, but we're testing Samba's transfer speed over the network -- so I tried to minimize the effect of the disks, anyway. If you care, my my disks transfer speeds are 5x-15x my network transfer speeds (depending on if you are looking at the low or high end of the network speeds). I allocated large buffers to TCP because I have few clients that would be doing things simultaneously and because the server isn't too worried about memory. File system is 'xfs' -- which is best for large multi-terabyte file system. It also supports NT's ACLs, which I extensively. Out of curiosity -- I tried using a 256MB transfer size on my Win7 client -- it made a difference. For this test, I made sure the remote file was in the local buffer cache before attempting to read it so as to only test Samba's efficiency. Read: /l> dd if=test1 of=/dev/null bs=256M count=16 16+0 records in 16+0 records out 4294967296 bytes (4.3 GB) copied, 39.024 s, 110 MB/s Write: /l> dd of=test1 if=/dev/zero bs=256M count=16 conv=notrunc oflag=direct 16+0 records in 16+0 records out 4294967296 bytes (4.3 GB) copied, 37.37 s, 115 MB/s In both cases, running 'xosview' showed the expected network bandwidth being used. Does that answer your questions? linda -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
|
Pages: 1 Prev: machine password changed in secrets.tdb Next: hardlink unlink-before-save? |