Modified to make use of pplmanual.sty
authorMilind Bhandarkar <milind@cs.uiuc.edu>
Thu, 14 Dec 2000 11:33:50 +0000 (11:33 +0000)
committerMilind Bhandarkar <milind@cs.uiuc.edu>
Thu, 14 Dec 2000 11:33:50 +0000 (11:33 +0000)
doc/install/compile.tex
doc/install/install.tex
doc/install/manual.tex
doc/install/run.tex

index d76aac0f00ce504c11802aab04c44111df04c643..195f44b5b91e6d4b1ec5036309d45798fe1dbc50 100644 (file)
@@ -1,57 +1,16 @@
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% RCS INFORMATION:
-%
-%       $RCSfile$
-%       $Author$        $Locker$       $State$
-%       $Revision$      $Date$
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% DESCRIPTION:
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% REVISION HISTORY:
-%
-% $Log$
-% Revision 1.8  1999-07-09 18:18:39  milind
-% Updated for new release 5.0.
-%
-% Revision 1.7  1997/09/18 00:00:59  jyelon
-% *** empty log message ***
-%
-% Revision 1.6  1997/07/22 12:05:25  jyelon
-% Rewrote section on charmc.
-%
-% Revision 1.5  1995/11/17 17:19:37  brunner
-% Incorporated proofreading comments from 11-16 afternoon
-%
-% Revision 1.4  1995/11/16  23:58:29  brunner
-% Alphabetized option list
-%
-% Revision 1.3  1995/11/14  21:23:55  brunner
-% Added paragraph on including a user-defined load balance strategy.
-%
-% Revision 1.2  1995/11/02  22:40:39  brunner
-% Includes short description of what charmc does, and description
-% of options
-%
-% Revision 1.1  1995/10/31  22:27:53  milind
-% Initial revision
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\section{Compiling Converse, Charm, and Charm++ Programs}
+\section{Compiling \converse{} and \charmpp{} Programs}
 
 The {\tt charmc} program standardizes compiling and linking procedures
 among various machines and operating systems.  The word ``charmc'' is
 slightly misleading, this is a general-purpose tool for compiling and
-linking, not restricted to charm programs at all.
+linking, not restricted to \charmpp{} programs at all.
 
 Charmc can perform the following tasks.  The (simplified) syntax for
 each of these modes is shown.  Caution: in reality, one almost always
 has to add some command-line options in addition to the simplified
 syntax shown below.  The options are described next.
 
-\begin{verbatim}
+\begin{alltt}
  * Compile C                        charmc -o pgm.o pgm.c
  * Compile C++                      charmc -o pgm.o pgm.C
  * Link                             charmc -o pgm   obj1.o obj2.o obj3.o...
@@ -59,13 +18,14 @@ syntax shown below.  The options are described next.
  * Create Library                   charmc -o lib.a obj1.o obj2.o obj3.o...
  * CPM preprocessing                charmc -gen-cpm file.c
  * Translate Charm++ Interface File charmc file.ci
-\end{verbatim}
+\end{alltt}
 
 Charmc has been given data on how to invoke the compilers on each
-different platform.  This data is in a file named {\tt conv-mach.csh},
-which can be found in the same directory where {\tt charmc} resides.
+different platform.  This data is in a file named {\tt conv-mach.sh},
+which can be found in the {\tt include} directory where 
+{\tt bin/charmc} resides.
 Local modifications to the commands or options {\tt charmc} uses may
-usually be accomplished by editing {\tt conv-mach.csh}.
+usually be accomplished by editing {\tt conv-mach.sh}.
 
 Charmc automatically figures out where the charm lib and include
 directories are --- at no point do you have to configure this
@@ -130,10 +90,6 @@ This is just a convenience for simple-minded makefiles.
 Strip the executable of debugging symbols.  Only meaningful when
 producing an executable.
 
-\item[{\tt -save}:]
-
-Intermediate files produced by the Charm or Charm++ translator are saved.
-
 \item[{\tt -verbose}:]
 
 All commands executed by charmc are echoed to stdout.
@@ -165,30 +121,29 @@ example).  Usually, charmc prefers the less buggy of the two, but
 not always.  This option causes charmc to switch to the most reliable
 compiler, regardless of whether it produces slow code or not.
 
-\item[{\tt -language \{converse|charm++|sdag|idl\}}:]
+\item[{\tt -language \{converse|charm++|sdag|ampi|fem\}}:]
 
 When linking with charmc, one must specify the ``language''.  This
 is just a way to help charmc include the right libraries.  Pick the
 ``language'' according to this table:
 
 \begin{itemize}
-\item{{\bf Charm++} if your program includes Charm++, Charm, C++, and C.}
+\item{{\bf Charm++} if your program includes \charmpp{}, C++, and C.}
 \item{{\bf Converse} if your program includes C or C++.}
 \item{{\bf sdag} if your program includes structured dagger.}
-\item{{\bf idl} if your program includes IDL bindings for Charm++.}
 \end{itemize}
 
 \item[{\tt -balance} {\em load-balance-strategy}:]
 
-When linking any Converse program (including any Charm++, sdag or IDL program),
+When linking any \converse{} program (including any \charmpp{} or sdag program),
 one must include a seed load-balancing
 library.  There are currently three to choose from: {\tt rand}, {\tt
 test}, and {\tt graph} are supported.  Default is {\tt -balance rand}.
 
 \item[{\tt -tracemode} {\em tracing-mode}:]
 
-Selects the desired degree of tracing for Charm and Charm++ programs.
-See the Charm manual and the Projections and SummaryTool manuals for
+Selects the desired degree of tracing for \charmpp{} programs.
+See the \charmpp{} manual and the \projections{} manuals for
 more information.  Currently supported modes are {\tt none}, {\tt
 summary}, and {\tt projections}. Default is {\tt -tracemode none}.
 
@@ -225,7 +180,7 @@ Options passed to the linker for {\tt -language charm++}.
 
 \item[{\tt -ld-option} {\em options}:]
 
-Options passed to the linker for {\tt -language charm}.
+Options passed to the linker for {\tt -language converse}.
 
 \item[{\tt -ldro-option} {\em options}:]
 
index 9370a71700b22142f653231168cc2d801f466f75..e42e5e5663c7d0c6865bcc6d6ac61b83e80ab8e2 100644 (file)
@@ -1,65 +1,7 @@
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% RCS INFORMATION:
-%
-%       $RCSfile$
-%       $Author$        $Locker$                $State$
-%       $Revision$      $Date$
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% DESCRIPTION:
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% REVISION HISTORY:
-%
-% $Log$
-% Revision 1.14  2000-12-06 21:46:26  milind
-% conv-host => charmrun
-%
-% Revision 1.13  2000/01/31 21:10:49  milind
-% fixed bugs pointed out by quantum TA
-%
-% Revision 1.12  1999/07/09 18:18:39  milind
-% Updated for new release 5.0.
-%
-% Revision 1.11  1998/03/16 20:17:29  milind
-% 4.5 => 4.8
-%
-% Revision 1.10  1996/10/01 18:33:04  wilmarth
-% Fixed ftp path, .Z -> .gz, .inc -> .int ...tlw
-%
-% Revision 1.9  1995/11/17 17:19:37  brunner
-% Incorporated proofreading comments from 11-16 afternoon
-%
-% Revision 1.8  1995/11/01  22:13:37  jyelon
-% *** empty log message ***
-%
-% Revision 1.7  1995/11/01  22:06:30  jyelon
-% *** empty log message ***
-%
-% Revision 1.6  1995/11/01  22:01:32  jyelon
-% *** empty log message ***
-%
-% Revision 1.5  1995/11/01  21:36:09  jyelon
-% *** empty log message ***
-%
-% Revision 1.4  1995/11/01  20:28:01  jyelon
-% *** empty log message ***
-%
-% Revision 1.3  1995/11/01  20:18:51  jyelon
-% *** empty log message ***
-%
-% Revision 1.2  1995/11/01  19:53:54  jyelon
-% *** empty log message ***
-%
-% Revision 1.1  1995/10/31  22:27:53  milind
-% Initial revision
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\section{Installing Converse, Charm, and Charm++}
-
-The three programming systems are distributed as a single package ---
-one always installs all three.  They will all be installed in a single
+\section{Installing \converse{} and \charmpp{}}
+
+The two programming systems are distributed as a single package ---
+one always installs both.  They will all be installed in a single
 directory which, for lack of a better term, we will call the ``charm''
 directory.  It would be typical to choose {\tt /usr/local/charm} as
 the location for the charm directory, although any location will do.
@@ -68,11 +10,11 @@ Our explanation of the installation process will assume that {\tt
 if not, you must mentally translate.
 
 Download the tar-file file appropriate to your machine.  For example,
-if you are installing the version of charm for networks of Sun
-workstations running Solaris, download {\tt net-sol.tar.Z} from PPL's
+if you are installing the version of \converse{}/\charmpp{} for networks of Sun
+workstations running Solaris, download {\tt net-sol.tar.gz} from PPL's
 website (preferred) {\tt http://charm.cs.uiuc.edu/} or using anonymous FTP:
 
-\begin{verbatim}
+\begin{alltt}
     % ftp a.cs.uiuc.edu
     Connected to a.cs.uiuc.edu.
     220 a.cs.uiuc.edu FTP server ready.
@@ -95,24 +37,24 @@ website (preferred) {\tt http://charm.cs.uiuc.edu/} or using anonymous FTP:
     local: net-sol.tar.gz remote: net-sol.tar.gz
     648211 bytes received in 38 seconds (17 Kbytes/s)
     ftp> quit
-\end{verbatim}
+\end{alltt}
 
 Now that you have downloaded it, you are ready to install it: uncompress it,
 untar it, and move the directory thereby created to {\tt /usr/local/charm}:
 
-\begin{verbatim}
+\begin{alltt}
     % gunzip net-sol.tar.gz
     % tar xf net-sol.tar
     % mv net-sol/* /usr/local/charm
-\end{verbatim}
+\end{alltt}
 
 You are almost ready to go.  The last thing you need to do is put the
 charm binaries in your path.  There are two acceptable ways to do
 this.  The first is to simply reset your path:
 
-\begin{verbatim}
+\begin{alltt}
     % setenv PATH /usr/local/charm/bin:$PATH
-\end{verbatim}
+\end{alltt}
 
 The second is to install {\tt charmc} in a common directory available
 to all users of your machine, such as {\tt /usr/local/bin}.  {\em DO
@@ -120,31 +62,29 @@ NOT} move or copy {\tt charmc}: If you do, it will cease to function correctly.
 The only reliable way to
 put {\tt charmc} in a common directory is to symbolically link it:
 
-\begin{verbatim}
+\begin{alltt}
     % ln -s /usr/local/charm/bin/charmc /usr/local/bin/charmc
-\end{verbatim}
+\end{alltt}
 
-The programming systems, converse and charm++, are
+The programming systems, \converse{} and \charmpp{}, are
 probably ready to go.  However, there is one possible situation that
 they may not be.  If your parallel machine has a separate ``host''
 computer on which you do compilation, and if your ``host'' computer is
 of a type different from the one we anticipated, then some of the
 binaries may be compiled for the wrong kind of CPU.  To correct this
-situation, you may need to rebuild the cpm, charm++, sdag, and IDL  compilers:
-
-\begin{verbatim}
-    % cd /usr/local/charm/src
-    % make all
-\end{verbatim}
+situation, you may need to rebuild the cpm, \charmpp{}, and sdag compilers.
+We suggest that you get the source distribution from the above locations,
+and compile them yourself. Instructions to compile from source
+distributions are included as a {\tt README} file in the sources.
 
 This should complete the installation process.  You are ready to test
-converse and charm++.  However, there are a few things to
+\converse{} and \charmpp{}.  However, there are a few things to
 attend to before you start using them on a regular basis.  These are
 security issues and disk space consumption.
 
 \subsection{Security Issues}
 
-On most computers, charm programs are simple binaries, and they pose
+On most computers, \charmpp{} programs are simple binaries, and they pose
 no more security issues than any other program would.  The exceptions
 to this rule are the network versions {\tt net-*}.  
 This section only applies to users
@@ -154,10 +94,10 @@ The network versions utilize many unix processes communicating with
 each other via UDP.  No attempt is currently being made to filter out
 unauthorized packets.  Therefore, it is theoretically possible to
 mount a security attack by sending UDP packets to an executing
-converse or charm++ program's sockets.
+\converse{} or \charmpp{} program's sockets.
 
 The second security issue associated with networked programs is
-associated with the fact that we, the charm developers, need evidence
+associated with the fact that we, the \charmpp{} developers, need evidence
 that our tools are being used.  (Such evidence is useful in convincing
 funding agencies to continue to support our work.)  To this end, we
 have inserted code in the network {\tt charmrun} program (described
@@ -173,22 +113,22 @@ code.  Therefore, we have provided a second copy of the {\tt
 charmrun} program with the notification code removed.  If you look
 within the charm {\tt bin} directory, you will find these programs:
 
-\begin{verbatim}
+\begin{alltt}
     % cd /usr/local/charm/bin
     % ls charmrun*
     charmrun
     charmrun.notify
     charmrun.silent
-\end{verbatim}
+\end{alltt}
 
 The program {\tt charmrun.silent} has the notification code removed.  To
 permanently deactivate notification, you may use the version without the
 notification code:
 
-\begin{verbatim}
+\begin{alltt}
     % cd /usr/local/charm/bin
     % cp charmrun.silent charmrun
-\end{verbatim}
+\end{alltt}
 
 Although versions for some other machines contain
 programs named {\tt charmrun.notify} and {\tt charmrun.silent}, they
@@ -204,16 +144,9 @@ save disk space.
 The charm directory contains a collection of example-programs and
 test-programs.  These may be deleted with no other effects:
 
-\begin{verbatim}
+\begin{alltt}
     % rm -r /usr/local/charm/pgms
-\end{verbatim}
-
-The source code for the translators may be deleted, if you know the
-binaries are operational:
-
-\begin{verbatim}
-    % rm -r /usr/local/charm/src
-\end{verbatim}
+\end{alltt}
 
 You may delete the programs {\tt charmrun-notify} and {\tt
 charmrun-silent}, although please read the section on security first.
@@ -221,9 +154,9 @@ charmrun-silent}, although please read the section on security first.
 Finally, you may {\tt strip} all the binaries in {\tt
 /usr/local/charm/bin}, if we have not already done so.
 
-\subsection{Using more than one version of Charm on the same Machine}
+\subsection{Using more than one version of \charmpp{} on the same Machine}
 
-It is common to wish to install more than one version of charm on the
+It is common to wish to install more than one version of \charmpp{} on the
 same machine.  For example, we often use the uniprocessor version for
 debugging our programs (it supports {\tt gdb} in a simple way), and
 then we switch to the networked version to run our programs in
@@ -248,9 +181,9 @@ installed charm directory with the specified name.  For example, if
 you installed {\tt /usr/local/charm.uth} and {\tt
 /usr/local/charm.net} as described above, you could specify:
 
-\begin{verbatim}
+\begin{alltt}
     % /usr/local/charm.net/bin/charmc -machine charm.uth myprog.C
-\end{verbatim}
+\end{alltt}
 
 Even though you are running the {\tt charmc} script from the network
 version, it will produce uniprocessor binaries, since you told it
index b11b88386f2d663f286342bc1372af0c734d85dd..a91c88ab191240499c5d18a54499311c3f6f4714 100644 (file)
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% RCS INFORMATION:
-%
-%       $RCSfile$
-%       $Author$        $Locker$                $State$
-%       $Revision$      $Date$
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% DESCRIPTION:
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% REVISION HISTORY:
-%
-% $Log$
-% Revision 1.10  2000-06-22 22:38:05  milind
-% Minor fixes.
-%
-% Revision 1.9  2000/06/22 22:21:08  milind
-% Added table of contents to the PDF file, and also cleaned up the clean
-% target.
-%
-% Revision 1.8  2000/06/22 15:04:53  milind
-% Made compatible with pdflatex as well.
-%
-% Revision 1.7  1999/07/09 18:18:40  milind
-% Updated for new release 5.0.
-%
-% Revision 1.6  1998/11/03 19:24:48  milind
-% Added documentation for the new shell option in nodelist.
-%
-% Revision 1.5  1997/07/25 21:20:35  wilmarth
-% Added IT Charm++ info.
-%
-% Revision 1.4  1996/10/01 18:19:51  milind
-% Added a word , various..
-%
-% Revision 1.3  1995/11/17 17:48:18  brunner
-% New title page, but I can't get rid of page number
-%
-% Revision 1.2  1995/11/01  20:02:08  milind
-% *** empty log message ***
-%
-% Revision 1.1  1995/10/31  22:27:53  milind
-% Initial revision
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\documentclass[11pt]{article}
-
-\newif\ifpdf
-\ifx\pdfoutput\undefined
-  \pdffalse
-\else
-  \pdfoutput=1
-  \pdftrue
-\fi
-
-\ifpdf
-  \pdfcompresslevel=9
-  \usepackage[pdftex,colorlinks=true,plainpages=false]{hyperref}
-\else
-\fi
-
-\pagestyle{empty}
-\setlength{\textwidth}{6.5in}
-\setlength{\textheight}{9in}
-\setlength{\parindent}{0in}
-\setlength{\topmargin}{-.5in}
-\parskip 0.1in
-\newcommand{\zap}[1]{ }
-\newcommand{\fcmd}{\bf}                 %%% Font for Charm commands
-\newcommand{\fparm}{\bf\sf}             %%% Font for parameters to Charm commands
-\newcommand{\fexec}{\bf}                %%% Font for compile/execute cmds/options
-
-\begin{document}
-\begin{titlepage}
-
-\title{
-\vspace*{3in}
-Charm/Charm++/Converse Installation and Usage
+\documentclass[10pt]{article}
+\usepackage{pplmanual}
+\input{../pplmanual}
+
+\title{\charmpp{}/\converse{}\\Installation and Usage}
+\version{5.5}
+\credits{
+\converse{} Parallel Programming Environment was developed as a group
+effort at Parallel Programming Laboratory, University of Illinois at
+Urbana-Champaign.  The team consisted of Attila Gursoy, Sanjeev
+Krishnan, Joshua Yelon, Milind Bhandarkar, Narain Jagathesan, Robert
+Brunner and Laxmikant Kale. The most recent version of \converse{} has had inputs
+from Milind Bhandarkar, Laxmikant Kale, Robert Brunner, Terry Wilmarth,
+Parthasarathy Ramachandran, Krishnan Varadarajan, and Jeffrey Wright.
 }
 
-\author{Parallel Programming Laboratory\\
-       Department of Computer Science\\
-       University of Illinois at Urbana--Champaign}
-\date{\today}
-
+\begin{document}
 \maketitle
 
-\end{titlepage}
-
-\newpage
-\pagestyle{headings}
-
 \section{Introduction}
-In this manual, we describe how to install Charm++ and
-Converse, how to compile and execute programs, and the available
+In this manual, we describe how to install \charmpp{} and
+\converse{}, how to compile and execute programs, and the available
 command line options.  We also describe various queueing and load balancing
-strategies, and the various modes of execution of Converse and Charm++
+strategies, and the various modes of execution of \converse{} and \charmpp{}
 programs.
 
 \include{install}
index c9bd16989273ce7caaa850012e70e14aeb6c67c5..8fbfaee109134a80bfc02f61505f6cd1b8d42c2e 100644 (file)
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% RCS INFORMATION:
-%
-%       $RCSfile$
-%       $Author$        $Locker$           $State$
-%       $Revision$      $Date$
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% DESCRIPTION:
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% REVISION HISTORY:
-%
-% $Log$
-% Revision 1.15  2000-12-06 21:46:26  milind
-% conv-host => charmrun
-%
-% Revision 1.14  2000/01/31 21:10:49  milind
-% fixed bugs pointed out by quantum TA
-%
-% Revision 1.13  1999/09/23 17:02:38  milind
-% nodesfile->nodelist
-%
-% Revision 1.12  1999/07/09 18:18:40  milind
-% Updated for new release 5.0.
-%
-% Revision 1.11  1998/11/03 19:24:48  milind
-% Added documentation for the new shell option in nodelist.
-%
-% Revision 1.10  1997/07/25 21:07:54  wilmarth
-% Made a few more nodes file changes.
-%
-% Revision 1.9  1997/07/23 17:29:14  wilmarth
-% Updated with latest nodes file format.
-%
-% Revision 1.8  1996/11/14 18:41:14  milind
-% Modified to reflect the changes made to the nodesfile format.
-% Also, changed the Makefile to install into proper directories.
-%
-% Revision 1.7  1995/11/20 20:14:22  brunner
-% Made the comments about simulator and Converse more sensible.
-%
-% Revision 1.6  1995/11/20  16:47:00  brunner
-% Added comments about simulator only working for Charm/Charm++
-%
-% Revision 1.5  1995/11/17  17:19:37  brunner
-% Incorporated proofreading comments from 11-16 afternoon
-%
-% Revision 1.4  1995/11/16  23:59:02  brunner
-% incorporated Attila's simulator section
-%
-% Revision 1.3  1995/11/16  20:58:57  brunner
-% Added some paragon information
-%
-% Revision 1.2  1995/11/16  19:05:03  milind
-% *** empty log message ***
-%
-% Revision 1.1  1995/10/31  22:27:53  milind
-% Initial revision
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\section[Executing Converse/Charm/Charm++ Programs]
-       {Executing Converse/Charm/Charm++ Programs}
+\section{Executing \converse{}/\charmpp{} Programs}
 \label{executing charm programs}
 
-The Charm linker produces one executable file.  On machines with a host
-(such as a network of workstations), a link to the proper host program
-{\fexec charmrun} is created in the user program directory.  Sample
-execution examples are given below (the executable is called {\fparm
-pgm}). Exact details will differ from site to site.  The list of Charm
+The charmc linker produces one executable file.  On most machines
+a link to the proper host program
+{\tt charmrun} is created in the user program directory.  Sample
+execution example is given below (the executable is called {\tt
+pgm}). Exact details will differ from site to site.  The list of {\tt charmrun}
 command line options is in Section~\ref{command line options}.
 
-\begin{itemize}
+\begin{alltt}
+charmrun pgm +p4
+\end{alltt}
 
-\item \underline{\bf ASCI Red:} 
-       \begin{tabbing}
-       {\fexec yod -sz 4 pgm}
-       \end{tabbing}
-       runs {\fparm pgm} on four processors.
-
-\item \underline{\bf Cray T3E:} 
-       \begin{tabbing}
-       {\fexec mpprun -n 4 pgm}
-       \end{tabbing}
-       runs {\fparm pgm} on four processors.
-
-\item \underline{\bf SGI Origin2000 (origin-mpi):} 
-       \begin{tabbing}
-       {\fexec mpirun -np 4 pgm}
-       \end{tabbing}
-       runs {\fparm pgm} on four processors.
-
-\item \underline{\bf SGI Origin2000 (origin2000 or origin-pthreads):} 
-       \begin{tabbing}
-       {\fexec pgm +p4}
-       \end{tabbing}
-       runs {\fparm pgm} on four processors.
-
-\item \underline{\bf Network of workstations:} 
-       \begin{tabbing}
-       {\fexec charmrun pgm +p4}
-       \end{tabbing}
-       executes {\fparm pgm} on 4 nodes.  In a network environment, Charm must
-       be able to locate the directory of the executable.  If all workstations
-       share a common file name space this is trivial.  If they don't, Charm
-       will attempt to find the executable in a directory with the same path
-       from the {\bf \$HOME} directory.  Pathname resolution is performed as 
-       follows:
-       \begin{enumerate}
-               \item The system computes the absolute path of {\fexec pgm}.
-               \item If the absolute path starts with the equivalent of {\bf \$HOME} 
-                       or the current working directory, the beginning part of the path 
-                       is replaced with the environment variable {\bf \$HOME} or the 
-                       current working directory. However, if {\fparm exec\_home} is 
-            specified in the nodes file (see below), the beginning part of
-            the path is replaced with {\fparm exec\_home}.
-               \item The system tries to locate this program (with modified 
-                       pathname and appended extension if specified) on all nodes.
-       \end{enumerate}
-
-The list of nodes must be specified in a file.  The format of this file
+Executes {\tt pgm} on 4 nodes.  In a network environment, {\tt charmrun} must
+be able to locate the directory of the executable.  If all workstations
+share a common file name space this is trivial.  If they don't, {\tt charmrun}
+will attempt to find the executable in a directory with the same path
+from the {\bf \$HOME} directory.  Pathname resolution is performed as 
+follows:
+\begin{enumerate}
+       \item The system computes the absolute path of {\tt pgm}.
+       \item If the absolute path starts with the equivalent of {\bf \$HOME} 
+       or the current working directory, the beginning part of the 
+        path 
+       is replaced with the environment variable {\bf \$HOME} or the 
+       current working directory. However, if {\tt exec\_home} is 
+        specified in the nodes file (see below), the beginning part of
+        the path is replaced with {\tt exec\_home}.
+       \item The system tries to locate this program (with modified 
+       pathname and appended extension if specified) on all nodes.
+\end{enumerate}
+
+For network of workstations,
+the list of nodes must be specified in a file.  The format of this file
 allows you to define groups of machines, giving each group a name.
 Each line of the nodes file is a command.  The most important command
 is:
 
-\begin{verbatim}
+\begin{alltt}
 host <hostname> <qualifiers>
-\end{verbatim}
+\end{alltt}
 
 which specifies a host.  The other commands are qualifiers: they modify
 the properties of all hosts that follow them.  The qualifiers are:
@@ -156,9 +69,9 @@ All qualifiers accept ``*'' as an argument, this resets the modifier to
 its default value.  Note that currently, the passwd, cpus, and speed
 factors are ignored.  Inline qualifiers are also allowed:
 
-\begin{verbatim}
+\begin{alltt}
 host beauty ++cpus 2 ++shell ssh
-\end{verbatim}
+\end{alltt}
 
 Except for ``group'', every other qualifier can be inlined, with the
 restriction that if the ``setup'' qualifier is inlined, it should be
@@ -166,7 +79,7 @@ the last qualifier on the ``host'' or ``group'' statement line.
 
 Here is a simple nodes file:
 
-\begin{verbatim}
+\begin{alltt}
         group kale-sun ++cpus 1
           host charm.cs.uiuc.edu ++shell ssh
           host dp.cs.uiuc.edu
@@ -176,7 +89,7 @@ Here is a simple nodes file:
           host beauty.cs.uiuc.edu ++cpus 2
         group main
           host localhost
-\end{verbatim}
+\end{alltt}
 
 This defines three groups of machines: group kale-sun, group kale-sol,
 and group main.  The ++nodegroup option is used to specify which group
@@ -184,9 +97,9 @@ of machines to use.  Note that there is wraparound: if you specify
 more nodes than there are hosts in the group, it will reuse
 hosts. Thus,
 
-\begin{verbatim}
+\begin{alltt}
         charmrun pgm ++nodegroup kale-sun +p6
-\end{verbatim}
+\end{alltt}
 
 uses hosts (charm, dp, grace, dagger, charm, dp) respectively as
 nodes (0, 1, 2, 3, 4, 5).
@@ -194,9 +107,9 @@ nodes (0, 1, 2, 3, 4, 5).
 If you don't specify a ++nodegroup, the default is ++nodegroup main.
 Thus, if one specifies
 
-\begin{verbatim}
+\begin{alltt}
         charmrun pgm +p4
-\end{verbatim}
+\end{alltt}
 
 it will use ``localhost'' four times.  ``localhost'' is a Unix
 trick; it always find a name for whatever machine you're on.
@@ -211,15 +124,13 @@ login into the hosts. If ``ssh'' is used, the user will have to setup
 password-less login to remote hosts either using ``.shosts'' file, or using
 RSA authentication based on a key-pair and adding public keys to ``.ssh/authorized\_keys'' file. See ``ssh'' documentation for more information.
 
-\end{itemize}
-
-Note that the Charm linker will provide the correct 
+Note that the charmc linker will provide the correct 
 executable. The user, however, needs to know how programs are run for
 the particular machine.
 
-\subsection[Running with the simulator]{Running with the simulator}
+\subsection{Running with the simulator}
 
-Converse provides a simple parallel machine simulator for developing
+\converse{} provides a simple parallel machine simulator for developing
 and debugging purposes.  It simulates a message passing system
 composed of a collection of processing nodes connected with a
 communication network. Each node is composed of an application
@@ -229,7 +140,7 @@ simulator timers for performance measurements produce realistic
 results.
 
 
-In order to run Charm and Charm++ programs with the simulator:
+In order to run \charmpp{} programs with the simulator:
 \begin{itemize}
 
 \item prepare a configuration file as described below
@@ -238,9 +149,9 @@ In order to run Charm and Charm++ programs with the simulator:
    N is the number of processors.
 
 \end{itemize}
-Currently only Charm and Charm++ programs can take advantage of the
+Currently only \charmpp{} programs can take advantage of the
 simulator features.
-In the future, a method to allow any Converse based program
+In the future, a method to allow any \converse{} based program
 to use the simulator features will be devised.
 
 The basic task of the simulator is to manage the message passing
@@ -367,26 +278,16 @@ periodic_interval 0.1
 \label{command line options}
 \index{command line options}
 
-A Charm program accepts the following command line options:
+A \charmpp{} program accepts the following command line options:
 \begin{description}
 
-\item[{\fexec +pN}] Run the program with N processors. The default is 1.
-Note that on some nonshared memory machines, e.g., nCUBE/2, the user must
-specify the number of processors using the command provided for that
-machine (e.g. {\fexec xnc} on the nCUBE/2).
-In such cases the {\fexec +p} option is ignored.
-
-%\item[{\fexec +mM}] Run the program with M Kwords of memory per
-%processor. The default is 50 Kwords of memory per processor.
-
-%\item[{\fexec +mmM}] Run the program with M Kwords of memory for
-%processor 0.
+\item[{\tt +pN}] Run the program with N processors. The default is 1.
 
-\item[{\fexec +ss}] Print summary statistics about chare creation.  This option
+\item[{\tt +ss}] Print summary statistics about chare creation.  This option
 prints the total number of chare creation requests, and the total number of
 chare creation requests processed across all processors.
 
-\item[{\fexec +cs}] Print statistics about the number of create chare messages
+\item[{\tt +cs}] Print statistics about the number of create chare messages
 requested and processed, the number of messages for chares requested and 
 processed, and the number of messages for branch office chares requested and
 processed, on a per processor basis.  Note that the number of messages 
@@ -394,88 +295,70 @@ created and processed for a particular type of message on a given node
 may not be the same, since a message may be processed by a different
 processor from the one originating the request.
 
-%\item[{\fexec +mems}] Print the Memory Usage Statistics at the end, including
-%the number of memory allocation requests and memory free requests, based on
-%the size of the memory allocated or freed.
-
-\item[{\fexec user\_options}] Options that are be interpreted by the user
+\item[{\tt user\_options}] Options that are be interpreted by the user
 program may be included after all the system options. 
-However, {\fexec user\_options} cannot start with +.
-The {\fexec user\_options} will be passed as arguments to the user program 
-via the usual {\fcmd argc/argv} construct to the {\fcmd main}\index{main}
+However, {\tt user\_options} cannot start with +.
+The {\tt user\_options} will be passed as arguments to the user program 
+via the usual {\tt argc/argv} construct to the {\tt main}
 entry point of the main chare. 
-Charm system options will not appear in {\fcmd argc/argv}.
+\charmpp{} system options will not appear in {\tt argc/argv}.
 
 \end{description}
 
-\subsubsection[Additional Uniprocessor Command Line Options]
-{Additional Uniprocessor Command Line Options}
+\subsubsection{Additional Uniprocessor Command Line Options}
 \label{uniprocessor command line options}
 
 The uniprocessor versions can be used to simulate multiple
-processors on a single workstation\index{uniprocessor command line
-options}.  Any number of processors between 1 and 32 can be simulated by
-using the {\fexec +p} option, limited only by the available memory on the
+processors on a single workstation
+Any number of processors between 1 and 32 can be simulated by
+using the {\tt +p} option, limited only by the available memory on the
 uniprocessor workstation.  By default, the uniprocessor versions handle
 a single message from each processor, going in order from processor 0
 thru $P-1$ (where $P$ is the number of processors) repeatedly.  
-%If the
-%user supplies the {\fexec +seed} \index{+seed} command line option
-%followed by an 
-%integer value, the processors will be accessed in a random (but
-%deterministic) order.  {\fexec +seed} is only recognized by the
-%uniprocessor version.
-
-\subsubsection[Additional Network Command Line Options]
-{Additional Network Command Line Options}
+
+\subsubsection{Additional Network Command Line Options}
 \label{network command line options}
 
-The following {\fexec ++} command line options are available in
-the network version\index{network command line options}:
+The following {\tt ++} command line options are available in
+the network version:
 \begin{description}
 
-\item[{\fexec ++debug}] Run each node under gdb in an xterm window, prompting
+\item[{\tt ++debug}] Run each node under gdb in an xterm window, prompting
 the user to begin execution.
-\index{++debug}
 
-\item[{\fexec ++debug-no-pause}] Run each node under gdb in an xterm window
+\item[{\tt ++debug-no-pause}] Run each node under gdb in an xterm window
 immediately (i.e. without prompting the user to begin execution).
-\index{++debug-no-pause}
 
-\item[{\fexec ++maxrsh}] Maximum number of {\fcmd rsh}'s to run at a
+\item[{\tt ++maxrsh}] Maximum number of {\tt rsh}'s to run at a
 time.
-\index{++maxrsh}
 
-\item[{\fexec ++resend-wait}] Timeout before retransmitting datagrams
+\item[{\tt ++resend-wait}] Timeout before retransmitting datagrams
 (in msec).
-\index{++resend-wait}
 
-\item[{\fexec ++resend-fail}] Timeout before retransmission fails (in
-msec).\index{++resend-fail}
+\item[{\tt ++resend-fail}] Timeout before retransmission fails (in
+msec).
 This parameter can help the user kill ``runaway'' processes, which may not
 be killed otherwise when the user interrupts the program before it 
 completes execution.
 Currently a bug exists in the network version that may cause programs to
-terminate prematurely if this value is set too low and {\fexec scanf} 
+terminate prematurely if this value is set too low and {\tt scanf} 
 operations are being performed.
 
-\item[{\fexec ++nodelist}] File containing list of nodes.
-\index{++nodelist}\index{.nodes}\index{nodes file}
+\item[{\tt ++nodelist}] File containing list of nodes.
 
 \end{description}
 
-If using the {\fexec ++debug} option, the user must ensure the
+If using the {\tt ++debug} option, the user must ensure the
 following:
-\index{++debug}
 \begin{enumerate}
 
-\item {\fexec xterm}, {\fexec xdpyinfo},  and {\fexec gdb} must be in
+\item {\tt xterm}, {\tt xdpyinfo},  and {\tt gdb} must be in
 the user's path.
 
-\item The path must be set in the {\fexec .cshrc} file, not the {\fexec .login}
-file, because {\fexec rsh} does not run the {\fexec .login} file. 
+\item The path must be set in the {\tt .cshrc} file, not the {\tt .login}
+file, because {\tt rsh} does not run the {\tt .login} file. 
 
 \item The nodes must be authorized to create windows on the host machine (see
-man pages for {\fexec xhost} and {\fexec xauth}).
+man pages for {\tt xhost} and {\tt xauth}).
 
 \end{enumerate}