<html dir="ltr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" id="owaParaStyle"></style>
</head>
<body fpstyle="1" ocsi="0">
<div style="direction: ltr;font-family: Tahoma;color: #000000;font-size: 10pt;">Hi,
<div><br>
</div>
<div>I found that the problem only happened in requesting noncontiguous small I/O along those slow dimension.<br>
<div>For example, there is a 4D dataset, Temperature[time][level][lat][lon], if we only read a 2D plane per time step, per level, or in other words, as is shown in the following codes:</div>
<div><br>
</div>
<div>mpi_count[0]=1;//read length in time dimension</div>
<div>mpi_count[1]=1;//read length in level dimension</div>
<div>mpi_count[2]=NLAT;//read length in lat dimension</div>
<div>mpi_count[3]=NLON;//read length in lon dimension</div>
<div>mpi_start[2]=0;//start position in lat dimension</div>
<div>mpi_stat[3]=0;//start position in lon dimension</div>
<div><br>
</div>
<div>loop_start=(int)(TIME_STEPS/nprocs)*rank;</div>
<div>loop_length=(int)(TIME_STEPS/nprocs);</div>
<div>for (time=loop_start;time< loop_start+loop_length;time++)</div>
<div>for(level=0;level<LEVEL_STEPS;level++){</div>
<div>mpi_start[0]=time;</div>
<div>mpi_start[1]=level;</div>
<div><br>
</div>
<div>//read 2D plane per time step and per level step</div>
<div>
<div>ncmpi_get_vara_float_all(ncid, temp_varid, mpi_start, mpi_count, temp_in)</div>
</div>
<div>}</div>
<div><br>
</div>
<div>I have no idea why the program is not scalable well. Or if I'm wrong in somewhere, any help is appreciated. Thanks,</div>
<div><br>
<div class="BodyFragment"><font size="2">
<div class="PlainText">Best Regards,<br>
Jialin Liu, Ph.D student.<br>
Computer Science Department<br>
Texas Tech University<br>
Phone: 806.742.3513(x241)<br>
Office:Engineer Center 304<br>
http://myweb.ttu.edu/jialliu/</div>
</font></div>
</div>
<div style="font-family: Times New Roman; color: #000000; font-size: 16px">
<hr tabindex="-1">
<div id="divRpF978186" style="direction: ltr; "><font face="Tahoma" size="2" color="#000000"><b>From:</b> parallel-netcdf-bounces@lists.mcs.anl.gov [parallel-netcdf-bounces@lists.mcs.anl.gov] on behalf of Liu, Jaln [jaln.liu@ttu.edu]<br>
<b>Sent:</b> Saturday, September 22, 2012 4:20 AM<br>
<b>To:</b> parallel-netcdf@mcs.anl.gov<br>
<b>Subject:</b> program not scalable<br>
</font><br>
</div>
<div></div>
<div>
<div style="direction:ltr; font-family:Tahoma; color:#000000; font-size:10pt">Hi,
<div><br>
</div>
<div>I use the PnetCDF to read a 4D dataset, the size is around 4G. I found the program is not scalable no matter how I distribute the data.</div>
<div>e.g., I parallelize the program along the time dimension(which is the outer loop/the slowest dimension). The read time is the slowest when only one core is used. The data are striped on multiple storage nodes.</div>
<div><br>
</div>
<div>Can anybody help me with that? thanks in advance.</div>
<div><br>
<div><br>
<div class="BodyFragment"><font size="2">
<div class="PlainText">Best Regards,<br>
Jialin Liu, Ph.D student.<br>
Computer Science Department<br>
Texas Tech University<br>
Phone: 806.742.3513(x241)<br>
Office:Engineer Center 304<br>
http://myweb.ttu.edu/jialliu/</div>
</font></div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</body>
</html>