You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Easy gains in MCMC, by using multithreading within each step (and calling e.g. julia --project -t 8 script.jl) . For GP (and scalar RF) implementations,
the prediction runs a loop over the scalar-valued models.
the training stage also runs a loop over the scalar-valued models. (Here it may require extra memory management)
Suggestion
For MCMC, add the decorator Threads.@threads for i=1:M to the loop
This will increase speed of prediction within MCMC by e.g. 8x
For decorrelated problems, (i.e. GP and scalar RF) one can similarly train the models with such loop decorations.
This will increase the speed of training by e.g. 8x
The text was updated successfully, but these errors were encountered:
Preliminarily from @szy21 we see that 8 threads gives only 2x speed-up to sampling in the EDMF example, I'll continue the investigation with other examples.
Oftentimes, the downstream dependencies will greedily harness all available threads, thus calling with -t 8 and not putting in any code changes (e.g. dont add the Threads.@threads) often gives significant speedup.
Issue
Easy gains in MCMC, by using multithreading within each step (and calling e.g.
julia --project -t 8 script.jl
) . For GP (and scalar RF) implementations,Suggestion
For MCMC, add the decorator
Threads.@threads for i=1:M
to the loopCalibrateEmulateSample.jl/src/GaussianProcess.jl
Lines 197 to 199 in bf3df40
This will increase speed of prediction within MCMC by e.g. 8x
For decorrelated problems, (i.e. GP and scalar RF) one can similarly train the models with such loop decorations.
This will increase the speed of training by e.g. 8x
The text was updated successfully, but these errors were encountered: