Niclas Sodergard writes: > On 6/8/07, Roch - PAE <Roch.Bourbonnais at sun.com> wrote: > > > > from the V20z to the V240 gives me a write speed of 80MB/s. So my > > > problem is that I get reading speed of 40MB/s over NFS and with the > > > same options I get writing speed of 80MB/s. I'm having a really hard > > > time to understand this and I was hoping someone here could provide > > > some light in this very dark tunnel. > > > > > > What could cause read speed to be so much slower than write? > > > > > > > This does not look extraordinary to me although, clearly it > > could be bettern. > > > > To write, you're pushing data out, presumably at the speed of > > the network with NFS responses (ack) coming in stride. > > > > To read, it's a request/response load. Send your request > > wait for response. Because of the sequential streaming > > access pattern, you should be hitting readahead codepath (in > > the client client and server filesystem). That might not be > > behaving optimally; so at times the network goes quiet while > > a server side read is being braught in from disk. > > Thanks for your answer. > > I've continued to bash my head against the server and tried a few more > options. > > 1. I removed the network switched and connected the machines directly > with a cable. No changes. > > 2. I tried multiple reading streams but that doesn't change anything > > 3. I mounted the server to my linux workstation (running a 2.6.20 > kernel) and that machine is capable of reading 80MB/s. So clearly the > V240+6140 is able to push the data. > > This makes me wonder that there must be something wrong/misconfigured > with the Solaris 10 nfs client. I've tried googling a lot, checked > sunsolve, google.groups but there doesn't seem to be any good answers. > Are there any performance related parameters that I can change that > could affect the nfs client? >
The file is not fully cached right ? So to get 80MB/sec and 5ms I/O latency, you need 400KB of readahead window. I think our clients manage 8 async threads per mount point (at 32K per request you fall a bit short). You might try playing with: nfs3_max_threads nfs4_max_threads or use multiple streams from multiple mount points. -r > cheers, > Nickus > > -- > Have a look at my blog for sysadmins! > http://aspiringsysadmin.com