<br><tt><font size=2>robl@mcs.anl.gov (Robert Latham) wrote on 02/15/2008
12:48:50 PM:<br>
&gt; &gt; &nbsp; &nbsp; &nbsp;ADIOI_BGL_SetInfo, /* SetInfo */<br>
&gt; &gt; - &nbsp; &nbsp;ADIOI_GEN_ReadStrided, /* ReadStrided */<br>
&gt; &gt; - &nbsp; &nbsp;ADIOI_NOLOCK_WriteStrided, /* WriteStrided */<br>
&gt; &gt; + &nbsp; &nbsp;ADIOI_GEN_ReadStrided_naive, /*ADIOI_GEN_ReadStrided,
* ReadStrided */<br>
&gt; &gt; + &nbsp; &nbsp;ADIOI_GEN_WriteStrided_naive, /*ADIOI_NOLOCK_WriteStrided,
* <br>
&gt; WriteStrided */<br>
&gt; &gt; &nbsp; &nbsp; &nbsp;ADIOI_BGL_Close, /* Close */<br>
&gt; &gt; &nbsp;#ifdef ROMIO_HAVE_WORKING_AIO<br>
&gt; &gt; &nbsp; &nbsp; &nbsp;ADIOI_GEN_IreadContig, /* IreadContig */<br>
&gt; <br>
&gt; NOLOCK is a litte smarter than Naiive in the &quot;noncontig in memory<br>
&gt; contig in file&quot; case. &nbsp;In that situation, NOLOCK will perform
write<br>
&gt; combining and do fewer writes. &nbsp;<br>
&gt; <br>
&gt; GEN_ReadStrided is safe for PVFS. &nbsp;We're just reading additional
data,<br>
&gt; not trying to do an atomic read-modify-write.<br>
</font></tt>
<br><tt><font size=2>Ok, but the problem I had was non-PVFS. &nbsp;Your
patch enables ad_ufs. &nbsp;So someone *could* use ufs:filename on non-PVFS,
whether we think that makes sense or not. &nbsp;So I tried the romio testcase
on GPFS and NFS using -fname ufs:test. &nbsp; The noncontig tests failed
with ADIOI_NOLOCK_WriteStrided. &nbsp;They worked with ADIOI_GEN_WriteStrided_naive.</font></tt>
<br>
<br><tt><font size=2>So we have to make this patch satisfy PVFS and non-PVFS
to ship it in the product. &nbsp;Will naive work for you? &nbsp;It was
the simplest patch I could think of to get romio tests working. Or should
we take the approach that we only allow ad_ufs on PVFS? &nbsp; Put some
hooks in to fail if someone uses ufs: on non-pvfs?</font></tt>
<br>