doc: more chapter reshuffling. add placeholder for heterogeneous stuff
[charm.git] / doc / charm++ / manual.tex
1 \documentclass[10pt]{report}
2
3 \usepackage{../pplmanual} \input{../pplmanual} \usepackage{html}
4 \usepackage{listings}
5 \usepackage{textcomp}
6 %sadly latex2html does not understand listings
7 %this hack will at least give you the program listing instead of garbage
8 \begin{htmlonly}
9   \usepackage{verbatim}
10   \providecommand{\lstinputlisting}[2][]{\verbatiminput{#2}}
11   \providecommand{\lstset}[2][]{}
12 \end{htmlonly}
13
14 \begin{document}
15
16 \title{The\\ \charm\\ Parallel Programming System\\ Manual}
17 \version{6.4.0}
18 \credits{\hspace{0 in}}
19 \maketitle
20
21
22 \chapter{Programming and Execution Model}
23 \input{intro}
24 \input{overview}
25
26 \chapter{Machine Model}
27 node, PE, ranks?, smp-mode and non-smp mode terminology. etc.
28
29 \part{Basic Usage}
30
31 \chapter{Program Structure, Compilation and Utilities}
32   \input{modules}       
33   \input{utilities}
34   \input{helloworld}
35
36 \chapter{Basic Syntax}
37   \input{marshalling}   
38   \input{chares}
39   \input{readonly}
40
41 \chapter{Chare Arrays}
42   \input{arrays}
43
44 \chapter{Expressing Parallel Control Flow}
45   \input{sdag}
46
47 \chapter{Serialization Using the PUP Framework}
48   \input{pup}
49
50 \chapter{Load Balancing}
51 \label{loadbalancing}
52   \input{loadb}
53
54 \chapter{Processor-Aware Chare Collections}
55   \input{groups}
56   \input{nodegroups}
57
58 \chapter{Initializations at Program Startup}
59   \input{startuporder}
60
61 \part{Advanced Usage}
62
63 \chapter{Optimizing Entry Method Invocation}
64   \input{messages}
65   \input{entry}
66   \input{order}
67
68 \chapter{Callbacks}
69   \input{callbacks}
70
71 \chapter{Waiting on Completion}
72   \section{Asynchronous Barriers}
73   \section{Threaded Entry Methods}
74   \section{Sync Entry Methods}
75   \input{futures}
76   \input{quiesce}
77
78 \chapter{More Chare Array Features}
79 \label{advanced arrays}
80   \input{advancedarrays}
81
82 \chapter{Chare Array Sections}
83 \label{array section}
84   \input{sections}
85
86 \chapter{Chare Inheritance and Templates}
87 \label{inheritance and templates}
88   \input{inhertmplt}
89
90 \chapter{Reductions}
91   \input{reductions}
92   \input{alltoall}
93
94 \chapter{Serializing Complex Types}
95   \input{advancedpup}
96
97 \chapter{Checkpoint/Restart}
98 \index{Checkpoint/Restart}
99 \label{sec:checkpoint}
100   \input{checkpoint}
101
102 \chapter{Managing Hardware Heterogeneity}
103 \index{accel}
104 \label{sec:hetero}
105   \input{hetero}
106
107 \chapter{Miscellaneous Features}
108   \input{othercalls}    
109 %  \input{commlib}
110
111
112 \part{Optional / Expert Usage}
113
114 \chapter{Control Point Automatic Tuning}
115 \index{Control Point Automatic Tuning}
116 \label{sec:controlpoint}
117   \input{controlpoints}
118
119 \chapter{Tuning and Developing Load Balancers}
120 \label{advancedlb}
121   \input{advancedlb}
122
123 \chapter{Dynamic Code Injection}
124 \label{python}
125   \input{python}
126
127 \chapter{Intercepting Messages via Delegation}
128 \index{Delegation}
129 \label{delegation}
130   \input{delegation}
131
132 % TO BE MOVED TO ITS OWN MANUAL
133 %\input{msa.tex}
134
135
136 \part{Appendix}
137 \appendix
138
139 % TO BE MOVED TO ITS OWN MANUAL
140 %\input{quickbigsim}
141
142 \chapter{Further Information}
143   \input{further}
144
145 \chapter{History}
146   \input{history}
147
148 \chapter {Acknowledgements}
149   \input{credits}
150
151 \input{index}
152
153 \end{document}