[mpich-discuss] adio lustre patch

Martin Pokorny mpokorny at nrao.edu
Mon Jan 4 12:09:28 CST 2010


Hello,

I took a look at the ADIO Lustre driver last week in an attempt to make 
collective I/O work for my application. I believe that I've gotten the 
driver to do the right thing now. With the following patch all of the 
tests under romio/test pass in my environment. My application, which 
requires reasonably complex file views, also appears to write correct 
files now on a Lustre filesystem using collective I/O.

Problems in the noncontig and i_noncontig tests are fixed by changes to 
ad_lustre_wrstr.c. Basically, I made changes to that file so that it now 
more closely matches adio/common/ad_write_str.c. The only differences in 
these files should now be in the Lustre-specific parts. Problems in the 
large_array test are fixed in ad_lustre_aggregate.c and 
ad_lustre_wrcoll.c. The major problem was in the handling of the 
"buf_idx" arrays, which were not correctly tracking the data out of a 
process's data buffer being sent to multiple other processes. My tests 
involved four MPI nodes, four Lustre OSTs and both four and eight MPI 
processes.

I also patched ad_lustre_aggregate in its calculation of 
"avail_cb_nodes" as previously provided by Pascal Deveze. I don't know 
whether that has had any effect on my changes, since I did no testing 
without Pascal's changes.

There are some other changes, such as formatting and the addition of 
some assertions. They are included in the attached patch, but I could 
take them out if desired.

The patch should apply cleanly to sources out of a fresh mpich2-1.2.1 
tarball. I'm not an old hand at MPI, so please review my patch carefully.

-- 
Martin

-------------- next part --------------
A non-text attachment was scrubbed...
Name: adio_lustre.patch
Type: text/x-patch
Size: 38249 bytes
Desc: not available
URL: <http://lists.mcs.anl.gov/pipermail/mpich-discuss/attachments/20100104/ae25ebf5/attachment-0001.bin>


More information about the mpich-discuss mailing list