Monte Carlo Area Estimation

 
 

Monte-Carlo method is a broad class of algorithms that use repeated random sampling to obtain numeric results for problems that are difficult or impossible to solve using other means. Monte Carlo algorithms are embarrassingly parallel and generally compute bound. We implemented an area under the curve estimation problem that is a common use case of Monte Carlo simulation. We had to implement parallel reductions using MPI collectives and Pthread synchronizations to support this problem, but it has mainly been included in the application suite as the sole compute bound problem.

 

Multicore Monte Carlo Performance

 

Multicore Monte Carlo Strong Scaling

 
 

Segmented Monte Carlo Performance

Segmented Memory Monte Carlo Strong Scaling

Segmented Memory Monte Carlo Weak Scaling

 

Hybrid Monte Carlo Performance

Hybrid Monte Carlo Strong Scaling

Hybrid Monte Carlo Weak Scaling