Hi,
I've been running lots of Powell calibrations and MCMC runs on a large health model in Vensim using a 16 core remote server, hoping this might help speed things up. But the calibration process is still prohibitively slow (around 5 simulations per second).
On the system side, is there anything we can do to speed up the process? (e.g., more memory, more cores, or GPU)?
Or do you recommend anything on the software side? I haven't experimented with compiling the model to C, but upon reading the Vensim Help documentation it seems like this could be one way to speed things up.
Let me know if you can offer any guidance here.
Thanks!
What can be done to speed up model calibrations and MCMC?
-
- Junior Member
- Posts: 5
- Joined: Fri Sep 22, 2023 6:27 pm
- Vensim version: DSS
-
- Super Administrator
- Posts: 4827
- Joined: Wed Mar 05, 2003 3:10 am
Re: What can be done to speed up model calibrations and MCMC?
Compiling is definitely worthwhile. Usually you would see execution time speed up by a factor of 10.
Secondly, review the following.
https://metasd.com/2011/01/optimizing-vensim-models/
Finally, the latest version of Vensim can use multiple cores to optimize.
https://www.vensim.com/documentation/pa ... ation.html
Secondly, review the following.
https://metasd.com/2011/01/optimizing-vensim-models/
Finally, the latest version of Vensim can use multiple cores to optimize.
https://www.vensim.com/documentation/pa ... ation.html
Advice to posters seeking help (it really helps us to help you)
http://www.ventanasystems.co.uk/forum/v ... f=2&t=4391
Units are important!
http://www.bbc.co.uk/news/magazine-27509559
http://www.ventanasystems.co.uk/forum/v ... f=2&t=4391
Units are important!
http://www.bbc.co.uk/news/magazine-27509559
-
- Junior Member
- Posts: 5
- Joined: Fri Sep 22, 2023 6:27 pm
- Vensim version: DSS
Re: What can be done to speed up model calibrations and MCMC?
Thank you for the quick reply! I will give this a try.
Re: What can be done to speed up model calibrations and MCMC?
Are you running the latest multicore v10 version?
With Powell you need to select the XPARALLEL multistart option.
With MCMC you don't need to change anything. Initialization is not multithreaded, so you may want to switch to the "Underdisperse" method to get things going faster.
With Powell you need to select the XPARALLEL multistart option.
With MCMC you don't need to change anything. Initialization is not multithreaded, so you may want to switch to the "Underdisperse" method to get things going faster.
/*
Advice to posters (it really helps us to help you)
http://www.ventanasystems.co.uk/forum/v ... f=2&t=4391
Blog: http://blog.metasd.com
Model library: http://models.metasd.com
Bookmarks: http://delicious.com/tomfid/SystemDynamics
*/
Advice to posters (it really helps us to help you)
http://www.ventanasystems.co.uk/forum/v ... f=2&t=4391
Blog: http://blog.metasd.com
Model library: http://models.metasd.com
Bookmarks: http://delicious.com/tomfid/SystemDynamics
*/
Re: What can be done to speed up model calibrations and MCMC?
Memory is generally not a constraint, and GPU acceleration is not supported. In the multicore version, speed is basically just cores x clock speed. If you have BIOS access to the machine, there may be some advantage to turning off hyperthreading, but this is a relatively small factor.
/*
Advice to posters (it really helps us to help you)
http://www.ventanasystems.co.uk/forum/v ... f=2&t=4391
Blog: http://blog.metasd.com
Model library: http://models.metasd.com
Bookmarks: http://delicious.com/tomfid/SystemDynamics
*/
Advice to posters (it really helps us to help you)
http://www.ventanasystems.co.uk/forum/v ... f=2&t=4391
Blog: http://blog.metasd.com
Model library: http://models.metasd.com
Bookmarks: http://delicious.com/tomfid/SystemDynamics
*/