Skip to content
Snippets Groups Projects
Commit b279b386 authored by Pavel Gajdušek's avatar Pavel Gajdušek
Browse files

mdlint

parent 80c974e6
Branches
Tags
6 merge requests!368Update prace.md to document the change from qprace to qprod as the default...,!367Update prace.md to document the change from qprace to qprod as the default...,!366Update prace.md to document the change from qprace to qprod as the default...,!323extended-acls-storage-section,!196Master,!161Gajdusek cleaning
...@@ -20,7 +20,7 @@ $ ml av Python/ ...@@ -20,7 +20,7 @@ $ ml av Python/
Python/2.7.11-foss-2016a Python/3.5.2-foss-2016a Python/3.5.1 Python/2.7.11-foss-2016a Python/3.5.2-foss-2016a Python/3.5.1
Python/2.7.9-foss-2015g Python/3.4.3-intel-2015b Python/2.7.9 Python/2.7.9-foss-2015g Python/3.4.3-intel-2015b Python/2.7.9
Python/2.7.11-intel-2015b Python/3.5.2 Python/2.7.11-intel-2015b Python/3.5.2
$ ml av OpenMPI/ $ ml av OpenMPI/
--------------------------------------- /apps/modules/mpi -------------------------- --------------------------------------- /apps/modules/mpi --------------------------
OpenMPI/1.8.6-GCC-4.4.7-system OpenMPI/1.8.8-GNU-4.9.3-2.25 OpenMPI/1.10.1-GCC-4.9.3-2.25 OpenMPI/1.8.6-GCC-4.4.7-system OpenMPI/1.8.8-GNU-4.9.3-2.25 OpenMPI/1.10.1-GCC-4.9.3-2.25
...@@ -28,7 +28,8 @@ OpenMPI/1.8.6-GNU-5.1.0-2.25 OpenMPI/1.8.8-GNU-5.1.0-2.25 OpenMPI/1.10.1-GN ...@@ -28,7 +28,8 @@ OpenMPI/1.8.6-GNU-5.1.0-2.25 OpenMPI/1.8.8-GNU-5.1.0-2.25 OpenMPI/1.10.1-GN
OpenMPI/1.8.8-iccifort-2015.3.187-GNU-4.9.3-2.25 OpenMPI/2.0.2-GCC-6.3.0-2.27 OpenMPI/1.8.8-iccifort-2015.3.187-GNU-4.9.3-2.25 OpenMPI/2.0.2-GCC-6.3.0-2.27
``` ```
!!! Warning "" !!! Warning "Flavours"
* modules Python/x.x.x-intel... - intel MPI * modules Python/x.x.x-intel... - intel MPI
* modules Python/x.x.x-foss... - OpenMPI * modules Python/x.x.x-foss... - OpenMPI
* modules Python/x.x.x - without MPI * modules Python/x.x.x - without MPI
...@@ -37,8 +38,8 @@ OpenMPI/1.8.6-GNU-5.1.0-2.25 OpenMPI/1.8.8-GNU-5.1.0-2.25 OpenMPI/1.10.1-GN ...@@ -37,8 +38,8 @@ OpenMPI/1.8.6-GNU-5.1.0-2.25 OpenMPI/1.8.8-GNU-5.1.0-2.25 OpenMPI/1.10.1-GN
You need to import MPI to your python program. Include the following line to the python script: You need to import MPI to your python program. Include the following line to the python script:
```cpp ```python
from mpi4py import MPI from mpi4py import MPI
``` ```
The MPI4Py enabled python programs [execute as any other OpenMPI](Running_OpenMPI/) code.The simpliest way is to run The MPI4Py enabled python programs [execute as any other OpenMPI](Running_OpenMPI/) code.The simpliest way is to run
...@@ -57,43 +58,43 @@ $ mpiexec python hello_world.py ...@@ -57,43 +58,43 @@ $ mpiexec python hello_world.py
### Hello World! ### Hello World!
```cpp ```python
from mpi4py import MPI from mpi4py import MPI
comm = MPI.COMM_WORLD comm = MPI.COMM_WORLD
print "Hello! I'm rank %d from %d running in total..." % (comm.rank, comm.size) print "Hello! I'm rank %d from %d running in total..." % (comm.rank, comm.size)
comm.Barrier() # wait for everybody to synchronize comm.Barrier() # wait for everybody to synchronize
``` ```
### Collective Communication With NumPy Arrays ### Collective Communication With NumPy Arrays
```cpp ```python
from mpi4py import MPI from mpi4py import MPI
from __future__ import division from __future__ import division
import numpy as np import numpy as np
comm = MPI.COMM_WORLD comm = MPI.COMM_WORLD
print("-"*78) print("-"*78)
print(" Running on %d cores" % comm.size) print(" Running on %d cores" % comm.size)
print("-"*78) print("-"*78)
comm.Barrier() comm.Barrier()
# Prepare a vector of N=5 elements to be broadcasted... # Prepare a vector of N=5 elements to be broadcasted...
N = 5 N = 5
if comm.rank == 0: if comm.rank == 0:
A = np.arange(N, dtype=np.float64) # rank 0 has proper data A = np.arange(N, dtype=np.float64) # rank 0 has proper data
else: else:
A = np.empty(N, dtype=np.float64) # all other just an empty array A = np.empty(N, dtype=np.float64) # all other just an empty array
# Broadcast A from rank 0 to everybody # Broadcast A from rank 0 to everybody
comm.Bcast( [A, MPI.DOUBLE] ) comm.Bcast( [A, MPI.DOUBLE] )
# Everybody should now have the same... # Everybody should now have the same...
print "[%02d] %s" % (comm.rank, A) print "[%02d] %s" % (comm.rank, A)
``` ```
Execute the above code as: Execute the above code as:
......
...@@ -12,7 +12,7 @@ Singularity also allows you to leverage the resources of whatever host you are o ...@@ -12,7 +12,7 @@ Singularity also allows you to leverage the resources of whatever host you are o
Singularity can import, bootstrap, and even run Docker images directly from [Docker Hub](https://hub.docker.com/). You can easily run RHEL7 like this: Singularity can import, bootstrap, and even run Docker images directly from [Docker Hub](https://hub.docker.com/). You can easily run RHEL7 like this:
```console ```console
[hrb33@r33u01n865 ~]$ cat /etc/redhat-release [hrb33@r33u01n865 ~]$ cat /etc/redhat-release
CentOS release 6.7 (Final) CentOS release 6.7 (Final)
[hrb33@r33u01n865 ~]$ ml Singularity [hrb33@r33u01n865 ~]$ ml Singularity
[hrb33@r33u01n865 ~]$ singularity shell docker://centos:latest [hrb33@r33u01n865 ~]$ singularity shell docker://centos:latest
...@@ -23,8 +23,8 @@ Downloading layer: sha256:45a2e645736c4c66ef34acce2407ded21f7a9b231199d3b92d6c97 ...@@ -23,8 +23,8 @@ Downloading layer: sha256:45a2e645736c4c66ef34acce2407ded21f7a9b231199d3b92d6c97
Downloading layer: sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 Downloading layer: sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4
Singularity: Invoking an interactive shell within container... Singularity: Invoking an interactive shell within container...
Singularity.centos:latest> cat /etc/redhat-release Singularity.centos:latest> cat /etc/redhat-release
CentOS Linux release 7.3.1611 (Core) CentOS Linux release 7.3.1611 (Core)
``` ```
## Creating Own Image from Docker Image ## Creating Own Image from Docker Image
...@@ -32,7 +32,7 @@ CentOS Linux release 7.3.1611 (Core) ...@@ -32,7 +32,7 @@ CentOS Linux release 7.3.1611 (Core)
```console ```console
hrb33@hrb33-toshiba:/$ cd /tmp/ hrb33@hrb33-toshiba:/$ cd /tmp/
hrb33@hrb33-toshiba:/tmp$ sudo singularity create /tmp/c7.img hrb33@hrb33-toshiba:/tmp$ sudo singularity create /tmp/c7.img
[sudo] password for hrb33: [sudo] password for hrb33:
Creating a new image with a maximum size of 768MiB... Creating a new image with a maximum size of 768MiB...
Executing image create helper Executing image create helper
Formatting image with ext3 file system Formatting image with ext3 file system
...@@ -49,7 +49,7 @@ No bootstrap definition passed, updating container ...@@ -49,7 +49,7 @@ No bootstrap definition passed, updating container
Executing Prebootstrap module Executing Prebootstrap module
Executing Postbootstrap module Executing Postbootstrap module
Done. Done.
hrb33@hrb33-toshiba:/tmp$ sudo singularity shell --writable c7.img hrb33@hrb33-toshiba:/tmp$ sudo singularity shell --writable c7.img
Singularity: Invoking an interactive shell within container... Singularity: Invoking an interactive shell within container...
Singularity.c7.img> mkdir /apps /scratch Singularity.c7.img> mkdir /apps /scratch
...@@ -68,10 +68,10 @@ Accessing /HOME and /SCRATCH Within Container ...@@ -68,10 +68,10 @@ Accessing /HOME and /SCRATCH Within Container
```console ```console
hrb33@hrb33-toshiba:/tmp$ ssh hrb33@login4.salomon hrb33@hrb33-toshiba:/tmp$ ssh hrb33@login4.salomon
_____ _ _____ _
/ ____| | | / ____| | |
| (___ __ _| | ___ _ __ ___ ___ _ __ | (___ __ _| | ___ _ __ ___ ___ _ __
\___ \ / _` | |/ _ \| '_ ` _ \ / _ \| '_ \ \___ \ / _` | |/ _ \| '_ ` _ \ / _ \| '_ \
____) | (_| | | (_) | | | | | | (_) | | | | ____) | (_| | | (_) | | | | | | (_) | | | |
|_____/ \__,_|_|\___/|_| |_| |_|\___/|_| |_| |_____/ \__,_|_|\___/|_| |_| |_|\___/|_| |_|
...@@ -80,7 +80,7 @@ hrb33@hrb33-toshiba:/tmp$ ssh hrb33@login4.salomon ...@@ -80,7 +80,7 @@ hrb33@hrb33-toshiba:/tmp$ ssh hrb33@login4.salomon
Last login: Fri Feb 10 14:38:36 2017 from 10.0.131.12 Last login: Fri Feb 10 14:38:36 2017 from 10.0.131.12
[hrb33@login4.salomon ~]$ ml Singularity [hrb33@login4.salomon ~]$ ml Singularity
[hrb33@login4.salomon ~]$ singularity shell --bind /scratch --bind /apps --writable c7.img [hrb33@login4.salomon ~]$ singularity shell --bind /scratch --bind /apps --writable c7.img
Singularity: Invoking an interactive shell within container... Singularity: Invoking an interactive shell within container...
Singularity.c7.img> ls /apps/ -l Singularity.c7.img> ls /apps/ -l
...@@ -124,5 +124,5 @@ drwx------ 3 root root 4096 Aug 15 2016 backup ...@@ -124,5 +124,5 @@ drwx------ 3 root root 4096 Aug 15 2016 backup
drwxr-x--- 2 root root 4096 Dec 5 10:34 sys drwxr-x--- 2 root root 4096 Dec 5 10:34 sys
drwxrwxrwt 154 root root 20480 Feb 14 14:03 temp drwxrwxrwt 154 root root 20480 Feb 14 14:03 temp
drwxr-xr-x 4 root root 4096 Jan 25 10:48 work drwxr-xr-x 4 root root 4096 Jan 25 10:48 work
Singularity.c7.img> Singularity.c7.img>
``` ```
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment