source: issm/oecreview/Archive/19101-20495/ISSM-19626-19627.diff@ 20498

Last change on this file since 20498 was 20498, checked in by Mathieu Morlighem, 9 years ago

CHG: done with Archive/19101-20495

File size: 13.9 KB
RevLine 
[20498]1Index: ../trunk-jpl/externalpackages/dakota/configs/6.2-mpi/DakotaDev.cmake.patch
2===================================================================
3--- ../trunk-jpl/externalpackages/dakota/configs/6.2-mpi/DakotaDev.cmake.patch (revision 0)
4+++ ../trunk-jpl/externalpackages/dakota/configs/6.2-mpi/DakotaDev.cmake.patch (revision 19627)
5@@ -0,0 +1,14 @@
6+5,8c5,8
7+< set(ENABLE_DAKOTA_DOCS TRUE CACHE BOOL "Enable DAKOTA documentation build")
8+< set(ENABLE_SPEC_MAINT TRUE CACHE BOOL
9+< "Enable DAKOTA specification maintenance mode?")
10+< set(PECOS_ENABLE_TESTS TRUE CACHE BOOL "Enable Pecos-specific tests?")
11+---
12+> #set(ENABLE_DAKOTA_DOCS TRUE CACHE BOOL "Enable DAKOTA documentation build")
13+> #set(ENABLE_SPEC_MAINT TRUE CACHE BOOL
14+> # "Enable DAKOTA specification maintenance mode?")
15+> #set(PECOS_ENABLE_TESTS TRUE CACHE BOOL "Enable Pecos-specific tests?")
16+14c14
17+< #set(HAVE_X_GRAPHICS OFF CACHE BOOL "Disable dependency on X libraries" FORCE)
18+---
19+> set(HAVE_X_GRAPHICS OFF CACHE BOOL "Disable dependency on X libraries" FORCE)
20Index: ../trunk-jpl/externalpackages/dakota/configs/6.2-mpi/ParallelLibrary.cpp.patch
21===================================================================
22--- ../trunk-jpl/externalpackages/dakota/configs/6.2-mpi/ParallelLibrary.cpp.patch (revision 0)
23+++ ../trunk-jpl/externalpackages/dakota/configs/6.2-mpi/ParallelLibrary.cpp.patch (revision 19627)
24@@ -0,0 +1,24 @@
25+51a54,76
26+> /** This constructor is provided for the ISSM software, to run serial
27+> * Dakota in a parallel MPI ring: */
28+> ParallelLibrary::ParallelLibrary(char* serial_mode):
29+> mpiManager(dummy_mpi_mgr), programOptions(dummy_prg_opt),
30+> outputManager(dummy_out_mgr), dummyFlag(true), outputTimings(false)
31+> {
32+> initialize_timers();
33+>
34+> // do not initialize MPI. Get worldRank/worldSize if available
35+> ParallelLevel pl;
36+> #ifdef HAVE_MPI // mpi available, we still don't want to run in parallel for Dakota!
37+> pl.serverIntraComm = MPI_COMM_NULL;
38+> Cout << "Running Dakota 6.1 MPI executable in serial mode on CPU 0 for ISSM." << std::endl;
39+> #else // mpi not available
40+> pl.serverIntraComm = MPI_COMM_NULL;
41+> Cout << "Running Dakota 6.1 serial executable in serial mode for ISSM." << std::endl;
42+> #endif // HAVE_MPI
43+>
44+> parallelLevels.push_back(pl);
45+> increment_parallel_configuration();
46+> }
47+>
48+>
49Index: ../trunk-jpl/externalpackages/dakota/configs/6.2-mpi/NonDLocalReliability.cpp.patch
50===================================================================
51--- ../trunk-jpl/externalpackages/dakota/configs/6.2-mpi/NonDLocalReliability.cpp.patch (revision 0)
52+++ ../trunk-jpl/externalpackages/dakota/configs/6.2-mpi/NonDLocalReliability.cpp.patch (revision 19627)
53@@ -0,0 +1,9 @@
54+2645a2646
55+> // add sensitivity output to importance factors (jes, 8/06/10)
56+2651c2652,2655
57+< << std::setw(width) << impFactor(j,i) << '\n';
58+---
59+> << std::setw(width) << impFactor(j,i)
60+> << " Sensitivity = "
61+> << std::resetiosflags(std::ios::adjustfield)
62+> << std::setw(width) << fnGradsMeanX(j,i) << '\n';
63Index: ../trunk-jpl/externalpackages/dakota/configs/6.2-mpi/CMakeLists.txt.pfe.patch
64===================================================================
65--- ../trunk-jpl/externalpackages/dakota/configs/6.2-mpi/CMakeLists.txt.pfe.patch (revision 0)
66+++ ../trunk-jpl/externalpackages/dakota/configs/6.2-mpi/CMakeLists.txt.pfe.patch (revision 19627)
67@@ -0,0 +1,6 @@
68+156c153,155
69+< # TODO: Can't this be integrated into the following logic?
70+---
71+> # TODO: Can't this be integrated into the following logic?
72+> set(BLAS_LIBS "-L/nasa/intel/mkl/10.0.011/lib/em64t/ -lmkl -lmkl_lapack -liomp5 -lpthread")
73+> set(LAPACK_LIBS "-L/nasa/intel/mkl/10.0.011/lib/em64t/ -lmkl -lmkl_lapack -liomp5 -lpthread")
74Index: ../trunk-jpl/externalpackages/dakota/configs/6.2-mpi/ParallelLibrary.hpp.patch
75===================================================================
76--- ../trunk-jpl/externalpackages/dakota/configs/6.2-mpi/ParallelLibrary.hpp.patch (revision 0)
77+++ ../trunk-jpl/externalpackages/dakota/configs/6.2-mpi/ParallelLibrary.hpp.patch (revision 19627)
78@@ -0,0 +1,3 @@
79+475a476,477
80+> /// library mode constructor, serial mode (for the ISSM software)
81+> ParallelLibrary(char* serial_mode);
82Index: ../trunk-jpl/externalpackages/dakota/configs/6.2-mpi/BuildDakotaCustom.cmake.yosemite.patch
83===================================================================
84--- ../trunk-jpl/externalpackages/dakota/configs/6.2-mpi/BuildDakotaCustom.cmake.yosemite.patch (revision 0)
85+++ ../trunk-jpl/externalpackages/dakota/configs/6.2-mpi/BuildDakotaCustom.cmake.yosemite.patch (revision 19627)
86@@ -0,0 +1,29 @@
87+67a68,75
88+> set( DAKOTA_HAVE_MPI ON
89+> CACHE BOOL "Always build with MPI enabled" FORCE)
90+> set( MPI_INCLUDE_PATH
91+> "$ENV{ISSM_DIR}/externalpackages/mpich/install/include"
92+> CACHE FILEPATH "Use installed MPI headers" FORCE)
93+> set( MPI_LIBRARY
94+> "$ENV{ISSM_DIR}/externalpackages/mpich/install/lib/libmpich.a"
95+> CACHE FILEPATH "Use installed MPI library" FORCE)
96+73,77c73,77
97+< #set(BOOST_ROOT
98+< # "path/to/custom/Boost/install/directory"
99+< # CACHE PATH "Use non-standard Boost install" FORCE)
100+< #set( Boost_NO_SYSTEM_PATHS TRUE
101+< # CACHE BOOL "Supress search paths other than BOOST_ROOT" FORCE)
102+---
103+> set(BOOST_ROOT
104+> "$ENV{ISSM_DIR}/externalpackages/boost/install"
105+> CACHE PATH "Use non-standard Boost install" FORCE)
106+> set( Boost_NO_SYSTEM_PATHS TRUE
107+> CACHE BOOL "Supress search paths other than BOOST_ROOT" FORCE)
108+91,93c91,93
109+< #set( CMAKE_INSTALL_PREFIX
110+< # "/path/to/Dakota/installation"
111+< # CACHE PATH "Path to Dakota installation" )
112+---
113+> set( CMAKE_INSTALL_PREFIX
114+> "$ENV{ISSM_DIR}/externalpackages/dakota/install"
115+> CACHE PATH "Path to Dakota installation" )
116Index: ../trunk-jpl/externalpackages/dakota/configs/6.2-mpi/NonDSampling.cpp.patch
117===================================================================
118--- ../trunk-jpl/externalpackages/dakota/configs/6.2-mpi/NonDSampling.cpp.patch (revision 0)
119+++ ../trunk-jpl/externalpackages/dakota/configs/6.2-mpi/NonDSampling.cpp.patch (revision 19627)
120@@ -0,0 +1,25 @@
121+780,786c780,787
122+< if (!subIteratorFlag) {
123+< nonDSampCorr.compute_correlations(vars_samples, resp_samples);
124+< // archive the correlations to the results DB
125+< nonDSampCorr.archive_correlations(run_identifier(), resultsDB, cv_labels,
126+< div_labels, dsv_labels, drv_labels,
127+< iteratedModel.response_labels());
128+< }
129+---
130+> //don't compute for now, too expensive.
131+> // if (!subIteratorFlag) {
132+> // nonDSampCorr.compute_correlations(vars_samples, resp_samples);
133+> // // archive the correlations to the results DB
134+> // nonDSampCorr.archive_correlations(run_identifier(), resultsDB, cv_labels,
135+> // div_labels, dsv_labels, drv_labels,
136+> // iteratedModel.response_labels());
137+> // }
138+1277,1278c1278,1281
139+< nonDSampCorr.print_correlations(s, cv_labels, div_labels, dsv_labels,
140+< drv_labels,iteratedModel.response_labels());
141+---
142+>
143+> //don't output for now.
144+> // nonDSampCorr.print_correlations(s, cv_labels, div_labels, dsv_labels,
145+> // drv_labels,iteratedModel.response_labels());
146Index: ../trunk-jpl/externalpackages/dakota/configs/6.2-mpi/BuildDakotaCustom.cmake.mac.patch
147===================================================================
148--- ../trunk-jpl/externalpackages/dakota/configs/6.2-mpi/BuildDakotaCustom.cmake.mac.patch (revision 0)
149+++ ../trunk-jpl/externalpackages/dakota/configs/6.2-mpi/BuildDakotaCustom.cmake.mac.patch (revision 19627)
150@@ -0,0 +1,8 @@
151+91,93c91,93
152+< #set( CMAKE_INSTALL_PREFIX
153+< # "/path/to/Dakota/installation"
154+< # CACHE PATH "Path to Dakota installation" )
155+---
156+> set( CMAKE_INSTALL_PREFIX
157+> "$ENV{ISSM_DIR}/externalpackages/dakota/install"
158+> CACHE PATH "Path to Dakota installation" )
159
160Property changes on: ../trunk-jpl/externalpackages/dakota/configs/6.2-mpi/BuildDakotaCustom.cmake.mac.patch
161___________________________________________________________________
162Added: svn:executable
163 + *
164
165Index: ../trunk-jpl/externalpackages/dakota/configs/6.2-mpi/BuildDakotaCustom.cmake.patch
166===================================================================
167--- ../trunk-jpl/externalpackages/dakota/configs/6.2-mpi/BuildDakotaCustom.cmake.patch (revision 0)
168+++ ../trunk-jpl/externalpackages/dakota/configs/6.2-mpi/BuildDakotaCustom.cmake.patch (revision 19627)
169@@ -0,0 +1,29 @@
170+67a68,75
171+> set( DAKOTA_HAVE_MPI ON
172+> CACHE BOOL "Always build with MPI enabled" FORCE)
173+> set( MPI_INCLUDE_PATH
174+> "$ENV{ISSM_DIR}/externalpackages/mpich/install/include"
175+> CACHE FILEPATH "Use installed MPI headers" FORCE)
176+> set( MPI_LIBRARY
177+> "$ENV{ISSM_DIR}/externalpackages/mpich/install/lib/libmpich.so"
178+> CACHE FILEPATH "Use installed MPI library" FORCE)
179+73,77c73,77
180+< #set(BOOST_ROOT
181+< # "path/to/custom/Boost/install/directory"
182+< # CACHE PATH "Use non-standard Boost install" FORCE)
183+< #set( Boost_NO_SYSTEM_PATHS TRUE
184+< # CACHE BOOL "Supress search paths other than BOOST_ROOT" FORCE)
185+---
186+> set(BOOST_ROOT
187+> "$ENV{ISSM_DIR}/externalpackages/boost/install"
188+> CACHE PATH "Use non-standard Boost install" FORCE)
189+> set( Boost_NO_SYSTEM_PATHS TRUE
190+> CACHE BOOL "Supress search paths other than BOOST_ROOT" FORCE)
191+91,93c91,93
192+< #set( CMAKE_INSTALL_PREFIX
193+< # "/path/to/Dakota/installation"
194+< # CACHE PATH "Path to Dakota installation" )
195+---
196+> set( CMAKE_INSTALL_PREFIX
197+> "$ENV{ISSM_DIR}/externalpackages/dakota/install"
198+> CACHE PATH "Path to Dakota installation" )
199Index: ../trunk-jpl/externalpackages/dakota/configs/6.2-mpi/CMakeLists.txt.patch
200===================================================================
201--- ../trunk-jpl/externalpackages/dakota/configs/6.2-mpi/CMakeLists.txt.patch (revision 0)
202+++ ../trunk-jpl/externalpackages/dakota/configs/6.2-mpi/CMakeLists.txt.patch (revision 19627)
203@@ -0,0 +1,4 @@
204+47a48,50
205+> set(BUILD_STATIC_LIBS ON CACHE BOOL "Set to ON to build static libraries" FORCE)
206+> set(BUILD_SHARED_LIBS OFF CACHE BOOL "Set to ON to build DSO libraries" FORCE)
207+>
208Index: ../trunk-jpl/externalpackages/dakota/configs/6.2-mpi/pecos_global_defs.hpp.patch
209===================================================================
210--- ../trunk-jpl/externalpackages/dakota/configs/6.2-mpi/pecos_global_defs.hpp.patch (revision 0)
211+++ ../trunk-jpl/externalpackages/dakota/configs/6.2-mpi/pecos_global_defs.hpp.patch (revision 19627)
212@@ -0,0 +1,4 @@
213+24a25
214+> #ifndef PI
215+25a27
216+> #endif
217Index: ../trunk-jpl/externalpackages/dakota/install-6.1-mpi-macosx64-yosemite.sh
218===================================================================
219--- ../trunk-jpl/externalpackages/dakota/install-6.1-mpi-macosx64-yosemite.sh (revision 19626)
220+++ ../trunk-jpl/externalpackages/dakota/install-6.1-mpi-macosx64-yosemite.sh (revision 19627)
221@@ -28,11 +28,11 @@
222 patch $DAK_SRC/CMakeLists.txt configs/6.1-mpi/CMakeLists.txt.patch
223
224 #Apply patches
225-patch src/src/ParallelLibrary.cpp configs/6.1/ParallelLibrary.cpp.patch
226-patch src/src/ParallelLibrary.hpp configs/6.1/ParallelLibrary.hpp.patch
227-patch src/src/NonDSampling.cpp configs/6.1/NonDSampling.cpp.patch
228-patch src/src/NonDLocalReliability.cpp configs/6.1/NonDLocalReliability.cpp.patch
229-patch src/packages/pecos/src/pecos_global_defs.hpp configs/6.1/pecos_global_defs.hpp.patch
230+patch src/src/ParallelLibrary.cpp configs/6.1-mpi/ParallelLibrary.cpp.patch
231+patch src/src/ParallelLibrary.hpp configs/6.1-mpi/ParallelLibrary.hpp.patch
232+patch src/src/NonDSampling.cpp configs/6.1-mpi/NonDSampling.cpp.patch
233+patch src/src/NonDLocalReliability.cpp configs/6.1-mpi/NonDLocalReliability.cpp.patch
234+patch src/packages/pecos/src/pecos_global_defs.hpp configs/6.1-mpi/pecos_global_defs.hpp.patch
235
236 #Configure dakota
237 cd $DAK_BUILD
238Index: ../trunk-jpl/externalpackages/dakota/install-6.2-mpi-macosx64-yosemite.sh
239===================================================================
240--- ../trunk-jpl/externalpackages/dakota/install-6.2-mpi-macosx64-yosemite.sh (revision 0)
241+++ ../trunk-jpl/externalpackages/dakota/install-6.2-mpi-macosx64-yosemite.sh (revision 19627)
242@@ -0,0 +1,57 @@
243+#!/bin/bash
244+set -eu
245+
246+#Some cleanup
247+rm -rf Dakota
248+rm -rf src
249+rm -rf build
250+rm -rf install
251+mkdir src build install
252+
253+#Download from ISSM server
254+#$ISSM_DIR/scripts/DownloadExternalPackage.py 'http://issm.jpl.nasa.gov/files/externalpackages/dakota-6.1-public.src.tar.gz' 'dakota-6.1-public-src.tar.gz'
255+
256+#Untar
257+tar -zxvf dakota-6.2-public.src.tar.gz
258+
259+#Move Dakota to src directory
260+mv dakota-6.2.0.src/* src
261+rm -rf dakota-6.2.0.src
262+
263+#Set up Dakota cmake variables and config
264+export DAK_SRC=$ISSM_DIR/externalpackages/dakota/src
265+export DAK_BUILD=$ISSM_DIR/externalpackages/dakota/build
266+export MPIHOME=$ISSM_DIR/externalpackages/mpich/install
267+cp $DAK_SRC/cmake/BuildDakotaTemplate.cmake $DAK_SRC/cmake/BuildDakotaCustom.cmake
268+patch $DAK_SRC/cmake/BuildDakotaCustom.cmake configs/6.2-mpi/BuildDakotaCustom.cmake.yosemite.patch
269+patch $DAK_SRC/cmake/DakotaDev.cmake configs/6.2-mpi/DakotaDev.cmake.patch
270+patch $DAK_SRC/CMakeLists.txt configs/6.2-mpi/CMakeLists.txt.patch
271+
272+#Apply patches
273+patch src/src/NonDSampling.cpp configs/6.2-mpi/NonDSampling.cpp.patch
274+patch src/src/NonDLocalReliability.cpp configs/6.2-mpi/NonDLocalReliability.cpp.patch
275+patch src/packages/pecos/src/pecos_global_defs.hpp configs/6.2-mpi/pecos_global_defs.hpp.patch
276+
277+#Configure dakota
278+cd $DAK_BUILD
279+
280+cmake -D CMAKE_C_COMPILER=$ISSM_DIR/externalpackages/mpich/install/bin/mpicc \
281+ -D CMAKE_CXX_COMPILER=$ISSM_DIR/externalpackages/mpich/install/bin/mpicxx \
282+ -D CMAKE_Fortran_COMPILER=$ISSM_DIR/externalpackages/mpich/install/bin/mpif77 \
283+ -D LDFLAGS="-std=gnu++0x" \
284+ -C $DAK_SRC/cmake/BuildDakotaCustom.cmake \
285+ -C $DAK_SRC/cmake/DakotaDev.cmake \
286+ $DAK_SRC
287+cd ..
288+
289+#Compile and install dakota
290+cd $DAK_BUILD
291+if [ $# -eq 0 ];
292+then
293+ make
294+ make install
295+else
296+ make -j $1
297+ make -j $1 install
298+fi
299+cd ..
300
301Property changes on: ../trunk-jpl/externalpackages/dakota/install-6.2-mpi-macosx64-yosemite.sh
302___________________________________________________________________
303Added: svn:executable
304 + *
305
Note: See TracBrowser for help on using the repository browser.