|
[Sponsors] |
Using Open-MPI with OpenFOAM 2.2.2 on openSUSE 13.1 |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
January 23, 2014, 13:05 |
Using Open-MPI with OpenFOAM 2.2.2 on openSUSE 13.1
|
#1 | |
Senior Member
Join Date: Nov 2012
Location: Bavaria
Posts: 145
Rep Power: 14 |
Hi,
I've up-graded OpenSUSE to version 13.1. and OpenFoam to version 2.2.2 I receive following error message once I try to start the calculation with mpirun: Quote:
OpenSuse 12.2/OF 2.2.1 I didn't face that problem. How can help? Where else could I post that problem? At the moment I am not able to run my calculations in parallel. The version I use and that makes the trouble: mpirun --version mpirun (Open MPI) 1.7.2 OpenFoam /etc/bashrc/ export WM_MPLIB=SYSTEMOPENMPI The version in the ThirdParty-2.2.2 folder openmpi-1.6.3 I've changed WM_MPLIB=OPENMPI, sourced ~/.bashrc, checked $FOAM_MPI=1.6.3 and tried to start parallel run. Same error message! I've just found the existing thread to the same topic: post428368http://www.cfd-online.com/Forums/ope...tml#post428368 Sorry' that I've opened a new one! I've tried to solve the problem accordingly but unsuccessfully! Please help!!! Aylalisa Last edited by aylalisa; January 24, 2014 at 12:19. |
||
January 24, 2014, 02:49 |
|
#2 |
Senior Member
Nima Samkhaniani
Join Date: Sep 2009
Location: Tehran, Iran
Posts: 1,267
Blog Entries: 1
Rep Power: 25 |
i had similar issue, in Ubuntu when i install the mpich package, so if you have this package, you maybe want to uninstall it then every thing works smoothly
__________________
My Personal Website (http://nimasamkhaniani.ir/) Telegram channel (https://t.me/cfd_foam) |
|
January 24, 2014, 05:01 |
MPI package
|
#3 | |
Senior Member
Join Date: Nov 2012
Location: Bavaria
Posts: 145
Rep Power: 14 |
Dear Nimasam,
I've installed Open MPI 1.7.2 and 1.6.3 1.7.2 comes with OpenSuse 13.1 1.6.3 comes with ThirdParty 2.2.2 Quote:
I've tried to use openmpi-1.6.3 instead of 1.7.2: In my PATH variable both mpi-versions were listed: :/usr/lib64/mpi/gcc/openmpi/bin: :/opt/ThirdParty-2.2.2/platforms/linux64Gcc/openmpi-1.6.3/bin: I've export PATH= in my users .bashrc without the first version. In OpenFOAMs bashrc I've set: export WM_MPLIB=OPENMPI OpenFOAMs bashrc is sourced in my users bashrc. After that change it seems that mpiversion 1.6.3 is used but gives another error message: mpirun: error while loading shared libraries: libopen-rte.so.4: cannot open shared object file: No such file or directory I've add another export in my home .bashrc including the new path where the missing file is located: export LD_LIBRARY_PATH=/.../..../usr/local/lib64 Now I get another error: Sorry! You were supposed to get help about: opal_init:startup:internal-failure But I couldn't open the help file: /opt/ThirdParty-2.2.2/platforms/linux64Gcc/openmpi-1.6.3/share/openmpi/help-opal-runtime.txt: No such file or directory. Sorry! -------------------------------------------------------------------------- [linux-0ze2:01786] [[INVALID],INVALID] ORTE_ERROR_LOG: Error in file runtime/orte_init.c at line 79 [linux-0ze2:01786] [[INVALID],INVALID] ORTE_ERROR_LOG: Error in file orterun.c at line 694 Why does Open MPI 1.7.2 (Systems version) not work with OP 12.3? How can I remedy that problem? Do I have to look for missing libraries manually? Does that problem occur because of OpenSuse update to 12.3? Aylalisa Last edited by aylalisa; January 24, 2014 at 12:19. |
||
January 24, 2014, 10:10 |
|
#4 |
Senior Member
|
Hi,
Can you describe your installation in more details? I've done fresh install of openSUSE 12.3, installed OpenFOAM 2.2.2 from RPMs (following the guide on the site) and... 1. System version of OpenMPI is 1.6 2. I can run solvers in parallel without any problems (well, there is a problem with default host file, but it is mentioned in guide and has nothing to do with shared memory) |
|
January 24, 2014, 11:49 |
Installation
|
#5 | |||
Senior Member
Join Date: Nov 2012
Location: Bavaria
Posts: 145
Rep Power: 14 |
Hi,
First step I've installed OpenSuse 13.1. With that version came the current openmpi version 1.7.2-2-1.3 and finally OpenFoam 2.2.2. I have followed the detailed installation documentation http://www.openfoam.org/download/suse.php I think openmpi 1.7.2 was installed with OpenSuse in /usr/lib64/mpi/gcc/openmpi/share/ My entries in OpenFoams etc/bashrc were Quote:
Quote:
I've tried to install openmpi 1.6.3 (from ThirdParty-2.2.2 package). I had to download that package first. I've received a list of error messages because I set path variables wrong. I did not know which one. Third Step: I uninstalled openmpi 1.6.3 and installed a save version: openmpi 1.4.5 I've built that version in /usr/local and changed the file /opt/OpenFOAM-2.2.2/etc/config/settings.sh Quote:
post only the second part: cd $FOAM_SRC/Pstream/dummy wclean cd ../mpi wclean cd .. ./Allwmake But it is not satisfying. Especially now since you have a openmpi 1.6.x version with openFoam 2.2.2 running. Which version did you install? 1.6.3 or 1.6.5? Third step: I would like to make at least openmpi 1.6.x running! Aylalisa |
||||
January 24, 2014, 12:03 |
|
#6 |
Senior Member
|
Are you sure you've installed 12.3 and not 13.1? Can you post contents of /etc/SuSE-release?
Here is rpm -qi openmpi: Code:
Name : opempi Version : 1.6 Release : 3.1.2 Architecture: x86_64 |
|
January 24, 2014, 12:14 |
Mistake
|
#7 |
Senior Member
Join Date: Nov 2012
Location: Bavaria
Posts: 145
Rep Power: 14 |
I am sorry! I mixed it up!
Your are right: I've installed OpenSUSE 13.1 (SORRY) Is there a way to make openmpi 1.6 or 1.7 running with OS 13.1? I've corrected my posts! |
|
January 24, 2014, 12:32 |
|
#8 |
Senior Member
|
Well, as there is no binary distribution for 13.1, I guess you'd better build OpenFOAM from source (http://openfoam.org/download/source.php).
Cause I don't have openSUSE 13.1 right now I can not say if there will be any problems with installation from source (though under OS X and openmpi 1.7.2 everything was OK). |
|
January 24, 2014, 12:44 |
|
#9 |
Senior Member
Join Date: Nov 2012
Location: Bavaria
Posts: 145
Rep Power: 14 |
Do I have to uninstall the current version first?
|
|
January 24, 2014, 12:51 |
|
#10 |
Senior Member
|
You can keep it if you want Or remove if it bothers you.
After building from sources you will be using bashrc from the new installation. Though you have to remove 'source <old bashrc location>' from your shell initialization files otherwise it will mess up environmental variables with broken version. |
|
January 24, 2014, 18:33 |
|
#11 | ||
Senior Member
Join Date: Nov 2012
Location: Bavaria
Posts: 145
Rep Power: 14 |
I've build from sources, as you suggested and followed the steps in the installation guide. Took some time.
Finally I've copied the tutorial files in the users OpenFoam directory and tried to test OpenFoam: blockMesh icoFoam paraFoam typing 'blockMesh' in the cavity test case gives that message: Quote:
If I do the RPM Pack installation in /opt/ everything works fine! After copying the tutorials in the user's OF directory I can start 'blockMesh' etc. At the moment I can not test openmpi 1.6.3 because OF doesn't run anymore. foamInstallationTest delivers: Quote:
~/OpenFOAM/lisa-2.2.2/run/tutorials/incompressible/icoFoam/cavity Can you provide advice Aylalisa |
|||
January 25, 2014, 07:22 |
|
#12 |
Senior Member
|
I wish I were a telepath but it's not a case.
1. Did you uninstall your previous binary OpenFOAM installation? 2. Where did you install new version? (if the answer for the first question if no and you've done source install in /opt/OpenFOAM-2.2.2 you'll have conflicting installations; I think this is actually a case cause there is 'WARNING: Conflicting installations' in foamInstallationTest) 3. Can you show your bashrc? What MPI library do you use? 4. Do you build OpenFOAM for yourself or for shared environment? If it's just for you, why don't you install it in $HOME/OpenFOAM (which is the easiest way of building OpenFOAM)? Code:
If 'BlockMesh' is not a typo you can use command-not-found to lookup the package that contains it, like this: cnf BlockMesh |
|
January 25, 2014, 13:07 |
|
#13 | ||
Senior Member
Join Date: Nov 2012
Location: Bavaria
Posts: 145
Rep Power: 14 |
Hi,
even if I run the risk of going down with my OpenFOAM boat I am somehow happy that you are not a telepath . I've installed from source in /opt/ OpenFOAM-2.2.2.tgz ThirdParty-2.2.2.tgz Result: I could not start OpenFOAM from inside my home directory. I really would like to know why it does not work. After my first OpenFOAM installation some time ago I came accross the same problem (but could not solve it). Do I have to set different variables manually? I would like to know the reason! After that I've removed OpenFOAM and wanted to install again (RPM Packs) in /opt/. Bevor I start I had assured myself that OpenFOAM was gone and /opt/ was empty. BUT None of the three download, uncompress & install command lines from documentation guide were working! The message claimed that the programmes are already installed: scotch, ParaView, OpenFOAM. sudo rpm -i http://www.openfoam.org/download/sus...0-1.x86_64.rpm --> programm already installed!???? How is that possible? /opt/ was empty (ls -l). Finally I've looked for the programs in Yast and there I could find (and delete) them??! The detail folder in YAST showed the location /opt/...? At the moment - as u suggest - I build from source in my home directory. --> ~/OpenFOAM/ --> OpenFOAM-2.2.2.tgz --> ThirdParty-2.2.2.tgz content of my user bashrc (now): Quote:
I've definitely sourced OpenFOAMS /etc/bashrc in my users ~/.bashrc the line was like that: Quote:
Thanks for your time ! Aylalisa |
|||
January 25, 2014, 13:45 |
|
#14 |
Senior Member
|
Hi,
I'd like to clarify things with removal of installed OpenFOAM. If you installed it using rpm (or zypper, or YaST), you have to remove it using the same utility. If you just delete directories it will create a mess (orphan entries in RPM database, so RPM will still think that packages are in place and will tell you that packages are already installed, though IIRC you can use --force flag to install the packages anyway). When you were building OpenFOAM in /opt folder did you use root account? If so there might be certain mess with file permissions that created problems using OpenFOAM with user's account. AFAIR it was necessary to fix permissions after compilation when I was installing OF on cluster. Still I didn't get if you're able to use OF now or not? |
|
January 26, 2014, 09:08 |
|
#15 |
Senior Member
Join Date: Nov 2012
Location: Bavaria
Posts: 145
Rep Power: 14 |
First of all I've installed OF in /opt/ --> rpm pack installation. As root. It worked without any problems, logged in as user, from my user directory. Only openmpi did not want to work.
Before reinstallation I've made that mistake and just removed the OF folder instead of using rpm utility. This gruppy proceeding explains why I could not reinstall it again in the same folder. I could finally fix it. When exactly do I have to set permissions during installation from source in /opt/ to make sure every user can start OF from its user account? It is possible that I have to install OF on a server to make it available for many users, then I have to install in /opt/ or /local/....and will face the same problem. Situation now: The source pack installation just finished. I've installed OP in ~/OpenFOAM/ as u suggested. OpenFOAM works again! Including openmpi 1.6.3 (which is included in ThirdParty-2.2.2.tgz)! Remaining questions: I would like to know why the original installation setup supplied the openmpi error I've posted in my first thread and I would like to know how I can change permissions after compilation to install OP in /opt/ (from source) without problems for different users. Aylalisa |
|
January 26, 2014, 13:13 |
|
#16 | |
Senior Member
|
Quote:
2. This depends on the level of control you'd like to have over users And I'll assume below that the problem was really in permissions and not in file mess between old binary installation and new installation from sources (when you were trying to install OF into /opt). The easiest way is to install OF in /opt from sources using root account and then execute something like (assuming you've installed OF into /opt/OpenFOAM-2.2.2 and /opt/ThirdParty-2.2.2) Code:
chmod -R a+r /opt/OpenFOAM-2.2.2 /opt/ThirdParty-2.2.2 find /opt/OpenFOAM-2.2.2 -type f -executable -exec chmod a+x {} + find /opt/ThirdParty-2.2.2 -type f -executable -exec chmod a+x {} + Or you can create group openfoam for the users who will be allowed to use OF. Then change gid of the files in OpenFOAM-2.2.2 to open foam with Code:
chown -R :openfoam /opt/OpenFOAM-2.2.2 /opt/ThirdParty-2.2.2 Code:
chmod -R ug=r,o=u-rwx /opt/OpenFOAM-2.2.2 /opt/ThirdParty-2.2.2 find /opt/OpenFOAM-2.2.2 -type f -executable -exec chmod ug+x {} + find /opt/ThirdParty-2.2.2 -type f -executable -exec chmod ug+x {} + You might want to separate users in just OF users and OF developers, create two difference groups, and set permissions accordingly. In this case you'll need to separate access to binaries and sources. (There might be errors in provided commands as I don't have access to openSUSE installation right now to test them) |
||
January 27, 2014, 10:14 |
|
#17 |
Senior Member
|
Hi,
Today I have an access to my OpenSUSE 13.1 installation and I repeated installation process with root account. Here is my findings: 1. I had clean install of OpenSUSE 13.1 2. I installed OF to /opt/OpenFOAM. It was more or less straightforward: - Unpack OpenFOAM-2.2.2.tgz and ThirdParty-2.2.2.tgz to /opt/OpenFOAM - Modify bashrc Installation folder Code:
foamInstall = /opt/$WM_PROJECT Code:
export WM_MPLIB = SYSTEMOPENMPI - Run 'source etc/bashrc' - Run ./Allwmake That's it, OpenFOAM was built in /opt/OpenFOAM/OpenFOAM-2.2.2. At this point user wasn't able to run cause while OpenFOAM-2.2.2 folder permissions was OK, ones for ThirdParty-2.2.2 folder was wrong, so it was necessary to run Code:
chmod -R a+rX /opt/OpenFOAM/ThirdParty-2.2.2 And after all these user was able to run OF in parallel without any problems. |
|
January 28, 2014, 07:05 |
|
#18 |
Senior Member
|
Hi again
Yesterday I've got a suspicion that maybe the problem is not in OF binary distribution incompatibility with openSUSE 13.1 but with openmpi package of openSUSE 13.1. So I've decided to check it with a fresh installation of openSUSE 13.1. And here's what I found. As written in the installation guide at openfoam.org, I've installed opempi, run mpi-selector, logged out, logged in, and tried to do Code:
mpirun -np 2 ls Code:
alexey@linux-09yn:~> mpirun -np 2 ls -------------------------------------------------------------------------- It looks like opal_init failed for some reason; your parallel process is likely to abort. There are many reasons that a parallel process can fail during opal_init; some of which are due to configuration or environment problems. This failure appears to be an internal failure; here's some additional information (which may only be relevant to an Open MPI developer): opal_shmem_base_select failed --> Returned value -1 instead of OPAL_SUCCESS -------------------------------------------------------------------------- -------------------------------------------------------------------------- It looks like orte_init failed for some reason; your parallel process is likely to abort. There are many reasons that a parallel process can fail during orte_init; some of which are due to configuration or environment problems. This failure appears to be an internal failure; here's some additional information (which may only be relevant to an Open MPI developer): opal_init failed --> Returned value Error (-1) instead of ORTE_SUCCESS -------------------------------------------------------------------------- After I've installed openmpi-devel package, and voila, the same command returned me listing of ~ twice: Code:
alexey@linux-09yn:~> mpirun -np 2 ls bin Documents Music Public Templates Desktop Downloads Pictures public_html Videos bin Documents Music Public Templates Desktop Downloads Pictures public_html Videos I'm sorry my unfamiliarity with openSUSE's idiosyncrasies lead to all this install/uninstall/build/rebuild cycle |
|
January 29, 2014, 17:01 |
|
#19 | |
Senior Member
Join Date: Nov 2012
Location: Bavaria
Posts: 145
Rep Power: 14 |
Hi Alexey,
Quote:
There are not enough 'likes'! I would give you three for your each of your answers. Mega-Thanks! Aylalisa |
||
January 29, 2014, 17:16 |
|
#20 |
Senior Member
|
I meant openfoam.org, i.e. for normal installation on openSUSE 13.1 you need to install openmpi (mentioned on openfoam.org) and openmpi-devel (not mentioned) to be able to run parallel jobs. Actually you must have for some reason openmpi-devel to run parallel job on openSUSE 13.1.
|
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
[swak4Foam] groovyBC in openFOAM-2.0 for parabolic velocity bc | ofslcm | OpenFOAM Community Contributions | 25 | March 6, 2017 11:03 |
OpenFOAM Foundation releases OpenFOAM 2.2.2 | opencfd | OpenFOAM Announcements from ESI-OpenCFD | 0 | October 14, 2013 08:18 |
openFOAM on Open MPI | fferroni | OpenFOAM Running, Solving & CFD | 11 | February 18, 2012 10:40 |
Running damBreak with OpenFOAM 15 and Open MPI on mixed up CPU Systems | engys | OpenFOAM Running, Solving & CFD | 8 | November 26, 2008 05:57 |
Is Testsuite on the way or not | lakeat | OpenFOAM Installation | 6 | April 28, 2008 12:12 |