On Jul 17, 2007 09:49 +0800, Stuart Midgley wrote: > We are seeing really bad performance from a java app and it boils down to > poor performance from 1-byte reads from a Lustre file system. After a > detailed strace of the application running, I have generated the following > code snippet which demonstrates the problem > > Anyway, this code runs in <1s on local disk, ~5s on NFS and >30s on > Lustre... I was disappointed to see Lustre slower than nfs. I was > hoping that Lustre's read-a-head would have been triggered by this code, > but it doesn't appear to be. Any way I can tune Lustre to work better > with this code? (I know, change the code, but it isn't that easy - this > is a c example of an strace of a java app - and changing the original java > app isn't so easy).
Two likely reasons: - lustre has DLM overhead for each read() syscall that local filesystems and NFS do not have - the default debug level for lustre is punishing for small reads. Try setting "sysctl -w lnet.debug=0" to test this. The default debug level will be changing in lustre 1.6.1. Cheers, Andreas -- Andreas Dilger Principal Software Engineer Cluster File Systems, Inc. _______________________________________________ Lustre-discuss mailing list [email protected] https://mail.clusterfs.com/mailman/listinfo/lustre-discuss
