HyPhy message board | |
http://www.hyphy.org/cgi-bin/hyphy_forums/YaBB.pl
HYPHY Package >> HyPhy feedback >> Failure to compile MPI version http://www.hyphy.org/cgi-bin/hyphy_forums/YaBB.pl?num=1294356267 Message started by Dan Fulop on Jan 6th, 2011 at 3:24pm |
Title: Failure to compile MPI version Post by Dan Fulop on Jan 6th, 2011 at 3:24pm
We're having issues compiling HyPhy on both of our lab servers. One is a 8-core Mac and the other a 16-core Ubuntu 9.10 system. I am specifically writing about the Ubuntu system, but the issue is essentially the same in both. We'd like to install the MPI version, but even the MP version does not install properly. The MP version runs super slow (many times slower than my laptop) and slows down (non-HyPhy) active processes that were already running.
The MPI version simply fails to compile properly and the compilation then defaults to MP. I would greatly appreciate any help in solving this issue!! Thanks! Dan. Here's the terminal output from the last compilation attempt: antat@whitney:Scripts $ bash buildFromSVN.sh MPI cp: cannot create regular file `MPI/Library/.svn/all-wcprops': Permission denied cp: cannot create regular file `MPI/Library/.svn/entries': Permission denied cp: cannot create regular file `MPI/Library/.svn/text-base/build.sh.svn-base': Permission denied cp: cannot create regular file `MPI/Library/.svn/text-base/README.svn-base': Permission denied cp: cannot create regular file `MPI/Library/.svn/text-base/setup.py.svn-base': Permission denied cp: cannot create regular file `MPI/Library/Examples/.svn/all-wcprops': Permission denied cp: cannot create regular file `MPI/Library/Examples/.svn/entries': Permission denied cp: cannot create regular file `MPI/Library/Examples/HBL/.svn/all-wcprops': Permission denied cp: cannot create regular file `MPI/Library/Examples/HBL/.svn/entries': Permission denied cp: cannot create regular file `MPI/Library/Examples/HBL/.svn/text-base/F81.bf.svn-base': Permission denied cp: cannot create regular file `MPI/Library/Examples/HBL/.svn/text-base/HKY85.bf.svn-base': Permission denied cp: cannot create regular file `MPI/Library/Examples/HBL/data/.svn/all-wcprops': Permission denied cp: cannot create regular file `MPI/Library/Examples/HBL/data/.svn/entries': Permission denied cp: cannot create regular file `MPI/Library/Examples/HBL/data/.svn/text-base/hiv.nuc.svn-base': Permission denied cp: cannot create regular file `MPI/Library/Examples/Python/.svn/all-wcprops': Permission denied cp: cannot create regular file `MPI/Library/Examples/Python/.svn/entries': Permission denied cp: cannot create regular file `MPI/Library/Examples/Python/.svn/text-base/BasicHyPhy.py.svn-base': Permission denied cp: cannot create regular file `MPI/Library/Examples/R/.svn/all-wcprops': Permission denied cp: cannot create regular file `MPI/Library/Examples/R/.svn/entries': Permission denied cp: cannot create regular file `MPI/Library/Examples/R/.svn/text-base/BasicHyPhy.R.svn-base': Permission denied cp: cannot create regular file `MPI/Library/LibraryModules/.svn/all-wcprops': Permission denied cp: cannot create regular file `MPI/Library/LibraryModules/.svn/entries': Permission denied cp: cannot create regular file `MPI/Library/LibraryModules/Python/.svn/all-wcprops': Permission denied cp: cannot create regular file `MPI/Library/LibraryModules/Python/.svn/entries': Permission denied cp: cannot create regular file `MPI/Library/LibraryModules/Python/_HyPhy/.svn/all-wcprops': Permission denied cp: cannot create regular file `MPI/Library/LibraryModules/Python/_HyPhy/.svn/entries': Permission denied cp: cannot create regular file `MPI/Library/LibraryModules/Python/_HyPhy/.svn/text-base/__init__.py.svn-base': Permission denied cp: cannot create regular file `MPI/Library/LibraryModules/Python/HyPhy/.svn/all-wcprops': Permission denied cp: cannot create regular file `MPI/Library/LibraryModules/Python/HyPhy/.svn/entries': Permission denied cp: cannot create regular file `MPI/Library/LibraryModules/Python/HyPhy/.svn/text-base/__init__.py.svn-base': Permission denied cp: cannot create regular file `MPI/Library/LibraryModules/R/.svn/all-wcprops': Permission denied cp: cannot create regular file `MPI/Library/LibraryModules/R/.svn/entries': Permission denied cp: cannot create regular file `MPI/Library/LibraryModules/R/.svn/text-base/HyPhy.R.svn-base': Permission denied cp: cannot create regular file `MPI/Library/Link/.svn/all-wcprops': Permission denied cp: cannot create regular file `MPI/Library/Link/.svn/entries': Permission denied cp: cannot create regular file `MPI/Library/Link/.svn/text-base/HyPhy.py.svn-base': Permission denied cp: cannot create regular file `MPI/Library/Link/.svn/text-base/THyPhy.cpp.svn-base': Permission denied cp: cannot create regular file `MPI/Library/Link/.svn/text-base/THyPhy.h.svn-base': Permission denied cp: cannot create regular file `MPI/Library/Link/.svn/text-base/THyPhy_wrap.cxx.svn-base': Permission denied cp: cannot create regular file `MPI/Library/SWIGWrappers/.svn/all-wcprops': Permission denied cp: cannot create regular file `MPI/Library/SWIGWrappers/.svn/entries': Permission denied cp: cannot create regular file `MPI/Library/SWIGWrappers/.svn/text-base/THyPhy_python.cpp.svn-base': Permission denied cp: cannot create regular file `MPI/Library/SWIGWrappers/.svn/text-base/THyPhy_R.cpp.svn-base': Permission denied Linux Checking for curl /usr/bin/ld: cannot find -lssl collect2: ld returned 1 exit status Curl seems to be absent (setting up compiler options skip CURL code) +-----------------------------------------------------------+ |Building a multi-threaded HYPHYKernelMP with setconcurrency| +-----------------------------------------------------------+ COMPILER=g++, gcc COMPILER_FLAGS= -w -c -fsigned-char -O3 -fpermissive -I/Network/Servers/coloma.plb.ucdavis.edu/Users/antat/Downloads/hyphy/MPI/Source -I/Network/Servers/coloma.plb.ucdavis.edu/Users/antat/Downloads/hyphy/MPI/Source/SQLite -D INTPTR_TYPE=long -D __UNIX__ -D _SLKP_LFENGINE_REWRITE_ -D__HYPHY_NO_CURL__ -D __MP__ -D __MP2__ -fopenmp Building HYNetInterface.cpp Complete Building Net.cpp Complete Building baseobj.cpp Complete Building batchlan.cpp Complete Building batchlan2.cpp Complete Building bayesgraph.cpp Complete Building bayesgraph2.cpp Complete Building bgm.cpp Complete Building bgm2.cpp Complete Building calcnode.cpp Complete Building calcnode2.cpp Complete Building category.cpp Complete Building error.cpp Complete Building fisher_exact.cpp Complete Building hyphyunixutils.cpp Complete Building likefunc.cpp Complete Building likefunc2.cpp Complete Building list.cpp Complete Building matrix.cpp Complete Building nexus.cpp Complete Building parser.cpp Complete Building parser2.cpp Complete Building polynoml.cpp Complete Building regex.cpp Complete Building scfg.cpp Complete Building sequence.cpp Complete Building site.cpp Complete Building strings.cpp Complete Building main-unix.cxx Complete Building SQLite file sqlite3.c Complete Linking HYPHYMP g++ -w -fsigned-char -D__HYPHY_NO_CURL__ -o HYPHYMP obj_MP2/HYNetInterface.cpp.o obj_MP2/Net.cpp.o obj_MP2/baseobj.cpp.o obj_MP2/batchlan.cpp.o obj_MP2/batchlan2.cpp.o obj_MP2/bayesgraph.cpp.o obj_MP2/bayesgraph2.cpp.o obj_MP2/bgm.cpp.o obj_MP2/bgm2.cpp.o obj_MP2/calcnode.cpp.o obj_MP2/calcnode2.cpp.o obj_MP2/category.cpp.o obj_MP2/error.cpp.o obj_MP2/fisher_exact.cpp.o obj_MP2/hyphyunixutils.cpp.o obj_MP2/likefunc.cpp.o obj_MP2/likefunc2.cpp.o obj_MP2/list.cpp.o obj_MP2/main-unix.cxx.o obj_MP2/matrix.cpp.o obj_MP2/nexus.cpp.o obj_MP2/parser.cpp.o obj_MP2/parser2.cpp.o obj_MP2/polynoml.cpp.o obj_MP2/regex.cpp.o obj_MP2/scfg.cpp.o obj_MP2/sequence.cpp.o obj_MP2/site.cpp.o obj_MP2/sqlite3.c.o obj_MP2/strings.cpp.o -lm -lpthread -fopenmp -ldl obj_MP2/sqlite3.c.o: In function `exprDup': sqlite3.c:(.text+0x2c1ec): warning: memset used with constant zero length parameter; this could be due to transposed parameters Finished Linux Checking for curl /usr/bin/ld: cannot find -lssl collect2: ld returned 1 exit status Curl seems to be absent (setting up compiler options skip CURL code) |
Title: Re: Failure to compile MPI version Post by Sergei on Jan 7th, 2011 at 11:31am
Dear Dan,
The build scripts for HyPhy are quite primitive; I apologize for your issues. Try the following. 1). When you run buildFromSVN.sh from /path/to/hyphy/trunk/Scripts/ the script will create a directory /path/to/hyphy/HYPHY (where /path/to needs to be replaced with the appropriate bit for your system). 2). cd to /path/to/hyphy/HYPHY 3). Try running $bash build.sh MPI from this directory 4). If this fails, cp build.sh to build_mpi.sh, edit build_mpi.sh and modify the variables for compilers as follows [code] COMPILER="mpic++"; COMPILERC = "mpicc" [/code] 5). Run $bash build_mpi.sh MPI The behavior of the MP version is odd. We have an Ubuntu 9.xx system and I haven't seen anything like that. Try giving HYPHYMP a CPU=2 (or another number) to force it to run on fewer than the total number of processors in the system Sergei |
Title: Re: Failure to compile MPI version Post by Dan Fulop on Jan 7th, 2011 at 2:16pm
Hi Sergei,
Thank you so much for the prompt response! We're still getting a compilation error; something to do with a missing lpmich. Also, even though we have Curl on that machine, the compilation script cannot find Curl. However, I don't know how much of a problem the Curl thing is. As far as the MP version, I have two simple questions: 1) How do I call HYPHYMP to specify that it run on a certain number of cores? 2) Is the MP or the MPI better? That is, what would run faster on a multicore machine? Thanks again for your help! Here's the new compilation output: antat@whitney:HYPHY $ sh build_mpi.sh MPI Linux [: 98: Linux: unexpected operator [: 98: Linux: unexpected operator Checking for curl /usr/bin/ld: cannot find -lssl collect2: ld returned 1 exit status Curl seems to be absent (setting up compiler options skip CURL code) [: 213: Linux: unexpected operator [: 213: Linux: unexpected operator +-----------------------------------------------------------+ |Building a single-threaded HYPHYKernelMPI for MPI | +-----------------------------------------------------------+ COMPILER=mpic++, mpicc COMPILER_FLAGS= -w -c -fsigned-char -O3 -fpermissive -I/Network/Servers/coloma.plb.ucdavis.edu/Users/antat/Downloads/hyphy/HYPHY/Source -I/Network/Servers/coloma.plb.ucdavis.edu/Users/antat/Downloads/hyphy/HYPHY/Source/SQLite -D INTPTR_TYPE=long -D __UNIX__ -D _SLKP_LFENGINE_REWRITE_ -D__HYPHY_NO_CURL__ -D __HYPHYMPI__ -D _SLKP_LFENGINE_REWRITE_ File HYNetInterface.cpp is up to date File Net.cpp is up to date File baseobj.cpp is up to date File batchlan.cpp is up to date File batchlan2.cpp is up to date File bayesgraph.cpp is up to date File bayesgraph2.cpp is up to date File bgm.cpp is up to date File bgm2.cpp is up to date File calcnode.cpp is up to date File calcnode2.cpp is up to date File category.cpp is up to date File error.cpp is up to date File fisher_exact.cpp is up to date File hyphyunixutils.cpp is up to date File likefunc.cpp is up to date File likefunc2.cpp is up to date File list.cpp is up to date File matrix.cpp is up to date File nexus.cpp is up to date File parser.cpp is up to date File parser2.cpp is up to date File polynoml.cpp is up to date File regex.cpp is up to date File scfg.cpp is up to date File sequence.cpp is up to date File site.cpp is up to date File strings.cpp is up to date File main-unix.cxx is up to date SQLite File sqlite3.c is up to date Linking HYPHYMPI mpic++ -w -fsigned-char -D__HYPHY_NO_CURL__ -o HYPHYMPI obj_MPI/HYNetInterface.cpp.o obj_MPI/Net.cpp.o obj_MPI/baseobj.cpp.o obj_MPI/batchlan.cpp.o obj_MPI/batchlan2.cpp.o obj_MPI/bayesgraph.cpp.o obj_MPI/bayesgraph2.cpp.o obj_MPI/bgm.cpp.o obj_MPI/bgm2.cpp.o obj_MPI/calcnode.cpp.o obj_MPI/calcnode2.cpp.o obj_MPI/category.cpp.o obj_MPI/error.cpp.o obj_MPI/fisher_exact.cpp.o obj_MPI/hyphyunixutils.cpp.o obj_MPI/likefunc.cpp.o obj_MPI/likefunc2.cpp.o obj_MPI/list.cpp.o obj_MPI/main-unix.cxx.o obj_MPI/matrix.cpp.o obj_MPI/nexus.cpp.o obj_MPI/parser.cpp.o obj_MPI/parser2.cpp.o obj_MPI/polynoml.cpp.o obj_MPI/regex.cpp.o obj_MPI/scfg.cpp.o obj_MPI/sequence.cpp.o obj_MPI/site.cpp.o obj_MPI/sqlite3.c.o obj_MPI/strings.cpp.o -lpthread -lm -lmpich -ldl /usr/bin/ld: cannot find -lmpich collect2: ld returned 1 exit status Finished |
Title: Re: Failure to compile MPI version Post by Sergei on Jan 7th, 2011 at 2:22pm
Hi Dan,
Please edit the build script further (around line 198) to replace Code (] LINKER_FLAGS=$CURL_LINKER_LIBS" -lpthread -lm -lmpich -ldl " [/code):
To respond to your questions: 1). Try $/path/to/HYPHYMP CPU=N BASEPATH=/path/to and replace N with the desired number of cores. Note that not all analyses will be able to utilize all the cores 2). This depends on the analysis -- only some of them can take advantage of MPI at all for example. Can you give me an idea of what you are trying to do with HyPhy? Sergei |
Title: Re: Failure to compile MPI version Post by Dan Fulop on Jan 7th, 2011 at 2:47pm
Hi Sergei,
Thanks again for the immediate response! The compilation seems to have worked. I'll test it out both the MP and MPI versions asap. I've read that for the MPI is best to use a wrapper script. I'm actually drafting another post about what method to use. I'll be looking for positive selection on a transcriptome-wide level. I'm planning to use you GenomeFitters batch files. By the way, kudos and thanks for building such an awesome and flexible analysis package! So, we have several thousand codon alignments or orthologous genes from 4 species, where 1 species has 2 varieties for a total of 5 terminal branches. There is a relatively far outgroup (i.e. the closest draft genome) that we've added to an equivalent set of codon alignments, so in those alignments we have 6 terminals. I'm trying to decide whether to run PARRIS (without partioning), because of the very small size and low sequence divergence in the data, or SLAC and FEL with a high nominal alpha level (say 0.25 or 0.3). Maybe all of the above is best? Given time limitations on this study (i.e. we need to get it done within the next month) I was not planning to use REL. Currently we have ~14,000 alignments, although I may filter these down with more stringent 1-to-1 orthology assignments and dropping all alignments with less than 5 or 10 SNPs. Thanks, Dan. |
Title: both MP and MPI work Post by Dan Fulop on Jan 7th, 2011 at 4:26pm
Hi Sergei,
I tested them and both MP and MPI work. Thanks again, Dan. |
HyPhy message board » Powered by YaBB 2.5.2! YaBB Forum Software © 2000-2024. All Rights Reserved. |