\relax \newlabel{cor}{{\hbox {$\ast $}\relax }{1}} \newlabel{crew}{{1 }{1}} \newlabel{umbc}{{a}{1}} \newlabel{nasa}{{b}{1}} \newlabel{cola}{{c}{1}} \global\@namedef{n@author@}{9} \global\@namedef{n@collab@}{0} \citation{sanderson} \@writefile{toc}{\contentsline {section}{\numberline {1}Introduction}{2}} \citation{clm} \citation{lis2} \citation{kumar} \@writefile{lof}{\contentsline {figure}{\numberline {1}{\ignorespaces Overview of LIS architecture. The central component of LIS is the LIS core, which controls the execution of the land surface models (CLM, Noah and VIC), defines the parallelization scheme, and manages data input/output. Input data are retrieved from various data repositories on the Internet (left), saved on the local storage system, and reformatted. Then the input data are served by GrADS-DODS (GDS) servers to LIS on-demand. LIS output data are also staged on GDS servers to serve users via a web-interface. LIS core and LSMs run on the LIS Beowulf cluster by a job control system for scalable parallel computing. }}{5}} \newlabel{overview}{{1}{5}} \@writefile{toc}{\contentsline {section}{\numberline {2}LIS Architecture Overview}{5}} \citation{esmf} \@writefile{toc}{\contentsline {section}{\numberline {3}LIS Beowulf Cluster}{7}} \newlabel{sec:cluster}{{3}{7}} \citation{mpich} \@writefile{lof}{\contentsline {figure}{\numberline {2}{\ignorespaces Physical architecture and network layout of the LIS Linux cluster. The 8 I/O nodes' hostnames are X1, X2, ..., X8, respectively, while each compute node is named A1, A2, ..., A24; B1, B2, ..., B24; ..., H1, H2, ..., H24, depending on which of the 8 sub-clusters it belongs.}}{9}} \newlabel{cluster}{{2}{9}} \citation{hofstee} \@writefile{toc}{\contentsline {section}{\numberline {4}Job Partition and LIS Job Management System}{10}} \newlabel{sec:farmer}{{4}{10}} \@writefile{lof}{\contentsline {figure}{\numberline {3}{\ignorespaces Job partition of the global land surface for 1-km simulation. The global domain has 540$\times $10$^6$ (36000 $\times $ 15000) grid points in total, which are partitioned into 2500 (50 $\times $ 50) blocks, with each block containing 216,000 (720 $\times $ 300) grid points. Those blocks that contain all ocean grid points are discarded, leaving a total of 1183 land blocks (green boxes). Each individual block ({\it e.g.}, the insert box) can be computed independently. }}{11}} \newlabel{par-ca}{{3}{11}} \@writefile{lof}{\contentsline {figure}{\numberline {4}{\ignorespaces Task-pool-based parallelization scheme in LIS. Left panel shows the logic of the master node. Right panel shows the movement of jobs in the three pools: bones, munching and done. Each job in the ``munching" pool is timed so when a job is timed out (red block), it will be put back to the ``bones" pool for other nodes to handle. Time-out happens only when a compute node crashes. On the other hand, code crashes will be detected and handled immediately.}}{14}} \newlabel{farmer}{{4}{14}} \@writefile{toc}{\contentsline {section}{\numberline {5}Parallel I/O and Distributed Data Storage}{14}} \newlabel{sec:io}{{5}{14}} \@writefile{lof}{\contentsline {figure}{\numberline {5}{\ignorespaces Normalized timing (left y-axis) and simulation throughput (right y-axis) for LIS with one of the LSMs, CLM, and the two base forcing settings, GEOS and GDAS. Five (5) GDS servers (see Section\nobreakspace {}5\hbox {}) were used. The maximum number of compute nodes used for CLM/GEOS is 152, and for CLM/GDAS 164.}}{15}} \newlabel{fig:clm}{{5}{15}} \@writefile{lof}{\contentsline {figure}{\numberline {6}{\ignorespaces The architecture of the GrADS-DODS (GDS) server. GDS uses Java Servlets to receive and interpret clients' data requests based on the HTTP-based DODS protocol. The client data requests are translated into DODS server API calls, which in turn, will invoke GrADS in batch mode. GrADS will perform the disk I/O to locate and retrieve the datasets with necessary subsetting and reformatting operations. GDS sends the retrieved data to the DODS client following the DODS protocol. }}{15}} \newlabel{GDS}{{6}{15}} \@writefile{lof}{\contentsline {figure}{\numberline {7}{\ignorespaces Parallel I/O and distributed storage design for LIS. Input data are fed to the cluster by an array of parallel GDS servers (left). The compute nodes write their output data directly on their local disks. A modified GDS (right) can serve the output data from the compute nodes' disks, eliminating the need of data aggregation onto I/O nodes. }}{18}} \newlabel{para-io}{{7}{18}} \citation{pvfs} \@writefile{toc}{\contentsline {section}{\numberline {6}Data Replication with Peer-to-Peer Technology}{19}} \newlabel{sec:p2p}{{6}{19}} \@writefile{lof}{\contentsline {figure}{\numberline {8}{\ignorespaces A: Performance improvement with parallel GDS servers for input data serving, as shown in Fig.\nobreakspace {}7\hbox {}. Normalized timing (left y-axis) and simulation throughput (right y-axis) are shown functions of the number of GDS servers used, for LIS with Noah model, GEOS base forcing and with 128 and 180 compute nodes, respectively. Two (2) to 6 GDS servers were used, with a dynamic load balancing mechanism. B: Performance improvement for retrieving LIS output data from the parallel cluster-based storage implementation shown in Fig.\nobreakspace {}7\hbox {} (left bar), compared with the same retrieval but from local disk storage on an I/O node (right bar). }}{20}} \newlabel{gds}{{8}{20}} \@writefile{lof}{\contentsline {figure}{\numberline {9}{\ignorespaces Comparison of conventional NFS-based and P2P-based data replication performance, measured by the maximum time needed to copy a test file to different numbers of compute nodes. The test file contains 2GB random data. All the nodes were inter-connected with fast Ethernet links. }}{22}} \newlabel{p2p}{{9}{22}} \@writefile{toc}{\contentsline {section}{\numberline {7}Summary}{22}} \newlabel{sec:summary}{{7}{22}} \bibstyle{elsart-harv.bst} \bibdata{refs} \bibcite{pvfs}{{1}{2000}{{Carns et~al.}}{{Carns, III, Ross, and Thakur}}} \bibcite{clm}{{2}{2003}{{Dai et~al.}}{{Dai, Zeng, Dickinson, Baker, Bonan, and Bosilovich}}} \bibcite{mpich}{{3}{1996}{{Gropp et~al.}}{{Gropp, Lusk, Doss, and Skjellum}}} \bibcite{esmf}{{4}{2004}{{Hill et~al.}}{{Hill, Deluca, Balaj, M.Suarez, and da~Silva}}} \bibcite{hofstee}{{5}{1991}{{Hofstee et~al.}}{{Hofstee, Likkien, and Snepscheut}}} \bibcite{kumar}{{6}{2005}{{Kumar et~al.}}{{Kumar, Peters-Lidard, Tian, Houser, Geiger, Olden, Lighty, Eastman, Doty, Dirmeyer, Adams, Mitchell, Wood, and Sheffield}}} \bibcite{lis2}{{7}{2004}{{Peters-Lidard et~al.}}{{Peters-Lidard, Kumar, Tian, Eastman, and Houser}}} \bibcite{sanderson}{{8}{2002}{{Sanderson et~al.}}{{Sanderson, Jaiteh, Levy, Redford, Wannebo, and Woolmer}}} \global\c@lastpage=25