Skip to content
Snippets Groups Projects
Commit 9bbfd123 authored by Lukáš Krupčík's avatar Lukáš Krupčík
Browse files

salomon done

parent 5b89a84d
No related branches found
No related tags found
5 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,!117Resolve "Ukázky z konzoly nemají být bash"
Pipeline #
......@@ -21,8 +21,8 @@ The R version 3.1.1 is available on the cluster, along with GUI interface Rstudi
| **R** | R 3.1.1 | R/3.1.1-intel-2015b |
| **Rstudio** | Rstudio 0.98.1103 | Rstudio |
```bash
$ module load R
```console
$ ml R
```
## Execution
......@@ -33,9 +33,9 @@ The R on Anselm is linked to highly optimized MKL mathematical library. This pro
To run R interactively, using Rstudio GUI, log in with ssh -X parameter for X11 forwarding. Run rstudio:
```bash
$ module load Rstudio
$ rstudio
```console
$ module load Rstudio
$ rstudio
```
### Batch Execution
......@@ -78,14 +78,14 @@ The package parallel provides support for parallel computation, including by for
The package is activated this way:
```bash
```console
$ R
> library(parallel)
```
More information and examples may be obtained directly by reading the documentation available in R
```bash
```console
> ?parallel
> library(help = "parallel")
> vignette("parallel")
......@@ -152,9 +152,9 @@ Read more on Rmpi at <http://cran.r-project.org/web/packages/Rmpi/>, reference m
When using package Rmpi, both openmpi and R modules must be loaded
```bash
$ module load OpenMPI
$ module load R
```console
$ ml OpenMPI
$ ml R
```
Rmpi may be used in three basic ways. The static approach is identical to executing any other MPI programm. In addition, there is Rslaves dynamic MPI approach and the mpi.apply approach. In the following section, we will use the number π integration example, to illustrate all these concepts.
......@@ -211,8 +211,8 @@ Static Rmpi example:
The above is the static MPI example for calculating the number π. Note the **library(Rmpi)** and **mpi.comm.dup()** function calls. Execute the example as:
```bash
$ mpirun R --slave --no-save --no-restore -f pi3.R
```console
$ mpirun R --slave --no-save --no-restore -f pi3.R
```
### Dynamic Rmpi
......@@ -283,8 +283,8 @@ The above example is the dynamic MPI example for calculating the number π. Both
Execute the example as:
```bash
$ mpirun -np 1 R --slave --no-save --no-restore -f pi3Rslaves.R
```console
$ mpirun -np 1 R --slave --no-save --no-restore -f pi3Rslaves.R
```
Note that this method uses MPI_Comm_spawn (Dynamic process feature of MPI-2) to start the slave processes - the master process needs to be launched with MPI. In general, Dynamic processes are not well supported among MPI implementations, some issues might arise. Also, environment variables are not propagated to spawned processes, so they will not see paths from modules.
......@@ -351,8 +351,8 @@ The above is the mpi.apply MPI example for calculating the number π. Only the s
Execute the example as:
```bash
$ mpirun -np 1 R --slave --no-save --no-restore -f pi3parSapply.R
```console
$ mpirun -np 1 R --slave --no-save --no-restore -f pi3parSapply.R
```
## Combining Parallel and Rmpi
......@@ -398,8 +398,8 @@ For more information about jobscripts and MPI execution refer to the [Job submis
By leveraging MKL, R can accelerate certain computations, most notably linear algebra operations on the Xeon Phi accelerator by using Automated Offload. To use MKL Automated Offload, you need to first set this environment variable before R execution:
```bash
$ export MKL_MIC_ENABLE=1
```console
$ export MKL_MIC_ENABLE=1
```
[Read more about automatic offload](../intel-xeon-phi/)
......@@ -65,14 +65,14 @@ There is default stripe configuration for Salomon Lustre file systems. However,
Use the lfs getstripe for getting the stripe parameters. Use the lfs setstripe command for setting the stripe parameters to get optimal I/O performance The correct stripe setting depends on your needs and file access patterns.
```bash
```console
$ lfs getstripe dir | filename
$ lfs setstripe -s stripe_size -c stripe_count -o stripe_offset dir | filename
```
Example:
```bash
```console
$ lfs getstripe /scratch/work/user/username
/scratch/work/user/username
stripe_count: 1 stripe_size: 1048576 stripe_offset: -1
......@@ -87,7 +87,7 @@ In this example, we view current stripe setting of the /scratch/username/ direct
Use lfs check OSTs to see the number and status of active OSTs for each file system on Salomon. Learn more by reading the man page
```bash
```console
$ lfs check osts
$ man lfs
```
......@@ -112,13 +112,13 @@ Read more on <http://wiki.lustre.org/manual/LustreManual20_HTML/ManagingStriping
User quotas on the Lustre file systems (SCRATCH) can be checked and reviewed using following command:
```bash
```console
$ lfs quota dir
```
Example for Lustre SCRATCH directory:
```bash
```console
$ lfs quota /scratch
Disk quotas for user user001 (uid 1234):
Filesystem kbytes quota limit grace files quota limit grace
......@@ -132,14 +132,14 @@ In this example, we view current quota size limit of 100TB and 8KB currently use
HOME directory is mounted via NFS, so a different command must be used to obtain quota information:
```bash
$ quota
```console
$ quota
```
Example output:
```bash
$ quota
```console
$ quota
Disk quotas for user vop999 (uid 1025):
Filesystem blocks quota limit grace files quota limit grace
home-nfs-ib.salomon.it4i.cz:/home
......@@ -148,13 +148,13 @@ Example output:
To have a better understanding of where the space is exactly used, you can use following command to find out.
```bash
```console
$ du -hs dir
```
Example for your HOME directory:
```bash
```console
$ cd /home
$ du -hs * .[a-zA-z0-9]* | grep -E "[0-9]*G|[0-9]*M" | sort -hr
258M cuda-samples
......@@ -168,11 +168,11 @@ This will list all directories which are having MegaBytes or GigaBytes of consum
To have a better understanding of previous commands, you can read manpages.
```bash
```console
$ man lfs
```
```bash
```console
$ man du
```
......@@ -182,7 +182,7 @@ Extended ACLs provide another security mechanism beside the standard POSIX ACLs
ACLs on a Lustre file system work exactly like ACLs on any Linux file system. They are manipulated with the standard tools in the standard manner. Below, we create a directory and allow a specific user access.
```bash
```console
[vop999@login1.salomon ~]$ umask 027
[vop999@login1.salomon ~]$ mkdir test
[vop999@login1.salomon ~]$ ls -ld test
......@@ -356,40 +356,40 @@ The SSHFS provides a very convenient way to access the CESNET Storage. The stora
First, create the mount point
```bash
$ mkdir cesnet
```console
$ mkdir cesnet
```
Mount the storage. Note that you can choose among the ssh.du1.cesnet.cz (Plzen), ssh.du2.cesnet.cz (Jihlava), ssh.du3.cesnet.cz (Brno) Mount tier1_home **(only 5120M !)**:
```bash
$ sshfs username@ssh.du1.cesnet.cz:. cesnet/
```console
$ sshfs username@ssh.du1.cesnet.cz:. cesnet/
```
For easy future access from Anselm, install your public key
```bash
$ cp .ssh/id_rsa.pub cesnet/.ssh/authorized_keys
```console
$ cp .ssh/id_rsa.pub cesnet/.ssh/authorized_keys
```
Mount tier1_cache_tape for the Storage VO:
```bash
$ sshfs username@ssh.du1.cesnet.cz:/cache_tape/VO_storage/home/username cesnet/
```console
$ sshfs username@ssh.du1.cesnet.cz:/cache_tape/VO_storage/home/username cesnet/
```
View the archive, copy the files and directories in and out
```bash
$ ls cesnet/
$ cp -a mydir cesnet/.
$ cp cesnet/myfile .
```console
$ ls cesnet/
$ cp -a mydir cesnet/.
$ cp cesnet/myfile .
```
Once done, please remember to unmount the storage
```bash
$ fusermount -u cesnet
```console
$ fusermount -u cesnet
```
### Rsync Access
......@@ -405,16 +405,16 @@ More about Rsync at [here](https://du.cesnet.cz/en/navody/rsync/start#pro_bezne_
Transfer large files to/from CESNET storage, assuming membership in the Storage VO
```bash
$ rsync --progress datafile username@ssh.du1.cesnet.cz:VO_storage-cache_tape/.
$ rsync --progress username@ssh.du1.cesnet.cz:VO_storage-cache_tape/datafile .
```console
$ rsync --progress datafile username@ssh.du1.cesnet.cz:VO_storage-cache_tape/.
$ rsync --progress username@ssh.du1.cesnet.cz:VO_storage-cache_tape/datafile .
```
Transfer large directories to/from CESNET storage, assuming membership in the Storage VO
```bash
$ rsync --progress -av datafolder username@ssh.du1.cesnet.cz:VO_storage-cache_tape/.
$ rsync --progress -av username@ssh.du1.cesnet.cz:VO_storage-cache_tape/datafolder .
```console
$ rsync --progress -av datafolder username@ssh.du1.cesnet.cz:VO_storage-cache_tape/.
$ rsync --progress -av username@ssh.du1.cesnet.cz:VO_storage-cache_tape/datafolder .
```
Transfer rates of about 28 MB/s can be expected.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment