• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

applications/H07-May-2005-24,45116,914

autom4te.cache/H07-May-2005-39,20836,288

compilerTests/H07-May-2005-230163

doc/H07-May-2005-7,1986,040

examples/H07-May-2005-52,38950,840

framework/H07-May-2005-61,91643,199

tools/H07-May-2005-1,7711,364

AUTHORSH A D07-May-2005526 2924

Coulomb.vcprojH A D07-May-200543.3 KiB1,5461,545

Dcd2dcd.vcprojH A D07-May-200513.9 KiB538537

FAQ.compilerH A D07-May-20051.3 KiB3925

HOWTODOH A D07-May-2005533 1912

LICENSEH A D07-May-200533.8 KiB602530

Makefile.amH A D07-May-2005225 112

Makefile.dependH A D07-May-20051.4 KiB3817

Makefile.inH A D07-May-200513.9 KiB461373

Protomol.slnH A D07-May-20051.7 KiB3635

Protomol.vcprojH A D07-May-200545.6 KiB1,6301,629

READMEH A D07-May-20058.8 KiB210148

TODOLISTH A D07-May-20051.5 KiB4827

aclocal.m4H A D07-May-200530.1 KiB837703

compile_with_aix_xlc_debug.llH A D07-May-2005583 326

compile_with_aix_xlc_mpi.llH A D07-May-2005598 326

compilerVersion.plH A D07-May-2005493 2725

configureH A D07-May-2005542.1 KiB19,42916,799

configure.inH A D07-May-200537.8 KiB1,2431,101

install-shH A D07-May-20055.4 KiB252153

missingH A D07-May-200510 KiB337263

mkinstalldirsH A D07-May-20051.8 KiB10072

protomol_config.h.inH A D07-May-20054.5 KiB184123

protomol_config_windows.cppH A D07-May-200586 75

protomol_config_windows.hH A D07-May-20051.3 KiB4719

realcleanH A D07-May-2005994 2311

realmakeH A D07-May-2005154 52

tagsH A D07-May-2005971.1 KiB7,4867,485

README

1 HOWTO install ProtoMol
2------------------------
3
4
5 USER INSTRUCTIONS
6-------------------
7
80) If your autoconf version is less than 2.52 (autoconf --version) run first:
9
10   aclocal; autoheader; automake -a
11
121) Run one configure script for your platform:
13
14   ./configure                           # tries to find best preset
15   ./configure --with-aix-xlc            # xlC   for AIX with optimization flags
16   ./configure --with-aix-xlc-mpi        # xlC   for AIX with MPI and optimization flags
17   ./configure --with-gcc                # g++   for generic with optimization flags
18   ./configure --with-gcc-debug          # g++   for generic with debugging flags
19   ./configure --with-gcc-mpich          # g++   for generic with MPICH flags
20   ./configure --with-hpux-cc            # aCC   for HPUX optimization flags
21   ./configure --with-hpux-cc-mpi        # aCC   for HPUX with MPI and optimization flags
22   ./configure --with-icc                # icc   for generic with optimization flags
23   ./configure --with-icc-mpich          # icc   for generic with MPICH and optimization flags
24   ./configure --with-icc-mpich-debug    # icc   for generic with MPICH and debugging flags
25   ./configure --with-irix-mipspro       # CC    for IRIX with optimization flags
26   ./configure --with-irix-mipspro-mpi   # CC    for IRIX with MPI and optimization flags
27   ./configure --with-ppc-xlc            # xlC   for PPC with optimization flags
28   ./configure --with-sun-gcc            # g++   for SUN with optimization flags
29
302) Run depend target to generate dependencies and compile the framework:
31
32   make depend; make
33
34
35
36 DEVELOPER INSTRUCTIONS
37------------------------
38
390) If your autoconf version is less than 2.52 (autoconf --version) run first:
40
41   aclocal; autoheader; automake -a
42
431) Run one configure script for your platform:
44
45   ./configure --with-aix-xlc                    xlC   for AIX with optimization flags
46   ./configure --with-aix-xlc-debug              xlC   for AIX with debugging flags
47   ./configure --with-aix-xlc-mpi                xlC   for AIX with MPI and optimization flags
48   ./configure --with-aix-xlc-mpi-debug          xlC   for AIX with MPI and debugging flags
49   ./configure --with-gcc                        g++   for generic with optimization flags
50   ./configure --with-gcc-debug                  g++   for generic with debugging flags
51   ./configure --with-gcc-debug-gdb              g++   for generic with debugging and gdb flags
52   ./configure --with-gcc-mpich                  g++   for generic with MPICH flags
53   ./configure --with-gcc-mpich-debug            g++   for generic with MPICH debug flags
54   ./configure --with-gcc-mpich-xeon             g++   for generic with MPICH xeon flags
55   ./configure --with-hpux-cc                    aCC   for HPUX optimization flags
56   ./configure --with-hpux-cc-debug              aCC   for HPUX with debugging flags
57   ./configure --with-hpux-cc-mpi                aCC   for HPUX with MPI and optimization flags
58   ./configure --with-hpux-cc-mpi-debug          aCC   for HPUX with MPI and debugging flags
59   ./configure --with-icc                        icc   for generic with optimization flags
60   ./configure --with-icc-debug                  icc   for generic with debugging flags
61   ./configure --with-icc-mpich                  icc   for generic with MPICH and optimization flags
62   ./configure --with-icc-mpich-xeon             icc   for generic with MPICH and optimization flags
63   ./configure --with-icc-mpich-debug            icc   for generic with MPICH and debugging flags
64   ./configure --with-irix-mipspro               CC    for IRIX with optimization flags
65   ./configure --with-irix-mipspro-debug         CC    for IRIX with debugging flags
66   ./configure --with-irix-mipspro-mpi           CC    for IRIX with MPI and optimization flags
67   ./configure --with-irix-mipspro-mpi-debug     CC    for IRIX with MPI and debugging flags
68   ./configure --with-ppc-xlc                    xlC   for PPC with optimization flags
69   ./configure --with-pcc-xlc-debug              xlC   for PPC with debugging flags
70   ./configure --with-sun-gcc                    g++   for SUN with optimization flags
71
72    We recommend for testing purpose to use debugging since it takes less time to compile.
73
74
752) Run depend target to generate dependencies and compile the framework:
76
77   make clean; make depend; make
78
79   We recommend to do a "make clean" since the dependencies are not always
80   correctly encountered.
81
82
83 Adding new files to the framework or the applications
84-------------------------------------------------------
85
861) Add your new files to the Makefile.am in the same directory
87
882) Generate the new configure file:
89
90   autoreconf -f -i  --verbose
91
92   or
93
94   ./realmake <arguments>               # cleans up all and runs autoconf
95
96   or
97
98   aclocal; autoheader; autoconf; automake -a   # if you do not have autoconf >= V2.53
99
100
101 Adding new Makefile directories
102------------------------
1031) You have to add your new Makefile filename relative to
104   the root of protomol into configure.ac  (at the end of the file),
105   and the directory name parent to it.
106
1072) Generate the new configure file as under addinf files.
108
109
110 HOWTO set compiler flags
111--------------------------
112   This can be done if you don't want to use the --with-platform-cxx configure
113   options
114
115   Set CXX environment variable to the compiler you want to use
116   (e.g. setenv CXX g++)
117
118   Set CXXFLAGS environment variable to the compiler flags you want to use
119   (e.g. setenv CXXFLAGS "-O3")
120
121   For more detailed informations:
122   ./configure --help
123
124
125 Compiler troubles
126-------------------
127   If the check of your compiler(s) fails try another configurations or you may
128   change/remove some compiler flags or libraries in ./configure.ac. If you have
129   still have troubles to compile or run automake/autoconf take look at FAQ.compiler.
130
131   If you have troubles to link/compile with external libraries you may look at
132   test programs in compilerTests to figure out the compiler/library flags.
133
134
135 Autoconf troubles / older versions
136------------------------------------
137   configure.ac expects autoconf version 2.53 or higher, in order generate makefiles
138   with older autoconf versions edit configure.ac and comment out what is below
139   Autoconf 2.53 and uncomment below Autoconf 2.13 and copy configure.ac to configure.in
140   You may also use a symbolic link to configure.in and use:
141   aclocal; autoheader; autoconf; automake -a
142
143 64-bit
144--------
145   ProtoMol supports compilation of 32-bit and 64-bit. On AIX you change to 64 with:
146   setenv OBJECT_MODE 64
147
148
149 PNG
150-----
151   The io library supports a PNG writer, but also PPM.
152
153
154 GLUT
155------
156   GLUT is a tool library to simplify OpenGL usage.
157
158
159 FFT
160-----
161   ProtoMol supports different FFT interfaces: FFTW (version 3 and 2), ESSL (AIX), complib.sgimath (IRIX).
162   You can specify your FFT of choice by --with-fft=[sgi|essl|fftw2|fftw3|zfft].
163   Use '--with-fftw3=<path>' to specify install path of FFTW, ESSL and complib.sgimath are assumed to
164   be at default locations. If you do not have any of these FFT libraries, ZFFT is used by default,
165   which is a subsitute for complib.sgimath. Note that ZFFT does not support all kind of numbers.
166   Note that ESSL's FFT does not handle all kind of numbers. ESSL aborts with the error message
167   "DCFT3 : 2538-2030 The transform length (ARG NO. 7, 8 or 9)", where 7 stands for the z-dim,
168   8 the y-dim and 9 the x-dim.
169   http:://www.fftw.org
170
171
172 Timing
173--------
174   wall        : totale time, incl. initialization & IO
175   run         : running the simulation for n steps, incl. output
176   integration : running the simulation for n steps, excl. output
177   forces      : evaluating the forces, excl. communication
178   com         : sending and recieving data
179   idle        : waiting for the master to send next work package and waiting for barrieres
180
181
182 Parallel
183----------
184   useBarrier   : boolean =false  : if MPI_Barrier should be called before global communication
185   parallelMode : string          : static, dynamic or masterSlave
186                  =static     : static load balancing, no com. between master and slaves, only slaves
187                  =dynamic    : master-slave, where the master does some work in-between,
188                                parallelPipe should be accordingly set
189                  masterSlave : pure master-slave, where the master serves the slaves
190   maxPackages  : int             : max. number of work packages per node per force; increased
191                                    packages, better load balance, but more communication
192   parallelPipe : int             : pipe size of packages send to each slave; increased pipe less idle
193                                    slaves, but less load balancing
194
195
196
197 NOTES
198-------
199   Don't worry if it's taking a long time to compile ...
200
201   To clean the whole package:
202
203   ./realclean
204
205
206
207 Contact Information
208---------------------
209   protomol@cse.nd.edu.
210