Note: This discussion is about an older version of the COMSOL Multiphysics® software. The information provided may be out of date.

Discussion Closed This discussion was created more than 6 months ago and has been closed. To start a new discussion with a link back to this one, click here.

increasing the speed of computation or parallel processing

Please login with a confirmed email address before reporting spam

Hi comsolers,

Is there any way to increase the speed of computation for comsol? now, my time series is for one month with daily resolution. and it takes at least 4 or 5 hours to compute. and I have more than 2 years data with daily resolution.
Is there any parallel process in comsol4.3?

Thanks for the help
Sepideh

6 Replies Last Post 20 ago 2014, 16:28 GMT-4
Mohammad Parvinnezhad Hokmabadi

Please login with a confirmed email address before reporting spam

Posted: 10 years ago 19 ago 2014, 10:41 GMT-4
Hi,

Sure, there is. You can run in both batch job in parallel or from Comsol GUI itself.

Thanks,
Mohammad
Hi, Sure, there is. You can run in both batch job in parallel or from Comsol GUI itself. Thanks, Mohammad

Please login with a confirmed email address before reporting spam

Posted: 10 years ago 19 ago 2014, 11:16 GMT-4
I am new to comsol, could you kindly explain more, how is it possible to do it in Comsol GUI ?

Is there any paper or manual about this or example?

Thanks
I am new to comsol, could you kindly explain more, how is it possible to do it in Comsol GUI ? Is there any paper or manual about this or example? Thanks

Mohammad Parvinnezhad Hokmabadi

Please login with a confirmed email address before reporting spam

Posted: 10 years ago 19 ago 2014, 11:58 GMT-4
There are two types of parallel computing.
1- Shared memory which uses multiple cores of one CPU with ashare memory.
2- Different CPUs also can work together in a distributed manner to solve your problem.

For the first one you do not need do any thing n Comsol. just run simply.
For the second one, if you are running comsol in windows system you have to activate cluster computing by right clicking on study node. In order to appear cluster computing option, you have to activate advanced study option by using 'eye like' icon under Model Builder.
In cluster computing you gotta do your own adjustments for parallel computing.
You can find those adjustment relatively from help or any manual.
If your operating system is Linux, you have to do a batch job. The story is different completely.
Let me know if you have more questions.
Follow these steps as start you will have more questions I am sure.

Thanks,
Mohammad
There are two types of parallel computing. 1- Shared memory which uses multiple cores of one CPU with ashare memory. 2- Different CPUs also can work together in a distributed manner to solve your problem. For the first one you do not need do any thing n Comsol. just run simply. For the second one, if you are running comsol in windows system you have to activate cluster computing by right clicking on study node. In order to appear cluster computing option, you have to activate advanced study option by using 'eye like' icon under Model Builder. In cluster computing you gotta do your own adjustments for parallel computing. You can find those adjustment relatively from help or any manual. If your operating system is Linux, you have to do a batch job. The story is different completely. Let me know if you have more questions. Follow these steps as start you will have more questions I am sure. Thanks, Mohammad

Please login with a confirmed email address before reporting spam

Posted: 10 years ago 19 ago 2014, 12:36 GMT-4
Sounds like Mohammad already gave a good reply. I'll just add in this link which was posted recently in a related topic:
www.comsol.com/blogs/added-value-task-parallelism-batch-sweeps/
(If the theory part is of little interest to you at the moment, just skip down to the "Batch Sweeps in COMSOL" section.)

That blog post discusses the two kinds of parallelism mentioned by Mohammed (referring to them as "data parallelism" and "task parallelism") and shows performance results for a batch sweep example. It also shows how to setup such a sweep, which I think is primarily useful if you want speed-up on your parametric sweeps and have the computational resources available.

I haven't looked at the related blog posts yet, but there seems to be a series of posts on hybrid computing that may be useful to you:
www.comsol.com/blogs/tag/hybrid-modeling-series/
Sounds like Mohammad already gave a good reply. I'll just add in this link which was posted recently in a related topic: http://www.comsol.com/blogs/added-value-task-parallelism-batch-sweeps/ (If the theory part is of little interest to you at the moment, just skip down to the "Batch Sweeps in COMSOL" section.) That blog post discusses the two kinds of parallelism mentioned by Mohammed (referring to them as "data parallelism" and "task parallelism") and shows performance results for a batch sweep example. It also shows how to setup such a sweep, which I think is primarily useful if you want speed-up on your parametric sweeps and have the computational resources available. I haven't looked at the related blog posts yet, but there seems to be a series of posts on hybrid computing that may be useful to you: http://www.comsol.com/blogs/tag/hybrid-modeling-series/

Please login with a confirmed email address before reporting spam

Posted: 10 years ago 20 ago 2014, 09:36 GMT-4
Hi,

cool, but let's consider that I have 1 year data with daily resolution and I want to do parallel processing and dividing my simulation into 12 sections.
what should I do then in cluster computing?

Thanks
Sepideh
Hi, cool, but let's consider that I have 1 year data with daily resolution and I want to do parallel processing and dividing my simulation into 12 sections. what should I do then in cluster computing? Thanks Sepideh

Mohammad Parvinnezhad Hokmabadi

Please login with a confirmed email address before reporting spam

Posted: 10 years ago 20 ago 2014, 16:28 GMT-4
Hi,
If your data are not dependent on each other, you can define 12 jobs (separate simulations) and then divide your cluster into 12 sections either. For example if your supercomputer has 12 nodes, you will be able to use just one node per simulation. So it is better in this example that you run them in shared memory phase.
If the supercomputer has 24 nodes, you can allocate 2 nodes for each simulation and take the advantage of distributed cluster computation.
I am also kind of beginner at parallel computation. The server I am using is Linux, so I am running in batch mode. For a simple simulation I tried distributed computing, but it did not speed up my simulation. However every node in my supercomputer has 20 cores and it is fast enough. But I am still working on using multiple nodes to speed up more. Let me know if you have more questions and if I can answer.
Thanks,
Mohammad
Hi, If your data are not dependent on each other, you can define 12 jobs (separate simulations) and then divide your cluster into 12 sections either. For example if your supercomputer has 12 nodes, you will be able to use just one node per simulation. So it is better in this example that you run them in shared memory phase. If the supercomputer has 24 nodes, you can allocate 2 nodes for each simulation and take the advantage of distributed cluster computation. I am also kind of beginner at parallel computation. The server I am using is Linux, so I am running in batch mode. For a simple simulation I tried distributed computing, but it did not speed up my simulation. However every node in my supercomputer has 20 cores and it is fast enough. But I am still working on using multiple nodes to speed up more. Let me know if you have more questions and if I can answer. Thanks, Mohammad

Note that while COMSOL employees may participate in the discussion forum, COMSOL® software users who are on-subscription should submit their questions via the Support Center for a more comprehensive response from the Technical Support team.