[cig-commits] r13295 - short/3D/PyLith/trunk/doc
knepley at geodynamics.org
knepley at geodynamics.org
Tue Nov 11 17:07:56 PST 2008
Author: knepley
Date: 2008-11-11 17:07:56 -0800 (Tue, 11 Nov 2008)
New Revision: 13295
Added:
short/3D/PyLith/trunk/doc/memoryUsage.tex
Log:
Added small writeup
Added: short/3D/PyLith/trunk/doc/memoryUsage.tex
===================================================================
--- short/3D/PyLith/trunk/doc/memoryUsage.tex (rev 0)
+++ short/3D/PyLith/trunk/doc/memoryUsage.tex 2008-11-12 01:07:56 UTC (rev 13295)
@@ -0,0 +1,44 @@
+\section{Mesh Memory}
+
+ The \code{ISieve} maintains arrays for both cones and supports, and also for cone orientations.
+$$
+ 2 (K C + V+C) + K C
+$$
+where $K$ is the number of vertices per cell, $C$ is the number of cells, and $V$ is the number of vertices. We also
+store coordinates, which takes
+$$
+ D V
+$$
+
+ Stratification uses a \code{Sieve} as a label to associate depths and heights with sieve points. There is an arrow
+for each mesh point for both height and depth. Thus we get
+$$
+ 2 A (V + C)
+$$
+where $A$ is the size of an arrow in bytes. Materials are also stored this way, but in PyLith are mapped only to cells.
+
+ For an IGeneralSection, the data take up only the minimum size. The atlas is an IUniformSection so that the data
+take up $2 max(V, C)$ integers, and its atlas is an IConstantSection. Thus, for a group we expect
+$$
+ 2 max(V, C) + max(V, C)
+$$
+
+\subsection{Savings}
+
+\begin{itemize}
+ \item We could eliminate the redundant classification of height since we can always use depth in its place.
+
+ \item Groups could be IUniformSections since they have only 1 value per point.
+\end{itemize}
+
+\subsection{Strike-slip Benchmark}
+ For the 1000m benchmark, we have
+\begin{itemize}
+ \item $D = 3$
+ \item $K = 4$
+ \item $C = 13824$
+ \item $V = 15625$
+ \item $A = 40$
+ \item $G = 6$
+\end{itemize}
+so we get 1,274,144 bytes for the mesh, 2,355,920 for stratification, 552,960 for materials, and 1,500,000 for groups.
\ No newline at end of file
More information about the CIG-COMMITS
mailing list