Error in validating mpiexec

935 views
Skip to first unread message

Timea Marton

unread,
Jul 15, 2014, 6:00:12 AM7/15/14
to fds...@googlegroups.com
Hi,

I am desperately trying to set-up parallel simulations. I am not a computer person so I apologize if I ask silly question.

Firs of all i want to make sure i understand correctly. I have a 6 Core computer with 12 processors (Intel-Xeon-Processor-E5-4607-12M-Cache-2_20-GHz-6_40-GTs-Intel-QPI). If i use the OpenMP model, which is now the default in FDS6.1.11, i can make use of all 12 threads(processors), but not of all 6 cores. So in order to make use of all cores i should use the MPI model. Do i understand this correctly?

If yes i, i have installed MPICH2 for a 64-bit operating system. The installations GUY seemed to be successful. According to the instructions on the webpage i should:

Type the following commands in the command window:
    • smpd -install
    • mpiexec -remove
    • mpiexec -register (add user names and passwords for accounts using fds_mpi)
    • mpiexec -validate (it should return SUCCESS)
    • smpd -status (it should return smpd running on <hostname>)
The first two commands are not recognized. and i get a message saying: smpd-install is not recognized as an internal or external command, operable program or batch file.

So i moved on to the other commands, i register and add a user an password, but then i get an error for the validation part. I have attached the error. I wonder if i am doing something wrong, or my computer settings are not correct. 
I will mention that i have uninstalled previous MPICH, and also have turned of the firewall before the new installation.

Thank you for your time,
Timi

Timea Marton

unread,
Jul 15, 2014, 6:09:41 AM7/15/14
to fds...@googlegroups.com
and here is the attachment
Error.PNG

Kevin

unread,
Jul 15, 2014, 10:30:11 AM7/15/14
to fds...@googlegroups.com
If a program is not recognized, this means that there is no PATH variable set. See notes

https://code.google.com/p/fds-smv/wiki/Running_FDS_MPI_on_Windows

Timea Marton

unread,
Jul 15, 2014, 10:59:40 AM7/15/14
to fds...@googlegroups.com
I have managed to fix this. However i am still wondering if i understood correctly the two concept, the difference between OpenMP and MPI.

Thank you,
Timi


--
You received this message because you are subscribed to a topic in the Google Groups "FDS and Smokeview Discussions" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/fds-smv/FVFZkZRk8OM/unsubscribe.
To unsubscribe from this group and all its topics, send an email to fds-smv+u...@googlegroups.com.
To post to this group, send email to fds...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/fds-smv/e36276c5-8460-42bd-b1e1-77232ee2f3f2%40googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

Kevin

unread,
Jul 15, 2014, 11:02:31 AM7/15/14
to fds...@googlegroups.com
Do you have distributed or shared memory. If the former, use MPI. If the latter, OpenMP. There is a description of these things in the Users Guide and I have written several blogs and discussion posts. What specifically do you not understand?
To unsubscribe from this group and all its topics, send an email to fds-smv+unsubscribe@googlegroups.com.

To post to this group, send email to fds...@googlegroups.com.

Timea Marton

unread,
Jul 15, 2014, 5:23:43 PM7/15/14
to fds...@googlegroups.com
Yes i have been reading all day about this. As i said i apologize if i ask silly questions, because i do not know much about computer operating systems and their configuration. For this reason it is not always easy to understand the instructions given in the user guide or in the blogs. I would assume that a person who is using or willing to learn FDS would not require special set of IT skills. Nevertheless i have managed to set up the simulations to use MPI, and after a small test i have noticed that the time was reduced with more than 50% compared to OpenMP. 

Thank you for your help.

Kevin

unread,
Jul 15, 2014, 5:26:20 PM7/15/14
to fds...@googlegroups.com
Were you able to run a multi-mesh simulation using more than one computer?

Timea Marton

unread,
Jul 15, 2014, 5:29:47 PM7/15/14
to fds...@googlegroups.com
Just one computer, with 4 cores. 

Kevin

unread,
Jul 15, 2014, 5:38:13 PM7/15/14
to fds...@googlegroups.com
OK, there is a way to run an MPI job using multiple computers, but that is even more complicated because you have to open up holes in the firewall.

If you run an MPI job on a single machine, you are actually just running multiple FDS jobs, one for each mesh. Ideally, you should see linear speed up for a few meshes, but at some point the jobs will slow down because there will be a traffic jam getting information in and out of RAM (Random Access Memory).

Timea Marton

unread,
Jul 16, 2014, 5:38:44 AM7/16/14
to fds...@googlegroups.com
What i've done is that i divided the mesh in four, so i have each core doing one job. As a first check i only looked at 60 sec of simulation, and have observed a decrease in time of more than 50 %. After i ran the whole simulation which is 4200 seconds, and observed that the ratio is still between 50 %. With a CPU time of 12 h for MPI and 27 for OpenMP. So this was a success. 

And from what you said i understand that, in case i have more meshes, the speed up will not be as efficient.

Thank you for your answers. 

Kevin

unread,
Jul 16, 2014, 9:07:20 AM7/16/14
to fds...@googlegroups.com
We have found that for a single machine with a single RAM, inefficiencies become noticeable when you use more than 4 MPI processes or OpenMP threads. We're still trying to develop good strategies for using both forms of parallel processing. Ideally, you want to run MPI across multiple machines and OpenMP for each machine. For example, suppose you have 4 meshes. You can use MPI to run each mesh on a separate machine. Each machine has its own RAM, and FDS is designed so that the flow variables on each mesh need only be stored within RAM on that same machine processing that mesh. But at the same time, each MPI process can exploit multiple cores on the given machine using OpenMP, allowing the processing of each mesh to go faster. This is currently possible in FDS, but it requires a bit of computer savvy to make it work efficiently. Hopefully in the coming months we'll streamline the process.
Reply all
Reply to author
Forward
0 new messages