User: rhaas Date: 2013/07/26 01:31 AM
Removed: /cactus_intro/ cactus_intro.tex, recompile
Log: remove unused cactus_intro
File Changes:
Directory: /cactus_intro/ =========================
File [removed]: cactus_intro.tex Delta lines: +0 -374 =================================================================== --- cactus_intro/cactus_intro.tex 2013-07-26 06:14:59 UTC (rev 9) +++ cactus_intro/cactus_intro.tex 2013-07-26 06:31:27 UTC (rev 10) @@ -1,374 +0,0 @@ -\input{../preamble} -\usepackage{ragged2e} -\usecolortheme[RGB={200,200,200}]{structure} - -\begin{document} - - \frame { \frametitle{What is Cactus?} - Cactus is - \begin{itemize}[<+->] - \item \textcolor{black}{a \hyperlink{framework}{framework} for developing portable, modular applications} - \item \textcolor{black}{focusing, although not exclusively, on high-performance - simulation codes} - \item \textcolor{black}{designed to allow experts in different fields to develop - modules based upon their experience and to use modules - developed by experts in other fields with minimal knowledge - of the internals or operation of the other modules} - \end{itemize} } - - \frame { \frametitle{Cactus Goals} - \begin{itemize} - \item<1-> Portable - \begin{itemize} - \item Different development machines - \item Different production machines - \end{itemize} - \item<2-> Modular - \begin{itemize} - \item Standard interfaces for module interaction for easier - code interaction, writing and debugging - \item Interchangeable modules with same functionality - \end{itemize} - \item<3-> Easy to use - \begin{itemize} - \item Good documentation - \item Try to let users program the way they are used to - \item Support all major (HPC) programming languages - \end {itemize} - \end{itemize} } - - \frame { \frametitle{Philosophy} - \begin{center} - \begin{figure}[h] - \includegraphics[width=30mm]{Opensource} - \end{figure} - \end{center} - \begin{itemize}[<+->] - \item Open code base to encourage community contributions - \item Strict quality control for base framework - \item Development always driven by real user requirements - \item Support and develop for a wide range of application domains - \end{itemize} } - - \frame { \frametitle{What is Cactus for?} - Assume: - \begin{itemize} - \item Computational problem - \item Too large for single machine - \begin{itemize} - \item<2-> \only<5->{\textcolor{cactusgreen}}{OpenMP} - \item<2-> \only<5->{\textcolor{cactusgreen}}{MPI} - \end{itemize} - \item Distributed development - \begin{itemize} - \item<3-> \only<5->{\textcolor{cactusgreen}}{Modularize Problem} - \item<3-> \only<5->{\textcolor{cactusgreen}}{Versioning system(s)} - \end{itemize} - \item Multiple programming languages - \begin{itemize} - \item<4-> \only<5->{\textcolor{cactusgreen}}{Modularize Problem} - \item<4-> \only<5->{\textcolor{cactusgreen}}{Interfaces for inter-language communication} - \end{itemize} - \end{itemize} - } - -\frame{\frametitle{Modularization Motivation} -Simulations are complex, may contain several models at once.\ -Example: Long Gamma Ray Burst: - \begin{columns}[t] - \column{.4\textwidth} - \begin{center} - \includegraphics[width=0.9\textwidth]{supernova_model} - \end{center} - \column{.5\textwidth} - \begin{itemize} - \item General Relativity (black hole) - \item Relativistic Hydrodynamics (star) - \item Microphysics, equation of state (shock wave) - \item Neutrino radiation (cooling, heating) - \item Magnetic Fields (Jet formation) - \item Photon radiation (afterglow) - \end{itemize} - - \end{columns} -} - -\frame{\frametitle{Modularization Motivation} - Added Problems: - \begin{itemize} - \item Example: Einstein Toolkit (not untypical) - \item Code 12+ years old - \item Grad students leave after 3 productive years - \item Most original authors not available anymore - \item Developers distributed over many places in several continents - \item Most physicists are not good programmers - \end{itemize} -} - -\frame{\frametitle{Component Architecture} - \begin{itemize} - \item Split program into independent components (as much as possible) - \item \textit{Framework} provides glue between these - \item Components are developed independently by small groups - \item End user assembles all code: no central control, no authorative version - \item Framework itself does no real work - \item Components don't interact directly with each other - \end{itemize} -} - -\frame { \frametitle{Cactus History} - \begin{itemize} - \item Direct descendant of many years of code development in Ed Seidel's group of - researchers at NCSA - \item 1995, Paul Walker, Joan Masso, Ed Seidel, and John Shalf: Cactus~1.0 - \item Originally for numerical relativity - \item Over the years generalized for use by scientists in other domains - \end{itemize} -} - -\frame { \frametitle{Current Users and Developers} - \centering - \includegraphics[height=7cm]{groups_map}\ -} - -\frame { \frametitle{Covers} - \hspace{0cm}\includegraphics[height=3.5cm]{covers/ACMCommunications} - \hspace{1cm}\includegraphics[height=3.5cm]{covers/FutureTechPhysCosm} - \hspace{1cm}\includegraphics[height=3.5cm]{covers/Gravity}\\vspace{-1.5cm} - \hspace{1cm}\includegraphics[height=3.5cm]{covers/max-planck-research2} - \hspace{1cm}\includegraphics[height=3.5cm]{covers/nsffy2006budgetcover} - \hspace{1cm}\includegraphics[height=3.5cm]{covers/mmcover}\\vspace{-1.5cm} - \hspace{2cm}\includegraphics[height=3.5cm]{covers/visprocessingtensor} - \hspace{1.5cm}\includegraphics[height=3.5cm]{covers/PetascaleComputingBook} - \hspace{1cm}\includegraphics[height=3.5cm]{covers/NR689} -} - -\frame { \frametitle{Cactus Funding} - \begin{itemize} - \item Organizations: - \begin{itemize} - \item Max-Planck-Gesellschaft - \item Center for Computation & Technology at LSU - \item National Center for Supercomputing Applications - \item Lawrence Berkeley National Laboratory - \item Washington University - \item University of Tübingen - \end{itemize} - \item Grants: - \begin{itemize} - \item NSF (PHY-9979985, 0540374, 0653303, 0701491, 0701566, - PIF-0904015, 0903973, 0903782) - \item Europ. Commission (HPRN-CT-2000-00137, IST-2001-32133) - \item DFN-Verein (TK 6-2-AN 200) - \item DFG (TiKSL) - \item ONR (COMI) - \item DOE/BOR (OE DE-FG02-04ER46136, BOR DOE/LEQSF) - \end{itemize} - \end{itemize} -} - -% Copied from web site -\begin{frame} \frametitle{Cactus Awards} - \begin{tabular}{ll} - IEEE SCALE09 Challenge Winner & 2009\ - IEEE Sidney Fernback Award & 2006\ - High-Performance Bandwidth Challenge & SC2002\ - High-Performance Computing Challenge & SC2002\ - Gordon Bell Prize for Supercomputing & SC2001\ - HPC ``Most Stellar'' Challenge Award & SC1998\ - Heinz Billing Prize for Scientific Computing & 1998 - \end{tabular} -\end{frame} - -\begin{frame} \frametitle{The Flesh} - \begin{itemize} - \item The \textbf{flesh} is the central component of Cactus. It interfaces - with modular components called \textbf{thorns}. The flesh provides: - \begin{columns}[t] - \column{.6\textwidth} - \begin{itemize} - \item Variables & Data Types - \item Parameters - \item Functions for: - \begin{itemize} - \item Parallelisation - \item Input/Output - \item Coordinates - \item Reduction - \item Interpolation - \item Information - \end{itemize} - \item Staggering - \begin{itemize} - \item Indexing - \item Ghostzones - \end{itemize} - \end{itemize} - - \column{.3\textwidth} - \begin{center} - \begin{figure}[h] - \includegraphics[width=40mm]{cactusflesh} - \end{figure} - \end{center} - \end{columns} - \end{itemize} - \end{frame} - -\begin{frame} \frametitle{Thorns} - \begin{itemize} - \item Some thorns provide additional functionality, while others serve as applications. - \item Thorns are grouped into \textbf{arrangements} which supply some common functionality. - \item Example thorns: - \ \vspace{12pt} - \small - \begin{tabular}{ll} - \textit{CactusIO} & input and output operations\ - \ \textbf{CactusIOJpeg} & JPEG image data compression and writing operations\ - \textit{CactusConnect} & networking\ - \ \textbf{HTTPD} & starts the HTTP daemon for remote connections\ - \textit{PUGH} & unigrid driver + tools; reductions and interpolations\ - \ \textbf{PUGH} & unigrid driver handles grid scalars, arrays and functions\ - \end{tabular} - \end{itemize} -\end{frame} - - -% Should put more here. -\begin{frame} \frametitle{Application Toolkits} - \begin{columns}[t] - \column{.5\textwidth} - \begin{center} - \begin{figure} - \includegraphics[width=0.4\textwidth]{einstein} - \end{figure} - \end{center} - - \justifying The \textbf{Cactus Computational Toolkit} is a collection of - arrangements that provides general computational infrastructure. - - \column{.5\textwidth} - \justifying The \textbf{Einstein Toolkit} is a collection of arrangements for - computational relativity. The toolkit includes a vacuum spacetime solver - (McLachlan), a relativistic hydrodynamics solver, along with thorns for initial - data, analysis and computational infrastructure. - \begin{center} - \begin{figure} - \includegraphics[width=20mm]{cactuslogo} - \end{figure} - \end{center} - \end{columns} -\end{frame} - -\frame { \frametitle{Typical list of component tasks} - \abspic{puzzle}{0.0}{0.6}{0.4} - \begin{itemize} - \item Evolution systems - \item Boundary conditions - \item Initial conditions - \item Time stepping method - \item Finite Difference methods - \item Simulation grid (distributed arrays) - \item I/O (more on next slide) - \item Simulation domain specification - \item Termination condition - \item Twitter client - \end{itemize} -} - -\frame { \frametitle{I/O Capabilities} - Usual I/O and checkpointing in different formats: - \begin{columns}[t] - \column{.6\textwidth} - \begin{itemize} - \item Screen output - \item ASCII file output - \item HDF5 file in-/output - \item Online Jpeg rendering - \item Online VisIt visualization - \end{itemize} - - \column{.3\textwidth} - \begin{center} - \begin{figure}[h] - \includegraphics[width=40mm]{viz} - \end{figure} - \end{center} - \end{columns} -} - -\frame { \frametitle{More Capabilities: Grids, Boundaries, Symmetries} - \begin{columns}[t] - \column{.5\textwidth} - \begin{itemize} - \item Grids - \begin{itemize} - \item Only structured meshes (at the moment) - \item Unigrid (PUGH) - \item Adaptive Mesh Refinement (Carpet) - \end{itemize} - \item Boundaries / Symmetries - \begin{itemize} - \item Periodic - \item Static - \item Mirror symmetries - \item Rotational symmetries - \item Problemspecific boundaries - \end{itemize} - \end{itemize} - - - \column{.4\textwidth} - \begin{center} - \begin{figure}[h] - \includegraphics[width=45mm]{amr} - \end{figure} - \end{center} - \end{columns} -} - -\frame { \frametitle{The Cactus Computational Toolkit} - \begin{columns}[t] - \column{.3\textwidth} - \begin{center} - \begin{figure} - \includegraphics[height=40mm]{potcact} - \end{figure} - \end{center} - - - \column{.6\textwidth} - Core modules (thorns) providing many basic utilities: - \begin{itemize} - \item I/O methods - \item Boundary conditions - \item Parallel unigrid driver - \item Reduction and Interpolation operators - \item Interface to external elliptic solvers - \item Web-based interaction and monitoring interface - \item Simple example thorns (wavetoy) - \end{itemize} - \end{columns} -} - -\frame { \frametitle{Many arrangements with many modules...} - \begin{tabular}{ll} - CactusBase& Basic utility and interface thorns\ - CactusBench& Benchmark utility thorns\ - CactusConnect& Network utility thorns\ - CactusElliptic& Elliptic solvers / interface thorns\ - CactusExamples& Example thorns\ - CactusExternal& External library interface thorns\ - CactusIO& General I/O thorns\ - CactusNumerical& General numerical methods\ - CactusPUGH& Cactus Unigrid Driver thorn\ - CactusPUGHIO& I/O thorns specifix for PUGH driver\ - CactusTest& Thorns for Cactus testing\ - CactusUtils& Misc. utility thorns\ - CactusWave& Wave example thorns\ - \end{tabular} -} - - -\end{document} -
File [removed]: recompile Delta lines: +0 -14 =================================================================== --- cactus_intro/recompile 2013-07-26 06:14:59 UTC (rev 9) +++ cactus_intro/recompile 2013-07-26 06:31:27 UTC (rev 10) @@ -1,14 +0,0 @@ -#!/bin/bash - -function pdf { - NAME=$1 - pdflatex $NAME.tex - pgrep -f "xpdf -remote 127.0.0.1 $NAME.pdf" 2>&1 > /dev/null - if [ $? == 0 ]; then - xpdf -remote 127.0.0.1 -reload -raise - else - xpdf -remote 127.0.0.1 $NAME.pdf & - fi -} - -pdf cactus_intro
commits@lists.einsteintoolkit.org