| Both sides previous revision
Previous revision
Next revision
|
Previous revision
|
howto:coarrayfortran [2017/04/13 00:04] ccrosby |
howto:coarrayfortran [2021/12/09 16:42] (current) |
| Co-array Fortran allows the programmer to develop distributed memory parallel Fortran programs without having to use MPI explicitly. Parallelisation is entirely contained within the Fortran language, using a PGAS (partitioned global address space) approach. In practice, Co-array Fortran is conveniently implemented by using OpenCoarrays, which is an interface built on top of MPI. | Co-array Fortran allows the programmer to develop distributed memory parallel Fortran programs without having to use MPI explicitly. Parallelisation is entirely contained within the Fortran language, using a PGAS (partitioned global address space) approach. In practice, Co-array Fortran is conveniently implemented by using OpenCoarrays, which is an interface built on top of MPI. |
| |
| **OpenCoarrays-1.8.4** has been installed in ''/apps/chpc/compmech/OpenCoarrays-1.8.4'' and is compiled using mpich-3.2 and gcc-6.2.0. A modules has been created so simply adding: | **OpenCoarrays-1.8.4** has been installed in ''/apps/chpc/compmech/OpenCoarrays-1.8.4'' and is compiled using mpich-3.2 and gcc-6.2.0. A module has been created so simply adding: |
| <code> | <code> |
| module add chpc/compmech/OpenCoarrays/1.8.4 | module add chpc/compmech/OpenCoarrays/1.8.4 |
| </code> | </code> |
| |
| to your scripts will set up the appropriate paths to OpenCoarrays. | to your scripts will set up the appropriate paths to OpenCoarrays-1.8.4. |
| | |
| | |
| | **OpenCoarrays-2.3.1** has been installed in ''/apps/chpc/compmech/OpenCoarrays-2.3.1'' and is compiled using mpich-3.3 and gcc-8.3.0. A module has been created so simply adding: |
| | <code> |
| | module add chpc/compmech/OpenCoarrays/2.3.1 |
| | </code> |
| | to your scripts will set up the appropriate paths to OpenCoarrays-2.3.1. |
| | |
| | **OpenCoarrays-2.9.2** has been installed in ''/apps/chpc/compmech/OpenCoarrays-2.9.2'' and is compiled using mpich-3.3 and gcc-8.3.0. A module has been created so simply adding: |
| | <code> |
| | module add chpc/compmech/OpenCoarrays/2.3.1 |
| | </code> |
| | to your scripts will set up the appropriate paths to OpenCoarrays-2.3.1. |
| |
| Co-array programs are compiled using the ''caf'' wrapper, much like ''mpif90'' is used to compile MPI programs. The compiled binary is then executed using the ''cafrun'' wrapper, similar to ''mpirun''. ''cafrun'' in this case takes the same command line options as the ''mpirun'' wrapper supplied by mpich. Please bear in mind that mpich will not by default use the infiniband network. To use the infiniband network, use the following syntax: | Co-array programs are compiled using the ''caf'' wrapper, much like ''mpif90'' is used to compile MPI programs. The compiled binary is then executed using the ''cafrun'' wrapper, similar to ''mpirun''. ''cafrun'' in this case takes the same command line options as the ''mpirun'' wrapper supplied by mpich. Please bear in mind that mpich will not by default use the infiniband network. To use the infiniband network, use the following syntax: |