<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
I have used Fortran I/O (serial) where all processes access the same
input file to read part of the mesh. For runs on 1K-4K cores it is
fairly fast. For example it takes under 2 mins to read a
unstructured mesh of 16 million elements (larger mesh is also fine)
on 1000 cores. Though I guess its not good for the file system
(Lustre) but then you're only doing it once.<br>
<br>
MPI collective I/O is supposed to be faster as smaller requests get
merged into a single large one. However its binary only so you may
be better off using higher level libs (HDF5/Parallel NetCDF).
However it seems that after certain number of processors even that
gets too slow, e.g., see sec 4.2 in the following paper
<a class="moz-txt-link-freetext" href="http://climate.ornl.gov/~rmills/pubs/mills-PFLOTRAN_CUG2009.pdf">http://climate.ornl.gov/~rmills/pubs/mills-PFLOTRAN_CUG2009.pdf</a><br>
<br>
T<br>
<br>
On 11/19/2012 06:08 PM, Fande Kong wrote:
<blockquote
cite="mid:CAN5Wd-KDvOSeDPjcD2dzcAXA8S2tpuu8BjmOE=zSdpxN-QsEZA@mail.gmail.com"
type="cite">It seems to be a good idea. I have another related
question. If all processors read the same file at the same time,
would it be very slow for conflicting access?<br>
<br>
<div class="gmail_quote">On Mon, Nov 19, 2012 at 4:52 PM, Jed
Brown <span dir="ltr"><<a moz-do-not-send="true"
href="mailto:jedbrown@mcs.anl.gov" target="_blank">jedbrown@mcs.anl.gov</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im">
<div class="gmail_extra">On Tue, Nov 20, 2012 at 12:38 AM,
Fande Kong <span dir="ltr"><<a moz-do-not-send="true"
href="mailto:fd.kong@siat.ac.cn" target="_blank">fd.kong@siat.ac.cn</a>></span>
wrote:<br>
<div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
I want to try very 'large' mesh. I guess it should be
bottleneck.</blockquote>
</div>
<br>
</div>
</div>
<div class="gmail_extra">It's really worth profiling. Having
every process read directly is no more scalable (frequently
less, actually) than having rank 1 read incrementally and
send to whoever should own it. You can do full parallel IO,
but the code depends on the mesh format.</div>
</blockquote>
</div>
<br>
<br clear="all">
<div><br>
</div>
-- <br>
<div
style="line-height:21px;font-family:Verdana;font-size:14px;background-color:rgb(255,255,255)">Fande
Kong</div>
<div
style="line-height:21px;font-family:Verdana;font-size:14px;background-color:rgb(255,255,255)">ShenZhen
Institutes of Advanced Technology</div>
<div
style="line-height:21px;font-family:Verdana;font-size:14px;background-color:rgb(255,255,255)">Chinese
Academy of Sciences</div>
<br>
</blockquote>
<br>
</body>
</html>