Search the Community
Showing results for tags 'message passing'.
Found 1 result
AcuSolve uses a mix of shared and distributed memory parallel message passing. This hybrid MPI approach works very well for large compute systems and allows simulations to be scaled to thousands of compute cores. The suitability for a given simulation to scale to thousands of processors depends on a number of factors including the model size, the architecture of the compute platform, the network infrastructure, and the physics being solved for. However, there are some rough guidelines that can be used to determine an appropriate number of cores to use for a given simulation. For compute systems that utilize a high speed message passing network (i.e. Infiniband, Myrinet, etc.), AcuSolve is expected to scale nearly linearly down to approximately 10,000 finite element nodes per subdomain. In other words, AcuSolve should have nearly perfect parallel efficiency as long as there are at least 10,000 finite element nodes in each subdomain. If the number of processors is increased beyond this level, simulations will still run faster, but the parallel efficiency may not be ideal. To fully optimize the run time of your simulation on a given compute cluster, it is necessary to perform a scalability study to vary the number of processors and monitor the run time. However, the aformentioned guidelines can be used as a rough estimate. The AcuSolve log file contains a value called the "Interface node fraction". This value may also be of interest when determining how many processors is suitable for your parallel run. This value reports the fraction of nodes in the model that fall on subdomain boundaries. AcuSolve typically scales linearly when this value is less than ~.15.