Thanks for pointing that out. I was using the default striping, which in my case is 1mb stripes, on one OST.<br><br>However,  If I change the stripe size to 32mb (the size of the buffers being written/read), the function used to write the file using O_DIRECT stops  working. Its code is very similar to the one posted above and the problem is that the write()-function stucks while writing the first buffer. Is there any trick for using O_DIRECT in Lustre? I've aligned the buffer using posix_memalign(), and every offset and count seem to be a multiple of the page-size (4kb).<br>

<br><br><br><br><br><div class="gmail_quote">On Fri, Aug 21, 2009 at 12:04 AM, Brian J. Murrell <span dir="ltr"><<a href="mailto:Brian.Murrell@sun.com" target="_blank">Brian.Murrell@sun.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div>On Thu, 2009-08-20 at 23:52 +0200, Alvaro Aguilera wrote:<br>
> I'm facing the following problem: when this code is run in parallel<br>
> the read operations on certain processes start to need more and more<br>
> time to complete. I attached a graphical trace of this, when using<br>
> only 2 processes.<br>
<br>
</div>Just a (perhaps silly) question, but does the striping of the file (or<br>
the directory the file is being created in) on the filesystem match your<br>
I/O patterns?  That is, ideally, each thread/rank/process (whatever you<br>
want to call them) should be doing I/O in it's own stripe.<br>
<br>
$ man lfs<br>
<br>
if none of this is meaningful.<br>
<font color="#888888"><br>
b.<br>
<br>
</font><br>_______________________________________________<br>
Lustre-discuss mailing list<br>
<a href="mailto:Lustre-discuss@lists.lustre.org" target="_blank">Lustre-discuss@lists.lustre.org</a><br>
<a href="http://lists.lustre.org/mailman/listinfo/lustre-discuss" target="_blank">http://lists.lustre.org/mailman/listinfo/lustre-discuss</a><br>
<br></blockquote></div><br>