[cig-commits] r5454 - mc/3D/CitcomS/trunk/doc/manual

tan2 at geodynamics.org tan2 at geodynamics.org
Mon Dec 4 23:09:01 PST 2006


Author: tan2
Date: 2006-12-04 23:09:01 -0800 (Mon, 04 Dec 2006)
New Revision: 5454

Modified:
   mc/3D/CitcomS/trunk/doc/manual/citcoms.lyx
Log:
Updated Chapter 4

Modified: mc/3D/CitcomS/trunk/doc/manual/citcoms.lyx
===================================================================
--- mc/3D/CitcomS/trunk/doc/manual/citcoms.lyx	2006-12-05 06:17:15 UTC (rev 5453)
+++ mc/3D/CitcomS/trunk/doc/manual/citcoms.lyx	2006-12-05 07:09:01 UTC (rev 5454)
@@ -4443,15 +4443,11 @@
 \end_inset
 
 ).
+ The CitComS.py 2.1 release solves this problem for parallel file systems
+ by assembling a binary HDF5 file in parallel I/O mode.
  
 \end_layout
 
-\begin_layout Standard
-The CitComS.py 2.1 release solves this problem for parallel file systems by
- assembling a binary HDF5 file in parallel I/O mode.
- 
-\end_layout
-
 \begin_layout Section
 About HDF5
 \end_layout
@@ -4531,6 +4527,251 @@
 \end_layout
 
 \begin_layout Section
+Input Parameters
+\end_layout
+
+\begin_layout Standard
+To enable HDF5 output in CitComS, all you need to do is include the following
+ section in your 
+\family typewriter
+.cfg
+\family default
+ input file.
+\end_layout
+
+\begin_layout LyX-Code
+
+\family typewriter
+[CitcomS.solver.output]
+\end_layout
+
+\begin_layout LyX-Code
+
+\family typewriter
+output_format = hdf5
+\end_layout
+
+\begin_layout Standard
+Alternatively, you can specify the option 
+\family typewriter
+--solver.output.output_format=hdf5
+\family default
+ on the command line.
+ The resulting filenames will start with the value of your specified 
+\family typewriter
+datafile
+\family default
+ input parameter and end with 
+\family typewriter
+.h5
+\family default
+.
+\end_layout
+
+\begin_layout Subsection
+Optimizing Parallel I/O
+\end_layout
+
+\begin_layout Standard
+There are several platform-dependent parameters used by the HDF5 library
+ and the underlying MPI-IO routines to optimize the performance of parallel
+ I/O.
+ The optimal values for these parameters may vary from file system to file
+ system.
+ Ideally, before compiling CitComS, the build procedure would configure
+ these parameters based on your platform.
+ 
+\end_layout
+
+\begin_layout Standard
+In order to facilitate the process of gathering I/O performance data from
+ a variety of parallel file systems such as GPFS, PVFS, IBRIX FusionFS,
+ etc., you can specify the following parameters in the CitComS input file.
+ You may use these parameters to tune the performance of the parallel I/O
+ on your system, although in future versions of CitComS this step will become
+ unnecessary for supported file systems.
+\end_layout
+
+\begin_layout Standard
+All values are assumed to be specified in bytes, unless otherwise indicated.
+\end_layout
+
+\begin_layout Enumerate
+MPI file hints for collective buffering file access.
+\end_layout
+
+\begin_deeper
+\begin_layout Enumerate
+
+\family typewriter
+\size small
+cb_block_size
+\family default
+\size default
+: Target nodes will access data in chunks of this size.
+\end_layout
+
+\begin_layout Enumerate
+
+\family typewriter
+\size small
+cb_buffer_size
+\family default
+\size default
+: Specifies the total buffer space on each target node.
+ Set this parameter to a multiple of 
+\family typewriter
+\size small
+cb_block_size
+\family default
+\size default
+.
+\end_layout
+
+\end_deeper
+\begin_layout Enumerate
+HDF5 file access properties.
+\end_layout
+
+\begin_deeper
+\begin_layout Enumerate
+
+\family typewriter
+\size small
+sieve_buf_size
+\family default
+\size default
+: Maximum size of data sieve buffer.
+\end_layout
+
+\begin_layout Enumerate
+
+\family typewriter
+\size small
+output_alignment
+\family default
+\size default
+: Alignment interval size in bytes.
+\end_layout
+
+\begin_layout Enumerate
+
+\family typewriter
+\size small
+output_alignment_threshold
+\family default
+\size default
+: Allocation requests above this size will be aligned on a memory address
+ that is a multiple of 
+\family typewriter
+\size small
+output_alignment
+\family default
+\size default
+.
+\end_layout
+
+\begin_layout Enumerate
+
+\family typewriter
+\size small
+cache_rdcc_nelmts
+\family default
+\size default
+: Maximum number of chunks that can be stored in the raw data chunk cache.
+\end_layout
+
+\begin_layout Enumerate
+
+\family typewriter
+\size small
+cache_rdcc_nbytes
+\family default
+\size default
+: Size of raw data chunk cache in bytes.
+\newline
+
+\end_layout
+
+\end_deeper
+\begin_layout Standard
+For more details, you can refer to the following references: 
+\end_layout
+
+\begin_layout Itemize
+
+\series bold
+\begin_inset LatexCommand \htmlurl[MPI-2: Extensions to the Message-Passing Interface, section 9.2.8]{www-unix.mcs.anl.gov/mpi/mpi-standard/mpi-report-2.0/node182.htm}
+
+\end_inset
+
+
+\series default
+ provides a list of MPI-IO reserved file hints, also available in Section
+ 7.2.8 of the MPI-2 reference book.
+\end_layout
+
+\begin_layout Itemize
+
+\series bold
+\begin_inset LatexCommand \htmlurl[HDF5 documentation]{hdf.ncsa.uiuc.edu/HDF5/doc/UG/08_TheFile.html}
+
+\end_inset
+
+
+\series default
+, Chapter 2, Section 7.3, contains a list of HDF5 file access properties.
+\end_layout
+
+\begin_layout Itemize
+
+\series bold
+\begin_inset LatexCommand \htmlurl[HDF5 User's Guide: Data Caching]{hdf.ncsa.uiuc.edu/HDF5/doc/Caching.html}
+
+\end_inset
+
+
+\series default
+ offers a short explanation of raw data chunk caching.
+\end_layout
+
+\begin_layout Standard
+You should also refer to the documentation for your particular parallel
+ file system and check if there are any other MPI or HDF5 hints that could
+ improve your parallel I/O performance.
+\end_layout
+
+\begin_layout LyX-Code
+
+\family roman
+Finally, here is an example section that would appear in a typical CitComS
+ input file:
+\family typewriter
+
+\newline
+[CitcomS.solver.output]
+\family default
+
+\newline
+cb_block_size = 1048576              # 1 MiB
+\newline
+cb_buffer_size = 4194304   
+          # 4 MiB
+\newline
+sieve_buf_size = 1048576             # 1 MiB
+\newline
+output_alignment
+ = 262144            # 256 KiB
+\newline
+output_alignment_threshold = 524288  # 512
+ KiB
+\newline
+cache_rdcc_nelmts = 521
+\newline
+cache_rdcc_nbytes = 1048576
+\end_layout
+
+\begin_layout Section
 \begin_inset LatexCommand \label{sec:Data-Layout}
 
 \end_inset
@@ -4539,42 +4780,59 @@
 \end_layout
 
 \begin_layout Standard
-Most of the output data from CitComS is specified at the nodes of a logically
+Time independent data (e.g., node coordinates, grid connectivity) are saved
+ in a file (for example, 
+\family typewriter
+test-case.h5
+\family default
+) at the first output stage.
+ Subsequently, each output stage will save time dependent data (e.g., velocity,
+ and temperature) in a separated file (for example, 
+\family typewriter
+test-case.100.h5
+\family default
+ contains data of time step 10).
+ Most of the output data from CitComS is specified at the nodes of a logically
  cartesian grid and is therefore well represented by multi-dimensional arrays.
- These data arrays consist of various parts, appearing in the following
- order: First, time-dependent arrays are addressed by a time-dimension index
- called a frame (
-\series bold
-TODO
-\series default
-: No longer true!).
- Next, a cap dimension is defined for addressing each of the CitComS caps,
- followed by three spatial indices 
+ A cap dimension is defined for addressing each of the CitComS caps, followed
+ by three spatial indices 
 \begin_inset Formula $(i,j,k)$
 \end_inset
 
- in the case of 3D data, or two spatial indices 
+ in the case of 3D data, two spatial indices 
 \begin_inset Formula $(i,j)$
 \end_inset
 
- in the case of 2D surface data.
- Finally, an additional dimension is provided for storing the components
- of vector and tensor data.
+ in the case of 2D surface data, or one spatial index 
+\begin_inset Formula $(k)$
+\end_inset
+
+ in the case of 1D radial data.
+ An additional dimension is provided for storing the components of vector
+ and tensor data.
+ These data arrays are stored in different groups.
+ Each group has a decriptive name.
+ In addition, there is an 
+\family typewriter
+/input
+\family default
+ group archiving the input parameters of the model.
+ Two sample h5 files are provided in 
+\family typewriter
+visual/samples/
+\family default
+ directory.
 \end_layout
 
 \begin_layout Standard
-\noindent
-\align center
 \begin_inset Float table
 wide false
 sideways false
 status open
 
 \begin_layout Standard
-\noindent
-\align center
 \begin_inset Tabular
-<lyxtabular version="3" rows="22" columns="2">
+<lyxtabular version="3" rows="4" columns="2">
 <features>
 <column alignment="left" valignment="top" leftline="true" width="0">
 <column alignment="left" valignment="top" leftline="true" rightline="true" width="0">
@@ -4609,7 +4867,7 @@
 \begin_layout Standard
 
 \family typewriter
-/coord
+/input
 \end_layout
 
 \end_inset
@@ -4620,7 +4878,7 @@
 \begin_layout Standard
 
 \family typewriter
-(caps, nodex, nodey, nodez, 3)
+N/A
 \end_layout
 
 \end_inset
@@ -4633,7 +4891,7 @@
 \begin_layout Standard
 
 \family typewriter
-/connectivity
+/coord
 \end_layout
 
 \end_inset
@@ -4644,18 +4902,20 @@
 \begin_layout Standard
 
 \family typewriter
-(cap_elements, 8)
+(caps, nodex, nodey, nodez, 3)
 \end_layout
 
 \end_inset
 </cell>
 </row>
-<row topline="true">
+<row topline="true" bottomline="true">
 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
 \begin_inset Text
 
 \begin_layout Standard
 
+\family typewriter
+/connectivity
 \end_layout
 
 \end_inset
@@ -4665,43 +4925,49 @@
 
 \begin_layout Standard
 
+\family typewriter
+(cap_elements, 8)
 \end_layout
 
 \end_inset
 </cell>
 </row>
-<row topline="true">
-<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
-\begin_inset Text
+</lyxtabular>
 
-\begin_layout Standard
+\end_inset
 
-\family typewriter
-/velocity
+
 \end_layout
 
+\begin_layout Caption
+Layout of the time-independent data file
+\end_layout
+
 \end_inset
-</cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
 
-\begin_layout Standard
 
-\family typewriter
-(frames, caps, nodex, nodey, nodez, 3)
 \end_layout
 
-\end_inset
-</cell>
-</row>
-<row topline="true">
+\begin_layout Standard
+\begin_inset Float table
+wide false
+sideways false
+status open
+
+\begin_layout Standard
+\begin_inset Tabular
+<lyxtabular version="3" rows="16" columns="2">
+<features>
+<column alignment="left" valignment="top" leftline="true" width="0">
+<column alignment="left" valignment="top" leftline="true" rightline="true" width="0">
+<row topline="true" bottomline="true">
 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
 \begin_inset Text
 
 \begin_layout Standard
 
-\family typewriter
-/temperature
+\series bold
+Dataset
 \end_layout
 
 \end_inset
@@ -4711,8 +4977,8 @@
 
 \begin_layout Standard
 
-\family typewriter
-(frames, caps, nodex, nodey, nodez)
+\series bold
+Shape
 \end_layout
 
 \end_inset
@@ -4725,7 +4991,7 @@
 \begin_layout Standard
 
 \family typewriter
-/viscosity
+/velocity
 \end_layout
 
 \end_inset
@@ -4736,7 +5002,7 @@
 \begin_layout Standard
 
 \family typewriter
-(frames, caps, nodex, nodey, nodez)
+(caps, nodex, nodey, nodez, 3)
 \end_layout
 
 \end_inset
@@ -4749,18 +5015,18 @@
 \begin_layout Standard
 
 \family typewriter
-/pressure
+/temperature
 \end_layout
 
 \end_inset
 </cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
 \begin_inset Text
 
 \begin_layout Standard
 
 \family typewriter
-(frames, caps, nodex, nodey, nodez)
+(caps, nodex, nodey, nodez)
 \end_layout
 
 \end_inset
@@ -4773,18 +5039,18 @@
 \begin_layout Standard
 
 \family typewriter
-/stress
+/viscosity
 \end_layout
 
 \end_inset
 </cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
 \begin_inset Text
 
 \begin_layout Standard
 
 \family typewriter
-(frames, caps, nodex, nodey, nodez, 6)
+(caps, nodex, nodey, nodez)
 \end_layout
 
 \end_inset
@@ -4796,15 +5062,19 @@
 
 \begin_layout Standard
 
+\family typewriter
+/pressure
 \end_layout
 
 \end_inset
 </cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
 \begin_inset Text
 
 \begin_layout Standard
 
+\family typewriter
+(caps, nodex, nodey, nodez)
 \end_layout
 
 \end_inset
@@ -4817,18 +5087,18 @@
 \begin_layout Standard
 
 \family typewriter
-/surf/velocity
+/stress
 \end_layout
 
 \end_inset
 </cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
 \begin_inset Text
 
 \begin_layout Standard
 
 \family typewriter
-(frames, caps, nodex, nodey, 2)
+(caps, nodex, nodey, nodez, 6)
 \end_layout
 
 \end_inset
@@ -4841,18 +5111,25 @@
 \begin_layout Standard
 
 \family typewriter
-/surf/heatflux
+/geoid
 \end_layout
 
 \end_inset
 </cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
 \begin_inset Text
 
 \begin_layout Standard
 
 \family typewriter
-(frames, caps, nodex, nodey)
+(8)
+\family default
+ See Section 
+\begin_inset LatexCommand \vref{sub:Geoid-Output-(test-case.geoid.10)}
+
+\end_inset
+
+ for details
 \end_layout
 
 \end_inset
@@ -4865,18 +5142,18 @@
 \begin_layout Standard
 
 \family typewriter
-/surf/topography
+/surf/velocity
 \end_layout
 
 \end_inset
 </cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
 \begin_inset Text
 
 \begin_layout Standard
 
 \family typewriter
-(frames, caps, nodex, nodey)
+(caps, nodex, nodey, 2)
 \end_layout
 
 \end_inset
@@ -4888,15 +5165,19 @@
 
 \begin_layout Standard
 
+\family typewriter
+/surf/heatflux
 \end_layout
 
 \end_inset
 </cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
 \begin_inset Text
 
 \begin_layout Standard
 
+\family typewriter
+(caps, nodex, nodey)
 \end_layout
 
 \end_inset
@@ -4909,18 +5190,18 @@
 \begin_layout Standard
 
 \family typewriter
-/botm/velocity
+/surf/topography
 \end_layout
 
 \end_inset
 </cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
 \begin_inset Text
 
 \begin_layout Standard
 
 \family typewriter
-(frames, caps, nodex, nodey, 2)
+(caps, nodex, nodey)
 \end_layout
 
 \end_inset
@@ -4933,18 +5214,18 @@
 \begin_layout Standard
 
 \family typewriter
-/botm/heatflux
+/botm/velocity
 \end_layout
 
 \end_inset
 </cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
 \begin_inset Text
 
 \begin_layout Standard
 
 \family typewriter
-(frames, caps, nodex, nodey)
+(caps, nodex, nodey, 2)
 \end_layout
 
 \end_inset
@@ -4957,18 +5238,18 @@
 \begin_layout Standard
 
 \family typewriter
-/botm/topography
+/botm/heatflux
 \end_layout
 
 \end_inset
 </cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
 \begin_inset Text
 
 \begin_layout Standard
 
 \family typewriter
-(frames, caps, nodex, nodey)
+(caps, nodex, nodey)
 \end_layout
 
 \end_inset
@@ -4980,6 +5261,8 @@
 
 \begin_layout Standard
 
+\family typewriter
+/botm/topography
 \end_layout
 
 \end_inset
@@ -4989,6 +5272,8 @@
 
 \begin_layout Standard
 
+\family typewriter
+(caps, nodex, nodey)
 \end_layout
 
 \end_inset
@@ -5006,7 +5291,7 @@
 
 \end_inset
 </cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
 \begin_inset Text
 
 \begin_layout Standard
@@ -5030,7 +5315,7 @@
 
 \end_inset
 </cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
 \begin_inset Text
 
 \begin_layout Standard
@@ -5042,7 +5327,7 @@
 \end_inset
 </cell>
 </row>
-<row topline="true">
+<row topline="true" bottomline="true">
 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
 \begin_inset Text
 
@@ -5066,31 +5351,15 @@
 \end_inset
 </cell>
 </row>
-<row topline="true" bottomline="true">
-<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
-\begin_inset Text
+</lyxtabular>
 
-\begin_layout Standard
-
-\end_layout
-
 \end_inset
-</cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
 
-\begin_layout Standard
 
 \end_layout
 
-\end_inset
-</cell>
-</row>
-</lyxtabular>
-
-\end_inset
-
-
+\begin_layout Caption
+Layout of the time-dependent data file
 \end_layout
 
 \end_inset
@@ -5099,306 +5368,66 @@
 \end_layout
 
 \begin_layout Section
-Input Parameters
+Accessing Data
 \end_layout
 
 \begin_layout Standard
-To enable HDF5 output in CitComS, all you need to do is include the following
- section in your 
-\family typewriter
-.cfg
-\family default
- input file.
+As previously indicated, HDF5 is a self-describing binary file format.
+ As such we can use a variety of tools to inspect the structure of an HDF5
+ file, as well as for retrieving data in any order.
+ 
 \end_layout
 
-\begin_layout LyX-Code
-
-\family typewriter
-[CitcomS.solver.output]
-\end_layout
-
-\begin_layout LyX-Code
-
-\family typewriter
-output_format = hdf5
-\end_layout
-
-\begin_layout Standard
-Alternatively, you can specify the option 
-\family typewriter
---solver.output.output_format=hdf5
-\family default
- on the command line.
- The resulting filename will simply consist of 
-\family typewriter
-.h5
-\family default
- appended to the value of your specified 
-\family typewriter
-datafile
-\family default
- input parameter.
-\end_layout
-
 \begin_layout Subsection
-Optimizing Parallel I/O
+Inspecting Structures
 \end_layout
 
 \begin_layout Standard
-There are several platform-dependent parameters used by the HDF5 library
- and the underlying MPI-IO routines to optimize the performance of parallel
- I/O.
- The optimal values for these parameters may vary from file system to file
- system.
- Ideally, before compiling CitComS, the build procedure would configure
- these parameters based on your platform.
+To quickly inspect the structure of an HDF5 file, you can use the command
  
-\end_layout
-
-\begin_layout Standard
-In order to facilitate the process of gathering I/O performance data from
- a variety of parallel file systems such as GPFS, PVFS, IBRIX FusionFS,
- etc., you can specify the following parameters in the CitComS input file.
- You may use these parameters to tune the performance of the parallel I/O
- on your system, although in future versions of CitComS this step will become
- unnecessary for supported file systems.
-\end_layout
-
-\begin_layout Standard
-All values are assumed to be specified in bytes, unless otherwise indicated.
-\end_layout
-
-\begin_layout Enumerate
-MPI file hints for collective buffering file access.
-\end_layout
-
-\begin_deeper
-\begin_layout Enumerate
-
 \family typewriter
-\size small
-cb_block_size
+h5ls
 \family default
-\size default
-: Target nodes will access data in chunks of this size.
+ which is included with the HDF5 software:
 \end_layout
 
-\begin_layout Enumerate
-
-\family typewriter
-\size small
-cb_buffer_size
-\family default
-\size default
-: Specifies the total buffer space on each target node.
- Set this parameter to a multiple of 
-\family typewriter
-\size small
-cb_block_size
-\family default
-\size default
-.
+\begin_layout LyX-Code
+$ h5ls -r file.h5
 \end_layout
 
-\end_deeper
-\begin_layout Enumerate
-HDF5 file access properties.
+\begin_layout Subsection
+Converting to ASCII Files
 \end_layout
 
-\begin_deeper
-\begin_layout Enumerate
-
-\family typewriter
-\size small
-sieve_buf_size
-\family default
-\size default
-: Maximum size of data sieve buffer.
-\end_layout
-
-\begin_layout Enumerate
-
-\family typewriter
-\size small
-output_alignment
-\family default
-\size default
-: Alignment interval size in bytes.
-\end_layout
-
-\begin_layout Enumerate
-
-\family typewriter
-\size small
-output_alignment_threshold
-\family default
-\size default
-: Allocation requests above this size will be aligned on a memory address
- that is a multiple of 
-\family typewriter
-\size small
-output_alignment
-\family default
-\size default
-.
-\end_layout
-
-\begin_layout Enumerate
-
-\family typewriter
-\size small
-cache_rdcc_nelmts
-\family default
-\size default
-: Maximum number of chunks that can be stored in the raw data chunk cache.
-\end_layout
-
-\begin_layout Enumerate
-
-\family typewriter
-\size small
-cache_rdcc_nbytes
-\family default
-\size default
-: Size of raw data chunk cache in bytes.
-\newline
-
-\end_layout
-
-\end_deeper
 \begin_layout Standard
-For more details, you can refer to the following references: 
-\end_layout
+You can convert the HDF5 files to the ASCII combined capfiles described
+ in 
+\begin_inset LatexCommand \ref{sec:ASCII-Output}
 
-\begin_layout Itemize
-
-\series bold
-\begin_inset LatexCommand \htmlurl[MPI-2: Extensions to the Message-Passing Interface, section 9.2.8]{www-unix.mcs.anl.gov/mpi/mpi-standard/mpi-report-2.0/node182.htm}
-
 \end_inset
 
-
-\series default
- provides a list of MPI-IO reserved file hints, also available in Section
- 7.2.8 of the MPI-2 reference book.
+ for specific time steps by using the command included in CitComS:
 \end_layout
 
-\begin_layout Itemize
-
-\series bold
-\begin_inset LatexCommand \htmlurl[HDF5 documentation]{hdf.ncsa.uiuc.edu/HDF5/doc/UG/08_TheFile.html}
-
-\end_inset
-
-
-\series default
-, Chapter 2, Section 7.3, contains a list of HDF5 file access properties.
-\end_layout
-
-\begin_layout Itemize
-
-\series bold
-\begin_inset LatexCommand \htmlurl[HDF5 User's Guide: Data Caching]{hdf.ncsa.uiuc.edu/HDF5/doc/Caching.html}
-
-\end_inset
-
-
-\series default
- offers a short explanation of raw data chunk caching.
-\end_layout
-
-\begin_layout Standard
-You should also refer to the documentation for your particular parallel
- file system and check if there are any other MPI or HDF5 hints that could
- improve your parallel I/O performance.
-\end_layout
-
 \begin_layout LyX-Code
-
+$ h5tocap modelname step1 [step2 [...] ]
 \end_layout
 
-\begin_deeper
 \begin_layout Standard
+You can also convert the HDF5 files to the velo files described in 
+\begin_inset LatexCommand \vref{sub:Velocity-and-Temperature}
 
-\family roman
-Finally, here is an example section that would appear in a typical CitComS
- input file:
-\end_layout
-
-\begin_layout LyX-Code
-
-\family typewriter
-[CitcomS.solver.output]
-\end_layout
-
-\begin_layout LyX-Code
-cb_block_size=1048576              # 1 MiB
-\end_layout
-
-\begin_layout LyX-Code
-cb_buffer_size=4194304             # 4 MiB
-\end_layout
-
-\begin_layout LyX-Code
-sieve_buf_size=1048576             # 1 MiB
-\end_layout
-
-\begin_layout LyX-Code
-output_alignment=262144            # 256 KiB
-\end_layout
-
-\begin_layout LyX-Code
-output_alignment_threshold=524288  # 512 KiB
-\end_layout
-
-\begin_layout LyX-Code
-cache_rdcc_nelmts=521
-\end_layout
-
-\begin_layout LyX-Code
-cache_rdcc_nbytes=1048576
-\end_layout
-
-\end_deeper
-\begin_layout LyX-Code
-
-\end_layout
-
-\begin_layout Section
-Accessing Data
-\end_layout
-
-\begin_layout Standard
-As previously indicated, HDF5 is a self-describing binary file format.
- As such we can use a variety of tools to inspect the structure of an HDF5
- file, as well as for retrieving data in any order.
- To quickly inspect the structure of an HDF5 file, you can use the command
- 
-\family typewriter
-h5ls
-\family default
- which is included with the HDF5 software:
-\end_layout
-
-\begin_layout LyX-Code
-$ h5ls -r file.h5
-\end_layout
-
-\begin_layout Standard
-You can also recreate the ASCII combined cap format described in 
-\begin_inset LatexCommand \ref{sec:ASCII-Output}
-
 \end_inset
 
- for specific time steps by using the command included in CitComS:
+ for restart purpose by using the command included in CitComS:
 \end_layout
 
 \begin_layout LyX-Code
-$ h5tocap file.h5 [frame1 [frame2 [...]]]
+$ h5tovelo modelname step
 \end_layout
 
 \begin_layout Subsection
-Python
+Accessing Data in Python
 \end_layout
 
 \begin_layout Standard
@@ -5408,15 +5437,15 @@
 \family default
  provides a good example for using the PyTables extension module to access
  the data contained in the CitComS HDF5 files.
- In PyTables, datasets can be retrieved from disk as NumPy arrays through
- an array interface that avoids unnecessary copying of data by using hyperslabs,
- and which takes advantage of Python's powerful array slice-indexing.
+ In PyTables, datasets can be retrieved from disk as NumPy arrays.
+ The retrieval can avoids unnecessary copying of data by using hyperslabs,
+ which takes advantage of Python's powerful array slice-indexing.
 \end_layout
 
 \begin_layout Standard
 For example, obtaining the node coordinates, temperature, and topography
  values over the entire surface of the sphere for time step 
-\begin_inset Formula $1000$
+\begin_inset Formula $100$
 \end_inset
 
  can be done easily with the following code snippet:
@@ -5431,7 +5460,7 @@
 \end_layout
 
 \begin_layout LyX-Code
-h5file = tables.openFile('my_example.h5', 'r')
+h5file = tables.openFile('samples/cookbook1.h5', 'r')
 \end_layout
 
 \begin_layout LyX-Code
@@ -5443,15 +5472,15 @@
 \end_layout
 
 \begin_layout LyX-Code
-data1000 = tables.openFile('my_example.1000.h5', 'r')
+data100 = tables.openFile('samples/cookbook1.100.h5', 'r')
 \end_layout
 
 \begin_layout LyX-Code
-surface_temperature = data1000.root.temperature[0:12,:,:,-1]
+surface_temperature = data100.root.temperature[0:12,:,:,-1]
 \end_layout
 
 \begin_layout LyX-Code
-surface_topography = data1000.root.surf.topography[0:12,:,:]
+surface_topography = data100.root.surf.topography[0:12,:,:]
 \end_layout
 
 \begin_layout Standard
@@ -5533,7 +5562,11 @@
 \end_inset
 
 .
- Scripts using GMT commands to plot 2D cross sections of temperature field
+ (
+\series bold
+TODO: MayaVi Scripts
+\series default
+) Scripts using GMT commands to plot 2D cross sections of temperature field
  are also provided.
  
 \end_layout
@@ -5704,9 +5737,16 @@
 \end_layout
 
 \begin_layout Standard
-If your Beowulf cluster uses ssh (rather than rsh) to access the computation
- nodes, you must manually edit 
+If your Beowulf cluster uses 
 \family typewriter
+ssh
+\family default
+ (rather than 
+\family typewriter
+rsh
+\family default
+) to access the computation nodes, you must manually edit 
+\family typewriter
 batchpaste.sh
 \family default
  and replace 'rsh' with 'ssh' in the script.
@@ -15500,6 +15540,10 @@
 \end_layout
 
 \begin_layout Subsection
+\begin_inset LatexCommand \label{sub:Geoid-Output-(test-case.geoid.10)}
+
+\end_inset
+
 Geoid Output (test-case.geoid.10)
 \end_layout
 



More information about the cig-commits mailing list