<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
Wei-keng, I begin to read your paper with interest !<br>
Rob, thanks a lot for your explanations !<br>
<br>
Of course, I will experiment this code and will be happy giving news
from me.<br>
<br>
As far as I understand this new method, it could be better using PFR on
Lustre instead of Lustre ADIO Driver.<br>
This because PFR does the stripe alignment, but also brings a lot of
optimizations. I am right ?<br>
<br>
Regards,<br>
<br>
Pascal<br>
<br>
Rob Latham a écrit :
<blockquote cite="mid:20100826220050.GN25108@mcs.anl.gov" type="cite">
<pre wrap="">On Thu, Aug 26, 2010 at 11:04:17AM +0200, Pascal Deveze wrote:
</pre>
<blockquote type="cite">
<pre wrap="">Hi,
I recently saw that there are new files in adio/common
(ad_aggregate_new.c, ad_io_coll.c, ...). The are implementing a "new
2 phase method" using "file realms".
This is very interesting to me, but I do not have any information.
Are there some paper (architecture, white paper or High Level
Design) describing this new method ?
</pre>
</blockquote>
<pre wrap=""><!---->
The code is in ROMIO but only enabled if you set the "romio_cb_pfr"
hint: (PFR == persistent file realms)
Here are all the hints relevant to file realms. There are quite a
few:
- romio_cb_pfr: set this to use file realms. if not set, file domains
will continue to be calculated in the traditional manner.
- romio_cb_fr_types: the "file realm types" can be "AAR", "FSZ" or
"USR". The paper Wei-keng mentioned explains this better.
I am slightly embarrassed to admit that while I added hint parsing
for the rest of these hints, I never did add the hint parsing for
this one. You will be stuck with AAR.
- romio_cb_fr_alignment: easier hint to explain. Align file realms
to the given byte boundary. Certain file systems perform much
better when writes are aligned to block boundaries
- romio_cb_ds_threshold: normally, two-phase does data sieving
if the write request contains any holes. Set this hint (a
datatype's size-to-extent ratio), and datatypes less than this ratio will skip the data sieving optimization and instead service the request piecewise.
- romio_cb_alltoall: the communication phase of two-phase can involve
either point-to-point communication, or use MPI_Alltoall if this
hint is set to 'enable' or 'automatic'
If you experiment with this code, I would love to hear your results.
You have a knack for finding bugs :>
==rob
</pre>
</blockquote>
<br>
</body>
</html>