Hi Lex-- On 9/2/2004 20:07, "Christopher Alexander Stein" <stein@eecs.harvard.edu> wrote:> > Hi, Does Lustre distribute single files across multiple OSTs?Yes. This can be configured on a per-file, per-directory (Lustre 1.2.2+), or per-file-system basis.> Does Lustre provide record-level, block-level, file-level, or > no-level locking?Lustre has an intelligent policy for locking extents within a file, that for all common cases uses as few locks as possible. A client will request a lock on the extent necessary to maintain the atomicity of a given operation; for example, if you are writing 1MB at the beginning of a file, it will request a lock on the [0 - 1MB] extent. The lock manager will in most cases grant the largest lock which can be granted without conflicts. Because the overwhelming majority of files are modified by only one node at a time, the client usually gets a single lock covering the entire file, which eliminates further locking overhead. If there is contention, the lock manager will give out smaller locks to allow nodes to modify different regions of the file in parallel.> If so, what interface is used for applications to perform locking?The interface I described is internal to Lustre, and occurs automatically when you read() or write() or perform any other operation in a Lustre file system. The lockf/flock POSIX lock interface will be supported in Lustre 1.4.x. Hope that helps-- -Phil
Christopher Alexander Stein
2006-May-19 07:36 UTC
[Lustre-discuss] several questions about lustre
Hi, Does Lustre distribute single files across multiple OSTs? Does Lustre provide record-level, block-level, file-level, or no-level locking? If so, what interface is used for applications to perform locking? Thank you, Lex