ParaMonte Fortran 2.0.0
Parallel Monte Carlo and Machine Learning Library
See the latest version documentation.
pm_parallelism.F90 File Reference

Go to the source code of this file.

Data Types

type  pm_parallelism::imageis_type
 This is the imageis_type type for generating objects with components of type logical of default kind LK that contain information about the current image/processor/thread.
More...
 
type  pm_parallelism::image_type
 This is the image_type type for generating objects that contain information about the current image/processor/thread and facilitate its synchronization with other processes, or the global finalization of all inter-process parallel communications (e.g., as is done in MPI applications). More...
 
interface  pm_parallelism::setForkJoinScaling
 Return the predicted parallel Fork-Join speedup scaling behavior for simulations whose image contributions are stochastically accepted only from the first successful image starting from image ID 1. More...
 

Modules

module  pm_parallelism
 This module contains procedures and generic interfaces for facilitating parallel computations or computing the performance of the parallel Coarray/MPI/OpenMP algorithms.
 

Functions/Subroutines

type(image_type) function pm_parallelism::image_typer ()
 Generate and return an object of class image_type containing information and statistics of the parallel images/processes/threads available, depending on the type of parallelism requested.
More...
 
subroutine pm_parallelism::setImageSynced ()
 Synchronize all existing parallel images and return nothing. More...
 
subroutine pm_parallelism::setImageFinalized ()
 Finalize the current parallel simulation and return nothing.
More...
 
integer(IK) function pm_parallelism::getImageID ()
 Generate and return the ID of the current Coarray image / MPI process / OpenMP thread, all starting with 1.
More...
 
integer(IK) function pm_parallelism::getImageCount ()
 Generate and return the number of available processes in the current parallel world communication. More...
 
integer(IK) integer(IK) function pm_parallelism::getImageCountMPI ()
 Generate and return the number of available processes in the current MPI-parallel world communication. More...
 
integer(IK) integer(IK) function pm_parallelism::getImageCountOMP ()
 Generate and return the number of available processes in the current OpenMP-parallel world communication. More...
 
subroutine pm_parallelism::setImageCount (count)
 Set the number the parallel threads for an OpenMP-enabled application. More...
 
logical(LK) function pm_parallelism::isFailedImage (failed)
 Broadcast the error condition from all images/processes to all images/processes.
More...
 

Variables

character(*, SK), parameter pm_parallelism::MODULE_NAME = SK_"@pm_parallelism"
 
character(*, SK), parameter pm_parallelism::PARALLELIZATION_MODE = SK_"parallel"
 The scalar constant of type character of default kind SK, whose value is set to parallel if the ParaMonte library is built with the preprocessor macro -DCAF_ENABLED=1 -DMPI_ENABLED=1, otherwise, it is set to "serial".
More...