Changes between Version 30 and Version 31 of ccafeBgpNew


Ignore:
Timestamp:
11/22/10 02:36:33 (13 years ago)
Author:
muszala
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • ccafeBgpNew

    v30 v31  
    1111 3. libxml-2.7.3 
    1212   * run select regression tests 
    13  4. babel out of dev repo 
     13 4. babel out of dev repo (build and tests [wiki:currentBabel here])  
    1414   * run select regression tests 
    1515 5. cca-spec-babel 
     
    217217 
    218218 * The babel directions have their own page since babel is often used without the entire CCA tool chain. 
    219  
    220  * If you're still reading this...awesome.  The next step is building babel.  I prefer to build out of the development repository since I can then commit changes back quicker if I find something that needs fixing.  I will assume you have an account.  If you do not have one contact Tom Epperly at llnl. 
    221  
    222  * For now build without Java and without any Fortran variant.  If we bring Impact (a Fortran code) back into the mix, we will have to address this. 
    223 {{{ 
    224 >>svn co svn+ssh://svn.cca-forum.org/svn/babel/trunk babelDev 
    225 >>cd babelDev 
    226 >>./autotool_rebuild.sh 
    227 >>./configure CC=mpixlc CXX=mpixlcxx FC=mpixlf90 F77=mpixlf77 --prefix=$BABEL_INSTALL --host=powerpc-bgp-linux-gnu \ 
    228 --without-sidlx \ 
    229 --with-gcc=no --enable-python=/bgsys/drivers/ppcfloor/gnu-linux/bin/python --with-libxml2=$LIBXML2_LOC \ 
    230 LDFLAGS=-qnostaticlink --enable-shared --disable-static host_alias=powerpc-bgp-linux-gnu --target=powerpc64-ibm-bgp \ 
    231 --with-ltdl-lib=$LIBTOOL_LOCATION/lib --with-ltdl-include=$LIBTOOL_LOCATION/include --without-libparsifal \ 
    232 PYTHONPATH=/soft/apps/python/python-2.6-cnk-gcc/numpy-1.3.0/lib/python2.6/site-packages CPP="gcc -E" \ 
    233 target_alias=powerpc64-ibm-bgp --enable-fortran03=yes --enable-fortran90=yes --enable-fortran77=yes --enable-java=no \ 
    234 --with-arch=IBMXL --with-F90-vendor=IBMXL 
    235 >>./contrib/bgpSurveyorLibtoolFix.sh 
    236 >>make ; make install 
    237 }}} 
    238  
    239  * The build and install should have proceeded without error. 
    240  
    241  * Since I was having problems with getting regression tests to run, I first tried to get something in examples/hello working: 
    242 {{{ 
    243 >>cd examples/hello 
    244 >>make check 
    245 >>cd ../.. 
    246 >>./contrib/bgpSurveyorExampleFix.sh 
    247 >>cd examples/hello/runPython/ 
    248 >>qsub --mode script -A cca-tools -t 5 -n 1 ./runPy2C 
    249 }}} 
    250  
    251  * If it works you should see the following in an output file: 
    252 {{{ 
    253 >>more 198866.output 
    254 Hello world! 
    255 }}} 
    256  
    257  * Now run: 
    258 {{{ 
    259 >>qsub --mode script -A cca-tools -t 5 -n 1 ./runPy2Cxx 
    260 >>more 198867.output 
    261 Hello world2! 
    262 process group 974 has completed  
    263 }}} 
    264  
    265  * Try running something from runCxx: 
    266 {{{ 
    267 >>cd ../runCxx 
    268 >>qsub --mode script -A cca-tools -t 15 -n 1 runAll.sh 
    269 >>more 198868.output 
    270 Hello from C... 
    271 Hello from C++... 
    272 f77 support not enabled 
    273 }}} 
    274 And the output is as we expect it.  Now I will move on to regression tests (regression/args) to make sure Cxx->Python and Python->Python work. 
    275  
    276  * All regression tests must be run individually.  Note, when you run a test with 1 node we're still charged for using all 64 processors.  For this reason, I run one or two tests to make sure babel was compiled correctly but nothing more.  If we run into problems down the road we will test that individual babel functionality or if necessary, build an MPI test harness which would allow us to use all 64 processors. 
    277 {{{ 
    278 >>cd regression/output 
    279 >>make check 
    280 >>cd ../args ; make check 
    281 >>cd ../.. ; ./contrib/bgpSurveyorRegressionFix.sh ; cd - 
    282 }}} 
    283  
    284  
    285  
    286  * Python -> {C, Cxx, Python}.  For this I change directories to runPython and use the runPy2* scripts. I also added the line below to runPy2C. 
    287 {{{ 
    288 PYTHONPATH=/soft/apps/python/python-2.6-cnk-gcc/numpy-1.3.0/lib/python2.6/site-packages:${PYTHONPATH} 
    289 }}} 
    290    * Python -> C 
    291 {{{ 
    292 >>cd ../runPython 
    293 >>qsub --mode script -A cca-tools -t 5 -n 1 ./runPy2C 
    294 198879 
    295 >>tail 198879.output 
    296 COMMENT: (1, 3.14 + 3.14i) == obj.passoutdcomplex() 
    297 RESULT 46 PASS 
    298 PART 47 
    299 COMMENT: (1, 3.14 - 3.14i) == obj.passinoutdcomplex(3.14 + 3.14i) 
    300 RESULT 47 PASS 
    301 PART 48 
    302 COMMENT: (3.14 + 3.14i, 3.14 + 3.14i, 3.14 + 3.14i) = obj.passeverywheredcomplex(3.14 + 3.14i, 3.14 - 3.14i) 
    303 RESULT 48 PASS 
    304 TEST_RESULT PASS 
    305 process group 991 has completed 
    306 }}} 
    307    * Python -> Cxx 
    308 {{{ 
    309 >>cd ../runPython 
    310 >>qsub --mode script -A cca-tools -t 5 -n 1 ./runPy2Cxx 
    311 198880 
    312 >>tail 198880.output 
    313 COMMENT: (1, 3.14 + 3.14i) == obj.passoutdcomplex() 
    314 RESULT 46 PASS 
    315 PART 47 
    316 COMMENT: (1, 3.14 - 3.14i) == obj.passinoutdcomplex(3.14 + 3.14i) 
    317 RESULT 47 PASS 
    318 PART 48 
    319 COMMENT: (3.14 + 3.14i, 3.14 + 3.14i, 3.14 + 3.14i) = obj.passeverywheredcomplex(3.14 + 3.14i, 3.14 - 3.14i) 
    320 RESULT 48 PASS 
    321 TEST_RESULT PASS 
    322 process group 993 has completed 
    323 }}} 
    324    * Python -> Python 
    325 {{{ 
    326 >>cd Py2Py 
    327 >>qsub --mode script -A cca-tools -t 5 -n 1 ./runPy2Py.sh 
    328 198882 
    329 >>tail 198882.output 
    330 PART 46 
    331 COMMENT: (1, 3.14 + 3.14i) == obj.passoutdcomplex() 
    332 RESULT 46 PASS 
    333 PART 47 
    334 COMMENT: (1, 3.14 - 3.14i) == obj.passinoutdcomplex(3.14 + 3.14i) 
    335 RESULT 47 PASS 
    336 PART 48 
    337 COMMENT: (3.14 + 3.14i, 3.14 + 3.14i, 3.14 + 3.14i) = obj.passeverywheredcomplex(3.14 + 3.14i, 3.14 - 3.14i) 
    338 RESULT 48 PASS 
    339 TEST_RESULT PASS 
    340 }}} 
    341  * Cxx -> {Cxx, C, Python}.  I run the binaries directly out of the .libs directory.  The SIDL_DLL_PATH to the library as well as the argument to lt-runAll is changing. 
    342    * Cxx -> Cxx 
    343 {{{ 
    344 >>qsub --mode vn -n 1 -A cca-tools -t 15 \ 
    345 --env SIDL_DEBUG_OPEN=1:\ 
    346 LD_LIBRARY_PATH="../../../lib/sidlstubs/Cxx/.libs:/bgsys/drivers/ppcfloor/lib64:/dbhome/db2cat/sqllib/lib64:/dbhome/db2cat/sqllib/lib32":\ 
    347 SIDL_DLL_PATH="../libCxx/libImpl.scl;../../output/libC/libOutput.scl;../../../runtime/sidlx/libsidlx.scl" \ 
    348 /gpfs/home/muszala/ccaToolChain/babelDev/regression/args/runCxx/.libs/lt-runAll C++ 
    349 >>tail 198872.output 
    350 COMMENT: obj.passoutdcomplex( out ) == true && out.real() == 3.14 && out.imag() == 3.14 
    351 RESULT 38 PASS 
    352 PART 39 
    353 COMMENT: obj.passinoutdcomplex( inout ) == true && inout.real() == 3.14 && inout.imag() == -3.14 
    354 RESULT 39 PASS 
    355 COMMENT: retval = obj.passeverywheredcomplex( in, out, inout ); 
    356 PART 40 
    357 COMMENT: retval.real() == 3.14 && retval.imag() == 3.14 && out.real() == 3.14 && out.imag() == 3.14 && inout.real() == 3.14 && inout.imag() == 3.14 
    358 RESULT 40 PASS 
    359 TEST_RESULT PASS 
    360 }}} 
    361    * Cxx -> C 
    362 {{{ 
    363 >>qsub --mode vn -n 1 -A cca-tools -t 15 \ 
    364 --env SIDL_DEBUG_OPEN=1:\ 
    365 LD_LIBRARY_PATH="../../../lib/sidlstubs/Cxx/.libs:/bgsys/drivers/ppcfloor/lib64:/dbhome/db2cat/sqllib/lib64:/dbhome/db2cat/sqllib/lib32":\ 
    366 SIDL_DLL_PATH="../libC/libImpl.scl;../../output/libC/libOutput.scl;../../../runtime/sidlx/libsidlx.scl" \ 
    367 /gpfs/home/muszala/ccaToolChain/babelDev/regression/args/runCxx/.libs/lt-runAll C 
    368 >>q 
    369 198875  muszala  00:15:00  1      queued  None   
    370 >>tail 198875.output 
    371 COMMENT: obj.passoutdcomplex( out ) == true && out.real() == 3.14 && out.imag() == 3.14 
    372 RESULT 38 PASS 
    373 PART 39 
    374 COMMENT: obj.passinoutdcomplex( inout ) == true && inout.real() == 3.14 && inout.imag() == -3.14 
    375 RESULT 39 PASS 
    376 COMMENT: retval = obj.passeverywheredcomplex( in, out, inout ); 
    377 PART 40 
    378 COMMENT: retval.real() == 3.14 && retval.imag() == 3.14 && out.real() == 3.14 && out.imag() == 3.14 && inout.real() == 3.14 && inout.imag() == 3.14 
    379 RESULT 40 PASS 
    380 TEST_RESULT PASS 
    381 }}} 
    382  
    383  
    384  * If you do run 'make check' you will build the tests, attempt to run them on the login nodes and all will be reported as broken.  If you do run 'make check' to completion you will see the following: 
    385 {{{ 
    386 >>make check 
    387 ... 
    388 ... 
    389 305 B struct/runPython/Py2Py/runPy2Py.sh              0   0% [parse error]  
    390 306 B sort/runPython/Py2Py/runPy2Py.sh                0   0% [parse error]  
    391 307 B strings/runPython/Py2Py/runPy2Py.sh             0   0% [parse error]  
    392 308 B wrapper/runPython/Py2Py/runPy2Py.sh             0   0% [parse error]  
    393 309 B wrapper/runPython/runPy2C                       0   0% [parse error]  
    394 310 B wrapper/runPython/runPy2Cxx                     0   0% [parse error]  
    395 Error: gantlet: 3 failed tests and 221 broken tests. 
    396 make[4]: *** [run-gantlet] Error 224 
    397 make[4]: Leaving directory `/gpfs/home/muszala/ccaToolChain/babelDev/regression' 
    398 make[3]: *** [check-local] Error 2 
    399 make[3]: Leaving directory `/gpfs/home/muszala/ccaToolChain/babelDev/regression' 
    400 make[2]: *** [check-am] Error 2 
    401 make[2]: Leaving directory `/gpfs/home/muszala/ccaToolChain/babelDev/regression' 
    402 make[1]: *** [check-recursive] Error 1 
    403 make[1]: Leaving directory `/gpfs/home/muszala/ccaToolChain/babelDev/regression' 
    404 make: *** [check-recursive] Error 1 
    405 }}} 
    406  
    407  
    408  
    409219 
    410220= 5. Build cca-babel-spec =