[dcmf] [PATCH 2/3] Use naive strided routines for af_ufs.
Bob Cernohous
bobc at us.ibm.com
Fri Feb 15 13:02:26 CST 2008
robl at mcs.anl.gov (Robert Latham) wrote on 02/15/2008 12:48:50 PM:
> > ADIOI_BGL_SetInfo, /* SetInfo */
> > - ADIOI_GEN_ReadStrided, /* ReadStrided */
> > - ADIOI_NOLOCK_WriteStrided, /* WriteStrided */
> > + ADIOI_GEN_ReadStrided_naive, /*ADIOI_GEN_ReadStrided, *
ReadStrided */
> > + ADIOI_GEN_WriteStrided_naive, /*ADIOI_NOLOCK_WriteStrided, *
> WriteStrided */
> > ADIOI_BGL_Close, /* Close */
> > #ifdef ROMIO_HAVE_WORKING_AIO
> > ADIOI_GEN_IreadContig, /* IreadContig */
>
> NOLOCK is a litte smarter than Naiive in the "noncontig in memory
> contig in file" case. In that situation, NOLOCK will perform write
> combining and do fewer writes.
>
> GEN_ReadStrided is safe for PVFS. We're just reading additional data,
> not trying to do an atomic read-modify-write.
Ok, but the problem I had was non-PVFS. Your patch enables ad_ufs. So
someone *could* use ufs:filename on non-PVFS, whether we think that makes
sense or not. So I tried the romio testcase on GPFS and NFS using -fname
ufs:test. The noncontig tests failed with ADIOI_NOLOCK_WriteStrided.
They worked with ADIOI_GEN_WriteStrided_naive.
So we have to make this patch satisfy PVFS and non-PVFS to ship it in the
product. Will naive work for you? 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? Put some hooks in to fail if someone uses
ufs: on non-pvfs?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.alcf.anl.gov/pipermail/dcmf/attachments/20080215/b44ee9d2/attachment.htm>
More information about the dcmf
mailing list