diff --git a/.spelling b/.spelling index 9e7c21b06026ea38ca9b6bf825182c49ddca4044..da257cf0cc12d3fe1558c35b598a0b09757d3440 100644 --- a/.spelling +++ b/.spelling @@ -1,3 +1,7 @@ +NICE +DGX-2 +DGX +DCV In CAE CUBE diff --git a/docs.it4i/anselm/capacity.zip b/docs.it4i/anselm/capacity.zip deleted file mode 100644 index 747453323cdc23fabbf0105771445d560fd9ae93..0000000000000000000000000000000000000000 Binary files a/docs.it4i/anselm/capacity.zip and /dev/null differ diff --git a/docs.it4i/anselm/hardware-overview.md b/docs.it4i/anselm/hardware-overview.md index 04cc8b5b7f04b15e6b6194904f42bb52ca68785a..c1ed89bcf8a1a271d531a88900e06b06b541a054 100644 --- a/docs.it4i/anselm/hardware-overview.md +++ b/docs.it4i/anselm/hardware-overview.md @@ -60,9 +60,9 @@ The parameters are summarized in the following tables: For more details refer to [Compute nodes][1], [Storage][4], and [Network][3]. [1]: compute-nodes.md -[2]: resources-allocation-policy.md +[2]: ../general/resources-allocation-policy.md [3]: network.md [4]: storage.md -[5]: shell-and-data-access.md +[5]: ../general/shell-and-data-access.md [a]: https://support.it4i.cz/rt diff --git a/docs.it4i/anselm/introduction.md b/docs.it4i/anselm/introduction.md index a75b12e432b46b513df3103c5436f657c61fd6a0..c67f582d5145da3818c9dacf3291faee7b052531 100644 --- a/docs.it4i/anselm/introduction.md +++ b/docs.it4i/anselm/introduction.md @@ -1,6 +1,6 @@ # Introduction -Welcome to Anselm supercomputer cluster. The Anselm cluster consists of 209 compute nodes, totalling 3344 compute cores with 15 TB RAM, giving over 94 TFLOP/s theoretical peak performance. Each node is a powerful x86-64 computer, equipped with 16 cores, at least 64 GB of RAM, and a 500 GB hard disk drive. Nodes are interconnected through a fully non-blocking fat-tree InfiniBand network, and are equipped with Intel Sandy Bridge processors. A few nodes are also equipped with NVIDIA Kepler GPU or Intel Xeon Phi MIC accelerators. Read more in [Hardware Overview][1]. +Welcome to Anselm supercomputer cluster. The Anselm cluster consists of 209 compute nodes, totaling 3344 compute cores with 15 TB RAM, giving over 94 TFLOP/s theoretical peak performance. Each node is a powerful x86-64 computer, equipped with 16 cores, at least 64 GB of RAM, and a 500 GB hard disk drive. Nodes are interconnected through a fully non-blocking fat-tree InfiniBand network, and are equipped with Intel Sandy Bridge processors. A few nodes are also equipped with NVIDIA Kepler GPU or Intel Xeon Phi MIC accelerators. Read more in [Hardware Overview][1]. The cluster runs with an operating system which is compatible with the RedHat [Linux family][a]. We have installed a wide range of software packages targeted at different scientific domains. These packages are accessible via the [modules environment][2]. @@ -12,9 +12,9 @@ Read more on how to [apply for resources][4], [obtain login credentials][5] and [1]: hardware-overview.md [2]: ../environment-and-modules.md -[3]: resources-allocation-policy.md +[3]: ../general/resources-allocation-policy.md [4]: ../general/applying-for-resources.md [5]: ../general/obtaining-login-credentials/obtaining-login-credentials.md -[6]: shell-and-data-access.md +[6]: ../general/shell-and-data-access.md [a]: http://upload.wikimedia.org/wikipedia/commons/1/1b/Linux_Distribution_Timeline.svg diff --git a/docs.it4i/anselm/resources-allocation-policy.md b/docs.it4i/anselm/resources-allocation-policy.md deleted file mode 100644 index 0bb0a5e2bdd7f70bba972b0457e3a3a026d570b2..0000000000000000000000000000000000000000 --- a/docs.it4i/anselm/resources-allocation-policy.md +++ /dev/null @@ -1,119 +0,0 @@ -# Resources Allocation Policy - -## Job Queue Policies - -The resources are allocated to the job in a fair-share fashion, subject to constraints set by the queue and the resources available to the Project. The Fair-share system of Anselm ensures that individual users may consume approximately equal amounts of resources per week. Detailed information can be found in the [Job scheduling][1] section. The resources are accessible via several queues for queueing the jobs. The queues provide prioritized and exclusive access to the computational resources. The following table provides the queue partitioning overview: - -!!! note - Check the queue status at <https://extranet.it4i.cz/rsweb/anselm/> - -| queue | active project | project resources | nodes | min ncpus | priority | authorization | walltime | -| ------------------- | -------------- | -------------------- | ---------------------------------------------------- | --------- | -------- | ------------- | -------- | -| qexp | no | none required | 209 nodes | 1 | 150 | no | 1 h | -| qprod | yes | > 0 | 180 nodes w/o accelerator | 16 | 0 | no | 24/48 h | -| qlong | yes | > 0 | 180 nodes w/o accelerator | 16 | 0 | no | 72/144 h | -| qnvidia, qmic | yes | > 0 | 23 nvidia nodes, 4 mic nodes | 16 | 200 | yes | 24/48 h | -| qfat | yes | > 0 | 2 fat nodes | 16 | 200 | yes | 24/144 h | -| qfree | yes | < 120% of allocation | 180 w/o accelerator | 16 | -1024 | no | 12 h | - -!!! note - **The qfree queue is not free of charge**. [Normal accounting][2] applies. However, it allows for utilization of free resources, once a project has exhausted all its allocated computational resources. This does not apply to Director's Discretion projects (DD projects) by default. Usage of qfree after exhaustion of DD projects' computational resources is allowed after request for this queue. - -**The qexp queue is equipped with nodes which do not have exactly the same CPU clock speed.** Should you need the nodes to have exactly the same CPU speed, you have to select the proper nodes during the PSB job submission. - -* **qexp**, the Express queue: This queue is dedicated to testing and running very small jobs. It is not required to specify a project to enter the qexp. There are always 2 nodes reserved for this queue (w/o accelerators), a maximum 8 nodes are available via the qexp for a particular user, from a pool of nodes containing Nvidia accelerated nodes (cn181-203), MIC accelerated nodes (cn204-207) and Fat nodes with 512GB of RAM (cn208-209). This enables us to test and tune accelerated code and code with higher RAM requirements. The nodes may be allocated on a per core basis. No special authorization is required to use qexp. The maximum runtime in qexp is 1 hour. -* **qprod**, the Production queue: This queue is intended for normal production runs. It is required that an active project with nonzero remaining resources is specified to enter the qprod. All nodes may be accessed via the qprod queue, except the reserved ones. 178 nodes without accelerators are included. Full nodes, 16 cores per node, are allocated. The queue runs with medium priority and no special authorization is required to use it. The maximum runtime in qprod is 48 hours. -* **qlong**, the Long queue: This queue is intended for long production runs. It is required that an active project with nonzero remaining resources is specified to enter the qlong. Only 60 nodes without acceleration may be accessed via the qlong queue. Full nodes, 16 cores per node, are allocated. The queue runs with medium priority and no special authorization is required to use it. The maximum runtime in qlong is 144 hours (three times that of the standard qprod time - 3 x 48 h). -* **qnvidia**, qmic, qfat, the Dedicated queues: The queue qnvidia is dedicated to accessing the Nvidia accelerated nodes, the qmic to accessing MIC nodes and qfat the Fat nodes. It is required that an active project with nonzero remaining resources is specified to enter these queues. 23 nvidia, 4 mic, and 2 fat nodes are included. Full nodes, 16 cores per node, are allocated. The queues run with very high priority, the jobs will be scheduled before the jobs coming from the qexp queue. An PI needs to explicitly ask [support][a] for authorization to enter the dedicated queues for all users associated with her/his project. -* **qfree**, The Free resource queue: The queue qfree is intended for utilization of free resources, after a project has exhausted all of its allocated computational resources (Does not apply to DD projects by default; DD projects have to request persmission to use qfree after exhaustion of computational resources). It is required that active project is specified to enter the queue. Consumed resources will be accounted to the Project. Access to the qfree queue is automatically removed if consumed resources exceed 120% of the resources allocated to the Project. Only 180 nodes without accelerators may be accessed from this queue. Full nodes, 16 cores per node, are allocated. The queue runs with very low priority and no special authorization is required to use it. The maximum runtime in qfree is 12 hours. - -## Queue Notes - -The job wall clock time defaults to **half the maximum time**, see the table above. Longer wall time limits can be [set manually, see examples][3]. - -Jobs that exceed the reserved wall clock time (Req'd Time) get killed automatically. The wall clock time limit can be changed for queuing jobs (state Q) using the qalter command, however it cannot be changed for a running job (state R). - -Anselm users may check the current queue configuration [here][b]. - -## Queue Status - -!!! tip - Check the status of jobs, queues and compute nodes [here][c]. - - - -Display the queue status on Anselm: - -```console -$ qstat -q -``` - -The PBS allocation overview may be obtained also using the rspbs command: - -```console -$ rspbs -Usage: rspbs [options] - -Options: - --version show program's version number and exit - -h, --help show this help message and exit - --get-node-ncpu-chart - Print chart of allocated ncpus per node - --summary Print summary - --get-server-details Print server - --get-queues Print queues - --get-queues-details Print queues details - --get-reservations Print reservations - --get-reservations-details - Print reservations details - --get-nodes Print nodes of PBS complex - --get-nodeset Print nodeset of PBS complex - --get-nodes-details Print nodes details - --get-jobs Print jobs - --get-jobs-details Print jobs details - --get-jobs-check-params - Print jobid, job state, session_id, user, nodes - --get-users Print users of jobs - --get-allocated-nodes - Print allocated nodes of jobs - --get-allocated-nodeset - Print allocated nodeset of jobs - --get-node-users Print node users - --get-node-jobs Print node jobs - --get-node-ncpus Print number of ncpus per node - --get-node-allocated-ncpus - Print number of allocated ncpus per node - --get-node-qlist Print node qlist - --get-node-ibswitch Print node ibswitch - --get-user-nodes Print user nodes - --get-user-nodeset Print user nodeset - --get-user-jobs Print user jobs - --get-user-jobc Print number of jobs per user - --get-user-nodec Print number of allocated nodes per user - --get-user-ncpus Print number of allocated ncpus per user - --get-qlist-nodes Print qlist nodes - --get-qlist-nodeset Print qlist nodeset - --get-ibswitch-nodes Print ibswitch nodes - --get-ibswitch-nodeset - Print ibswitch nodeset - --state=STATE Only for given job state - --jobid=JOBID Only for given job ID - --user=USER Only for given user - --node=NODE Only for given node - --nodestate=NODESTATE - Only for given node state (affects only --get-node* - --get-qlist-* --get-ibswitch-* actions) - --incl-finished Include finished jobs -``` - ----8<--- "resource_accounting.md" - ----8<--- "mathjax.md" - -[1]: job-priority.md -[2]: #resources-accounting-policy -[3]: job-submission-and-execution.md - -[a]: https://support.it4i.cz/rt/ -[b]: https://extranet.it4i.cz/rsweb/anselm/queues -[c]: https://extranet.it4i.cz/rsweb/anselm/ diff --git a/docs.it4i/anselm/storage.md b/docs.it4i/anselm/storage.md index 9a96ffe56b4956164302d1f9adc50a30ce664b27..82e2e475bfb2371075e76d81f18a3b3d180ae274 100644 --- a/docs.it4i/anselm/storage.md +++ b/docs.it4i/anselm/storage.md @@ -4,7 +4,7 @@ There are two main shared file systems on Anselm cluster, the [HOME][1] and [SCR ## Archiving -Please don't use shared filesystems as a backup for large amount of data or long-term archiving mean. The academic staff and students of research institutions in the Czech Republic can use [CESNET storage service][3], which is available via SSHFS. +Don't use shared filesystems as a backup for large amount of data or long-term archiving mean. The academic staff and students of research institutions in the Czech Republic can use [CESNET storage service][3], which is available via SSHFS. ## Shared Filesystems @@ -333,7 +333,7 @@ The procedure to obtain the CESNET access is quick and trouble-free. ### Understanding CESNET Storage !!! note - It is very important to understand the CESNET storage before uploading data. [Please read][i] first. + It is very important to understand the CESNET storage before uploading data. [Read][i] first. Once registered for CESNET Storage, you may [access the storage][j] in number of ways. We recommend the SSHFS and RSYNC methods. diff --git a/docs.it4i/dgx2/introduction.md b/docs.it4i/dgx2/introduction.md new file mode 100644 index 0000000000000000000000000000000000000000..1d7b4305423c5999c2855b9b12e90b40dec5d5a9 --- /dev/null +++ b/docs.it4i/dgx2/introduction.md @@ -0,0 +1,44 @@ +# NVIDIA DGX-2 + +[DGX-2][a] builds upon [DGX-1][b] in several ways. Introduces NVIDIA’s new NVSwitch, enabling 300 GB/s chip-to-chip communication at 12 times the speed of PCIe. + +With NVLink2, enables sixteen GPUs to be grouped together in a single system, for a total bandwidth going beyond 14 TB/s. Pair of Xeon CPUs, 1.5 TB of memory, and 30 TB of NVMe storage, and we get a system that consumes 10 kW, weighs 163.29 kg, but offers easily double the performance of the DGX-1. + +NVIDIA likes to tout that this means it offers a total of ~2 PFLOPs of compute performance in a single system, when using the tensor cores. + +<div align="center"> + <iframe src="https://www.youtube.com/embed/OTOGw0BRqK0" width="50%" height="195" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe> +</div> + + + +| NVIDIA DGX-2 | | +| --- | --- | +| CPUs | 2 x Intel Xeon Platinum | +| GPUs | 16 x NVIDIA Tesla V100 32GB HBM2 | +| System Memory | Up to 1.5 TB DDR4 | +| GPU Memory | 512 GB HBM2 (16 x 32 GB) | +| Storage | 30 TB NVMe, Up to 60 TB | +| Networking | 8 x Infiniband or 8 x 100 GbE | +| Power | 10 kW | +| Size | 350 lbs | +| GPU Throughput | Tensor: 1920 TFLOPs, FP16: 480 TFLOPs, FP32: 240 TFLOPs, FP64: 120 TFLOPs | + + + +AlexNET, the network that 'started' the latest machine learning revolution, now takes 18 minutes + +The topology of the DGX-2 means that all 16 GPUs are able to pool their memory into a unified memory space, though with the usual tradeoffs involved if going off-chip. + +Not unlike the Tesla V100 memory capacity increase then, one of NVIDIA’s goals here is to build a system that can keep in-memory workloads that would be too large for an 8 GPU cluster. Providing one such example, NVIDIA is saying that the DGX-2 is able to complete the training process for FAIRSEQ – a neural network model for language translation – 10x faster than a DGX-1 system, bringing it down to less than two days total rather than 15. + + + +Otherwise, similar to its DGX-1 counterpart, the DGX-2 is designed to be a powerful server in its own right. On the storage side the DGX-2 comes with 30TB of NVMe-based solid state storage. And for clustering or further inter-system communications, it also offers InfiniBand and 100GigE connectivity, up to eight of them. + + + +The new NVSwitches means that the PCIe lanes of the CPUs can be redirected elsewhere, most notably towards storage and networking connectivity. + +[a]: https://www.nvidia.com/content/dam/en-zz/es_em/Solutions/Data-Center/dgx-2/nvidia-dgx-2-datasheet.pdf +[b]: https://www.nvidia.com/content/dam/en-zz/Solutions/Data-Center/dgx-1/dgx-1-ai-supercomputer-datasheet-v4.pdf diff --git a/docs.it4i/general/accessing-the-clusters/graphical-user-interface/vnc.md b/docs.it4i/general/accessing-the-clusters/graphical-user-interface/vnc.md index a12cb9feb8240759af1f45af05b4869a79eba543..3178cccbe3ca4a5c1bdae6bfdd6b672fe52cde42 100644 --- a/docs.it4i/general/accessing-the-clusters/graphical-user-interface/vnc.md +++ b/docs.it4i/general/accessing-the-clusters/graphical-user-interface/vnc.md @@ -42,7 +42,7 @@ Also remember that display number should be less or equal 99. Based on this **we have choosen display number 61** for us, so this number you can see in examples below. !!! note - Your situation may be different so also choose of your number may be different. **Please choose and use your own display number accordingly!** + Your situation may be different so also choose of your number may be different. **Choose and use your own display number accordingly!** Start your VNC server on choosen display number (61): @@ -76,7 +76,7 @@ username :102 ``` !!! note - The VNC server runs on port 59xx, where xx is the display number. So, you get your port number simply as 5900 + display number, in our example 5900 + 61 = 5961. Another example for display number 102 is calculation of TCP port 5900 + 102 = 6002 but be aware, that TCP ports above 6000 are often used by X11. **Please, calculate your own port number and use it instead of 5961 from examples below!** + The VNC server runs on port 59xx, where xx is the display number. So, you get your port number simply as 5900 + display number, in our example 5900 + 61 = 5961. Another example for display number 102 is calculation of TCP port 5900 + 102 = 6002 but be aware, that TCP ports above 6000 are often used by X11. **Calculate your own port number and use it instead of 5961 from examples below!** To access the VNC server you have to create a tunnel between the login node using TCP port 5961 and your machine using a free TCP port (for simplicity the very same) in next step. See examples for [Linux/Mac OS][2] and [Windows][3]. @@ -260,4 +260,4 @@ Example described above: [1]: x-window-system.md [2]: #linuxmac-os-example-of-creating-a-tunnel [3]: #windows-example-of-creating-a-tunnel -[4]: ../../../anselm/job-submission-and-execution.md +[4]: ../../job-submission-and-execution.md diff --git a/docs.it4i/general/accessing-the-clusters/shell-access-and-data-transfer/ssh-keys.md b/docs.it4i/general/accessing-the-clusters/shell-access-and-data-transfer/ssh-keys.md index 003ac83a0236254faf259f4bfcaf7a369d41a866..0e95dff343d125a3ac1e702e8ad9c877b3f87dd4 100644 --- a/docs.it4i/general/accessing-the-clusters/shell-access-and-data-transfer/ssh-keys.md +++ b/docs.it4i/general/accessing-the-clusters/shell-access-and-data-transfer/ssh-keys.md @@ -93,7 +93,7 @@ local $ ssh-keygen -C 'username@organization.example.com' -f additional_key ``` !!! note - Please, enter **strong** **passphrase** for securing your private key. + Enter **strong** **passphrase** for securing your private key. You can insert additional public key into authorized_keys file for authentication with your own private key. Additional records in authorized_keys file must be delimited by new line. Users are not advised to remove the default public key from authorized_keys file. diff --git a/docs.it4i/anselm/capacity-computing.md b/docs.it4i/general/capacity-computing.md similarity index 93% rename from docs.it4i/anselm/capacity-computing.md rename to docs.it4i/general/capacity-computing.md index 626a66ef5d5eb6102e56e2f2c08fe81fa44be3f2..bb36fdfc051037772d7469e54f3e977e053495a3 100644 --- a/docs.it4i/anselm/capacity-computing.md +++ b/docs.it4i/general/capacity-computing.md @@ -7,7 +7,7 @@ In many cases, it is useful to submit a huge (>100+) number of computational job However, executing a huge number of jobs via the PBS queue may strain the system. This strain may result in slow response to commands, inefficient scheduling, and overall degradation of performance and user experience, for all users. For this reason, the number of jobs is **limited to 100 per user, 1000 per job array** !!! note - Please follow one of the procedures below, in case you wish to schedule more than 100 jobs at a time. + Follow one of the procedures below, in case you wish to schedule more than 100 jobs at a time. * Use [Job arrays][1] when running a huge number of [multithread][2] (bound to one node only) or multinode (multithread across several nodes) jobs * Use [GNU parallel][3] when running single core jobs @@ -45,7 +45,7 @@ First, we create a tasklist file (or subjobs list), listing all tasks (subjobs) $ find . -name 'file*' > tasklist ``` -Then we create the jobscript: +Then we create the jobscript for Anselm cluster: ```bash #!/bin/bash @@ -70,6 +70,31 @@ cp $PBS_O_WORKDIR/$TASK input ; cp $PBS_O_WORKDIR/myprog.x . cp output $PBS_O_WORKDIR/$TASK.out ``` +Then we create jobscript for Salomon cluster: + +```bash +#!/bin/bash +#PBS -A PROJECT_ID +#PBS -q qprod +#PBS -l select=1:ncpus=24,walltime=02:00:00 + +# change to scratch directory +SCR=/scratch/work/user/$USER/$PBS_JOBID +mkdir -p $SCR ; cd $SCR || exit + +# get individual tasks from tasklist with index from PBS JOB ARRAY +TASK=$(sed -n "${PBS_ARRAY_INDEX}p" $PBS_O_WORKDIR/tasklist) + +# copy input file and executable to scratch +cp $PBS_O_WORKDIR/$TASK input ; cp $PBS_O_WORKDIR/myprog.x . + +# execute the calculation +./myprog.x < input > output + +# copy output file to submit directory +cp output $PBS_O_WORKDIR/$TASK.out +``` + In this example, the submit directory holds the 900 input files, the executable myprog.x, and the jobscript file. As an input for each run, we take the filename of the input file from the created tasklist file. We copy the input file to the local scratch memory /lscratch/$PBS_JOBID, execute the myprog.x and copy the output file back to the submit directory, under the $TASK.out name. The myprog.x runs on one node only and must use threads to run in parallel. Be aware, that if the myprog.x **is not multithreaded**, then all the **jobs are run as single thread programs in a sequential** manner. Due to the allocation of the whole node, the accounted time is equal to the usage of the whole node, while using only 1/16 of the node! If running a huge number of parallel multicore (in means of multinode multithread, e. g. MPI enabled) jobs is needed, then a job array approach should be used. The main difference as compared to previous examples using one node is that the local scratch memory should not be used (as it's not shared between nodes) and MPI or other techniques for parallel multinode processing has to be used properly. @@ -78,11 +103,20 @@ If running a huge number of parallel multicore (in means of multinode multithrea To submit the job array, use the qsub -J command. The 900 jobs of the [example above][5] may be submitted like this: +#### Anselm + ```console $ qsub -N JOBNAME -J 1-900 jobscript 12345[].dm2 ``` +#### Salomon + +```console +$ qsub -N JOBNAME -J 1-900 jobscript +506493[].isrv5 +``` + In this example, we submit a job array of 900 subjobs. Each subjob will run on one full node and is assumed to take less than 2 hours (note the #PBS directives in the beginning of the jobscript file, don't forget to set your valid PROJECT_ID and desired queue). Sometimes for testing purposes, you may need to submit a one-element only array. This is not allowed by PBSPro, but there's a workaround: @@ -152,7 +186,7 @@ Read more on job arrays in the [PBSPro Users guide][6]. !!! note Use GNU parallel to run many single core tasks on one node. -GNU parallel is a shell tool for executing jobs in parallel using one or more computers. A job can be a single command or a small script that has to be run for each of the lines in the input. GNU parallel is most useful when running single core jobs via the queue system on Anselm. +GNU parallel is a shell tool for executing jobs in parallel using one or more computers. A job can be a single command or a small script that has to be run for each of the lines in the input. GNU parallel is most useful when running single core jobs via the queue systems. For more information and examples see the parallel man page: @@ -308,7 +342,7 @@ In this example, we submit a job array of 31 subjobs. Note the -J 1-992:**32**, Download the examples in [capacity.zip][9], illustrating the above listed ways to run a huge number of jobs. We recommend trying out the examples before using this for running production jobs. -Unzip the archive in an empty directory on Anselm and follow the instructions in the README file +Unzip the archive in an empty directory on cluster and follow the instructions in the README file ```console $ unzip capacity.zip diff --git a/docs.it4i/salomon/capacity.zip b/docs.it4i/general/capacity.zip similarity index 100% rename from docs.it4i/salomon/capacity.zip rename to docs.it4i/general/capacity.zip diff --git a/docs.it4i/anselm/job-priority.md b/docs.it4i/general/job-priority.md similarity index 95% rename from docs.it4i/anselm/job-priority.md rename to docs.it4i/general/job-priority.md index ea639ce274745834da7c950f3ee6db8fdb4eac30..1dc2192eda0add4ea6fccff853ebc0c0d0e51077 100644 --- a/docs.it4i/anselm/job-priority.md +++ b/docs.it4i/general/job-priority.md @@ -56,7 +56,7 @@ Job execution priority (job sort formula) is calculated as: ### Job Backfilling -The Anselm cluster uses job backfilling. +The scheduler uses job backfilling. Backfilling means fitting smaller jobs around the higher-priority jobs that the scheduler is going to run next, in such a way that the higher-priority jobs are not delayed. Backfilling allows us to keep resources from becoming idle when the top job (the job with the highest execution priority) cannot run. @@ -71,5 +71,11 @@ Specifying more accurate walltime enables better scheduling, better execution ti ---8<--- "mathjax.md" +### Job Placement + +Job [placement can be controlled by flags during submission][1]. + +[1]: job-submission-and-execution.md#job_placement + [a]: https://extranet.it4i.cz/rsweb/anselm/queues [b]: https://extranet.it4i.cz/rsweb/anselm/projects diff --git a/docs.it4i/anselm/job-submission-and-execution.md b/docs.it4i/general/job-submission-and-execution.md similarity index 65% rename from docs.it4i/anselm/job-submission-and-execution.md rename to docs.it4i/general/job-submission-and-execution.md index 3739fd0bed5e1fb9e70b4bd0c2bbc5d1774a9c95..61b58b71745606335c6a66d98f9bc998c963a9bd 100644 --- a/docs.it4i/anselm/job-submission-and-execution.md +++ b/docs.it4i/general/job-submission-and-execution.md @@ -27,6 +27,9 @@ The qsub command submits the job to the queue, i.e. the qsub command creates a r ### Job Submission Examples +!!! note + Anselm ... ncpus=16, Salomon ... ncpus=24 + ```console $ qsub -A OPEN-0-0 -q qprod -l select=64:ncpus=16,walltime=03:00:00 ./myjob ``` @@ -63,6 +66,91 @@ By default, the PBS batch system sends an e-mail only when the job is aborted. D $ qsub -m n ``` +### Salomon - Intel Xeon Phi Co-Processors + +To allocate a node with Xeon Phi co-processor, user needs to specify that in select statement. Currently only allocation of whole nodes with both Phi cards as the smallest chunk is supported. Standard PBSPro approach through attributes "accelerator", "naccelerators" and "accelerator_model" is used. The "accelerator_model" can be omitted, since on Salomon only one type of accelerator type/model is available. +The absence of specialized queue for accessing the nodes with cards means, that the Phi cards can be utilized in any queue, including qexp for testing/experiments, qlong for longer jobs, qfree after the project resources have been spent, etc. The Phi cards are thus also available to PRACE users. There's no need to ask for permission to utilize the Phi cards in project proposals. + +```console +$ qsub -A OPEN-0-0 -I -q qprod -l select=1:ncpus=24:accelerator=True:naccelerators=2:accelerator_model=phi7120 ./myjob +``` + +In this example, we allocate 1 node, with 24 cores, with 2 Xeon Phi 7120p cards, running batch job ./myjob. The default time for qprod is used, e. g. 24 hours. + +```console +$ qsub -A OPEN-0-0 -I -q qlong -l select=4:ncpus=24:accelerator=True:naccelerators=2 -l walltime=56:00:00 -I +``` + +In this example, we allocate 4 nodes, with 24 cores per node (totalling 96 cores), with 2 Xeon Phi 7120p cards per node (totalling 8 Phi cards), running interactive job for 56 hours. The accelerator model name was omitted. + +#### Salomon - Intel Xeon Phi - Queue QMIC + +Examples executions + +```console +-l select=1 +exec_vnode = (r21u05n581-mic0:naccelerators=1:ncpus=0) +-l select=4 +(r21u05n581-mic0:naccelerators=1:ncpus=0)+(r21u05n581-mic1:naccelerators=1:ncpus=0)+(r21u06n582-mic0:naccelerators=1:ncpus=0)+(r21u06n582-mic1:naccelerators=1:ncpus=0) +-l select=4:naccelerators=1 +(r21u05n581-mic0:naccelerators=1:ncpus=0)+(r21u05n581-mic1:naccelerators=1:ncpus=0)+(r21u06n582-mic0:naccelerators=1:ncpus=0)+(r21u06n582-mic1:naccelerators=1:ncpus=0) +-l select=1:naccelerators=2 +(r21u05n581-mic0:naccelerators=1+r21u05n581-mic1:naccelerators=1) +-l select=2:naccelerators=2 +(r21u05n581-mic0:naccelerators=1+r21u05n581-mic1:naccelerators=1)+(r21u06n582-mic0:naccelerators=1+r21u06n582-mic1:naccelerators=1) +-l select=1:ncpus=24:naccelerators=2 +(r22u32n610:ncpus=24+r22u32n610-mic0:naccelerators=1+r22u32n610-mic1:naccelerators=1) +-l select=1:ncpus=24:naccelerators=0+4 +(r33u17n878:ncpus=24:naccelerators=0)+(r33u13n874-mic0:naccelerators=1:ncpus=0)+(r33u13n874-mic1:naccelerators=1:ncpus=0)+(r33u16n877-mic0:naccelerators=1:ncpus=0)+(r33u16n877-mic1:naccelerators=1:ncpus=0) +``` + +### Salomon - UV2000 SMP + +!!! note + 13 NUMA nodes available on UV2000 + Per NUMA node allocation. + Jobs are isolated by cpusets. + +The UV2000 (node uv1) offers 3TB of RAM and 104 cores, distributed in 13 NUMA nodes. A NUMA node packs 8 cores and approx. 247GB RAM (with exception, node 11 has only 123GB RAM). In the PBS the UV2000 provides 13 chunks, a chunk per NUMA node (see [Resource allocation policy][1]). The jobs on UV2000 are isolated from each other by cpusets, so that a job by one user may not utilize CPU or memory allocated to a job by other user. Always, full chunks are allocated, a job may only use resources of the NUMA nodes allocated to itself. + +```console + $ qsub -A OPEN-0-0 -q qfat -l select=13 ./myjob +``` + +In this example, we allocate all 13 NUMA nodes (corresponds to 13 chunks), 104 cores of the SGI UV2000 node for 24 hours. Jobscript myjob will be executed on the node uv1. + +```console +$ qsub -A OPEN-0-0 -q qfat -l select=1:mem=2000GB ./myjob +``` + +In this example, we allocate 2000GB of memory on the UV2000 for 24 hours. By requesting 2000GB of memory, memory from 10 chunks and 8 cores are allocated. Jobscript myjob will be executed on the node uv1. + +```console +$ qsub -A OPEN-0-0 -q qfat -l select=1:mem=3099GB,walltime=48:00:00 ./myjob +``` + +In this example, we allocate 3099GB of memory on the UV2000 for 48 hours. By requesting 3099GB of memory, memory from all 13 chunks and 8 cores are allocated. Jobscript myjob will be executed on the node uv1. + +```console +$ qsub -A OPEN-0-0 -q qfat -l select=2:mem=1000GB,walltime=48:00:00 ./myjob +``` + +In this example, we allocate 2000GB of memory and 16 cores on the UV2000 for 48 hours. By requesting 1000GB of memory per chunk, 2000GB of memory and 16 cores are allocated. Jobscript myjob will be executed on the node uv1. + +### Useful Tricks + +All qsub options may be [saved directly into the jobscript][2]. In such a case, no options to qsub are needed. + +```console +$ qsub ./myjob +``` + +By default, the PBS batch system sends an e-mail only when the job is aborted. Disabling mail events completely can be done like this: + +```console +$ qsub -m n +``` + ## Advanced Job Placement ### Placement by Name @@ -73,12 +161,18 @@ Specific nodes may be allocated via the PBS $ qsub -A OPEN-0-0 -q qprod -l select=1:ncpus=16:host=cn171+1:ncpus=16:host=cn172 -I ``` +```console +qsub -A OPEN-0-0 -q qprod -l select=1:ncpus=24:host=r24u35n680+1:ncpus=24:host=r24u36n681 -I +``` + In this example, we allocate nodes cn171 and cn172, all 16 cores per node, for 24 hours. Consumed resources will be accounted to the Project identified by Project ID OPEN-0-0. The resources will be available interactively. -### Placement by CPU Type +### Anselm - Placement by CPU Type Nodes equipped with an Intel Xeon E5-2665 CPU have a base clock frequency of 2.4GHz, nodes equipped with an Intel Xeon E5-2470 CPU have a base frequency of 2.3 GHz (see the section Compute Nodes for details). Nodes may be selected via the PBS resource attribute cpu_freq . +#### Anselm + | CPU Type | base freq. | Nodes | cpu_freq attribute | | ------------------ | ---------- | ---------------------- | ------------------ | | Intel Xeon E5-2665 | 2.4GHz | cn[1-180], cn[208-209] | 24 | @@ -90,7 +184,7 @@ $ qsub -A OPEN-0-0 -q qprod -l select=4:ncpus=16:cpu_freq=24 -I In this example, we allocate 4 nodes, 16 cores per node, selecting only the nodes with Intel Xeon E5-2665 CPU. -### Placement by IB Switch +### Anselm - Placement by IB Switch Groups of computational nodes are connected to chassis integrated Infiniband switches. These switches form the leaf switch layer of the [Infiniband network][2] fat tree topology. Nodes sharing the leaf switch can communicate most efficiently. Sharing the same switch prevents hops in the network and facilitates unbiased, highly efficient network communication. @@ -104,6 +198,111 @@ $ qsub -A OPEN-0-0 -q qprod -l select=18:ncpus=16:ibswitch=isw11 ./myjob In this example, we request all of the 18 nodes sharing the isw11 switch for 24 hours. a full chassis will be allocated. +### Salomon - Placement by Network Location + +Network location of allocated nodes in the [InifiBand network][3] influences efficiency of network communication between nodes of job. Nodes on the same InifiBand switch communicate faster with lower latency than distant nodes. To improve communication efficiency of jobs, PBS scheduler on Salomon is configured to allocate nodes - from currently available resources - which are as close as possible in the network topology. + +For communication intensive jobs it is possible to set stricter requirement - to require nodes directly connected to the same InifiBand switch or to require nodes located in the same dimension group of the InifiBand network. + +### Salomon - Placement by InifiBand Switch + +Nodes directly connected to the same InifiBand switch can communicate most efficiently. Using the same switch prevents hops in the network and provides for unbiased, most efficient network communication. There are 9 nodes directly connected to every InifiBand switch. + +!!! note + We recommend allocating compute nodes of a single switch when the best possible computational network performance is required to run job efficiently. + +Nodes directly connected to the one InifiBand switch can be allocated using node grouping on PBS resource attribute switch. + +In this example, we request all 9 nodes directly connected to the same switch using node grouping placement. + +```console +$ qsub -A OPEN-0-0 -q qprod -l select=9:ncpus=24 -l place=group=switch ./myjob +``` + +### Salomon - Placement by Specific InifiBand Switch + +!!! note + Not useful for ordinary computing, suitable for testing and management tasks. + +Nodes directly connected to the specific InifiBand switch can be selected using the PBS resource attribute _switch_. + +In this example, we request all 9 nodes directly connected to r4i1s0sw1 switch. + +```console +$ qsub -A OPEN-0-0 -q qprod -l select=9:ncpus=24:switch=r4i1s0sw1 ./myjob +``` + +List of all InifiBand switches: + +```console +$ qmgr -c 'print node @a' | grep switch | awk '{print $6}' | sort -u +r1i0s0sw0 +r1i0s0sw1 +r1i1s0sw0 +r1i1s0sw1 +r1i2s0sw0 +... +``` + +List of all all nodes directly connected to the specific InifiBand switch: + +```console +$ qmgr -c 'p n @d' | grep 'switch = r36sw3' | awk '{print $3}' | sort +r36u31n964 +r36u32n965 +r36u33n966 +r36u34n967 +r36u35n968 +r36u36n969 +r37u32n970 +r37u33n971 +r37u34n972 +``` + +### Salomon - Placement by Hypercube Dimension + +Nodes located in the same dimension group may be allocated using node grouping on PBS resource attribute ehc\_[1-7]d . + +| Hypercube dimension | node_group_key | #nodes per group | +| ------------------- | -------------- | ---------------- | +| 1D | ehc_1d | 18 | +| 2D | ehc_2d | 36 | +| 3D | ehc_3d | 72 | +| 4D | ehc_4d | 144 | +| 5D | ehc_5d | 144,288 | +| 6D | ehc_6d | 432,576 | +| 7D | ehc_7d | all | + +In this example, we allocate 16 nodes in the same [hypercube dimension][4] 1 group. + +```console +$ qsub -A OPEN-0-0 -q qprod -l select=16:ncpus=24 -l place=group=ehc_1d -I +``` + +For better understanding: + +List of all groups in dimension 1: + +```console +$ qmgr -c 'p n @d' | grep ehc_1d | awk '{print $6}' | sort |uniq -c + 18 r1i0 + 18 r1i1 + 18 r1i2 + 18 r1i3 +... +``` + +List of all all nodes in specific dimension 1 group: + +```console +$ $ qmgr -c 'p n @d' | grep 'ehc_1d = r1i0' | awk '{print $3}' | sort +r1i0n0 +r1i0n1 +r1i0n10 +r1i0n11 +... +``` + ## Advanced Job Handling ### Selecting Turbo Boost Off @@ -409,9 +608,9 @@ In this example, a directory in /home holds the input file input and executable Further jobscript examples may be found in the software section and the [Capacity computing][7] section. [1]: #example-jobscript-for-mpi-calculation-with-preloaded-inputs -[2]: network.md -[3]: hardware-overview.md -[4]: storage.md +[2]: ../anselm/network.md +[3]: ../anselm/hardware-overview.md +[4]: ../anselm/storage.md [5]: ../software/mpi/running_openmpi.md [6]: ../software/mpi/running-mpich2.md [7]: capacity-computing.md diff --git a/docs.it4i/general/resource_allocation_and_job_execution.md b/docs.it4i/general/resource_allocation_and_job_execution.md index 0b0a2b36f4e3937769476f3906ae4aa06d875758..19933181e064720c795f13e2b39161361993e961 100644 --- a/docs.it4i/general/resource_allocation_and_job_execution.md +++ b/docs.it4i/general/resource_allocation_and_job_execution.md @@ -40,9 +40,9 @@ Read more on [Capacity computing][6] page. [1]: #terminology-frequently-used-on-these-pages [2]: ../pbspro.md -[3]: ../salomon/job-priority.md#fair-share-priority -[4]: ../salomon/resources-allocation-policy.md -[5]: ../salomon/job-submission-and-execution.md -[6]: ../salomon/capacity-computing.md +[3]: job-priority.md#fair-share-priority +[4]: resources-allocation-policy.md +[5]: job-submission-and-execution.md +[6]: capacity-computing.md [a]: https://extranet.it4i.cz/rsweb/salomon/queues diff --git a/docs.it4i/salomon/resources-allocation-policy.md b/docs.it4i/general/resources-allocation-policy.md similarity index 57% rename from docs.it4i/salomon/resources-allocation-policy.md rename to docs.it4i/general/resources-allocation-policy.md index 9182d657eae97016486c4a06803d09ee4c15fd22..009719cceb121105de9fcc4a7077344b307bcc11 100644 --- a/docs.it4i/salomon/resources-allocation-policy.md +++ b/docs.it4i/general/resources-allocation-policy.md @@ -2,10 +2,34 @@ ## Job Queue Policies -The resources are allocated to the job in a fair-share fashion, subject to constraints set by the queue and resources available to the Project. The fair-share at Anselm ensures that individual users may consume approximately equal amount of resources per week. Detailed information in the [Job scheduling][1] section. The resources are accessible via several queues for queueing the jobs. The queues provide prioritized and exclusive access to the computational resources. Following table provides the queue partitioning overview: +The resources are allocated to the job in a fair-share fashion, subject to constraints set by the queue and the resources available to the Project. The Fair-share system of Anselm ensures that individual users may consume approximately equal amounts of resources per week. Detailed information can be found in the [Job scheduling][1] section. The resources are accessible via several queues for queueing the jobs. The queues provide prioritized and exclusive access to the computational resources. The following table provides the queue partitioning overview: !!! note - Check the queue status [here][a]. + Check the queue status [here][z]. + +### Anselm + +| queue | active project | project resources | nodes | min ncpus | priority | authorization | walltime | +| ------------------- | -------------- | -------------------- | ---------------------------------------------------- | --------- | -------- | ------------- | -------- | +| qexp | no | none required | 209 nodes | 1 | 150 | no | 1 h | +| qprod | yes | > 0 | 180 nodes w/o accelerator | 16 | 0 | no | 24/48 h | +| qlong | yes | > 0 | 180 nodes w/o accelerator | 16 | 0 | no | 72/144 h | +| qnvidia | yes | > 0 | 23 nvidia nodes | 16 | 200 | yes | 24/48 h | +| qfat | yes | > 0 | 2 fat nodes | 16 | 200 | yes | 24/144 h | +| qfree | yes | < 120% of allocation | 180 w/o accelerator | 16 | -1024 | no | 12 h | + +!!! note + **The qfree queue is not free of charge**. [Normal accounting][2] applies. However, it allows for utilization of free resources, once a project has exhausted all its allocated computational resources. This does not apply to Director's Discretion projects (DD projects) by default. Usage of qfree after exhaustion of DD projects' computational resources is allowed after request for this queue. + +**The qexp queue is equipped with nodes which do not have exactly the same CPU clock speed.** Should you need the nodes to have exactly the same CPU speed, you have to select the proper nodes during the PSB job submission. + +* **qexp**, the Express queue: This queue is dedicated to testing and running very small jobs. It is not required to specify a project to enter the qexp. There are always 2 nodes reserved for this queue (w/o accelerators), a maximum 8 nodes are available via the qexp for a particular user, from a pool of nodes containing Nvidia accelerated nodes (cn181-203), MIC accelerated nodes (cn204-207) and Fat nodes with 512GB of RAM (cn208-209). This enables us to test and tune accelerated code and code with higher RAM requirements. The nodes may be allocated on a per core basis. No special authorization is required to use qexp. The maximum runtime in qexp is 1 hour. +* **qprod**, the Production queue: This queue is intended for normal production runs. It is required that an active project with nonzero remaining resources is specified to enter the qprod. All nodes may be accessed via the qprod queue, except the reserved ones. 178 nodes without accelerators are included. Full nodes, 16 cores per node, are allocated. The queue runs with medium priority and no special authorization is required to use it. The maximum runtime in qprod is 48 hours. +* **qlong**, the Long queue: This queue is intended for long production runs. It is required that an active project with nonzero remaining resources is specified to enter the qlong. Only 60 nodes without acceleration may be accessed via the qlong queue. Full nodes, 16 cores per node, are allocated. The queue runs with medium priority and no special authorization is required to use it. The maximum runtime in qlong is 144 hours (three times that of the standard qprod time - 3 x 48 h). +* **qnvidia**, **qmic**, **qfat**, the Dedicated queues: The queue qnvidia is dedicated to accessing the Nvidia accelerated nodes, the qmic to accessing MIC nodes and qfat the Fat nodes. It is required that an active project with nonzero remaining resources is specified to enter these queues. 23 nvidia, 4 mic, and 2 fat nodes are included. Full nodes, 16 cores per node, are allocated. The queues run with very high priority, the jobs will be scheduled before the jobs coming from the qexp queue. An PI needs to explicitly ask [support][a] for authorization to enter the dedicated queues for all users associated with her/his project. +* **qfree**, The Free resource queue: The queue qfree is intended for utilization of free resources, after a project has exhausted all of its allocated computational resources (Does not apply to DD projects by default; DD projects have to request persmission to use qfree after exhaustion of computational resources). It is required that active project is specified to enter the queue. Consumed resources will be accounted to the Project. Access to the qfree queue is automatically removed if consumed resources exceed 120% of the resources allocated to the Project. Only 180 nodes without accelerators may be accessed from this queue. Full nodes, 16 cores per node, are allocated. The queue runs with very low priority and no special authorization is required to use it. The maximum runtime in qfree is 12 hours. + +### Salomon | queue | active project | project resources | nodes | min ncpus | priority | authorization | walltime | | ------------------------------- | -------------- | -------------------- | ------------------------------------------------------------- | --------- | -------- | ------------- | --------- | @@ -35,26 +59,26 @@ The resources are allocated to the job in a fair-share fashion, subject to const ## Queue Notes -The job wall-clock time defaults to **half the maximum time**, see table above. Longer wall time limits can be [set manually, see examples][3]. +The job wall clock time defaults to **half the maximum time**, see the table above. Longer wall time limits can be [set manually, see examples][3]. -Jobs that exceed the reserved wall-clock time (Req'd Time) get killed automatically. Wall-clock time limit can be changed for queuing jobs (state Q) using the qalter command, however can not be changed for a running job (state R). +Jobs that exceed the reserved wall clock time (Req'd Time) get killed automatically. The wall clock time limit can be changed for queuing jobs (state Q) using the qalter command, however it cannot be changed for a running job (state R). -Salomon users may check current queue configuration [here][b]. +Anselm users may check the current queue configuration [here][b]. ## Queue Status -!!! note - Check the status of jobs, queues and compute nodes [here][a]. +!!! tip + Check the status of jobs, queues and compute nodes [here][c]. - + -Display the queue status on Salomon: +Display the queue status on Anselm: ```console $ qstat -q ``` -The PBS allocation overview may be obtained also using the rspbs command. +The PBS allocation overview may be obtained also using the rspbs command: ```console $ rspbs @@ -63,6 +87,9 @@ Usage: rspbs [options] Options: --version show program's version number and exit -h, --help show this help message and exit + --get-node-ncpu-chart + Print chart of allocated ncpus per node + --summary Print summary --get-server-details Print server --get-queues Print queues --get-queues-details Print queues details @@ -99,10 +126,6 @@ Options: --get-ibswitch-nodes Print ibswitch nodes --get-ibswitch-nodeset Print ibswitch nodeset - --summary Print summary - --get-node-ncpu-chart - Obsolete. Print chart of allocated ncpus per node - --server=SERVER Use given PBS server --state=STATE Only for given job state --jobid=JOBID Only for given job ID --user=USER Only for given user @@ -118,8 +141,9 @@ Options: ---8<--- "mathjax.md" [1]: job-priority.md -[2]: #resource-accounting-policy +[2]: #resources-accounting-policy [3]: job-submission-and-execution.md -[a]: https://extranet.it4i.cz/rsweb/salomon/ -[b]: https://extranet.it4i.cz/rsweb/salomon/queues +[a]: https://support.it4i.cz/rt/ +[b]: https://extranet.it4i.cz/rsweb/anselm/queues +[c]: https://extranet.it4i.cz/rsweb/anselm/ diff --git a/docs.it4i/anselm/shell-and-data-access.md b/docs.it4i/general/shell-and-data-access.md similarity index 53% rename from docs.it4i/anselm/shell-and-data-access.md rename to docs.it4i/general/shell-and-data-access.md index 767c300d21a897fd4f6b56f45b61a3ff51a7e806..14204e9b410daae45853f64b97b7f0767a46ad41 100644 --- a/docs.it4i/anselm/shell-and-data-access.md +++ b/docs.it4i/general/shell-and-data-access.md @@ -1,19 +1,36 @@ -# Accessing the Cluster +# Accessing the Clusters ## Shell Access -The Anselm cluster is accessed by SSH protocol via login nodes login1 and login2 at the address anselm.it4i.cz. The login nodes may be addressed specifically, by prepending the login node name to the address. +The all IT4Innovations clusters are accessed by SSH protocol via login nodes loginX at the address **cluster-name.it4i.cz**. The login nodes may be addressed specifically, by prepending the login node name to the address. -| Login address | Port | Protocol | Login node | -| --------------------- | ---- | -------- | -------------------------------------------- | -| anselm.it4i.cz | 22 | ssh | round-robin DNS record for login1 and login2 | -| login1.anselm.it4i.cz | 22 | ssh | login1 | -| login2.anselm.it4i.cz | 22 | ssh | login2 | +!!! note + The alias **cluster-name.it4i.cz** is currently not available through VPN connection. Use **loginX.cluster-name.it4i.cz** when connected to VPN. + +### Anselm Cluster + +| Login address | Port | Protocol | Login node | +| --------------------- | ---- | -------- | --------------------------------------| +| anselm.it4i.cz | 22 | ssh | round-robin DNS record for login[1-2] | +| login1.anselm.it4i.cz | 22 | ssh | login1 | +| login2.anselm.it4i.cz | 22 | ssh | login2 | + +### Salomon Cluster + +| Login address | Port | Protocol | Login node | +| ---------------------- | ---- | -------- | ------------------------------------- | +| salomon.it4i.cz | 22 | ssh | round-robin DNS record for login[1-4] | +| login1.salomon.it4i.cz | 22 | ssh | login1 | +| login2.salomon.it4i.cz | 22 | ssh | login2 | +| login3.salomon.it4i.cz | 22 | ssh | login3 | +| login4.salomon.it4i.cz | 22 | ssh | login4 | + +## Authentication Authentication is available by [private key][1] only. !!! note - Please verify SSH fingerprints during the first logon. They are identical on all login nodes: + Verify SSH fingerprints during the first logon. They are identical on all login nodes: md5: @@ -30,10 +47,10 @@ Private key authentication: On **Linux** or **Mac**, use: ```console -$ ssh -i /path/to/id_rsa username@anselm.it4i.cz +$ ssh -i /path/to/id_rsa username@cluster-name.it4i.cz ``` -If you see a warning message "UNPROTECTED PRIVATE KEY FILE!", use this command to set lower permissions to the private key file: +If you see a warning message **UNPROTECTED PRIVATE KEY FILE!**, use this command to set lower permissions to the private key file: ```console $ chmod 600 /path/to/id_rsa @@ -41,31 +58,30 @@ $ chmod 600 /path/to/id_rsa On **Windows**, use [PuTTY ssh client][2]. -After logging in, you will see the command prompt: +After logging in, you will see the command prompt ```console - _ - /\ | | - / \ _ __ ___ ___| |_ __ ___ - / /\ \ | '_ \/ __|/ _ \ | '_ ` _ \ - / ____ \| | | \__ \ __/ | | | | | | - /_/ \_\_| |_|___/\___|_|_| |_| |_| + ___ _____ _ _ ___ _ _ + |_ _| |_ _| | || | |_ _| _ __ _ __ ___ __ __ __ _ | |_ (_) ___ _ __ ___ + | | | | | || |_ | | | '_ \ | '_ \ / _ \ \ \ / / / _` | | __| | | / _ \ | '_ \ / __| + | | | | |__ _| | | | | | | | | | | | (_) | \ V / | (_| | | |_ | | | (_) | | | | | \__ \ + |___| |_| |_| |___| |_| |_| |_| |_| \___/ \_/ \__,_| \__| |_| \___/ |_| |_| |___/ - http://www.it4i.cz/?lang=en + http://www.it4i.cz/?lang=en Last login: Tue Jul 9 15:57:38 2013 from your-host.example.com -[username@login2.anselm ~]$ +[username@login2.cluster-name ~]$ ``` -Example to the cluster login: - !!! note The environment is **not** shared between login nodes, except for [shared filesystems][3]. ## Data Transfer -Data in and out of the system may be transferred by the [scp][a] and sftp protocols. (Not available yet). In the case that large volumes of data are transferred, use the dedicated data mover node dm1.anselm.it4i.cz for increased performance. +Data in and out of the system may be transferred by the [scp][a] and sftp protocols. + +### Anselm Cluster | Address | Port | Protocol | | --------------------- | ---- | --------- | @@ -73,42 +89,41 @@ Data in and out of the system may be transferred by the [scp][a] and sftp protoc | login1.anselm.it4i.cz | 22 | scp | | login2.anselm.it4i.cz | 22 | scp | -Authentication is by [private key][1] only. - -!!! note - Data transfer rates of up to **160MB/s** can be achieved with scp or sftp. +### Salomon Cluster - 1TB may be transferred in 1:50h. +| Address | Port | Protocol | +| ---------------------- | ---- | --------- | +| salomon.it4i.cz | 22 | scp, sftp | +| login1.salomon.it4i.cz | 22 | scp, sftp | +| login2.salomon.it4i.cz | 22 | scp, sftp | +| login3.salomon.it4i.cz | 22 | scp, sftp | +| login4.salomon.it4i.cz | 22 | scp, sftp | -To achieve 160MB/s transfer rates, the end user must be connected by 10G line all the way to IT4Innovations, and be using a computer with a fast processor for the transfer. When using a Gigabit ethernet connection, up to 110MB/s transfer rates may be expected. Fast cipher (aes128-ctr) should be used. +Authentication is by [private key][1] only. !!! note If you experience degraded data transfer performance, consult your local network provider. -On linux or Mac, use an scp or sftp client to transfer data to Anselm: - ```console -$ scp -i /path/to/id_rsa my-local-file username@anselm.it4i.cz:directory/file +$ scp -i /path/to/id_rsa my-local-file username@cluster-name.it4i.cz:directory/file ``` ```console -$ scp -i /path/to/id_rsa -r my-local-dir username@anselm.it4i.cz:directory +$ scp -i /path/to/id_rsa -r my-local-dir username@cluster-name.it4i.cz:directory ``` or ```console -$ sftp -o IdentityFile=/path/to/id_rsa username@anselm.it4i.cz +$ sftp -o IdentityFile=/path/to/id_rsa username@cluster-name.it4i.cz ``` -A very convenient way to transfer files in and out of Anselm is via the fuse filesystem [sshfs][b]. +A very convenient way to transfer files in and out of cluster is via the fuse filesystem [sshfs][b]. ```console -$ sshfs -o IdentityFile=/path/to/id_rsa username@anselm.it4i.cz:. mountpoint +$ sshfs -o IdentityFile=/path/to/id_rsa username@cluster-name.it4i.cz:. mountpoint ``` -Using sshfs, the users Anselm home directory will be mounted on your local computer, just like an external disk. - Learn more about ssh, scp and sshfs by reading the manpages ```console @@ -117,13 +132,13 @@ $ man scp $ man sshfs ``` -On Windows, use the [WinSCP client][c] to transfer the data. The [win-sshfs client][d] provides a way to mount the Anselm filesystems directly as an external disc. +On Windows, use the [WinSCP client][c] to transfer the data. The [win-sshfs client][d] provides a way to mount the cluster filesystems directly as an external disc. More information about the shared file systems is available [here][4]. ## Connection Restrictions -Outgoing connections, from Anselm Cluster login nodes to the outside world, are restricted to the following ports: +Outgoing connections, from cluster login nodes to the outside world, are restricted to the following ports: | Port | Protocol | | ---- | -------- | @@ -133,28 +148,28 @@ Outgoing connections, from Anselm Cluster login nodes to the outside world, are | 9418 | git | !!! note - Please use **ssh port forwarding** and proxy servers to connect from Anselm to all other remote ports. + Use **ssh port forwarding** and proxy servers to connect from cluster to all other remote ports. -Outgoing connections, from Anselm Cluster compute nodes are restricted to the internal network. Direct connections form compute nodes to the outside world are cut. +Outgoing connections, from Cluster compute nodes are restricted to the internal network. Direct connections form compute nodes to the outside world are cut. ## Port Forwarding ### Port Forwarding From Login Nodes !!! note - Port forwarding allows an application running on Anselm to connect to arbitrary remote hosts and ports. + Port forwarding allows an application running on cluster to connect to arbitrary remote hosts and ports. -It works by tunneling the connection from Anselm back to users' workstations and forwarding from the workstation to the remote host. +It works by tunneling the connection from cluster back to users' workstations and forwarding from the workstation to the remote host. -Pick some unused port on the Anselm login node (for example 6000) and establish the port forwarding: +Pick some unused port on the cluster login node (for example 6000) and establish the port forwarding: ```console -$ ssh -R 6000:remote.host.com:1234 anselm.it4i.cz +$ ssh -R 6000:remote.host.com:1234 cluster-name.it4i.cz ``` -In this example, we establish port forwarding between port 6000 on Anselm and port 1234 on the remote.host.com. By accessing localhost:6000 on Anselm, an application will see the response of remote.host.com:1234. The traffic will run via the user's local workstation. +In this example, we establish port forwarding between port 6000 on cluster and port 1234 on the remote.host.com. By accessing localhost:6000 on cluster, an application will see the response of remote.host.com:1234. The traffic will run via the user's local workstation. -Port forwarding may be done **using PuTTY** as well. On the PuTTY Configuration screen, load your Anselm configuration first. Then go to Connection->SSH->Tunnels to set up the port forwarding. Click Remote radio button. Insert 6000 to theSource port textbox. Insert remote.host.com:1234. Click the Add button, then Open. +Port forwarding may be done **using PuTTY** as well. On the PuTTY Configuration screen, load your cluster configuration first. Then go to *Connection->SSH->Tunnels* to set up the port forwarding. Click Remote radio button. Insert 6000 to theSource port textbox. Insert remote.host.com:1234. Click the Add button, then Open. Port forwarding may be established directly to the remote host. However, this requires that the user has ssh access to remote.host.com @@ -167,7 +182,7 @@ $ ssh -L 6000:localhost:1234 remote.host.com ### Port Forwarding From Compute Nodes -Remote port forwarding from compute nodes allows applications running on the compute nodes to access hosts outside the Anselm Cluster. +Remote port forwarding from compute nodes allows applications running on the compute nodes to access hosts outside the cluster. First, establish the remote port forwarding form the login node, as [described above][5]. @@ -194,10 +209,10 @@ $ ssh -D 1080 localhost On Windows, install and run the free, open source [Sock Puppet][e] server. -Once the proxy server is running, establish ssh port forwarding from Anselm to the proxy server, port 1080, exactly as [described above][5]: +Once the proxy server is running, establish ssh port forwarding from cluster to the proxy server, port 1080, exactly as [described above][5]: ```console -$ ssh -R 6000:localhost:1080 anselm.it4i.cz +$ ssh -R 6000:localhost:1080 cluster-name.it4i.cz ``` Now, configure the applications proxy settings to **localhost:6000**. Use port forwarding to access the [proxy server from compute nodes][5] as well. @@ -213,8 +228,8 @@ Now, configure the applications proxy settings to **localhost:6000**. Use port f [1]: ../general/accessing-the-clusters/shell-access-and-data-transfer/ssh-keys.md [2]: ../general/accessing-the-clusters/shell-access-and-data-transfer/putty.md -[3]: storage.md#shared-filesystems -[4]: storage.md +[3]: ../anselm/storage.md#shared-filesystems +[4]: ../anselm/storage.md [5]: #port-forwarding-from-login-nodes [6]: ../general/accessing-the-clusters/graphical-user-interface/x-window-system.md [7]: ../general/accessing-the-clusters/graphical-user-interface/vnc.md diff --git a/docs.it4i/img/49213048_2722927791082867_3152356642071248896_n.png b/docs.it4i/img/49213048_2722927791082867_3152356642071248896_n.png new file mode 100644 index 0000000000000000000000000000000000000000..5c78e10f664dbc8b9c0ccacba62a309a1b599a20 Binary files /dev/null and b/docs.it4i/img/49213048_2722927791082867_3152356642071248896_n.png differ diff --git a/docs.it4i/img/dgx1.png b/docs.it4i/img/dgx1.png new file mode 100644 index 0000000000000000000000000000000000000000..89807e71f6ed8044f863e336f168120e16a7ed99 Binary files /dev/null and b/docs.it4i/img/dgx1.png differ diff --git a/docs.it4i/img/dgx2.png b/docs.it4i/img/dgx2.png new file mode 100644 index 0000000000000000000000000000000000000000..fd6c42fff6a218c59deb85cc23ff84ab8977c60b Binary files /dev/null and b/docs.it4i/img/dgx2.png differ diff --git a/docs.it4i/img/dgx3.png b/docs.it4i/img/dgx3.png new file mode 100644 index 0000000000000000000000000000000000000000..39dc8d602f075776c0a7c23557ba1f8cf2b0795a Binary files /dev/null and b/docs.it4i/img/dgx3.png differ diff --git a/docs.it4i/img/dgx4.png b/docs.it4i/img/dgx4.png new file mode 100644 index 0000000000000000000000000000000000000000..a9fa87778ace17b9aee785402458263cf3e8c79b Binary files /dev/null and b/docs.it4i/img/dgx4.png differ diff --git a/docs.it4i/img/favicon.ico b/docs.it4i/img/favicon.ico index d51e1c2571169b49424f1ab0f91f59c0b4e63b34..6c5618663a1a3500ae09b49ca6130774adc894d8 100644 Binary files a/docs.it4i/img/favicon.ico and b/docs.it4i/img/favicon.ico differ diff --git a/docs.it4i/img/fig1.png b/docs.it4i/img/fig1.png index 0b5670a4e570c385eccc5d83e8cefc8c93e38e03..938b783964771627aa573f0f4944213e54c67a32 100644 Binary files a/docs.it4i/img/fig1.png and b/docs.it4i/img/fig1.png differ diff --git a/docs.it4i/index.md b/docs.it4i/index.md index 9e44b6d8738a54d3135cb1729a1d3c4254eb34e4..914cbda0657f67fa4a65d8af5510928597ca4ca9 100644 --- a/docs.it4i/index.md +++ b/docs.it4i/index.md @@ -1,9 +1,6 @@ # Documentation -!!! Warning - Salomon operating system has been upgraded to the latest CentOS 7.6 on 2018-12-05. Make sure to read the [details][upgrade]. - -Welcome to the IT4Innovations documentation pages. The IT4Innovations national supercomputing center operates the supercomputers [Salomon][1] and [Anselm][2]. The supercomputers are [available][3] to the academic community within the Czech Republic and Europe, and the industrial community worldwide. The purpose of these pages is to provide comprehensive documentation of the hardware, software and usage of the computers. +Welcome to the IT4Innovations documentation pages. The IT4Innovations national supercomputing center operates the supercomputers [Anselm][2] and [Salomon][1]. The supercomputers are [available][4] to the academic community within the Czech Republic and Europe, and the industrial community worldwide. The purpose of these pages is to provide comprehensive documentation of the hardware, software and usage of the computers. ## How to Read the Documentation @@ -14,7 +11,7 @@ Welcome to the IT4Innovations documentation pages. The IT4Innovations national s ## Getting Help and Support !!! note - Contact [support\[at\]it4i.cz][a] for help and support regarding the cluster technology at IT4Innovations. Please use **Czech**, **Slovak** or **English** language for communication with us. Follow the status of your request to IT4Innovations [here][b]. The IT4Innovations support team will use best efforts to resolve requests within thirty days. + Contact [support\[at\]it4i.cz][a] for help and support regarding the cluster technology at IT4Innovations. Use **Czech**, **Slovak** or **English** language for communication with us. Follow the status of your request to IT4Innovations [here][b]. The IT4Innovations support team will use best efforts to resolve requests within thirty days. Use your IT4Innovations username and password to log in to the [support][b] portal. @@ -34,7 +31,7 @@ In many cases, you will run your own code on the cluster. In order to fully expl * **node:** a computer, interconnected via a network to other computers - Computational nodes are powerful computers, designed for, and dedicated to executing demanding scientific computations. * **core:** a processor core, a unit of processor, executing computations -* **core-hour:** also normalized core-hour, NCH. A metric of computer utilization, [see definition][4]. +* **core-hour:** also normalized core-hour, NCH. A metric of computer utilization, [see definition][5]. * **job:** a calculation running on the supercomputer - the job allocates and utilizes the resources of the supercomputer for certain time. * **HPC:** High Performance Computing * **HPC (computational) resources:** corehours, storage capacity, software licences @@ -71,9 +68,8 @@ By doing so, you can save other readers from frustration and help us improve. [1]: salomon/introduction.md [2]: anselm/introduction.md -[3]: general/applying-for-resources.md -[4]: salomon/resources-allocation-policy.md#normalized-core-hours-nch -[upgrade]: salomon-upgrade.md +[4]: general/applying-for-resources.md +[5]: general/resources-allocation-policy.md#normalized-core-hours-nch [a]: mailto:support@it4i.cz [b]: http://support.it4i.cz/rt diff --git a/docs.it4i/modules-anselm.md b/docs.it4i/modules-anselm.md deleted file mode 100644 index e7a2e6c1a4142866b661a66f5e8447c78db25f3a..0000000000000000000000000000000000000000 --- a/docs.it4i/modules-anselm.md +++ /dev/null @@ -1,630 +0,0 @@ -# Available Modules - -## Os - -| Module | Description | -| ------ | ----------- | -| [CentOS](https://www.centos.org/) | The CentOS Project is a community-driven free software effort focused on delivering a robust open source ecosystem. For users, we offer a consistent manageable platform that suits a wide variety of deployments. For open source communities, we offer a solid, predictable base to build upon, along with extensive resources to build, test, release, and maintain their code. We’re also expanding the availability of CentOS images across a number of vendors, providing official images for Amazon, Google, and more. For self-hosted cloud, we also provide a generic cloud-init enabled image. For more information about updates and improvements in CentOS 7, please check out the release notes or the release announcement in the mailing list archive. | -| [Debian](https://www.ubuntu.com/) | Ubuntu is a Debian-based Linux operating system for personal computers, tablets and smartphones, where Ubuntu Touch edition is used. It also runs network servers. That is usually with the Ubuntu Server edition, either on physical or virtual servers (such as on mainframes) or with containers, that is with enterprise-class features. It runs on the most popular architectures, including server-class ARM-based. Ubuntu is published by Canonical Ltd, who offer commercial support. It is based on free software and named after the Southern African philosophy of ubuntu (literally, 'human-ness'), which Canonical Ltd. suggests can be loosely translated as "humanity to others" or "I am what I am because of who we all are". Since Ubuntu 11.04 Natty Narwhal Ubuntu has used Unity as its default user interface for the desktop, but following the release of Ubuntu 17.10 it will move to the GNOME 3 desktop instead, as work on Unity ends. Ubuntu is the most popular operating system running in hosted environments, so–called "clouds", as it is the most popular server Linux distribution. Development of Ubuntu is led by UK-based Canonical Ltd., a company of South African entrepreneur Mark Shuttleworth. Canonical generates revenue through the sale of technical support and other services related to Ubuntu. The Ubuntu project is publicly committed to the principles of open-source software development; people are encouraged to use free software, study how it works, improve upon it, and distribute it. | -| [Singularity-wrappers](https://docs.it4i.cz/) | Wrappers for Singularity containers. | -| [Ubuntu](https://www.ubuntu.com/) | Ubuntu is a Debian-based Linux operating system for personal computers, tablets and smartphones, where Ubuntu Touch edition is used. It also runs network servers. That is usually with the Ubuntu Server edition, either on physical or virtual servers (such as on mainframes) or with containers, that is with enterprise-class features. It runs on the most popular architectures, including server-class ARM-based. Ubuntu is published by Canonical Ltd, who offer commercial support. It is based on free software and named after the Southern African philosophy of ubuntu (literally, 'human-ness'), which Canonical Ltd. suggests can be loosely translated as "humanity to others" or "I am what I am because of who we all are". Since Ubuntu 11.04 Natty Narwhal Ubuntu has used Unity as its default user interface for the desktop, but following the release of Ubuntu 17.10 it will move to the GNOME 3 desktop instead, as work on Unity ends. Ubuntu is the most popular operating system running in hosted environments, so–called "clouds", as it is the most popular server Linux distribution. Development of Ubuntu is led by UK-based Canonical Ltd., a company of South African entrepreneur Mark Shuttleworth. Canonical generates revenue through the sale of technical support and other services related to Ubuntu. The Ubuntu project is publicly committed to the principles of open-source software development; people are encouraged to use free software, study how it works, improve upon it, and distribute it. | - -## Bio - -| Module | Description | -| ------ | ----------- | -| [ABySS](http://www.bcgsc.ca/platform/bioinfo/software/abyss) | Assembly By Short Sequences - a de novo, parallel, paired-end sequence assembler | -| [almost](http://www-almost.ch.cam.ac.uk/site) | all atom molecular simulation toolkit - is a fast and flexible molecular modeling environment that provides powerful and efficient algorithms for molecular simulation, homology modeling, de novo design and ab-initio calculations. | -| [bowtie2](http://www.bowtie2.org) | Bowtie 2 is an ultrafast and memory-efficient tool for aligning sequencing reads to long reference sequences. | -| [GATK](http://www.broadinstitute.org/gatk/) | The Genome Analysis Toolkit or GATK is a software package developed at the Broad Institute to analyse next-generation resequencing data. The toolkit offers a wide variety of tools, with a primary focus on variant discovery and genotyping as well as strong emphasis on data quality assurance. Its robust architecture, powerful processing engine and high-performance computing features make it capable of taking on projects of any size. | -| [GROMACS](http://www.gromacs.org) | GROMACS is a versatile package to perform molecular dynamics, i.e. simulate the Newtonian equations of motion for systems with hundreds to millions of particles. | -| [PLUMED](http://www.plumed-code.org) | PLUMED is an open source library for free energy calculations in molecular systems which works together with some of the most popular molecular dynamics engines. Free energy calculations can be performed as a function of many order parameters with a particular focus on biological problems, using state of the art methods such as metadynamics, umbrella sampling and Jarzynski-equation based steered MD. The software, written in C++, can be easily interfaced with both fortran and C/C++ codes. | -| [RELION](http://www2.mrc-lmb.cam.ac.uk/relion/index.php/Main_Page) | RELION (for REgularised LIkelihood OptimisatioN, pronounce rely-on) is a stand-alone computer program that employs an empirical Bayesian approach to refinement of (multiple) 3D reconstructions or 2D class averages in electron cryo-microscopy (cryo-EM). | -| [Rosetta](https://www.rosettacommons.org) | Rosetta is the premier software suite for modeling macromolecular structures. As a flexible, multi-purpose application, it includes tools for structure prediction, design, and remodeling of proteins and nucleic acids. | - -## Cae - -| Module | Description | -| ------ | ----------- | -| [COMSOL](https://www.comsol.com/) | The COMSOL Multiphysics simulation environment facilitates the steps in the modeling process – defining your geometry, meshing, specifying your physics, solving, and then visualizing your results. It also serves as a platform for the application specific modules. | -| [deMonNano](http://www.demon-software.com) | deMonNano is a software package for density functional theory based tight binding calculations. It is part of the deMon (density of MontrĂ©al) suite of programs. The present version of the code of deMon for DFT is now known as deMon2k. This code and general information about deMon are available at http://www.demon-software.com | -| [OpenFOAM](http://www.openfoam.com/) | OpenFOAM is a free, open source CFD software package. OpenFOAM has an extensive range of features to solve anything from complex fluid flows involving chemical reactions, turbulence and heat transfer, to solid dynamics and electromagnetics. | - -## Chem - -| Module | Description | -| ------ | ----------- | -| [ABINIT](http://www.abinit.org/) | ABINIT is a package whose main program allows one to find the total energy, charge density and electronic structure of systems made of electrons and nuclei (molecules and periodic solids) within Density Functional Theory (DFT), using pseudopotentials and a planewave or wavelet basis. | -| [Amber](http://ambermd.org/amber.html) | Amber (originally Assisted Model Building with Energy Refinement) is software for performing molecular dynamics and structure prediction. | -| [ASE](https://wiki.fysik.dtu.dk/ase/) | ASE is a python package providing an open source Atomic Simulation Environment in the Python scripting language. | -| [CP2K](http://www.cp2k.org/) | CP2K is a freely available (GPL) program, written in Fortran 95, to perform atomistic and molecular simulations of solid state, liquid, molecular and biological systems. It provides a general framework for different methods such as e.g. density functional theory (DFT) using a mixed Gaussian and plane waves approach (GPW), and classical pair and many-body potentials. | -| [cp2k-mpi](http://www.cp2k.org/) | CP2K with Intel MPI support. | -| [LAMMPS](http://lammps.sandia.gov) | LAMMPS is a classical molecular dynamics code, and an acronym for Large-scale Atomic/Molecular Massively Parallel Simulator. Has potentials for solid-state materials (metals, semiconductors) and soft matter (biomolecules, polymers) and coarse-grained or mesoscopic systems. It can be used to model atoms or, more generically, as a parallel particle simulator at the atomic, meso, or continuum scale. | -| [libxc](http://www.tddft.org/programs/octopus/wiki/index.php/Libxc) | Libxc is a library of exchange-correlation functionals for density-functional theory. The aim is to provide a portable, well tested and reliable set of exchange and correlation functionals. | -| [molpro](http://www.molpro.net/") | Molpro quantum chemistry package. | -| [namd](http://www.ks.uiuc.edu/Research/namd/") | NAMD Scalable Molecular Dynamics. | -| [NWChem](http://www.nwchem-sw.org) | NWChem aims to provide its users with computational chemistry tools that are scalable both in their ability to treat large scientific computational chemistry problems efficiently, and in their use of available parallel computing resources from high-performance parallel supercomputers to conventional workstation clusters. NWChem software can handle: biomolecules, nanostructures, and solid-state; from quantum to classical, and all combinations; Gaussian basis functions or plane-waves; scaling from one to thousands of processors; properties and relativity. | -| [OpenBabel](http://openbabel.org) | Open Babel is a chemical toolbox designed to speak the many languages of chemical data. It's an open, collaborative project allowing anyone to search, convert, analyze, or store data from molecular modeling, chemistry, solid-state materials, biochemistry, or related areas. | -| [ORCA](http://cec.mpg.de/forum/) | ORCA is a flexible, efficient and easy-to-use general purpose tool for quantum chemistry with specific emphasis on spectroscopic properties of open-shell molecules. It features a wide variety of standard quantum chemical methods ranging from semiempirical methods to DFT to single- and multireference correlated ab initio methods. It can also treat environmental and relativistic effects. | -| [PLUMED](http://www.plumed-code.org) | PLUMED is an open source library for free energy calculations in molecular systems which works together with some of the most popular molecular dynamics engines. Free energy calculations can be performed as a function of many order parameters with a particular focus on biological problems, using state of the art methods such as metadynamics, umbrella sampling and Jarzynski-equation based steered MD. The software, written in C++, can be easily interfaced with both fortran and C/C++ codes. | -| [QuantumESPRESSO](http://www.pwscf.org/) | Quantum ESPRESSO is an integrated suite of computer codes for electronic-structure calculations and materials modeling at the nanoscale. It is based on density-functional theory, plane waves, and pseudopotentials (both norm-conserving and ultrasoft). | -| [xdrfile](http://www.gromacs.org/Developer_Zone/Programming_Guide/XTC_Library) | XTC library | - -## Compiler - -| Module | Description | -| ------ | ----------- | -| [bupc](http://upc.lbl.gov/") | Berkley UPC compilers and runtime environment version 2.16.2. | -| [chicken](https://launchpad.net/chicken") | Chicken 4.8.0.6 is an implementation of the Scheme. | -| [Clang](http://clang.llvm.org/) | C, C++, Objective-C compiler, based on LLVM. Does not include C++ standard library -- use libstdc++ from GCC. | -| [GCC](http://gcc.gnu.org/) | The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Java, and Ada, as well as libraries for these languages (libstdc++, libgcj,...). | -| [GCCcore](http://gcc.gnu.org/) | The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Java, and Ada, as well as libraries for these languages (libstdc++, libgcj,...). | -| [gupc](http://www.gccupc.org/") | The GNU UPC toolset provides a compilation and execution environment for programs written in the UPC (Unified Parallel C) language. The GNU UPC compiler extends the capabilities of the GNU GCC compiler.. | -| [icc](http://software.intel.com/en-us/intel-compilers/) | C and C++ compiler from Intel | -| [ifort](http://software.intel.com/en-us/intel-compilers/) | Fortran compiler from Intel | -| [ispc](http://ispc.github.io/) | Intel SPMD Program Compilers; An open-source compiler for high-performance SIMD programming on the CPU. ispc is a compiler for a variant of the C programming language, with extensions for 'single program, multiple data' (SPMD) programming. Under the SPMD model, the programmer writes a program that generally appears to be a regular serial program, though the execution model is actually that a number of program instances execute in parallel on the hardware. | -| [LLVM](http://llvm.org/) | The LLVM Core libraries provide a modern source- and target-independent optimizer, along with code generation support for many popular CPUs (as well as some less common ones!) These libraries are built around a well specified code representation known as the LLVM intermediate representation ("LLVM IR"). The LLVM Core libraries are well documented, and it is particularly easy to invent your own language (or port an existing compiler) to use LLVM as an optimizer and code generator. | -| [OpenCoarrays](http://www.opencoarrays.org/) | A transport layer for coarray Fortran compilers. | -| [PGI](http://www.pgroup.com/) | C, C++ and Fortran compilers from The Portland Group - PGI | - -## Data - -| Module | Description | -| ------ | ----------- | -| [GDAL](http://www.gdal.org/) | GDAL is a translator library for raster geospatial data formats that is released under an X/MIT style Open Source license by the Open Source Geospatial Foundation. As a library, it presents a single abstract data model to the calling application for all supported formats. It also comes with a variety of useful commandline utilities for data translation and processing. | -| [HDF5](http://www.hdfgroup.org/HDF5/) | HDF5 is a unique technology suite that makes possible the management of extremely large and complex data collections. | -| [netCDF](http://www.unidata.ucar.edu/software/netcdf/) | NetCDF (network Common Data Form) is a set of software libraries and machine-independent data formats that support the creation, access, and sharing of array-oriented scientific data. | -| [netCDF-Fortran](http://www.unidata.ucar.edu/software/netcdf/) | NetCDF (network Common Data Form) is a set of software libraries and machine-independent data formats that support the creation, access, and sharing of array-oriented scientific data. | -| [PostgreSQL](http://www.mysql.com/) | PostgreSQL is a powerful, open source object-relational database system. It is fully ACID compliant, has full support for foreign keys, joins, views, triggers, and stored procedures (in multiple languages). It includes most SQL:2008 data types, including INTEGER, NUMERIC, BOOLEAN, CHAR, VARCHAR, DATE, INTERVAL, and TIMESTAMP. It also supports storage of binary large objects, including pictures, sounds, or video. It has native programming interfaces for C/C++, Java, .Net, Perl, Python, Ruby, Tcl, ODBC, among others, and exceptional documentation. | -| [redis](https://redis.io) | Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker. | -| [scikit-learn](http://scikit-learn.org/stable/index.html) | Scikit-learn integrates machine learning algorithms in the tightly-knit scientific Python world, building upon numpy, scipy, and matplotlib. As a machine-learning module, it provides versatile tools for data mining and analysis in any field of science and engineering. It strives to be simple and efficient, accessible to everybody, and reusable in various contexts. | - -## Debugger - -| Module | Description | -| ------ | ----------- | -| [Forge](http://www.allinea.com/products/develop-allinea-forge) | Allinea Forge is the complete toolsuite for software development - with everything needed to debug, profile, optimize, edit and build C, C++ and FORTRAN applications on Linux for high performance - from single threads through to complex parallel HPC codes with MPI, OpenMP, threads or CUDA. | -| [PerformanceReports](http://www.allinea.com/products/allinea-performance-reports) | Allinea Performance Reports are the most effective way to characterize and understand the performance of HPC application runs. One single-page HTML report elegantly answers a range of vital questions for any HPC site. - Is this application well-optimized for the system and the processors it is running on? - Does it benefit from running at this scale? - Are there I/O, networking or threading bottlenecks affecting performance? - Which hardware, software or configuration changes can we make to improve performance further. - How much energy did this application use? | -| [TotalView](http://www.roguewave.com/products/totalview.aspx) | TotalView is a GUI-based source code defect analysis tool that gives you unprecedented control over processes and thread execution and visibility into program state and variables. It allows you to debug one or many processes and/or threads in a single window with complete control over program execution. This allows you to set breakpoints, stepping line by line through the code on a single thread, or with coordinated groups of processes or threads, and run or halt arbitrary sets of processes or threads. You can reproduce and troubleshoot difficult problems that can occur in concurrent programs that take advantage of threads, OpenMP, MPI, GPUs or coprocessors. | - -## Devel - -| Module | Description | -| ------ | ----------- | -| [ant](http://ant.apache.org/) | Apache Ant is a Java library and command-line tool whose mission is to drive processes described in build files as targets and extension points dependent upon each other. The main known usage of Ant is the build of Java applications. | -| [Autoconf](http://www.gnu.org/software/autoconf/) | Autoconf is an extensible package of M4 macros that produce shell scripts to automatically configure software source code packages. These scripts can adapt the packages to many kinds of UNIX-like systems without manual user intervention. Autoconf creates a configuration script for a package from a template file that lists the operating system features that the package can use, in the form of M4 macro calls. | -| [Automake](http://www.gnu.org/software/automake/automake.html) | Automake: GNU Standards-compliant Makefile generator | -| [Autotools](http://autotools.io) | This bundle collect the standard GNU build tools: Autoconf, Automake and libtool | -| [Bazel](http://bazel.io/) | Bazel is a build tool that builds code quickly and reliably. It is used to build the majority of Google's software. | -| [Boost](http://www.boost.org/) | Boost provides free peer-reviewed portable C++ source libraries. | -| [Caffe](https://github.com/BVLC/caffe) | Caffe is a deep learning framework made with expression, speed, and modularity in mind. It is developed by the Berkeley Vision and Learning Center (BVLC) and community contributors. | -| [CMake](http://www.cmake.org) | CMake, the cross-platform, open-source build system. CMake is a family of tools designed to build, test and package software. | -| [Doxygen](http://www.doxygen.org) | Doxygen is a documentation system for C++, C, Java, Objective-C, Python, IDL (Corba and Microsoft flavors), Fortran, VHDL, PHP, C#, and to some extent D. | -| [fontsproto](http://www.freedesktop.org/wiki/Software/xlibs) | X11 font extension wire protocol | -| [gflags](https://github.com/gflags/gflags) | The gflags package contains a C++ library that implements commandline flags processing. It includes built-in support for standard types such as string and the ability to define flags in the source file in which they are used. | -| [glog](https://github.com/google/glog) | A C++ implementation of the Google logging module. | -| [GObject-Introspection](https://wiki.gnome.org/GObjectIntrospection/) | GObject introspection is a middleware layer between C libraries (using GObject) and language bindings. The C library can be scanned at compile time and generate a metadata file, in addition to the actual native C library. Then at runtime, language bindings can read this metadata and automatically provide bindings to call into the C library. | -| [gperf](http://www.gnu.org/software/gperf/) | GNU gperf is a perfect hash function generator. For a given list of strings, it produces a hash function and hash table, in form of C or C++ code, for looking up a value depending on the input string. The hash function is perfect, which means that the hash table has no collisions, and the hash table lookup needs a single string comparison only. | -| [guile](http://www.gnu.org/software/guile) | Guile is the GNU Ubiquitous Intelligent Language for Extensions, the official extension language for the GNU operating system. | -| [Jansson](http://www.digip.org/jansson/) | Jansson is a C library for encoding, decoding and manipulating JSON data. Its main features and design principles are: * Simple and intuitive API and data model * Comprehensive documentation * No dependencies on other libraries * Full Unicode support (UTF-8) * Extensive test suite | -| [JUnit](http://sourceforge.net/projects/junit) | A programmer-oriented testing framework for Java. | -| [LevelDB](https://github.com/google/leveldb) | LevelDB is a fast key-value storage library written at Google that provides an ordered mapping from string keys to string values. | -| [libSM](http://www.freedesktop.org/wiki/Software/xlibs) | X11 Session Management library, which allows for applications to both manage sessions, and make use of session managers to save and restore their state for later use. | -| [LMDB](https://github.com/LMDB/lmdb) | OpenLDAP's Lightning Memory-Mapped Database (LMDB) library. | -| [M4](http://www.gnu.org/software/m4/m4.html) | GNU M4 is an implementation of the traditional Unix macro processor. It is mostly SVR4 compatible although it has some extensions (for example, handling more than 9 positional parameters to macros). GNU M4 also has built-in functions for including files, running shell commands, doing arithmetic, etc. | -| [make](http://www.gnu.org/software/make/make.html) | make-3.82: GNU version of make utility | -| [makedepend](http://www.linuxfromscratch.org/blfs/view/svn/x/makedepend.html) | The makedepend package contains a C-preprocessor like utility to determine build-time dependencies. | -| [Mako](http://www.makotemplates.org) | A super-fast templating language that borrows the best ideas from the existing templating languages | -| [Maven](http://maven.apache.org/index.html") | Binary maven install, Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information. | -| [NCCL](https://developer.nvidia.com/nccl) | NVIDIA Collective Communications Library | -| [ncurses](http://www.gnu.org/software/ncurses/) | The Ncurses (new curses) library is a free software emulation of curses in System V Release 4.0, and more. It uses Terminfo format, supports pads and color and multiple highlights and forms characters and function-key mapping, and has all the other SYSV-curses enhancements over BSD Curses. | -| [PCRE](http://www.pcre.org/) | The PCRE library is a set of functions that implement regular expression pattern matching using the same syntax and semantics as Perl 5. | -| [pkg-config](http://www.freedesktop.org/wiki/Software/pkg-config/) | pkg-config is a helper tool used when compiling applications and libraries. It helps you insert the correct compiler options on the command line so an application can use gcc -o test test.c `pkg-config --libs --cflags glib-2.0` for instance, rather than hard-coding values on where to find glib (or other libraries). | -| [protobuf](https://github.com/google/protobuf/) | Google Protocol Buffers | -| [protobuf-python](https://github.com/google/protobuf/) | Python Protocol Buffers runtime library. | -| [Qt](http://qt-project.org/) | Qt is a comprehensive cross-platform C++ application framework. | -| [Qt5](http://qt.io/) | Qt is a comprehensive cross-platform C++ application framework. | -| [renderproto](http://www.freedesktop.org/wiki/Software/xlibs) | Xrender protocol and ancillary headers | -| [SCons](http://www.scons.org/) | SCons is a software construction tool. | -| [Spack](https://spack.io/) | Spack is a package manager for supercomputers, Linux, and macOS. It makes installing scientific software easy. With Spack, you can build a package with multiple versions, configurations, platforms, and compilers, and all of these builds can coexist on the same machine. | -| [Spark](http://spark.apache.org) | Spark is Hadoop MapReduce done in memory | -| [sparsehash](https://github.com/sparsehash/sparsehash) | An extremely memory-efficient hash_map implementation. 2 bits/entry overhead! The SparseHash library contains several hash-map implementations, including implementations that optimize for space or speed. | -| [SQLite](http://www.sqlite.org/) | SQLite: SQL Database Engine in a C Library | -| [squashfs-tools](http://squashfs.sourceforge.net/) | Squashfs is a compressed read-only filesystem for Linux. | -| [SWIG](http://www.swig.org/) | SWIG is a software development tool that connects programs written in C and C++ with a variety of high-level programming languages. | -| [xbitmaps](http://www.freedesktop.org/wiki/Software/xlibs) | provides bitmaps for x | -| [xcb-proto](http://xcb.freedesktop.org/) | The X protocol C-language Binding (XCB) is a replacement for Xlib featuring a small footprint, latency hiding, direct access to the protocol, improved threading support, and extensibility. | -| [xcb-util](http://xcb.freedesktop.org") | The xcb-util package provides additional extensions to the XCB library, many that were previously found in Xlib, but are not part of core X protocol. | -| [xcb-util-image](http://xcb.freedesktop.org/") | The xcb-util-image package provides additional extensions to the XCB library. | -| [xcb-util-keysyms](http://xcb.freedesktop.org") | The xcb-util-keysyms package contains a library for handling standard X key constants and conversion to/from keycodes. | -| [xcb-util-renderutil](http://xcb.freedesktop.org") | The xcb-util-renderutil package provides additional extensions to the XCB library.. | -| [xcb-util-wm](http://xcb.freedesktop.org) | The xcb-util-wm package contains libraries which provide client and window-manager helpers for EWMH and ICCCM. | -| [xextproto](http://www.freedesktop.org/wiki/Software/xlibs) | XExtProto protocol headers. | -| [xineramaproto](http://www.freedesktop.org/wiki/Software/xlibs) | X protocol and ancillary headers for xinerama | -| [xorg-macros](http://cgit.freedesktop.org/xorg/util/macros) | X.org macros utilities. | -| [xproto](http://www.freedesktop.org/wiki/Software/xlibs) | X protocol and ancillary headers. | -| [xtrans](http://www.freedesktop.org/wiki/Software/xlibs) | xtrans includes a number of routines to make X implementations transport-independent; at time of writing, it includes support for UNIX sockets, IPv4, IPv6, and DECnet. | - -## Engineering - -| Module | Description | -| ------ | ----------- | -| adams | | -| beopest | | -| blender | | -| Code_Saturne | | -| comsol | | -| digimat | | -| Discovery_Studio | | -| dytran | | -| fds | | -| hypermesh | | -| hyperworks | | -| lsdyna | | -| lsprepost | | -| lux | | -| marc | | -| maxwell | | -| modflow-2005 | | -| modflow-nwt | | -| nastran | | -| openfoam | | -| paraview | | -| pest | | -| wien2k | | - -## Environments - -| Module | Description | -| ------ | ----------- | -| bullxde | | -| PrgEnv-gnu | | -| PrgEnv-intel | | - -## Geo - -| Module | Description | -| ------ | ----------- | -| [Doris](http://doris.tudelft.nl/) | Delft object-oriented radar interferometric software | -| [PHREEQC](https://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc/) | A Computer Program for Speciation, Batch-Reaction, One-Dimensional Transport, and Inverse Geochemical Calculations | -| [PROJ_4](http://proj.osgeo.org) | PROJ.4 - Cartographic Projections Library originally written by Gerald Evenden then of the USGS. | - -## Init - -| Module | Description | -| ------ | ----------- | - -## Lang - -| Module | Description | -| ------ | ----------- | -| [Anaconda2](https://www.continuum.io/anaconda-overview) | Built to complement the rich, open source Python community, the Anaconda platform provides an enterprise-ready data analytics platform that empowers companies to adopt a modern open data science analytics architecture. | -| [Anaconda3](https://www.continuum.io/anaconda-overview) | Built to complement the rich, open source Python community, the Anaconda platform provides an enterprise-ready data analytics platform that empowers companies to adopt a modern open data science analytics architecture. | -| [Bison](http://www.gnu.org/software/bison) | Bison is a general-purpose parser generator that converts an annotated context-free grammar into a deterministic LR or generalized LR (GLR) parser employing LALR(1) parser tables. | -| [byacc](http://invisible-island.net/byacc/byacc.html) | Berkeley Yacc (byacc) is generally conceded to be the best yacc variant available. In contrast to bison, it is written to avoid dependencies upon a particular compiler. | -| [Cython](https://pypi.python.org/pypi/Cython/) | The Cython language makes writing C extensions for the Python language as easy as Python itself. Cython is a source code translator based on the well-known Pyrex, but supports more cutting edge functionality and optimizations. | -| [dotNET-Core-Runtime](https://www.microsoft.com/net/) | .NET is a free, cross-platform, open source developer platform for building many different types of applications. | -| [dotNET-Core-SDK](https://www.microsoft.com/net/) | .NET is a free, cross-platform, open source developer platform for building many different types of applications. | -| [flex](http://flex.sourceforge.net/) | Flex (Fast Lexical Analyzer) is a tool for generating scanners. A scanner, sometimes called a tokenizer, is a program which recognizes lexical patterns in text. | -| [FriBidi](https://github.com/fribidi/fribidi) | The Free Implementation of the Unicode Bidirectional Algorithm. | -| [Java](http://java.com/) | Java Platform, Standard Edition (Java SE) lets you develop and deploy Java applications on desktops and servers. | -| [libgdiplus](https://github.com/mono/libgdiplus) | An Open Source implementation of the GDI+ API. | -| [Lua](http://www.lua.org/) | Lua is a powerful, fast, lightweight, embeddable scripting language. Lua combines simple procedural syntax with powerful data description constructs based on associative arrays and extensible semantics. Lua is dynamically typed, runs by interpreting bytecode for a register-based virtual machine, and has automatic memory management with incremental garbage collection, making it ideal for configuration, scripting, and rapid prototyping. | -| [Mono](http://mono-framework.com) | An open source, cross-platform, implementation of C# and the CLR that is binary compatible with Microsoft.NET. | -| [NASM](http://www.nasm.us/) | NASM: General-purpose x86 assembler | -| [OpenCL-runtime](https://software.intel.com/en-us/intel-opencl) | OpenCL™ is the first open, royalty-free standard for cross-platform, parallel programming of modern processors found in personal computers, servers and handheld/embedded devices. OpenCL (Open Computing Language) greatly improves speed and responsiveness for a wide spectrum of applications in numerous market categories from gaming and entertainment to scientific and medical software. | -| [OpenCL-sdk](https://software.intel.com/en-us/intel-opencl) | OpenCL™ is the first open, royalty-free standard for cross-platform, parallel programming of modern processors found in personal computers, servers and handheld/embedded devices. OpenCL (Open Computing Language) greatly improves speed and responsiveness for a wide spectrum of applications in numerous market categories from gaming and entertainment to scientific and medical software. | -| [Perl](http://www.perl.org/) | Larry Wall's Practical Extraction and Report Language | -| [Python](http://python.org/) | Python is a programming language that lets you work more quickly and integrate your systems more effectively. | -| [R](http://www.r-project.org/) | R is a free software environment for statistical computing and graphics. | -| [RapidJSON](http://rapidjson.org/) | A fast JSON parser/generator for C++ with both SAX/DOM style API Tencent is pleased to support the open source community by making RapidJSON available. Copyright (C) 2015 THL A29 Limited, a Tencent company, and Milo Yip. All rights reserved. | -| [Ruby](https://www.ruby-lang.org) | Ruby is a dynamic, open source programming language with a focus on simplicity and productivity. It has an elegant syntax that is natural to read and easy to write. | -| [sqsgenerator](https://github.com/dnoeger/sqsgenerator) | This package is a Special Quasirandom Structure generator written in Python3/Cython. Please note that the programm currently only works with Python 3. | -| [Tcl](http://www.tcl.tk/) | Tcl (Tool Command Language) is a very powerful but easy to learn dynamic programming language, suitable for a very wide range of uses, including web and desktop applications, networking, administration, testing and many more. | -| [Yasm](http://www.tortall.net/projects/yasm/) | Yasm: Complete rewrite of the NASM assembler with BSD license | - -## Lib - -| Module | Description | -| ------ | ----------- | -| [astroid](https://github.com/PyCQA/astroid) | The aim of this module is to provide a common base representation of python source code for projects such as pychecker, pyreverse, pylint… Well, actually the development of this library is essentially governed by pylint’s needs. It used to be called logilab-astng. | -| [darshan-runtime](http://www.mcs.anl.gov/research/projects/darshan/) | Darshan is designed to capture an accurate picture of application I/O behavior, including properties such as patterns of access within files, with minimum overhead. The name is taken from a Sanskrit word for “sight” or “vision”. Darshan can be used to investigate and tune the I/O behavior of complex HPC applications. In addition, Darshan’s lightweight design makes it suitable for full time deployment for workload characterization of large systems. We hope that such studies will help the storage research community to better serve the needs of scientific computing. Darshan was originally developed on the IBM Blue Gene series of computers deployed at the Argonne Leadership Computing Facility, but it is portable across a wide variety of platforms include the Cray XE6, Cray XC30, and Linux clusters. Darshan routinely instruments jobs using up to 786,432 compute cores on the Mira system at ALCF. | -| [darshan-util](http://www.mcs.anl.gov/research/projects/darshan/) | Darshan is designed to capture an accurate picture of application I/O behavior, including properties such as patterns of access within files, with minimum overhead. The name is taken from a Sanskrit word for “sight” or “vision”. Darshan can be used to investigate and tune the I/O behavior of complex HPC applications. In addition, Darshan’s lightweight design makes it suitable for full time deployment for workload characterization of large systems. We hope that such studies will help the storage research community to better serve the needs of scientific computing. Darshan was originally developed on the IBM Blue Gene series of computers deployed at the Argonne Leadership Computing Facility, but it is portable across a wide variety of platforms include the Cray XE6, Cray XC30, and Linux clusters. Darshan routinely instruments jobs using up to 786,432 compute cores on the Mira system at ALCF. | -| [Embree](https://embree.github.io/index.html) | Embree is a collection of high-performance ray tracing kernels, developed at Intel. | -| [freeglut](http://freeglut.sourceforge.net/) | freeglut is a completely OpenSourced alternative to the OpenGL Utility Toolkit (GLUT) library. | -| [glibc](https://www.gnu.org/software/libc/) | The Glibc package contains the main C library. This library provides the basic routines for allocating memory, searching directories, opening and closing files, reading and writing files, string handling, pattern matching, arithmetic, and so on. | -| [GLM](https://github.com/g-truc/glm) | OpenGL Mathematics (GLM) is a header only C++ mathematics library for graphics software based on the OpenGL Shading Language (GLSL) specifications. | -| [isort](https://github.com/timothycrosley/isort) | isort is a Python utility / library to sort imports alphabetically, and automatically separated into sections. It provides a command line utility, Python library and plugins for various editors to quickly sort all your imports. | -| [libarchive](https://www.libarchive.org/) | Multi-format archive and compression library | -| [libdrm](http://dri.freedesktop.org) | Direct Rendering Manager runtime library. | -| [libevent](http://libevent.org/) | The libevent API provides a mechanism to execute a callback function when a specific event occurs on a file descriptor or after a timeout has been reached. Furthermore, libevent also support callbacks due to signals or regular timeouts. | -| [libffi](http://sourceware.org/libffi/) | The libffi library provides a portable, high level programming interface to various calling conventions. This allows a programmer to call any function specified by a call interface description at run-time. | -| [libfontenc](http://www.freedesktop.org/wiki/Software/xlibs/) | X11 font encoding library | -| [libgd](https://libgd.github.io/) | GD is an open source code library for the dynamic creation of images by programmers. | -| [libjpeg-turbo](http://sourceforge.net/projects/libjpeg-turbo/) | libjpeg-turbo is a fork of the original IJG libjpeg which uses SIMD to accelerate baseline JPEG compression and decompression. libjpeg is a library that implements JPEG image encoding, decoding and transcoding. | -| [libmatheval](http://www.gnu.org/software/libmatheval/) | GNU libmatheval is a library (callable from C and Fortran) to parse and evaluate symbolic expressions input as text. | -| [libpng](http://www.libpng.org/pub/png/libpng.html) | libpng is the official PNG reference library | -| [libpthread-stubs](http://xcb.freedesktop.org/) | The X protocol C-language Binding (XCB) is a replacement for Xlib featuring a small footprint, latency hiding, direct access to the protocol, improved threading support, and extensibility. | -| [libreadline](http://cnswww.cns.cwru.edu/php/chet/readline/rltop.html) | The GNU Readline library provides a set of functions for use by applications that allow users to edit command lines as they are typed in. Both Emacs and vi editing modes are available. The Readline library includes additional functions to maintain a list of previously-entered command lines, to recall and perhaps reedit those lines, and perform csh-like history expansion on previous commands. | -| [libsndfile](http://www.mega-nerd.com/libsndfile) | Libsndfile is a C library for reading and writing files containing sampled sound (such as MS Windows WAV and the Apple/SGI AIFF format) through one standard library interface. | -| [LIBSVM](http://www.csie.ntu.edu.tw/~cjlin/libsvm/) | LIBSVM is an integrated software for support vector classification, (C-SVC, nu-SVC), regression (epsilon-SVR, nu-SVR) and distribution estimation (one-class SVM). It supports multi-class classification. | -| [LibTIFF](http://www.remotesensing.org/libtiff/) | tiff: Library and tools for reading and writing TIFF data files | -| [libtool](http://www.gnu.org/software/libtool) | GNU libtool is a generic library support script. Libtool hides the complexity of using shared libraries behind a consistent, portable interface. | -| [libunistring](http://www.gnu.org/software/libunistring/) | This library provides functions for manipulating Unicode strings and for manipulating C strings according to the Unicode standard. | -| [libunwind](http://www.nongnu.org/libunwind/) | The primary goal of libunwind is to define a portable and efficient C programming interface (API) to determine the call-chain of a program. The API additionally provides the means to manipulate the preserved (callee-saved) state of each call-frame and to resume execution at any point in the call-chain (non-local goto). The API supports both local (same-process) and remote (across-process) operation. As such, the API is useful in a number of applications | -| [LibUUID](http://sourceforge.net/projects/libuuid/) | Portable uuid C library | -| [libxcb](http://xcb.freedesktop.org/) | The X protocol C-language Binding (XCB) is a replacement for Xlib featuring a small footprint, latency hiding, direct access to the protocol, improved threading support, and extensibility. . | -| [libxml2](http://xmlsoft.org/) | Libxml2 is the XML C parser and toolchain developed for the Gnome project (but usable outside of the Gnome platform). | -| [libxslt](http://xmlsoft.org/) | Libxslt is the XSLT C library developed for the GNOME project (but usable outside of the Gnome platform). | -| [libyaml](http://pyyaml.org/wiki/LibYAML) | LibYAML is a YAML 1.1 parser and emitter written in C. | -| [lxml](http://lxml.de/) | The lxml XML toolkit is a Pythonic binding for the C libraries libxml2 and libxslt. | -| [MATIO](http://sourceforge.net/projects/matio/) | matio is an C library for reading and writing Matlab MAT files. | -| [mpi4py](https://bitbucket.org/mpi4py/mpi4py) | MPI for Python (mpi4py) provides bindings of the Message Passing Interface (MPI) standard for the Python programming language, allowing any Python program to exploit multiple processors. | -| [nettle](http://www.lysator.liu.se/~nisse/nettle/) | Nettle is a cryptographic library that is designed to fit easily in more or less any context: In crypto toolkits for object-oriented languages (C++, Python, Pike, ...), in applications like LSH or GNUPG, or even in kernel space. | -| [PROJ](http://trac.osgeo.org/proj/) | Program proj is a standard Unix filter function which converts geographic longitude and latitude coordinates into cartesian coordinates | -| [psycopg2](http://initd.org/psycopg/) | Psycopg is the most popular PostgreSQL adapter for the Python programming language. | -| [pylint](https://github.com/PyCQA/pylint) | Pylint is a Python source code analyzer which looks for programming errors, helps enforcing a coding standard and sniffs for some code smells (as defined in Martin Fowler's Refactoring book). | -| [PyYAML](https://pypi.python.org/pypi/PyYAML/) | PyYAML is a YAML parser and emitter for the Python programming language. | -| [SIONlib](http://www.fz-juelich.de/ias/jsc/EN/Expertise/Support/Software/SIONlib/_node.html) | SIONlib is a scalable I/O library for parallel access to task-local files. The library not only supports writing and reading binary data to or from several thousands of processors into a single or a small number of physical files, but also provides global open and close functions to access SIONlib files in parallel. SIONlib provides different interfaces: parallel access using MPI, OpenMP, or their combination, and sequential access for post-processing utilities. | -| [snappy](https://github.com/google/snappy) | Snappy is a compression/decompression library. It does not aim for maximum compression, or compatibility with any other compression library; instead, it aims for very high speeds and reasonable compression. | -| [SpatiaLite](https://www.gaia-gis.it/fossil/libspatialite/index) | SpatiaLite is an open source library intended to extend the SQLite core to support fully fledged Spatial SQL capabilities. | -| [spGPU](https://github.com/davidebarbieri/spgpu) | spGPU is a set of custom matrix storages and CUDA kernels for sparse linear algebra computing on GPU. It isn't a replacement for cuBLAS/cuSPARSE that should be used for a full featured linear algebra environment on GPU. | -| [tbb](http://software.intel.com/en-us/articles/intel-tbb/) | Intel Threading Building Blocks 4.0 (Intel TBB) is a widely used, award-winning C++ template library for creating reliable, portable, and scalable parallel applications. Use Intel TBB for a simple and rapid way of developing robust task-based parallel applications that scale to available processor cores, are compatible with multiple environments, and are easier to maintain. Intel TBB is the most proficient way to implement future-proof parallel applications that tap into the power and performance of multicore and manycore hardware platforms. | -| [Tensorflow](https://www.tensorflow.org/) | An open-source software library for Machine Intelligence | -| [zlib](http://www.zlib.net/) | zlib is designed to be a free, general-purpose, legally unencumbered -- that is, not covered by any patents -- lossless data-compression library for use on virtually any computer hardware and operating system. | - -## Libraries - -| Module | Description | -| ------ | ----------- | -| adios | | -| dataspaces | | -| fftw2 | | -| fftw2-mpi | | -| fftw3 | | -| fftw3-mpi | | -| gpi2 | | -| hdf5 | | -| hdf5-parallel | | -| ipp | | -| magma | | -| mkl | | -| mxml | | -| netcdf | | -| netcdf-cxx | | -| netcdf-fortran | | -| netcdf-parallel | | -| opencl-rt | | -| opencl-sdk | | -| petsc | | -| plasma | | -| szip | | -| tbb | | -| trilinos | | - -## Math - -| Module | Description | -| ------ | ----------- | -| [Eigen](http://eigen.tuxfamily.org/index.php?title=Main_Page) | Eigen is a C++ template library for linear algebra: matrices, vectors, numerical solvers, and related algorithms. | -| [GEOS](http://trac.osgeo.org/geos) | GEOS (Geometry Engine - Open Source) is a C++ port of the Java Topology Suite (JTS) | -| [GMP](http://gmplib.org/) | GMP is a free library for arbitrary precision arithmetic, operating on signed integers, rational numbers, and floating point numbers. | -| [h5py](https://github.com/jupyter/testpath) | Test utilities for code working with files and commands | -| [ISL](http://isl.gforge.inria.fr/) | isl is a library for manipulating sets and relations of integer points bounded by linear constraints. | -| [Keras](https://keras.io/) | Keras is a minimalist, highly modular neural networks library, written in Python and capable of running on top of either TensorFlow or Theano. | -| [MATLAB](http://www.mathworks.com/products/matlab) | MATLAB is a high-level language and interactive environment that enables you to perform computationally intensive tasks faster than with traditional programming languages such as C, C++, and Fortran. | -| [METIS](http://glaros.dtc.umn.edu/gkhome/metis/metis/overview) | METIS is a set of serial programs for partitioning graphs, partitioning finite element meshes, and producing fill reducing orderings for sparse matrices. The algorithms implemented in METIS are based on the multilevel recursive-bisection, multilevel k-way, and multi-constraint partitioning schemes. | -| [MLD2P4](http://www.mld2p4.it) | MLD2P4 (Multi-Level Domain Decomposition Parallel Preconditioners Package based on PSBLAS) is a package of parallel algebraic multi-level preconditioners. It implements various versions of one-level additive and of multi-level additive and hybrid Schwarz algorithms. In the multi-level case, a purely algebraic approach is applied to generate coarse-level corrections, so that no geometric background is needed concerning the matrix to be preconditioned. The matrix is assumed to be square, real or complex, with a symmetric sparsity pattern. | -| [MPFR](http://www.mpfr.org) | The MPFR library is a C library for multiple-precision floating-point computations with correct rounding. | -| [numpy](https://github.com/jupyter/testpath) | Test utilities for code working with files and commands | -| [Octave](http://www.gnu.org/software/octave/) | GNU Octave is a high-level interpreted language, primarily intended for numerical computations. | -| [ParMETIS](http://glaros.dtc.umn.edu/gkhome/metis/parmetis/overview) | ParMETIS is an MPI-based parallel library that implements a variety of algorithms for partitioning unstructured graphs, meshes, and for computing fill-reducing orderings of sparse matrices. ParMETIS extends the functionality provided by METIS and includes routines that are especially suited for parallel AMR computations and large scale numerical simulations. The algorithms implemented in ParMETIS are based on the parallel multilevel k-way graph-partitioning, adaptive repartitioning, and parallel multi-constrained partitioning schemes. | -| [PSBLAS](http://people.uniroma2.it/salvatore.filippone/psblas/) | Most computationally intensive applications work on irregular and sparse domains that complicate their implementation on parallel machines. The major goal of the Parallel Sparse Basic Linear Algebra Subroutines (PSBLAS) project is to provide a framework to enable easy, efficient and portable implementations of iterative solvers for linear systems, while shielding the user from most details of their parallelization. The interface is designed keeping in view a Single Program Multiple Data programming model on distributed memory machines. | -| [PSBLAS-ext](http://people.uniroma2.it/salvatore.filippone/psblas/) | PSBLAS - Extended formats and NVIDIA GPU support | -| [Qhull](http://www.qhull.org) | Qhull computes the convex hull, Delaunay triangulation, Voronoi diagram, halfspace intersection about a point, furthest-site Delaunay triangulation, and furthest-site Voronoi diagram. The source code runs in 2-d, 3-d, 4-d, and higher dimensions. Qhull implements the Quickhull algorithm for computing the convex hull. | -| [ScientificPython](https://sourcesup.cru.fr/projects/scientific-py/) | ScientificPython is a collection of Python modules for scientific computing. It contains support for geometry, mathematical functions, statistics, physical units, IO, visualization, and parallelization. | -| [scipy](https://github.com/jupyter/testpath) | Test utilities for code working with files and commands | -| [SCOTCH](http://gforge.inria.fr/projects/scotch/) | Software package and libraries for sequential and parallel graph partitioning, static mapping, and sparse matrix block ordering, and sequential mesh and hypergraph partitioning. | -| [Theano](http://deeplearning.net/software/theano) | Theano is a Python library that allows you to define, optimize, and evaluate mathematical expressions involving multi-dimensional arrays efficiently. | - -## Mpi - -| Module | Description | -| ------ | ----------- | -| bullxmpi | Sets up Open MPI in your environment. | -| [impi](http://software.intel.com/en-us/intel-mpi-library/) | The Intel(R) MPI Library for Linux* OS is a multi-fabric message passing library based on ANL MPICH2 and OSU MVAPICH2. The Intel MPI Library for Linux OS implements the Message Passing Interface, version 2 (MPI-2) specification. | -| lam | Sets up intel MPI in your enviornment. | -| [MPICH](http://www.mpich.org/) | MPICH v3.x is an open source high-performance MPI 3.0 implementation. It does not support InfiniBand (use MVAPICH2 with InfiniBand devices). | -| mvapich2 | | -| [OpenMPI](http://www.open-mpi.org/) | The Open MPI Project is an open source MPI-2 implementation. | - -## Numlib - -| Module | Description | -| ------ | ----------- | -| [Armadillo](http://arma.sourceforge.net/) | Armadillo is an open-source C++ linear algebra library (matrix maths) aiming towards a good balance between speed and ease of use. Integer, floating point and complex numbers are supported, as well as a subset of trigonometric and statistics functions. | -| [arpack-ng](http://forge.scilab.org/index.php/p/arpack-ng/) | ARPACK is a collection of Fortran77 subroutines designed to solve large scale eigenvalue problems. | -| [ATLAS](http://math-atlas.sourceforge.net) | ATLAS (Automatically Tuned Linear Algebra Software) is the application of the AEOS (Automated Empirical Optimization of Software) paradigm, with the present emphasis on the Basic Linear Algebra Subprograms (BLAS), a widely used, performance-critical, linear algebra kernel library. | -| [CGAL](http://www.cgal.org/) | [The goal of the CGAL Open Source Project is to provide easy access to efficient and reliable geometric algorithms in the form of a C++ library. | -| [Clp](https://projects.coin-or.org/Clp) | [Clp (COIN-OR linear programming) is an open-source linear programming solver written in C++. It is primarily meant to be used as a callable library, but a basic stand-alone executable version is also available. It is a part of the COIN-OR project (https://www.coin-or.org). | -| [cuDNN](https://developer.nvidia.com/cudnn) | The NVIDIA CUDA Deep Neural Network library (cuDNN) is a GPU-accelerated library of primitives for deep neural networks. | -| [FFTW](http://www.fftw.org) | FFTW is a C subroutine library for computing the discrete Fourier transform (DFT) in one or more dimensions, of arbitrary input size, and of both real and complex data. | -| [GSL](http://www.gnu.org/software/gsl/) | The GNU Scientific Library (GSL) is a numerical library for C and C++ programmers. The library provides a wide range of mathematical routines such as random number generators, special functions and least-squares fitting. | -| [imkl](http://software.intel.com/en-us/intel-mkl/) | Intel Math Kernel Library is a library of highly optimized, extensively threaded math routines for science, engineering, and financial applications that require maximum performance. Core math functions include BLAS, LAPACK, ScaLAPACK, Sparse Solvers, Fast Fourier Transforms, Vector Math, and more. | -| [LIBLINEAR](http://www.csie.ntu.edu.tw/~cjlin/liblinear/) | LIBLINEAR is a simple package for solving large-scale regularized linear classification and regression. It supports L2-regularized logistic regression, L2-loss support vector classification L1-loss support vector classification, L1-regularized L2-loss support vector classification, L1-regularized logistic regression L2-regularized L2-loss support vector regression, L1-loss support vector regression. | -| [mkl](http://software.intel.com/en-us/intel-mkl/) | Intel Math Kernel Library is a library of highly optimized, extensively threaded math routines for science, engineering, and financial applications that require maximum performance. Core math functions include BLAS, LAPACK, ScaLAPACK, Sparse Solvers, Fast Fourier Transforms, Vector Math, and more. | -| [MPI-LIBLINEAR](https://www.csie.ntu.edu.tw/~cjlin/libsvmtools/distributed-liblinear/mpi/) | MPI LIBLINEAR is an extension of LIBLINEAR on distributed environments. The usage and the data format are the same as LIBLINEAR. It supports L2-regularized logistic regression, L2-regularized logistic regression, L2-regularized L2-loss linear SVM (primal trust-region Newton), L2-regularized L1-loss linear SVM (dual), L2-regularized logistic regression (primal limited common directions), L2-regularized L2-loss linear SVM (primal limited common directions). Module created by the PERMON Team (http://permon.it4i.cz). | -| [NLopt](http://ab-initio.mit.edu/wiki/index.php/NLopt) | NLopt is a free/open-source library for nonlinear optimization, providing a common interface for a number of different free optimization routines available online as well as original implementations of various other algorithms. | -| [OpenBLAS](http://xianyi.github.com/OpenBLAS/) | OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version. | -| [PETSc](http://www.mcs.anl.gov/petsc) | PETSc, pronounced PET-see (the S is silent), is a suite of data structures and routines for the scalable (parallel) solution of scientific applications modeled by partial differential equations.. | -| [qrupdate](https://sourceforge.net/projects/qrupdate/) | qrupdate is a Fortran library for fast updates of QR and Cholesky decompositions. | -| [ScaLAPACK](http://www.netlib.org/scalapack/) | The ScaLAPACK (or Scalable LAPACK) library includes a subset of LAPACK routines redesigned for distributed memory MIMD parallel computers. | -| [SLEPc](http://www.grycap.upv.es/slepc/) | SLEPc (Scalable Library for Eigenvalue Problem Computations) is a software library for the solution of large scale sparse eigenvalue problems on parallel computers. It is an extension of PETSc and can be used for either standard or generalized eigenproblems, with real or complex arithmetic. It can also be used for computing a partial SVD of a large, sparse, rectangular matrix, and to solve quadratic eigenvalue problems. | -| [SuiteSparse](http://faculty.cse.tamu.edu/davis/suitesparse.html) | SuiteSparse is a collection of libraries manipulate sparse matrices. | -| [Trilinos](http://trilinos.sandia.gov/) | The Trilinos Project is an effort to develop algorithms and enabling technologies within an object-oriented software framework for the solution of large-scale, complex multi-physics engineering and scientific problems. A unique design feature of Trilinos is its focus on packages. | - -## Omics - -| Module | Description | -| ------ | ----------- | -| fastqc | | -| gatk | | -| hpg-aligner | | -| hpg-fastq | | -| hpg-variant | | -| ngsPipeline | | -| picard | | -| samtools | | -| snpEff | | - -## Perf - -| Module | Description | -| ------ | ----------- | -| Advisor | | -| Cube | | -| [OPARI2](http://www.score-p.org) | OPARI2, the successor of Forschungszentrum Juelich's OPARI, is a source-to-source instrumentation tool for OpenMP and hybrid codes. It surrounds OpenMP directives and runtime library calls with calls to the POMP2 measurement interface. | -| [OTF2](http://www.score-p.org) | The Open Trace Format 2 is a highly scalable, memory efficient event trace data format plus support library. It is the new standard trace format for Scalasca, Vampir, and TAU and is open for other tools. | -| [PAPI](http://icl.cs.utk.edu/projects/papi/) | PAPI provides the tool designer and application engineer with a consistent interface and methodology for use of the performance counter hardware found in most major microprocessors. PAPI enables software engineers to see, in near real time, the relation between software performance and processor events. In addition Component PAPI provides access to a collection of components that expose performance measurement opportunites across the hardware and software stack. | -| [PDT](http://www.cs.uoregon.edu/research/pdt/) | Program Database Toolkit (PDT) is a framework for analyzing source code written in several programming languages and for making rich program knowledge accessible to developers of static and dynamic analysis tools. PDT implements a standard program representation, the program database (PDB), that can be accessed in a uniform way through a class library supporting common PDB operations. | -| [Scalasca](http://www.scalasca.org/) | Scalasca is a software tool that supports the performance optimization of parallel programs by measuring and analyzing their runtime behavior. The analysis identifies potential performance bottlenecks -- in particular those concerning communication and synchronization -- and offers guidance in exploring their causes. | -| [Score-P](http://www.score-p.org) | The Score-P measurement infrastructure is a highly scalable and easy-to-use tool suite for profiling, event tracing, and online analysis of HPC applications. | -| [Vampir](http://www.vampir.eu) | The Vampir software tool provides an easy-to-use framework that enables developers to quickly display and analyze arbitrary program behavior at any level of detail. The tool suite implements optimized event analysis algorithms and customizable displays that enable fast and interactive rendering of very complex performance monitoring data. | - -## Phys - -| Module | Description | -| ------ | ----------- | -| [ALAMODE](http://alamode.readthedocs.io/) | ALAMODE is an open source software designed for analyzing lattice anharmonicity and lattice thermal conductivity of solids. By using an external DFT package such as VASP and Quantum ESPRESSO, you can extract harmonic and anharmonic force constants straightforwardly with ALAMODE. Using the calculated anharmonic force constants, you can also estimate lattice thermal conductivity, phonon linewidth, and other anharmonic phonon properties from first principles. | -| [ALPScore](http://alps.comp-phys.org/) | The ALPS project (Algorithms and Libraries for Physics Simulations) is an open source effort aiming at providing high-end simulation codes for strongly correlated quantum mechanical systems as well as C++ libraries for simplifying the development of such code. | -| [DynaPhoPy](https://github.com/abelcarreras/DynaPhoPy) | Software to calculate crystal microscopic anharmonic properties from molecular dynamics (MD) using the normal-mode-decomposition technique. These properties include the phonon frequency shifts and linewidths, as well as the renormalized force constanst and thermal properties by using quasiparticle theory. This code includes interfaces for MD outputs from VASP and LAMMPS .PHONOPY code is used to obtain harmonic phonon modes. | -| [MotionCor2](http://msg.ucsf.edu/em/software/motioncor2.html) | This program corrects anisotropic image motion at the single pixel level across the whole frame, suitable for both single particle and tomographic images. | -| [phono3py](http://phonopy.sourceforge.net/phono3py/index.html) | This software calculates phonon-phonon interaction related properties | -| [phonopy](http://phonopy.sourceforge.net/) | Phonopy is an open source package of phonon calculations based on the supercell approach. | -| [Siesta](http://departments.icmab.es/leem/siesta) | SIESTA is both a method and its computer program implementation, to perform efficient electronic structure calculations and ab initio molecular dynamics simulations of molecules and solids. This version si compiled with OpenMP and MPI support. | -| [VASP](http://www.vasp.at) | The Vienna Ab initio Simulation Package (VASP) is a computer program for atomic scale materials modelling, e.g. electronic structure calculations and quantum-mechanical molecular dynamics, from first principles. To use VASP, You need academic licenses from University of Wiena. Follow the instructions https://www.vasp.at/index.php/faqs. Then send us please a list of authorized users and their ID for which you need this access. Please use only http://support.it4i.cz/rt. We are responsible to verify your licenses. After succesfull verification You will be granted to use VASP in our enviroment. | - -## Prace - -| Module | Description | -| ------ | ----------- | -| GLOBUS | | -| PRACE | | - -## Python - -| Module | Description | -| ------ | ----------- | -| [absl-py](https://pypi.python.org/pypi/absl-py) | Abseil Python Common Libraries, see https://github.com/abseil/abseil-py. | -| [ASE](https://wiki.fysik.dtu.dk/ase/) | ASE is a python package providing an open source Atomic Simulation Environment in the Python scripting language. | -| [BoltzTraP2](https://www.imc.tuwien.ac.at/index.php?id=21094) | BoltzTraP2 is a modern implementation of the smoothed Fourier interpolation algorithm for electronic bands that formed the base of the original and widely used BoltzTraP code. | -| [certifi](https://pypi.python.org/pypi/certifi) | Python package for providing Mozillas CA Bundle. | -| [click](https://pypi.python.org/pypi/click) | A simple wrapper around optparse for powerful command line utilities. | -| [dask](https://pypi.python.org/pypi/dask) | Parallel PyData with Task Scheduling. | -| [decorator](https://pypi.python.org/pypi/decorator) | Better living through Python with decorators. | -| [DynaPhoPy](https://pypi.python.org/pypi/dynaphopy) | oftware to calculate crystal microscopic anharmonic properties from molecular dynamics (MD) using the normal-mode-decomposition technique. | -| [h5py](https://github.com/jupyter/testpath) | Test utilities for code working with files and commands | -| [horovod](https://pypi.python.org/pypi/horovod) | Distributed training framework for TensorFlow. | -| [Keras](https://keras.io/) | Keras is a minimalist, highly modular neural networks library, written in Python and capable of running on top of either TensorFlow or Theano. | -| [latexcodec](https://pypi.python.org/pypi/latexcodec) | A lexer and codec to work with LaTeX code in Python. | -| [lxml](http://lxml.de/) | The lxml XML toolkit is a Pythonic binding for the C libraries libxml2 and libxslt. | -| [matplotlib](http://matplotlib.org) | Matplotlib is a python 2D plotting library which produces publication quality figures in a variety of hardcopy formats and interactive environments across platforms. matplotlib can be used in python scripts, the python and ipython shell, web application servers, and six graphical user interface toolkits. | -| [Mercurial](http://mercurial.selenic.com/) | Mercurial is a free, distributed source control management tool. It efficiently handles projects of any size and offers an easy and intuitive interface. | -| [monty](https://pypi.python.org/pypi/monty) | Monty is the missing complement to Python. | -| [mpi4py](http://mpi4py.scipy.org/docs) | MPI for Python (mpi4py) provides bindings of the Message Passing Interface (MPI) standard for the Python programming language, allowing any Python program to exploit multiple processors. | -| [mpmath](https://pypi.python.org/pypi/mpmath) | Python library for arbitrary-precision floating-point arithmetic. | -| [networkx](https://pypi.python.org/pypi/networkx) | NetworkX is a Python package for the creation, manipulation, and study of the structure, dynamics, and functions of complex networks. | -| [numpy](http://www.numpy.org) | NumPy is the fundamental package needed for scientific computing with Python. | -| [packaging](https://pypi.python.org/pypi/packaging) | Core utilities for Python packages. | -| [palettable](https://pypi.python.org/pypi/palettable) | Color palettes for Python. | -| [pandas](https://pypi.python.org/pypi/pandas) | Powerful data structures for data analysis, time series,and statistics. | -| [phonopy](https://atztogo.github.io/phonopy) | Phonopy is an open source package of phonon calculations based on the supercell approach. | -| [Pillow](http://pillow.readthedocs.org/) | Pillow is the 'friendly PIL fork' by Alex Clark and Contributors. PIL is the Python Imaging Library by Fredrik Lundh and Contributors. | -| [pybtex](https://pypi.python.org/pypi/pybtex) | A BibTeX-compatible bibliography processor in Python. | -| [PyDispatcher](https://pypi.python.org/pypi/PyDispatcher) | Multi-producer-multi-consumer signal dispatching mechanism. | -| [pyFFTW](https://pypi.python.org/pypi/pyFFTW) | A pythonic wrapper around FFTW, the FFT library, presenting a unified interface for all the supported transforms. | -| [pymatgen](https://pypi.python.org/pypi/pymatgen) | Python Materials Genomics is a robust materials analysis code that defines core object representations for structures and molecules with support for many electronic structure codes. It is currently the core analysis code powering the Materials Project (https://www.materialsproject.org). | -| [pyparsing](http://pyparsing.wikispaces.com) | The pyparsing module provides a library of classes that client code uses to construct the grammar directly in Python code. | -| [PyQt5](http://www.riverbankcomputing.co.uk/software/pyqt) | PyQt5 is a set of Python bindings for v5 of the Qt application framework from The Qt Company. | -| [python-dateutil](https://github.com/dateutil/dateutil) | Useful extensions to the standard Python datetime features. | -| [pytz](http://pytz.sourceforge.net/) | pytz brings the Olson tz database into Python. This library allows accurate and cross platform timezone calculations using Python 2.4 or higher. | -| [PyWavelets](https://pypi.python.org/pypi/PyWavelets) | PyWavelets, wavelet transform module. | -| [PyYAML](https://pypi.python.org/pypi/PyYAML/) | PyYAML is a YAML parser and emitter for the Python programming language. | -| [requests](https://pypi.python.org/pypi/requests) | Python HTTP for Humans. | -| [ruamel.yaml](https://pypi.python.org/pypi/ruamel.yaml) | ruamel.yaml is a YAML parser/emitter that supports roundtrip preservation of comments, seq/map flow style, and map key order | -| [scikit-image](http://scikit-learn.org/stable/index.html) | Scikit-learn integrates machine learning algorithms in the tightly-knit scientific Python world, building upon numpy, scipy, and matplotlib. As a machine-learning module, it provides versatile tools for data mining and analysis in any field of science and engineering. It strives to be simple and efficient, accessible to everybody, and reusable in various contexts. | -| [scikit-learn](http://scikit-learn.org/stable/index.html) | Scikit-learn integrates machine learning algorithms in the tightly-knit scientific Python world, building upon numpy, scipy, and matplotlib. As a machine-learning module, it provides versatile tools for data mining and analysis in any field of science and engineering. It strives to be simple and efficient, accessible to everybody, and reusable in various contexts. | -| [scipy](http://scipy.org) | SciPy (pronounced 'Sigh Pie') is open-source software for mathematics, science, and engineering. It includes modules for statistics, optimization, integration, linear algebra, Fourier transforms, signal and image processing, ODE solvers, and more. | -| [SCons](https://github.com/benjaminp/six) | Python 2 and 3 compatibility library. | -| [seaborn](https://pypi.python.org/pypi/seaborn) | Seaborn: statistical data visualization | -| [SIP](http://www.riverbankcomputing.com/software/sip/) | SIP is a tool that makes it very easy to create Python bindings for C and C++ libraries. | -| [six](https://github.com/benjaminp/six) | Python 2 and 3 compatibility library. | -| [spglib-python](https://pypi.python.org/pypi/spglib) | Spglib for Python. Spglib is a library for finding and handling crystal symmetries written in C. | -| [sympy](https://pypi.python.org/pypi/sympy) | Computer algebra system (CAS) in Python | -| [tabulate](https://pypi.python.org/pypi/tabulate) | Pretty-print tabular data. | -| [toolz](https://pypi.python.org/pypi/toolz) | List processing tools and functional utilities. | -| [urllib3](https://pypi.python.org/pypi/urllib3) | HTTP library with thread-safe connection pooling, file post, and more. | - -## System - -| Module | Description | -| ------ | ----------- | -| [CUDA](https://developer.nvidia.com/cuda-toolkit) | CUDA (formerly Compute Unified Device Architecture) is a parallel computing platform and programming model created by NVIDIA and implemented by the graphics processing units (GPUs) that they produce. CUDA gives developers access to the virtual instruction set and memory of the parallel computational elements in CUDA GPUs. | -| [hwloc](http://www.open-mpi.org/projects/hwloc/) | The Portable Hardware Locality (hwloc) software package provides a portable abstraction (across OS, versions, architectures, ...) of the hierarchical topology of modern architectures, including NUMA memory nodes, sockets, shared caches, cores and simultaneous multithreading. It also gathers various system attributes such as cache and memory information as well as the locality of I/O devices such as network interfaces, InfiniBand HCAs or GPUs. It primarily aims at helping applications with gathering information about modern computing hardware so as to exploit it accordingly and efficiently. | -| [libpciaccess](http://cgit.freedesktop.org/xorg/lib/libpciaccess/) | Generic PCI access library. | -| [OpenSSL](http://www.openssl.org/) | The OpenSSL Project is a collaborative effort to develop a robust, commercial-grade, full-featured, and Open Source toolchain implementing the Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1) protocols as well as a full-strength general purpose cryptography library. | - -## Toolchain - -| Module | Description | -| ------ | ----------- | -| foss | GNU Compiler Collection (GCC) based compiler toolchain, including OpenMPI for MPI support, OpenBLAS (BLAS and LAPACK support), FFTW and ScaLAPACK. | -| gimkl | GNU Compiler Collection (GCC) based compiler toolchain, next to Intel MPI and Intel MKL (BLAS, (Sca)LAPACK, FFTW). | -| gimpi | GNU Compiler Collection (GCC) based compiler toolchain, next to Intel MPI. | -| [GNU](http://www.gnu.org/software/) | Compiler-only toolchain with GCC and binutils. | -| gompi | GNU Compiler Collection (GCC) based compiler toolchain, including OpenMPI for MPI support. | -| [iccifort](http://software.intel.com/en-us/intel-cluster-toolkit-compiler/) | Intel C, C++ and Fortran compilers | -| [iimpi](http://software.intel.com/en-us/intel-cluster-toolkit-compiler/) | Intel C/C++ and Fortran compilers, alongside Intel MPI. | -| intel | | -| [iomkl](http://software.intel.com/en-us/intel-cluster-toolkit-compiler/) | Intel Cluster Toolchain Compiler Edition provides Intel C/C++ and Fortran compilers, Intel MKL & OpenMPI. | -| [iompi](http://software.intel.com/en-us/intel-cluster-toolkit-compiler/) | Intel C/C++ and Fortran compilers, alongside Open MPI. | -| [Py](https://www.python.org) | Python 3.6 toolchain | - -## Tools - -| Module | Description | -| ------ | ----------- | -| [ANSYS](http://www.ansys.com) | ANSYS simulation software enables organizations to confidently predict how their products will operate in the real world. We believe that every product is a promise of something greater. | -| [APR](http://apr.apache.org/) | Apache Portable Runtime (APR) libraries. | -| [APR-util](http://apr.apache.org/) | Apache Portable Runtime (APR) util libraries. | -| [Bash](http://www.gnu.org/software/bash) | Bash is an sh-compatible command language interpreter that executes commands read from the standard input or from a file. Bash also incorporates useful features from the Korn and C shells (ksh and csh). | -| [BeoPEST](http://www.prinmath.com/pest/) | BeoPEST is a special version of John Doherty's PEST adapted for Beowulf clusters. BeoPEST is identical in operation to Parallel PEST, except that it instead of a master and slaves that communicate through the file system, BeoPEST uses a master and smart slaves that communicate via TCP/IP or MPI. BeoPEST also uses smart slaves which offloads much of the effort to the slaves which is important for BeoPEST to scale to hundreds or thousands of slaves. More detail is provided in the BeoPEST Documentation. | -| [binutils](http://directory.fsf.org/project/binutils/) | binutils: GNU binary utilities | -| [bzip2](http://www.bzip.org/) | bzip2 is a freely available, patent free, high-quality data compressor. It typically compresses files to within 10% to 15% of the best available techniques (the PPM family of statistical compressors), whilst being around twice as fast at compression and six times faster at decompression. | -| [cURL](http://curl.haxx.se) | libcurl is a free and easy-to-use client-side URL transfer library, supporting DICT, FILE, FTP, FTPS, Gopher, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMTP, SMTPS, Telnet and TFTP. libcurl supports SSL certificates, HTTP POST, HTTP PUT, FTP uploading, HTTP form based upload, proxies, cookies, user+password authentication (Basic, Digest, NTLM, Negotiate, Kerberos), file transfer resume, http proxy tunneling and more. | -| [DMTCP](http://dmtcp.sourceforge.net/index.html) | DMTCP (Distributed MultiThreaded Checkpointing) transparently checkpoints a single-host or distributed computation in user-space -- with no modifications to user code or to the O/S. | -| [EasyBuild](https://easybuilders.github.io/easybuild) | EasyBuild is a software build and installation framework written in Python that allows you to install software in a structured, repeatable and robust way. | -| [elmer](http://www.csc.fi/english/pages/elmer/) | Elmer - Open Source Finite Element Software for Multiphysical Problems. | -| [expat](http://expat.sourceforge.net/) | Expat is an XML parser library written in C. It is a stream-oriented parser in which an application registers handlers for things the parser might find in the XML document (like start tags) | -| [gettext](http://www.gnu.org/software/gettext/) | GNU 'gettext' is an important step for the GNU Translation Project, as it is an asset on which we may build many other steps. This package offers to programmers, translators, and even users, a well integrated set of tools and documentation | -| [Ghostscript](http://ghostscript.com) | Ghostscript is a versatile processor for PostScript data with the ability to render PostScript to different targets. It used to be part of the cups printing stack, but is no longer used for that. | -| [git](http://git-scm.com/) | Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency. | -| [GLPK](https://www.gnu.org/software/glpk/) | The GLPK (GNU Linear Programming Kit) package is intended for solving large-scale linear programming (LP), mixed integer programming (MIP), and other related problems. It is a set of routines written in ANSI C and organized in the form of a callable library. | -| [gperftools](http://github.com/gperftools/gperftools) | gperftools are for use by developers so that they can create more robust applications. Especially of use to those developing multi-threaded applications in C++ with templates. Includes TCMalloc, heap-checker, heap-profiler and cpu-profiler. | -| grace | Grace 5.1.23 is a WYSIWYG 2D plotting tool for the X Window System and M*tif.. | -| [Graph500](http://graph500.org/) | Reference code of the Graph500 benchmark. | -| [gzip](http://www.gnu.org/software/gzip/) | gzip (GNU zip) is a popular data compression program as a replacement for compress | -| help2man | | -| inspector_xe | | -| intelpcm | | -| ipm | | -| itac | | -| [JOE](http://joe-editor.sourceforge.net) | JOE is a full featured terminal-based screen editor which is distributed under the GNU General Public License (GPL) | -| likwid | | -| Lmod | | -| MATLAB | | -| memoryscape | | -| [Mercurial](http://mercurial.selenic.com/) | Mercurial is a free, distributed source control management tool. It efficiently handles projects of any size and offers an easy and intuitive interface. | -| mercurial | | -| MIKE | | -| mono | | -| [moreutils](https://joeyh.name/code/moreutils/) | Moreutils is a growing collection of the unix tools that nobody thought to write long ago when unix was young. | -| mpi.net | | -| [nano](http://www.nano-editor.org/) | Small and friendly text editor | -| [networkx](https://pypi.python.org/pypi/networkx) | NetworkX is a Python package for the creation, manipulation, and study of the structure, dynamics, and functions of complex networks. | -| [numactl](http://oss.sgi.com/projects/libnuma/) | The numactl program allows you to run your application program on specific cpu's and memory nodes. It does this by supplying a NUMA memory policy to the operating system before running your program. The libnuma library provides convenient ways for you to add NUMA memory policies into your own program. | -| octave | | -| opari2 | | -| openssh-x509 | | -| oscar-modules | | -| otf2 | | -| papi | | -| parallel | | -| [PatchELF](https://nixos.org/patchelf.html) | PatchELF is a small utility to modify the dynamic linker and RPATH of ELF executables. | -| [pigz](http://zlib.net/pigz/) | pigz, which stands for parallel implementation of gzip, is a fully functional replacement for gzip that exploits multiple processors and multiple cores to the hilt when compressing data. pigz was written by Mark Adler, and uses the zlib and pthread libraries. | -| python | | -| R | | -| racket | | -| relion | | -| [RStudio](https://www.rstudio.com) | RStudio is a set of integrated tools designed to help you be more productive with R. It includes a console, syntax-highlighting editor that supports direct code execution, as well as tools for plotting, history, debugging and workspace management. | -| ruby | | -| scite | | -| [Serf](http://serf.apache.org/) | The serf library is a high performance C-based HTTP client library built upon the Apache Portable Runtime (APR) library | -| [Singularity](http://gmkurtzer.github.io/singularity) | Singularity is a container platform focused on supporting "Mobility of Compute" | -| [Subversion](http://subversion.apache.org/) | Subversion is an open source version control system. | -| Szip | | -| tcl | | -| [tcsh](http://www.tcsh.org) | Tcsh is an enhanced, but completely compatible version of the Berkeley UNIX C shell (csh). It is a command language interpreter usable both as an interactive login shell and a shell script command processor. It includes a command-line editor, programmable word completion, spelling correction, a history mechanism, job control and a C-like syntax. | -| tk | | -| tmux | | -| totalview | | -| turbovnc | | -| [util-linux](http://www.kernel.org/pub/linux/utils/util-linux) | Set of Linux utilities | -| valgrind | | -| vampir | | -| virtualgl | | -| [VTune](http://software.intel.com/en-us/intel-vtune-amplifier-xe) | Intel VTune Amplifier XE 2016 is the premier performance profiler for C, C++, C#, Fortran, Assembly and Java. | -| [XZ](http://tukaani.org/xz/) | xz: XZ utilities | - -## Virtualization - -| Module | Description | -| ------ | ----------- | -| qemu | | -| vde2 | | -| wine | | - -## Vis - -| Module | Description | -| ------ | ----------- | -| [ATK](https://developer.gnome.org/ATK/stable/) | ATK provides the set of accessibility interfaces that are implemented by other toolkits and applications. Using the ATK interfaces, accessibility tools have full access to view and control running applications. | -| [cairo](http://cairographics.org) | Cairo is a 2D graphics library with support for multiple output devices. Currently supported output targets include the X Window System (via both Xlib and XCB), Quartz, Win32, image buffers, PostScript, PDF, and SVG file output. Experimental backends include OpenGL, BeOS, OS/2, and DirectFB | -| [ffmpeg](https://www.ffmpeg.org/) | A complete, cross-platform solution to record, convert and stream audio and video. | -| [FFmpeg](https://www.ffmpeg.org/) | A complete, cross-platform solution to record, convert and stream audio and video. | -| [fixesproto](http://www.freedesktop.org/wiki/Software/xlibs) | X.org FixesProto protocol headers. | -| [FLTK](http://www.fltk.org) | FLTK is a cross-platform C++ GUI toolkit for UNIX/Linux (X11), Microsoft Windows, and MacOS X. FLTK provides modern GUI functionality without the bloat and supports 3D graphics via OpenGL and its built-in GLUT emulation. | -| [fontconfig](http://www.freedesktop.org/software/fontconfig) | Fontconfig is a library designed to provide system-wide font configuration, customization and application access. | -| [freetype](http://freetype.org) | FreeType 2 is a software font engine that is designed to be small, efficient, highly customizable, and portable while capable of producing high-quality output (glyph images). It can be used in graphics libraries, display servers, font conversion tools, text image generation tools, and many other products as well. | -| [Gdk-Pixbuf](https://developer.gnome.org/gdk-pixbuf/stable/) | The Gdk Pixbuf is a toolkit for image loading and pixel buffer manipulation. It is used by GTK+ 2 and GTK+ 3 to load and manipulate images. In the past it was distributed as part of GTK+ 2 but it was split off into a separate package in preparation for the change to GTK+ 3. | -| gettext | | -| [GL2PS](http://www.geuz.org/gl2ps/) | GL2PS: an OpenGL to PostScript printing library | -| [GLib](http://www.gtk.org/) | GLib is one of the base libraries of the GTK+ project | -| gnuplot | | -| [grace](http://freecode.com/projects/grace) | Grace is a WYSIWYG 2D plotting tool for X Windows System and Motif. | -| [GraphicsMagick](http://www.graphicsmagick.org/) | GraphicsMagick is the swiss army knife of image processing. | -| [GST-plugins-base](http://gstreamer.freedesktop.org/) | GStreamer is a library for constructing graphs of media-handling components. The applications it supports range from simple Ogg/Vorbis playback, audio/video streaming to complex audio (mixing) and video (non-linear editing) processing. | -| [GStreamer](http://gstreamer.freedesktop.org/) | GStreamer is a library for constructing graphs of media-handling components. The applications it supports range from simple Ogg/Vorbis playback, audio/video streaming to complex audio (mixing) and video (non-linear editing) processing. | -| [GTK+](https://developer.gnome.org/gtk+/stable/) | The GTK+ 2 package contains libraries used for creating graphical user interfaces for applications. | -| [HarfBuzz](http://www.freedesktop.org/wiki/Software/HarfBuzz) | HarfBuzz is an OpenType text shaping engine. | -| [inputproto](http://www.freedesktop.org/wiki/Software/xlibs) | X.org InputProto protocol headers. | -| [JasPer](http://www.ece.uvic.ca/~frodo/jasper/) | The JasPer Project is an open-source initiative to provide a free software-based reference implementation of the codec specified in the JPEG-2000 Part-1 standard. | -| [kbproto](http://www.freedesktop.org/wiki/Software/xlibs) | X.org KBProto protocol headers. | -| libGLU | | -| [libICE](http://www.freedesktop.org/wiki/Software/xlibs) | X Inter-Client Exchange library for freedesktop.org | -| [libX11](http://www.freedesktop.org/wiki/Software/xlibs) | X11 client-side library | -| [libXau](http://www.freedesktop.org/wiki/Software/xlibs) | The libXau package contains a library implementing the X11 Authorization Protocol. This is useful for restricting client access to the display. | -| [libXdmcp](http://www.freedesktop.org/wiki/Software/xlibs) | The libXdmcp package contains a library implementing the X Display Manager Control Protocol. This is useful for allowing clients to interact with the X Display Manager. | -| [libXext](http://www.freedesktop.org/wiki/Software/xlibs) | Common X Extensions library | -| [libXfixes](http://www.freedesktop.org/wiki/Software/xlibs) | X Fixes extension library | -| [libXfont](http://www.freedesktop.org/wiki/Software/xlibs) | X font libary | -| libXinerama | | -| [libXrender](http://www.freedesktop.org/wiki/Software/xlibs) | X11 client-side library | -| [libXt](http://www.freedesktop.org/wiki/Software/xlibs) | libXt provides the X Toolkit Intrinsics, an abstract widget library upon which other toolkits are based. Xt is the basis for many toolkits, including the Athena widgets (Xaw), and LessTif (a Motif implementation). | -| [matplotlib](http://matplotlib.org) | matplotlib is a python 2D plotting library which produces publication quality figures in a variety of hardcopy formats and interactive environments across platforms. matplotlib can be used in python scripts, the python and ipython shell, web application servers, and six graphical user interface toolkits. | -| Mesa | | -| [motif](http://motif.ics.com/) | Motif refers to both a graphical user interface (GUI) specification and the widget toolkit for building applications that follow that specification under the X Window System on Unix and other POSIX-compliant systems. It was the standard toolkit for the Common Desktop Environment and thus for Unix. | -| [OpenCV](http://opencv.org/) | OpenCV (Open Source Computer Vision Library) is an open source computer vision and machine learning software library. OpenCV was built to provide a common infrastructure for computer vision applications and to accelerate the use of machine perception in the commercial products. | -| [opencv-python](http://deeplearning.net/software/theano) | Theano is a Python library that allows you to define, optimize, and evaluate mathematical expressions involving multi-dimensional arrays efficiently. | -| [OSPRay](http://www.ospray.org) | A Ray Tracing Based Rendering Engine for High-Fidelity Visualization | -| [Pango](http://www.pango.org/) | Pango is a library for laying out and rendering of text, with an emphasis on internationalization. Pango can be used anywhere that text layout is needed, though most of the work on Pango so far has been done in the context of the GTK+ widget toolkit. Pango forms the core of text and font handling for GTK+-2.x. | -| [ParaView](http://www.paraview.org) | ParaView is a scientific parallel visualizer. | -| [Pillow](http://pillow.readthedocs.org/) | Pillow is the 'friendly PIL fork' by Alex Clark and Contributors. PIL is the Python Imaging Library by Fredrik Lundh and Contributors. | -| [pixman](http://www.pixman.org/) | Pixman is a low-level software library for pixel manipulation, providing features such as image compositing and trapezoid rasterization. Important users of pixman are the cairo graphics library and the X server. | -| [PyQt](http://www.riverbankcomputing.co.uk/software/pyqt) | PyQt is a set of Python v2 and v3 bindings for Digia's Qt application framework. | -| [scikit-image](http://scikit-learn.org/stable/index.html) | Scikit-learn integrates machine learning algorithms in the tightly-knit scientific Python world, building upon numpy, scipy, and matplotlib. As a machine-learning module, it provides versatile tools for data mining and analysis in any field of science and engineering. It strives to be simple and efficient, accessible to everybody, and reusable in various contexts. | -| [seekpath](https://github.com/giovannipizzi/seekpath) | SeeK-path is a python module to obtain and visualize band paths in the Brillouin zone of crystal structures. The definition of k-point labels follows crystallographic convention, as defined and discussed in the HPKOT paper. Moreover, the Bravais lattice is detected properly using the spacegroup symmetry. Also the suggested band path provided in the HPKOT paper is returned. Systems without time-reversal and inversion-symmetry are also properly taken into account. | -| [Tk](http://www.tcl.tk/) | Tk is an open source, cross-platform widget toolchain that provides a library of basic elements for building a graphical user interface (GUI) in many different programming languages. | -| [VTK](http://www.vtk.org) | The Visualization Toolkit (VTK) is an open-source, freely available software system for 3D computer graphics, image processing and visualization. VTK consists of a C++ class library and several interpreted interface layers including Tcl/Tk, Java, and Python. VTK supports a wide variety of visualization algorithms including: scalar, vector, tensor, texture, and volumetric methods; and advanced modeling techniques such as: implicit modeling, polygon reduction, mesh smoothing, cutting, contouring, and Delaunay triangulation. | -| [X11](https://www.x.org) | The X Window System (X11) is a windowing system for bitmap displays | -| [x264](http://www.videolan.org/developers/x264.html) | x264 is a free software library and application for encoding video streams into the H.264/MPEG-4 AVC compression format, and is released under the terms of the GNU GPL. | diff --git a/docs.it4i/modules-matrix.json b/docs.it4i/modules-matrix.json deleted file mode 100644 index 4398269c467576f2fa8ec70441b95657284e3b1f..0000000000000000000000000000000000000000 --- a/docs.it4i/modules-matrix.json +++ /dev/null @@ -1 +0,0 @@ -{"total": 415, "projects": {"MIKE": "default", "SIP": "4.17-Python-2.7.9", "HDF5": "1.10.0-patch1-intel-2016.01-mic", "p4vasp": "0.3.29-GNU-4.9.3-2.25", "Automake": "1.15-GNU-5.1.0-2.25", "netcdf": "4.3.0", "bullxde": "2.0", "APR-util": "1.5.4-foss-2015g", "ScaLAPACK": "2.0.2-OpenBLAS-0.2.14-LAPACK-3.5.0", "BerkeleyUPC": "2.16.2-gompi-2015b", "BWA": "0.7.5a-foss-2015g", "openmpi": "1.8.1-icc", "matlab": "R2014a-EDU", "sympy": "0.7.6-intel-2016.01-Python-2.7.9", "kbproto": "1.0.7-intel-2016a", "lsprepost": "4.2", "prace": "20160107-intel-2016.01", "mpt": "2.12", "Bison": "3.0.4-GCC-4.9.3", "totalview": "8.13", "Wine": "1.7.29-GNU-5.1.0-2.25", "opari2": "1.1.2-icc", "MAP": "5.0.1", "libyaml": "0.1.6-intel-2015b", "mercurial": "2.9.1", "beopest": "13.3", "perfsuite": "1a5.3", "PSBLAS-ext": "1.0-4-GCC-4.9.3-2.25", "OSPRay": "0.9.1", "S4MPLE": "1.0.0", "libxslt": "1.1.28-intel-2015b", "hwloc": "1.11.5-GCC-6.3.0-2.27", "libunistring": "0.9.3-intel-2015b", "QGIS": "2.12.3-foss-2015g", "ngsPipeline": "1.0.0", "boost": "1.56-icc-impi", "matplotlib": "1.4.3-intel-2015b-Python-2.7.9", "openfoam": "2.2.2-icc-openmpi1.8.1-DP", "Szip": "2.1-intel-2017a", "PROJ_4": "4.9.2-foss-2015g", "phono3py": "1.11.7.8-intel-2015b-Python-2.7.11", "CMake": "3.7.2-intel-2017a", "COMSOL": "51-EDU", "hdf5": "1.8.13", "gimkl": "2.11.5", "xineramaproto": "1.2.1-intel-2015b", "xextproto": "7.3.0-intel-2016a", "GLM": "0.9.7.2-intel-2017a", "SWIG": "3.0.7-Python-2.7.9", "tmux": "2.3", "ipm": "0.983-icc-impi", "SUMO": "0.27.1-foss-2015g", "ipp": "15.3.187", "hdf5-parallel": "1.8.13-gcc49", "PrgEnv-intel": "15.0.3", "libxcb": "1.11-Python-2.7.9", "MPI_NET": "1.2.0-intel-2016.01", "QEMU": "2.1.2-GCC-4.4.7-system-VDE2", "cp2k-mpi": "2.5.1-gcc", "OTF2": "2.0-intel-2015b-mic", "VirtualGL": "2.4.1", "Armadillo": "7.500.0-foss-2016a-Python-3.5.2", "netcdf-fortran": "4.2", "perfcatcher": "1.0", "tk": "8.5.15", "itac": "9.1.2.024", "LAPACKE": "3.5.0-LAPACK-3.5.0", "PrgEnv-gnu": "4.8.1", "libICE": "1.0.9-intel-2015b", "Rstudio": "0.97", "VisIt": "2.10.0", "virtualgl": "2.4", "Scipion": "1.0.1-Java-1.8.0_112-OpenMPI-1.10.2-GCC-5.3.0-2.26", "grace": "5.1.25-intel-2015b", "ANSYS": "18.0", "ATLAS": "3.10.1-GCC-4.9.3-2.25-LAPACK-3.4.2", "Scalasca": "2.3.1-intel-2015b", "BCFtools": "1.3-foss-2015g", "gcc": "5.4.0", "lxml": "3.4.4-intel-2015b-Python-2.7.9", "lsdyna": "7.x.x", "PGI": "16.10-GNU-4.9.3-2.25", "advisor_xe": "2015.1.10.380555", "CUDA": "8.0.44-intel-2017.00", "gatk": "2.6-4", "Spark": "1.5.2", "ifort": "2017.1.132-GCC-6.3.0-2.27", "lam": "7.1.4-icc", "PyYAML": "3.11-intel-2015b-Python-2.7.9", "tcsh": "6.19.00", "gperf": "3.0.4-intel-2016a", "METIS": "5.1.0-intel-2017.00", "Digimat": "5.0.1-EDU", "pigz": "2.3.3-GCC-6.2.0-2.27", "Autotools": "20150215-GNU-5.1.0-2.25", "parallel": "20150322-GNU-5.1.0-2.25", "bowtie2": "2.2.3", "QuantumESPRESSO": "5.4.0-intel-2017.00", "CP2K": "2.6.0-intel-2015b", "MATIO": "1.5.2-intel-2017a", "wine": "1.7.29", "libX11": "1.6.3-intel-2016a", "HyperWorks": "13.0", "hpg-aligner": "1.0.0", "PCRE": "8.39-intel-2017.00", "modflow-2005": "1.11.00", "EasyBuild": "3.1.0", "adios": "1.8.0", "GLOBUS": "globus", "picard": "2.1.0", "turbovnc": "1.2.3", "settarg": "7.2.2", "JOE": "4.2", "libSM": "1.2.2-intel-2015b", "pixman": "0.32.6-intel-2015b", "flex": "2.6.3-GCCcore-6.3.0", "libgdiplus": "3.12-GNU-5.1.0-2.25", "python": "3.4.2", "namd": "2.8", "APR": "1.5.2-foss-2015g", "aislinn": "20160105-Python-2.7.9-gompi-2015e", "inspector_xe": "2015.1.2.379161", "h5py": "2.4.0-ictce-7.3.5-Python-2.7.9-serial", "cURL": "7.51.0-intel-2017.00", "SIONlib": "1.6.1-tools", "bupc": "2.16.2", "PAPI": "5.4.3-pic", "PerfReports": "5.0.1", "cairo": "1.12.18-foss-2015b", "Harminv": "1.4-intel-2015b", "Perl": "5.24.0-GCC-4.9.3-2.25-bare", "Lua": "5.1.4-8", "fftw2-mpi": "2.1.5-icc", "mxml": "2.9", "Maven": "3.3.9", "GATK": "3.5-Java-1.7.0_79", "Trimmomatic": "0.35-Java-1.7.0_79", "GCCcore": "6.3.0", "GCC": "6.3.0-2.27", "xcb-proto": "1.11-Python-2.7.9", "hypermesh": "12.0.110", "imkl": "2017.1.132-iimpi-2017a", "Meep": "1.3-intel-2015b", "eudev": "3.1.5-intel-2016a", "Vampir": "9.0.0", "FastQC": "0.11.3", "PROJ": "4.9.2-intel-2017.00", "NASM": "2.11.08-intel-2017.00", "mvapich2": "1.9-icc", "iompi": "2017.01", "OpenCV": "3.0.0-intel-2015b", "ParaView": "5.0.0-binary", "ISL": "0.15-GNU-4.9.3-2.25", "intelpcm": "2.6", "Libint": "1.1.4-intel-2015b", "libreadline": "6.3-intel-2017a", "SpatiaLite": "4.3.0a-foss-2015g", "Clang": "3.7.0-GNU-5.1.0-2.25", "ParMETIS": "4.0.3-intel-2017a", "Mesa": "11.2.1-foss-2016a", "fftw3": "3.3.3-icc", "slepc": "3.7.2-icc16-impi5-mkl-opt", "MPFR": "3.1.5-intel-2017.00", "OpenCL-builder": "2015", "OpenCL-runtime": "15.1", "relion": "1.3", "XZ": "5.2.2-intel-2017.00", "libunwind": "1.1-GCC-5.4.0-2.26", "libevent": "2.1.8", "fftw2": "2.1.5-icc", "dytran": "2013.0.1", "ffmpeg": "2.4-intel-2015b", "M4": "1.4.18-GCCcore-6.3.0", "FFTW": "3.3.6-gompi-2017a", "PyQt": "4.11.4-foss-2015g-Python-2.7.9", "NWChem": "6.5.revision26243-intel-2015b-2014-09-10-Python-2.7.8", "hyperworks": "13.0", "ant": "1.9.3-Java-1.7.0_79", "Forge": "7.0", "arpack-ng": "3.4.0-intel-2017.00", "comsol": "50-EDU", "GEOS": "3.5.0-foss-2015g", "Singularity": "2.2-GCC-6.3.0-2.27", "VTune": "2016_update1", "digimat": "5.0.1", "LLVM": "3.9.0-intel-2017.00", "Qt": "4.8.6-foss-2015g", "fixesproto": "5.0-intel-2016a", "Molpro": "2010.1-patch-57-intel2015b", "libXdamage": "1.1.4-intel-2016a", "bullxmpi": "bullxmpi_1.2.4.1", "scalasca2": "2.0-icc-impi", "openssh-x509": "6.2p2", "mpi.net": "1.0.0-mono-3.12.1", "gimpi": "2.11.5", "R": "3.2.3-intel-2016.01", "Racket": "6.1.1-GNU-5.1.0-2.25", "SCOTCH": "6.0.4-intel-2017a", "fastqc": "0.11.2", "trilinos": "11.2.3-icc", "netcdf-parallel": "4.3.0", "chicken": "4.8.0.6", "OpenBLAS": "0.2.19-GCC-6.3.0-2.27-LAPACK-3.7.0", "blender": "2.71", "PCRE2": "10.22-intel-2017.00", "fontconfig": "2.11.94-intel-2017.00", "Octave": "4.0.1-gimkl-2.11.5", "DCW": "1.1.2", "Qwt": "6.1.2-foss-2015g", "Bash": "4.3", "freetype": "2.6.3-intel-2016a", "cube": "4.2.3-icc", "Valgrind": "3.11.0-intel-2015b", "iimpi": "2017a", "dhi-mike": "default", "tbb": "15.3.187", "guile": "1.8.8-intel-2015b", "PSBLAS": "3.3.4-3-GCC-4.9.3-2.25", "libXfont": "1.5.1-Python-2.7.9", "szip": "2.1", "memoryscape": "3.4", "vampir": "8.2", "libpciaccess": "0.13.4-intel-2016a", "JasPer": "1.900.1-intel-2015b", "racket": "6.0.1", "foss": "2017a", "Boost": "1.61.0-foss-2016a-serial", "FIAT": "1.6.0-intel-2016.01-Python-2.7.9", "PRACE": "prace", "gompi": "2017a", "lux": "1.3.1", "LibTIFF": "4.0.3-intel-2015b", "netCDF-Fortran": "4.4.0-intel-2016.01", "libpng": "1.6.16-intel-2015b", "SuiteSparse": "4.5.3-intel-2017a-ParMETIS-4.0.3", "FOX": "1.6.51-foss-2015g", "DDT": "5.0.1", "libctl": "3.2.2-intel-2015b", "mono": "3.12.1", "valgrind": "3.9.0-impi", "PLUMED": "2.3b-foss-2016a", "SnuCL": "1.3.3-gompi-2015e", "Tcl": "8.6.5-intel-2017a", "libXft": "2.3.2-intel-2015b", "binutils": "2.27-GCCcore-6.3.0", "GPI-2": "1.1.1-gompi-2015e-MPI", "xdrfile": "1.1.4-intel-2015b", "libGLU": "9.0.0-foss-2015g", "otf2": "1.4-icc", "util-linux": "2.28-intel-2016a", "lmod": "7.2.2", "MVAPICH2": "2.1-GNU-5.1.0-2.25", "byacc": "20150711-intel-2015b", "java": "1.7", "marc": "2013.1", "elmer": "7.0-r6695-opt", "HTSlib": "1.3-foss-2015g", "MATLAB": "2015b-EDU", "gupc": "4.8.0.3", "abinit": "7.10.1-icc-impi", "numpy": "1.9.1-intel-2015b-Python-2.7.9", "modflow-nwt": "1.0.9-aquaveo", "Adams": "2013.2", "ncurses": "6.0-intel-2017a", "MUMPS": "5.0.2-intel-2017a-parmetis", "Score-P": "3.0-intel-2015b", "ruby": "2.0.0-p247", "Subversion": "1.8.16-foss-2015g", "NAMD": "2.9-mpi", "zlib": "1.2.11-GCCcore-6.3.0", "xtrans": "1.3.5-intel-2016a", "snpEff": "3.6", "ABINIT": "7.10.1-intel-2015b", "libMesh": "0.9.5-intel-2016.01", "motif": "2.3.4-intel-2015b-libX11-1.6.2", "GNU": "5.1.0-2.25-intel-2015b", "almost": "2.1.0-intel-2015b", "libxml2": "2.9.3-intel-2017.00", "expat": "2.1.0-intel-2017.00", "Code_Saturne": "3.0.5", "opencl-rt": "4.5.0.8", "samtools": "0.1.19", "ictce": "8.3.5", "Python": "3.5.2-intel-2017.00", "make": "3.82-intel-2015b", "Mono": "4.2.2.10-intel-2016.01", "FreeFem++": "3.45-intel-2015b", "SAMtools": "1.3-foss-2015g", "SQLite": "3.13.0-intel-2017a", "HPL": "2.1-intel-2015b", "OpenDX": "4.4.4-foss-2015g", "Autoconf": "2.69-GNU-5.1.0-2.25", "RStudio": "0.98.1103", "globus": "globus", "fontsproto": "2.1.3-intel-2016a", "SDE": "7.41.0", "gzip": "1.6-intel-2015b", "gsl": "1.16-icc", "tcl": "8.5.15", "TotalView": "8.15.4-6-linux-x86-64", "MPICH": "3.2-GCC-5.3.1-snapshot-20160419-2.25", "GSL": "2.1-intel-2015b", "libXfixes": "5.0.1-intel-2016a", "OpenFOAM": "3.0.0-intel-2016.01", "SCons": "2.3.6-Python-2.7.9", "iccifort": "2017.1.132-GCC-6.3.0-2.27", "plasma": "2.6.0", "phonopy": "1.11.6.7-intel-2015b-Python-2.7.11", "libXdmcp": "1.1.2-intel-2016a", "Mercurial": "3.7.3-foss-2015g-Python-2.7.9", "xproto": "7.0.28-intel-2016a", "FLTK": "1.3.2-intel-2015b", "hpg-variant": "1.0.0", "libdrm": "2.4.68-intel-2016a", "intel": "2017a", "nwchem": "6.3-rev2-patch1-venus", "adams": "2013.2", "makedepend": "1.0.5-intel-2016a", "numactl": "2.0.11-GCC-6.3.0-2.27", "vtune_xe": "2015.3.0.403110", "Discovery_Studio": "4.0", "wien2k": "14.2", "help2man": "1.47.4-GCCcore-6.3.0", "xbitmaps": "1.1.1-intel-2015b", "Inspector": "2016_update1", "spGPU": "master-GCC-4.9.3-2.25", "JUnit": "4.11-Java-1.7.0_79", "nastran": "2013.1.1", "pkg-config": "0.29-intel-2016a", "Java": "1.8.0_112", "Marc": "2013.1.0", "magma": "1.3.0-mic", "libXrender": "0.9.8-intel-2015b", "inputproto": "2.3-intel-2015b", "libfontenc": "1.1.3-intel-2016a", "GDAL": "2.1.0-GNU-5.1.0-2.25-intel-2015b", "Cube": "4.3.4-intel-2015b", "icc": "2017.1.132-GCC-6.3.0-2.27", "qemu": "2.1.2-vde2", "fftw3-mpi": "3.3.3-icc", "Ruby": "2.3.1", "libXau": "1.0.8-intel-2016a", "Doxygen": "1.8.11-intel-2017a", "gpi2": "1.1.1", "dataspaces": "1.4.0", "RELION": "1.3-intel-2015b", "libXinerama": "1.1.3-intel-2015b", "Amber": "14", "MPC": "1.0.2-intel-2017.00", "LAMMPS": "28Jun14-intel-2015b", "libjpeg-turbo": "1.4.2-intel-2017.00", "perfboost": "1.0", "python-meep": "1.4.2-intel-2015b-Python-2.7.9-Meep-1.3", "petsc": "3.7.3-icc16-impi5-mkl-opt", "ScientificPython": "2.9.4-intel-2016.01-Python-2.7.9", "cuda": "7.5", "scorep": "1.2.3-icc-impi", "OPARI2": "2.0", "MLD2P4": "2.0-rc4-GCC-4.9.3-2.25", "maxwell": "3.0", "VampirServer": "9.0.0-intel-2015b", "spatialindex": "1.8.5-foss-2015g", "vde2": "2.3.2", "paraview": "4.0.1-gcc481-bullxmpi1.2.4.1-osmesa10.0", "Siesta": "4.1-b2-intel-2017.00", "VASP": "5.4.1-intel-2017.00-24Jun15", "git": "2.11.0-GNU-4.9.3-2.25", "lammps": "28Jun14", "mkl": "15.3.187", "xorg-macros": "1.19.0-intel-2016a", "likwid": "4.1.2-intel", "OpenCoarrays": "1.4.0-GCC-5.3.1-snapshot-20160419-2.25", "GROMACS": "5.1.2-intel-2016a-hybrid", "libXt": "1.1.5-foss-2015g", "tensorflow": "0.12.0", "libXext": "1.3.3-intel-2016a", "GMT": "5.2.1-foss-2015g", "molpro": "2010.1-p45-intel", "fds": "6.svn", "pest": "13.0", "PerformanceReports": "6.0.6", "netcdf-cxx": "4.2", "impi": "2017-BETA.ENG", "Lmod": "7.2.2", "libmatheval": "1.1.11-intel-2015b", "GLib": "2.40.0-GCC-4.4.7-system", "QCA": "2.1.0-foss-2015g", "scite": "3.4.3", "Tk": "8.6.5-intel-2017a", "hpg-fastq": "1.0.0", "SnpEff": "4.1_G", "libpthread-stubs": "0.3-intel-2016a", "bzip2": "1.0.6-intel-2017a", "cmake": "2.8.11-mic", "gnuplot": "4.6.5", "gettext": "0.19.6-intel-2017.00", "VDE2": "2.3.2-GCC-4.4.7-system", "Advisor": "2017", "glproto": "1.4.17-intel-2016a", "ORCA": "3_0_3-linux_x86-64", "llvm": "3.6.0", "papi": "5.4.0-mic", "Serf": "1.3.8-foss-2015g", "libxc": "2.2.1-intel-2015b", "libtool": "2.4.6-GCC-6.3.0-2.27", "libffi": "3.2.1-GCC-4.4.7-system", "libmesh": "0.9.3-petsc-3.4.4-icc-impi-mkl-opt", "opencl-sdk": "4.6.0.92", "GMP": "6.1.1-intel-2017.00", "PETSc": "3.6.3-intel-2015b-Python-2.7.11", "OpenMPI": "2.0.2-GCC-6.3.0-2.27", "netCDF": "4.4.1-intel-2017a", "Hypre": "2.10.1-intel-2015b", "renderproto": "0.11-intel-2015b", "oscar-modules": "1.0.3"}} diff --git a/docs.it4i/modules-matrix.md b/docs.it4i/modules-matrix.md deleted file mode 100644 index 97cfaec67beabde9836ca944cea1a20280fec1d9..0000000000000000000000000000000000000000 --- a/docs.it4i/modules-matrix.md +++ /dev/null @@ -1,662 +0,0 @@ -!!! Hint "Cluster Acronyms" - - ``` - USA - ||| - ||+---->Anselm - |+----->Salomon - +------>UV2000 - ``` - -| Module </br><form><input id="searchInput" placeholder="🔍 Filter" style="width: 8rem; border-radius: 0.2rem; color: black; padding-left: .2rem;"></form> | Versions | Clusters | -| ------ | -------- | -------- | -| ABINIT | 7.10.1-foss-2015b</br>7.10.1-intel-2015b</br>8.2.2-intel-2017a</br>8.6.1-intel-2017a</br>8.6.1-intel-2017a-test | `US-`</br>`US-`</br>`-SA`</br>`-S-`</br>`-S-` | -| absl-py | 0.1.10-Py-3.6 | `-SA` | -| ABySS | 2.0.2-foss-2018a</br>2.0.3-foss-2018a | `-SA`</br>`-S-` | -| ACE | 6.3.3 | `-S-` | -| ACTC | 1.1-intel-2017a | `-S-` | -| adams | 2013.2 | `--A` | -| adios | 1.8.0 | `--A` | -| Advisor | 2016_update2</br>2017_update3</br>2017_update5 | `-S-`</br>`-SA`</br>`-S-` | -| advisor_xe | 2013.5</br>2015.1.10.380555 | `--A`</br>`--A` | -| aislinn | 20160105-Python-2.7.9-gompi-2015e | `-S-` | -| ALAMODE | 0.9.8-intel-2017a | `-SA` | -| almost | 2.1.0-foss-2015b</br>2.1.0-foss-2015g</br>2.1.0-foss-2016a</br>2.1.0-intel-2015b | `-S-`</br>`-SA`</br>`-SA`</br>`-S-` | -| ALPScore | 2.1.1-intel-2017b | `--A` | -| Amber | 14</br>18-intel-2017b | `-S-`</br>`-S-` | -| Anaconda2 | 4.4.0 | `-SA` | -| Anaconda3 | 4.4.0 | `-SA` | -| ANSYS | 16.1</br>18.2-intel-2017a</br>19.0-intel-2017b</br>19.1-intel-2017c | `-S-`</br>`-S-`</br>`-S-`</br>`-SA` | -| ant | 1.9.3-Java-1.7.0_79</br>1.9.7-Java-1.8.0_121 | `-S-`</br>`--A` | -| APR | 1.5.2</br>1.5.2-foss-2015g | `-SA`</br>`-SA` | -| APR-util | 1.5.4</br>1.5.4-foss-2015g | `-SA`</br>`-SA` | -| Armadillo | 7.500.0-foss-2016a-Python-3.5.2 | `-SA` | -| arpack-ng | 3.3.0-foss-2016a</br>3.3.0-intel-2015b</br>3.3.0-intel-2017.00</br>3.4.0-intel-2017.00</br>3.5.0-intel-2017a | `-SA`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-SA` | -| ASE | 3.15.0-Py-3.6</br>3.15.0-Python-2.7.13-base</br>3.15.0-Python-2.7.13-base-test</br>3.15.0-Python-3.6.1-base-test | `-SA`</br>`--A`</br>`-S-`</br>`-S-` | -| asn1crypto | 0.24.0-Py-2.7 | `-S-` | -| astor | 0.6.2-Py-3.6 | `-S-` | -| astroid | 1.5.3-Python-2.7.13-base | `-SA` | -| asv | 0.2.1-Py-2.7</br>0.2.1-Py-3.6 | `-S-`</br>`-S-` | -| ATK | 2.18.0</br>2.20.0 | `-S-`</br>`--A` | -| ATLAS | 3.10.1-GCC-4.9.3-2.25-LAPACK-3.4.2</br>3.10.3-GCC-6.3.0-2.27-LAPACK-3.6.1</br>3.10.3-GCC-7.1.0-2.28-LAPACK-3.6.1 | `--A`</br>`-SA`</br>`-S-` | -| attrs | 17.4.0-Py-2.7</br>17.4.0-Py-3.6 | `-S-`</br>`-S-` | -| Autoconf | 2.69</br>2.69-foss-2015g</br>2.69-foss-2016a</br>2.69-intel-2015b</br>2.69-intel-2017.00</br>2.69-intel-2017a</br>2.69-GCCcore-6.4.0</br>2.69-GCC-6.3.0-2.27</br>2.69-GNU-4.9.3-2.25</br>2.69-GNU-5.1.0-2.25 | `-SA`</br>`-S-`</br>`--A`</br>`--A`</br>`--A`</br>`-SA`</br>`-S-`</br>`--A`</br>`--A`</br>`--A` | -| Automake | 1.15</br>1.15-foss-2016a</br>1.15-intel-2015b</br>1.15-intel-2017.00</br>1.15-intel-2017a</br>1.15-GCC-6.3.0-2.27</br>1.15-GNU-4.9.3-2.25</br>1.15-GNU-5.1.0-2.25</br>1.16.1 | `-SA`</br>`--A`</br>`--A`</br>`--A`</br>`-SA`</br>`--A`</br>`--A`</br>`--A`</br>`-S-` | -| Autotools | 20150215</br>20150215-foss-2016a</br>20150215-intel-2015b</br>20150215-intel-2017.00</br>20150215-intel-2017a</br>20150215-GCC-6.3.0-2.27</br>20150215-GNU-4.9.3-2.25</br>20150215-GNU-5.1.0-2.25</br>20180311 | `-SA`</br>`--A`</br>`--A`</br>`--A`</br>`-SA`</br>`--A`</br>`--A`</br>`--A`</br>`-S-` | -| backports_abc | 0.5-Py-2.7 | `-S-` | -| Bash | 4.2-intel-2015b</br>4.3</br>4.4-intel-2017b</br>4.4-GCC-6.3.0-2.27 | `US-`</br>`-SA`</br>`USA`</br>`USA` | -| Bazel | 0.4.4</br>0.4.4-GCC-4.8.3</br>0.4.4-GCC-4.9.3</br>0.4.5-GCC-4.8.3</br>0.5.0-GCC-4.9.3-tf</br>0.5.1-GCC-7.1.0-2.28</br>0.7.0-GCC-6.3.0-2.27</br>0.7.0-GCC-7.1.0-2.28 | `--A`</br>`--A`</br>`--A`</br>`--A`</br>`-SA`</br>`-SA`</br>`-SA`</br>`-S-` | -| BCFtools | 1.6-intel-2017a</br>1.8-intel-2017a | `-S-`</br>`-S-` | -| bcl2fastq2 | 2.20.0-intel-2017a-Python-2.7.13 | `-S-` | -| bcrypt | 3.1.4-Py-2.7 | `-S-` | -| beopest | 12.0.1</br>12.2</br>13.3 | `--A`</br>`--A`</br>`--A` | -| BeoPEST | 14.02-GCC-6.3.0-2.27 | `-S-` | -| BerkeleyUPC | 2.16.2-gompi-2015b | `-S-` | -| binutils | 2.25</br>2.25-GCCcore-4.9.3</br>2.25-GCCcore-5.3.0</br>2.25-GCCcore-5.3.1-snapshot-20160419</br>2.25-GCC-4.9.3</br>2.25-GCC-4.9.3-binutils-2.25</br>2.25-GCC-5.1.0-binutils-2.25</br>2.26</br>2.26-GCCcore-5.3.0</br>2.26-GCCcore-5.4.0</br>2.27</br>2.27-GCCcore-6.3.0</br>2.28</br>2.28-GCCcore-6.3.0</br>2.28-GCCcore-6.4.0</br>2.28-GCCcore-7.1.0</br>2.30</br>2.30-GCCcore-8.1.0 | `--A`</br>`-SA`</br>`-S-`</br>`-S-`</br>`--A`</br>`USA`</br>`USA`</br>`--A`</br>`-SA`</br>`-SA`</br>`USA`</br>`USA`</br>`USA`</br>`--A`</br>`USA`</br>`USA`</br>`--A`</br>`-SA` | -| Bison | 2.5-intel-2015b</br>2.7</br>2.7-foss-2015b</br>2.7-foss-2015g</br>3.0.2</br>3.0.4</br>3.0.4-foss-2016a</br>3.0.4-intel-2015b</br>3.0.4-intel-2016.01</br>3.0.4-GCCcore-4.9.3</br>3.0.4-GCCcore-5.3.0</br>3.0.4-GCCcore-5.4.0</br>3.0.4-GCCcore-6.3.0</br>3.0.4-GCC-4.9.3</br>3.0.4-GCC-4.9.3-binutils-2.25</br>3.0.4-GCC-5.1.0-binutils-2.25 | `-SA`</br>`-SA`</br>`-S-`</br>`-SA`</br>`--A`</br>`-SA`</br>`-SA`</br>`--A`</br>`-S-`</br>`--A`</br>`--A`</br>`--A`</br>`USA`</br>`--A`</br>`--A`</br>`--A` | -| BLCR | 0.8.5 | `U--` | -| bleach | 1.5.0-Py-3.6</br>2.1.2-Py-3.6 | `-S-`</br>`-S-` | -| blender | 2.71 | `--A` | -| BoltzTraP2 | 18.1.1-Py-3.6</br>18.1.2-Py-3.6 | `-S-`</br>`--A` | -| Boost | 1.58.0-foss-2015g-Python-2.7.9</br>1.58.0-gompi-2015e-Python-2.7.9</br>1.58.0-ictce-7.3.5-Python-2.7.9</br>1.58.0-intel-2015b-Python-2.7.9</br>1.58.0-intel-2016.01-Python-2.7.9</br>1.58.0-Python-2.7.9</br>1.59.0-intel-2015b</br>1.59.0-intel-2015b-Python-2.7.11</br>1.59.0-intel-2016.01</br>1.60.0-foss-2015g-Python-2.7.9</br>1.60.0-intel-2015b-Python-2.7.11</br>1.60.0-intel-2016a</br>1.61.0-foss-2016a</br>1.61.0-foss-2016a-serial</br>1.61.0-foss-2017a-serial</br>1.63.0-foss-2015g-Python-3.6.1</br>1.63.0-foss-2016a-Python-2.7.13</br>1.63.0-foss-2017a-Python-2.7.13</br>1.63.0-foss-2017a-Python-3.6.1</br>1.63.0-intel-2017a</br>1.63.0-intel-2017a-Python-2.7.11</br>1.63.0-intel-2017a-Python-2.7.13</br>1.66.0-foss-2017a-Py-2.7</br>1.66.0-foss-2018a-Py-2.7</br>1.66.0-intel-2017b-serial</br>1.66.0-intel-2018a</br>1.67.0-intel-2017c-serial</br>1.68.0-intel-2017c-serial | `-SA`</br>`-S-`</br>`-S-`</br>`US-`</br>`-S-`</br>`-S-`</br>`--A`</br>`-S-`</br>`-S-`</br>`-SA`</br>`-S-`</br>`--A`</br>`-S-`</br>`-SA`</br>`-S-`</br>`-S-`</br>`--A`</br>`-SA`</br>`-S-`</br>`USA`</br>`-SA`</br>`-S-`</br>`-S-`</br>`-SA`</br>`-SA`</br>`-SA`</br>`-S-`</br>`-S-` | -| bowtie2 | 2.2.3 | `--A` | -| bullxde | 2.0 | `--A` | -| bullxmpi | bullxmpi_1.2.4.1 | `--A` | -| bupc | 2.16.2 | `--A` | -| BWA | 0.7.5a-foss-2015g</br>0.7.17-intel-2017a | `-S-`</br>`-S-` | -| byacc | 20120526</br>20120526-foss-2015b</br>20120526-foss-2015g</br>20120526-foss-2016a</br>20120526-intel-2015b</br>20150711-intel-2015b</br>20170509 | `-SA`</br>`-S-`</br>`-SA`</br>`-SA`</br>`-SA`</br>`--A`</br>`-S-` | -| bzip2 | 1.0.6</br>1.0.6-foss-2015b</br>1.0.6-foss-2015g</br>.1.0.6-foss-2015g</br>1.0.6-foss-2016a</br>1.0.6-foss-2017a</br>1.0.6-gompi-2015e</br>1.0.6-ictce-7.3.5</br>1.0.6-intel-2015b</br>1.0.6-intel-2016.01</br>1.0.6-intel-2016a</br>1.0.6-intel-2017.00</br>1.0.6-intel-2017a | `USA`</br>`US-`</br>`USA`</br>`--A`</br>`-SA`</br>`-S-`</br>`-S-`</br>`-S-`</br>`USA`</br>`-SA`</br>`--A`</br>`--A`</br>`-SA` | -| Caffe | 1.0-foss-2016a-CUDA-8.0.44-Python-2.7.13 | `--A` | -| cairo | 1.12.18</br>1.12.18-foss-2015b</br>1.14.6</br>1.14.8</br>1.14.12 | `-SA`</br>`-S-`</br>`-S-`</br>`USA`</br>`-SA` | -| CASMcode | 0.2.1-foss-2016a | `-S-` | -| CentOS | 6.9</br>6.9-GPU</br>6.9-MIC</br>7.4</br>7.4-GPU</br>7.4-MIC</br>7.5</br>7.5-intel</br>7.5-intel-ESPRESO</br>7.5-VARROC | `-SA`</br>`--A`</br>`-S-`</br>`-SA`</br>`--A`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-` | -| cereal | 1.2.1 | `-S-` | -| certifi | 2018.1.18-Py-2.7</br>2018.1.18-Py-3.6 | `-S-`</br>`-SA` | -| cffi | 1.11.5-Py-2.7 | `-S-` | -| CGAL | 4.8.1-intel-2017a</br>4.12-intel-2017a | `USA`</br>`-SA` | -| chicken | 4.8.0.6 | `--A` | -| ChronusQ | 20180802-intel-2017c | `-S-` | -| Clang | 3.7.0-GNU-5.1.0-2.25</br>5.0.0-GCC-6.3.0-2.27 | `-S-`</br>`-SA` | -| click | 6.7-Py-3.6 | `-SA` | -| Clp | 1.16.10-intel-2017a | `-SA` | -| CMake | 3.3.1-foss-2015g</br>3.3.1-foss-2016a</br>3.3.1-intel-2016.01</br>3.3.1-GCC-4.9.3-2.25</br>3.4.1-foss-2016a</br>3.4.1-intel-2015b</br>3.5.2</br>3.5.2-foss-2016a</br>3.5.2-intel-2016a</br>3.6.2</br>3.7.2</br>3.7.2-intel-2017a</br>3.7.2-GCCcore-6.3.0</br>3.8.1</br>3.9.0</br>3.9.1</br>3.11.1-GCCcore-6.4.0</br>3.11.4-GCC-6.3.0-2.27 | `--A`</br>`--A`</br>`-S-`</br>`--A`</br>`--A`</br>`--A`</br>`-SA`</br>`-SA`</br>`--A`</br>`--A`</br>`--A`</br>`USA`</br>`--A`</br>`--A`</br>`-SA`</br>`--A`</br>`-SA`</br>`-SA` | -| cmake | 2.8.11</br>2.8.11-mic | `--A`</br>`--A` | -| CNTKCustomMKL | 3.0 | `-S-` | -| Code_Saturne | 3.0.5 | `--A` | -| COMSOL | 51-COM</br>51-EDU</br>52-COM</br>52-EDU | `-S-`</br>`-S-`</br>`USA`</br>`USA` | -| comsol | 43b-COM</br>43b-EDU</br>44-COM</br>44-EDU</br>50-COM</br>50-EDU | `--A`</br>`--A`</br>`--A`</br>`--A`</br>`--A`</br>`--A` | -| CORALbenchmark | 1.00-foss-2016a | `-S-` | -| Coreutils | 8.30-GCCcore-8.1.0 | `-S-` | -| CP2K | 2.6.0-intel-2015b</br>5.1 | `-S-`</br>`-SA` | -| cp2k-mpi | 2.5.1-gcc | `--A` | -| cryptography | 2.3-Py-2.7 | `-S-` | -| cube | 4.2.3-gcc</br>4.2.3-icc | `--A`</br>`--A` | -| Cube | 4.3.4</br>4.3.4-intel-2015b</br>4.3.5</br>4.3.5-intel-2017a | `--A`</br>`-S-`</br>`-S-`</br>`-S-` | -| CUDA | 7.5.18</br>8.0.44</br>8.0.61</br>9.0.176</br>9.1.85</br>9.2.88 | `USA`</br>`--A`</br>`US-`</br>`--A`</br>`USA`</br>`--A` | -| cuDNN | 5.1-CUDA-7.5.18</br>5.1-CUDA-8.0.44</br>7.0.5-CUDA-9.0.176</br>7.41-CUDA-9.1.85</br>7.41-CUDA-9.2.88 | `--A`</br>`--A`</br>`--A`</br>`--A`</br>`--A` | -| cURL | 7.37.1</br>7.45.0-foss-2015b</br>7.47.0-intel-2017.00</br>7.49.1-intel-2017a</br>7.51.0</br>7.51.0-intel-2017.00</br>7.53.1</br>7.53.1-GCCcore-6.3.0</br>7.56.1</br>7.61.1-GCC-6.3.0-2.27 | `--A`</br>`US-`</br>`-S-`</br>`--A`</br>`--A`</br>`-S-`</br>`USA`</br>`USA`</br>`-S-`</br>`-S-` | -| cycler | 0.10.0-Py-3.6 | `-S-` | -| Cython | 0.27.3-Py-2.7</br>0.27.3-Py-3.6 | `-SA`</br>`-SA` | -| darshan-runtime | 3.1.4-foss-2017a</br>3.1.4-intel-2017b | `-SA`</br>`-SA` | -| darshan-util | 3.1.4-foss-2017a</br>3.1.4-intel-2017b | `-SA`</br>`-SA` | -| dask | 0.17.0-Py-3.6 | `-SA` | -| dataspaces | 1.4.0 | `--A` | -| DCW | 1.1.2 | `-S-` | -| DDT | 4.2</br>5.0.1 | `-S-`</br>`-S-` | -| Debian | 8.0</br>8.0-GPU | `-SA`</br>`--A` | -| decorator | 4.2.1-Py-3.6 | `-SA` | -| deMonNano | 4.3.6 | `-SA` | -| digimat | 5.0.1 | `--A` | -| Digimat | 5.0.1-COM</br>5.0.1-EDU | `-S-`</br>`-S-` | -| Discovery_Studio | 4.0 | `--A` | -| dist-keras | 0.2.1-Py-3.6 | `-S-` | -| DMTCP | 2.5.1</br>2.5.2</br>3.0 | `USA`</br>`US-`</br>`-S-` | -| Doris | 4.06beta2-intel-2017a</br>5.0beta-foss-2017a</br>5.0beta-foss-2017a-test | `-SA`</br>`-S-`</br>`-S-` | -| dotNET-Core-Runtime | 2.0.7</br>2.1.4 | `-SA`</br>`-S-` | -| dotNET-Core-SDK | 2.0.7-2</br>2.1.200</br>2.1.402 | `--A`</br>`-SA`</br>`-S-` | -| Doxygen | 1.8.11</br>1.8.11-intel-2017a</br>1.8.13-GCCcore-6.3.0</br>1.8.14-GCC-6.3.0-2.27 | `-SA`</br>`USA`</br>`USA`</br>`-S-` | -| duplicity | 0.7.17-Py-2.7 | `-S-` | -| DynaPhoPy | 1.15-intel-2017a-Python-2.7.13-base</br>1.15-Python-2.7.13-base</br>1.16.3-Py-3.6 | `-SA`</br>`-S-`</br>`-SA` | -| dytran | 2013.0.1 | `--A` | -| EasyBuild | 3.1.2</br>3.2.0</br>3.3.0</br>3.4.1</br>3.5.0</br>3.5.1</br>3.5.2</br>3.6.0</br>3.6.1</br>3.6.2</br>3.7.0</br>3.7.1 | `-S-`</br>`US-`</br>`--A`</br>`--A`</br>`--A`</br>`--A`</br>`--A`</br>`--A`</br>`--A`</br>`-SA`</br>`-S-`</br>`-S-` | -| Eigen | 3.2.9</br>3.3.3</br>3.3.4</br>3.3.5-GCC-6.3.0-2.27 | `--A`</br>`-SA`</br>`--A`</br>`-S-` | -| Elk | 4.3.6-intel-2017a</br>4.3.6-intel-2017a-openmp | `-S-`</br>`-S-` | -| elmer | 7.0-r6695-dbg</br>7.0-r6695-opt | `--A`</br>`--A` | -| Embree | 2.16.2-intel-2017a</br>3.2.0-intel-2017a | `-SA`</br>`-S-` | -| enum34 | 1.1.6-Py-2.7 | `-S-` | -| ETSF_IO | 1.0.4-intel-2017a | `-S-` | -| eudev | 3.1.5-foss-2016a</br>3.1.5-intel-2016a | `-S-`</br>`-S-` | -| expat | 2.1.0</br>2.1.0-foss-2015b</br>2.1.0-foss-2015g</br>2.1.0-intel-2015b</br>2.1.0-intel-2017.00</br>2.2.0</br>2.2.6-GCC-6.3.0-2.27 | `-SA`</br>`US-`</br>`-SA`</br>`-S-`</br>`-S-`</br>`USA`</br>`-S-` | -| fasteners | 0.14.1-Py-2.7 | `-S-` | -| fastqc | 0.11.2 | `--A` | -| FastQC | 0.11.3 | `US-` | -| fds | 5.5.3</br>5.5.3-omp</br>6.svn | `--A`</br>`--A`</br>`--A` | -| FEFLOW | 7.0-intel-2017a</br>7.1-intel-2017a</br>7.1u06-intel-2017a | `-S-`</br>`-S-`</br>`-S-` | -| FFmpeg | 3.0.2</br>3.1.3-intel-2017a | `--A`</br>`-S-` | -| ffmpeg | 2.4</br>2.4-foss-2015g</br>2.4-intel-2015b | `-SA`</br>`-S-`</br>`-S-` | -| FFTW | 2.1.5-gompi-2015b</br>2.1.5-iimpi-7.3.5-GNU-5.1.0-2.25</br>3.3.4-gompi-2015b</br>3.3.4-gompi-2015e</br>3.3.4-gompi-2015g</br>3.3.4-gompi-2016.04</br>3.3.4-gompi-2016a</br>3.3.4-intel-2015b</br>3.3.4-intel-2016.01</br>3.3.5-foss-2016a</br>3.3.5-gompi-2016a</br>3.3.5-intel-2016.01</br>3.3.5-intel-2016a</br>3.3.5-intel-2017.00</br>3.3.5-intel-2017a</br>3.3.6-foss-2017a</br>3.3.6-gompi-2017a</br>3.3.6-gompi-2017b</br>3.3.6-intel-2017a</br>3.3.7-gompi-2018a</br>3.3.7-GCC-6.3.0-2.27 | `-S-`</br>`-S-`</br>`US-`</br>`US-`</br>`USA`</br>`-SA`</br>`-SA`</br>`USA`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`USA`</br>`-SA`</br>`-S-`</br>`USA`</br>`-SA`</br>`USA`</br>`-SA`</br>`-SA` | -| fftw2 | 2.1.5-gcc</br>2.1.5-icc | `--A`</br>`--A` | -| fftw2-mpi | 2.1.5-gcc</br>2.1.5-icc | `--A`</br>`--A` | -| fftw3 | 3.3.3-gcc</br>3.3.3-icc | `--A`</br>`--A` | -| fftw3-mpi | 3.3.3-gcc</br>3.3.3-icc | `--A`</br>`--A` | -| FIAT | 1.6.0-intel-2015b-Python-2.7.9</br>1.6.0-intel-2015b-Python-2.7.11</br>1.6.0-intel-2016.01-Python-2.7.9 | `-S-`</br>`-S-`</br>`-S-` | -| fixesproto | 5.0</br>5.0-foss-2015g</br>5.0-foss-2016a</br>5.0-intel-2016a | `-SA`</br>`-S-`</br>`-S-`</br>`-S-` | -| Flask | 0.12.2-Py-3.6 | `-S-` | -| flex | 2.5.35-intel-2015b</br>2.5.38-GCC-4.8.3</br>2.5.39</br>2.5.39-foss-2015b</br>2.5.39-foss-2015g</br>2.5.39-foss-2016a</br>2.5.39-intel-2015b</br>2.5.39-GCCcore-4.9.3</br>2.5.39-GCC-4.9.3</br>2.5.39-GCC-4.9.3-binutils-2.25</br>2.5.39-GCC-5.1.0-binutils-2.25</br>2.6.0</br>2.6.0-intel-2017a</br>2.6.0-GCCcore-5.3.0</br>2.6.0-GCCcore-5.4.0</br>2.6.3</br>2.6.3-GCCcore-6.3.0</br>2.6.4 | `-SA`</br>`-S-`</br>`-SA`</br>`-S-`</br>`-SA`</br>`-SA`</br>`--A`</br>`--A`</br>`--A`</br>`--A`</br>`--A`</br>`USA`</br>`-SA`</br>`--A`</br>`--A`</br>`USA`</br>`-SA`</br>`USA` | -| FLTK | 1.3.2</br>1.3.2-intel-2015b</br>1.3.4 | `--A`</br>`-S-`</br>`-SA` | -| fontconfig | 2.11.1</br>2.11.1-foss-2015b</br>2.11.1-intel-2015b</br>2.11.94-intel-2017.00</br>2.12.1-libpng-1.6.29</br>2.12.1-GCCcore-6.3.0-libpng-1.6.29</br>2.13.0-libpng-1.6.34 | `USA`</br>`-S-`</br>`-S-`</br>`-S-`</br>`USA`</br>`-SA`</br>`-SA` | -| fontsproto | 2.1.3</br>2.1.3-foss-2015g</br>2.1.3-foss-2016a</br>2.1.3-intel-2016a</br>2.1.3-intel-2017a | `-SA`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-` | -| Forge | 5.1-43967</br>5.7</br>6.0.5</br>6.0.6</br>6.1.2</br>7.0</br>7.0.1</br>7.0.2</br>7.0.3</br>7.0.4</br>7.0.5</br>7.0.5-test</br>7.0.6</br>7.1</br>18.2.3 | `-SA`</br>`--A`</br>`-SA`</br>`-SA`</br>`-SA`</br>`-S-`</br>`--A`</br>`-SA`</br>`-SA`</br>`-SA`</br>`-SA`</br>`--A`</br>`-SA`</br>`-SA`</br>`-S-` | -| foss | 2015b</br>2015e</br>2015g</br>2016.04</br>2016a</br>2017a</br>2017b</br>2018a | `US-`</br>`US-`</br>`USA`</br>`-SA`</br>`-SA`</br>`USA`</br>`-SA`</br>`-SA` | -| FOX | 1.6.51-foss-2015g | `-S-` | -| FreeFem++ | 3.45-intel-2015b | `-S-` | -| freeglut | 3.0.0-intel-2017a</br>3.0.0-intel-2017a-Mesa-18.1.3 | `-SA`</br>`-S-` | -| freetype | 2.5.3</br>2.5.3-foss-2015b</br>2.5.3-foss-2015g</br>2.5.3-intel-2015b</br>2.5.5-intel-2015b</br>2.6.2-intel-2016a</br>2.6.2-intel-2017.00</br>2.6.3</br>2.6.3-foss-2016a</br>2.6.3-intel-2016a</br>2.7.1-libpng-1.6.29</br>2.8</br>2.9.1-libpng-1.6.34 | `-SA`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-SA`</br>`-S-`</br>`-S-`</br>`USA`</br>`-SA`</br>`-SA` | -| FriBidi | 1.0.2 | `-SA` | -| gast | 0.2.0-Py-3.6 | `-S-` | -| gatk | 2.6-4 | `--A` | -| GATK | 2.6-5-Java-1.7.0_79</br>3.5-Java-1.7.0_79</br>4.0.2.1-Java-1.8.0_144</br>4.0.3.0-Java-1.8.0_144 | `US-`</br>`-S-`</br>`-SA`</br>`-S-` | -| gcc | 4.8.1 | `--A` | -| GCC | 4.4.7-system</br>4.7.0</br>4.8.3</br>4.9.3</br>4.9.3-2.25</br>4.9.3-binutils-2.25</br>4.9.3-tf</br>5.1.0-binutils-2.25</br>5.1.1-knc</br>5.3.0-2.25</br>5.3.0-2.26</br>5.3.1-snapshot-20160419-2.25</br>5.4.0-2.26</br>6.3.0-2.27</br>6.4.0-2.28</br>7.1.0-2.28</br>8.1.0-2.30 | `USA`</br>`--A`</br>`-SA`</br>`USA`</br>`-SA`</br>`USA`</br>`-SA`</br>`USA`</br>`-S-`</br>`-S-`</br>`-SA`</br>`-S-`</br>`-S-`</br>`USA`</br>`-S-`</br>`USA`</br>`-S-` | -| GCCcore | 4.9.3</br>5.1.1-knf</br>5.3.0</br>5.3.1-snapshot-20160419</br>5.4.0</br>6.3.0</br>6.4.0</br>7.1.0</br>8.1.0 | `-SA`</br>`-S-`</br>`-SA`</br>`-S-`</br>`-SA`</br>`USA`</br>`USA`</br>`USA`</br>`-SA` | -| GDAL | 1.9.2-foss-2015g</br>2.0.2-intel-2017.00</br>2.1.0-foss-2015g</br>2.1.0-GCC-6.3.0-2.27</br>2.1.0-GNU-5.1.0-2.25-intel-2015b</br>2.1.3-Python-2.7.13</br>2.3.2-GCC-6.3.0-2.27-Py-2.7 | `--A`</br>`-S-`</br>`--A`</br>`--A`</br>`-S-`</br>`USA`</br>`-S-` | -| Gdk-Pixbuf | 2.32.3</br>2.35.1 | `-S-`</br>`--A` | -| GEOS | 3.5.0</br>3.5.0-foss-2015g</br>3.6.1-Python-2.7.13</br>3.7.0-GCC-6.3.0-2.27-Py-2.7 | `-SA`</br>`-S-`</br>`USA`</br>`-S-` | -| gettext | .0.19.2</br>0.19.2</br>0.19.2-foss-2015g</br>0.19.2-intel-2015b</br>0.19.4</br>0.19.6</br>0.19.6-foss-2016a</br>0.19.6-intel-2017.00</br>0.19.8</br>0.19.8.1 | `--A`</br>`-SA`</br>`-SA`</br>`-S-`</br>`USA`</br>`-S-`</br>`-SA`</br>`--A`</br>`USA`</br>`USA` | -| gflags | 2.1.2 | `--A` | -| Ghostscript | 9.21-intel-2017a | `-SA` | -| gimkl | 2.11.5 | `--A` | -| gimpi | 2.11.5 | `--A` | -| git | 2.17.0-GCC-6.3.0-2.27</br>2.18.0 | `--A`</br>`-S-` | -| GL2PS | 1.4.0-intel-2017a | `-SA` | -| GLib | 2.40.0</br>2.40.0-foss-2015g</br>2.40.0-intel-2015b</br>2.52.0</br>2.56.1</br>2.57.1 | `USA`</br>`-S-`</br>`-S-`</br>`USA`</br>`--A`</br>`-SA` | -| glibc | 2.14</br>2.17</br>2.19 | `-S-`</br>`-S-`</br>`-SA` | -| GLM | 0.9.7.2-intel-2017a | `-SA` | -| GLOBUS | globus | `--A` | -| globus | globus | `-S-` | -| glog | 0.3.4 | `--A` | -| GLPK | 4.61-intel-2017a | `-SA` | -| glproto | 1.4.16-foss-2015g</br>1.4.17-foss-2016a</br>1.4.17-intel-2016a</br>1.4.17-intel-2017a | `-S-`</br>`-S-`</br>`-S-`</br>`-S-` | -| GMP | 5.0.5</br>5.0.5-foss-2015b</br>5.0.5-foss-2015g</br>5.0.5-intel-2015b</br>6.0.0a</br>6.0.0a-intel-2015b</br>6.0.0a-GNU-4.9.3-2.25</br>6.0.0a-GNU-5.1.0-2.25</br>6.1.0-foss-2016a</br>6.1.0-intel-2015b</br>6.1.0-intel-2017.00</br>6.1.0-GCC-4.9.3-2.25</br>6.1.1</br>6.1.1-foss-2017a</br>6.1.1-intel-2017a</br>6.1.2 | `-SA`</br>`-S-`</br>`-SA`</br>`-S-`</br>`-SA`</br>`--A`</br>`-S-`</br>`-S-`</br>`--A`</br>`-SA`</br>`--A`</br>`-S-`</br>`USA`</br>`-S-`</br>`-SA`</br>`USA` | -| GNU | 4.9.3-2.25</br>5.1.0-2.25</br>5.1.0-2.25-intel-2015b</br>6.3.0-2.27 | `USA`</br>`USA`</br>`-S-`</br>`-SA` | -| gnuplot | 4.6.5</br>5.0.6-intel-2017a</br>5.0.6-GCC-6.3.0-2.27</br>5.2.3</br>5.2.4-GCC-6.3.0-2.27 | `--A`</br>`-S-`</br>`-S-`</br>`--A`</br>`-S-` | -| Go | 1.11.1 | `-S-` | -| GObject-Introspection | 1.47.1</br>1.52.0</br>1.56.1 | `-S-`</br>`-SA`</br>`-SA` | -| gompi | 2015b</br>2015e</br>2015g</br>2016.04</br>2016a</br>2017a</br>2017b</br>2018a | `US-`</br>`US-`</br>`USA`</br>`-SA`</br>`-SA`</br>`USA`</br>`-SA`</br>`-SA` | -| gperf | 3.0.4-foss-2015g</br>3.0.4-foss-2016a</br>3.0.4-intel-2016a</br>3.0.4-intel-2017a</br>3.1 | `-S-`</br>`-S-`</br>`-S-`</br>`-SA`</br>`-S-` | -| gperftools | 2.7-GCC-6.3.0-2.27 | `-SA` | -| GPI-2 | 1.1.1-gompi-2015e</br>1.1.1-gompi-2015e-MPI | `-S-`</br>`-S-` | -| gpi2 | 1.0.2</br>1.1.0</br>1.1.1 | `--A`</br>`--A`</br>`--A` | -| grace | 5.1.23</br>5.1.25-intel-2015b</br>5.1.25-intel-2017a | `--A`</br>`-S-`</br>`--A` | -| Graph500 | 3.0.0-foss-2018a</br>3.0.0-intel-2018a</br>3.0.0rc1-foss-2016a | `-SA`</br>`-SA`</br>`-S-` | -| GraphicsMagick | 1.3.25-intel-2017a | `-SA` | -| GROMACS | 4.6.7-foss-2015g-hybrid-single-PLUMED</br>5.0.4-foss-2015e-hybrid-single-PLUMED</br>5.0.4-foss-2015g-hybrid-single</br>5.0.4-foss-2015g-hybrid-single-PLUMED</br>5.0.4-ictce-7.3.5-hybrid-single</br>5.1.2-foss-2015g-hybrid-single-PLUMED</br>5.1.2-intel-2015b-hybrid-single-cuda</br>5.1.2-intel-2015b-hybrid-single-CUDA-7.5-PLUMED-2.2.1</br>5.1.2-intel-2015b-hybrid-single-CUDA-7.5-PLUMED-2.2.1-test</br>5.1.2-intel-2016a-hybrid</br>5.1.4-foss-2016a-hybrid-single-PLUMED</br>5.1.4-foss-2016a-hybrid-single-PLUMED-v2</br>2016.4-intel-2017c-hybrid-single-PLUMED</br>2016.4-intel-2017c-hybrid-single-PLUMED-2.4.1</br>2016.5-intel-2017b</br>2018.1-intel-2017c-hybrid-single-PLUMED</br>2018-intel-2017b | `-S-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`--A`</br>`--A`</br>`--A`</br>`--A`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-SA`</br>`-S-`</br>`-SA` | -| grpcio | 1.9.1-Py-3.6 | `-S-` | -| gsl | 1.16-gcc</br>1.16-icc | `--A`</br>`--A` | -| GSL | 1.16-intel-2015b</br>1.16-intel-2016.01</br>2.1-foss-2016a</br>2.1-intel-2015b</br>2.3-foss-2017a</br>2.3-intel-2017a</br>2.4-intel-2017c</br>2.5-intel-2017c</br>2.5-GCC-6.3.0-2.27 | `-SA`</br>`--A`</br>`-S-`</br>`--A`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-` | -| GST-plugins-base | 1.6.4 | `--A` | -| GStreamer | 1.6.4 | `--A` | -| GTK+ | 2.24.28</br>2.24.30 | `-S-`</br>`--A` | -| guile | 1.8.8</br>1.8.8-foss-2015b</br>1.8.8-foss-2015g</br>1.8.8-foss-2016a</br>1.8.8-foss-2017a</br>1.8.8-intel-2015b | `-SA`</br>`-S-`</br>`-S-`</br>`-SA`</br>`-S-`</br>`-SA` | -| gupc | 4.8.0.3 | `--A` | -| gzip | 1.6</br>1.6-foss-2015g</br>1.6-foss-2016a</br>1.6-intel-2015b | `-SA`</br>`-SA`</br>`-SA`</br>`-SA` | -| h5py | 2.4.0-ictce-7.3.5-Python-2.7.9-serial</br>2.7.0-intel-2017a-Python-2.7.13-base</br>2.7.1-Py-2.7</br>2.7.1-Py-3.6 | `-S-`</br>`-SA`</br>`-SA`</br>`-SA` | -| Hadoop | 2.8.0-native | `-S-` | -| HarfBuzz | 1.1.3</br>1.3.1</br>1.7.6</br>1.8.1</br>1.8.1-GCC-6.3.0-2.27 | `-S-`</br>`-SA`</br>`--A`</br>`-S-`</br>`-S-` | -| Harminv | 1.4-intel-2015b | `-S-` | -| HDF5 | 1.8.13-foss-2015g</br>1.8.13-intel-2015b</br>1.8.13-intel-2015b-no-mpi</br>1.8.13-intel-2016.01</br>1.8.14-ictce-7.3.5-serial</br>1.8.15-patch1-foss-2015b</br>1.8.16-foss-2015g</br>1.8.16-foss-2016a</br>1.8.16-foss-2016a-serial</br>1.8.16-intel-2015b</br>1.8.16-intel-2015b-threadsafe</br>1.8.16-intel-2016.01</br>1.8.16-intel-2017.00</br>1.8.17-intel-2017a</br>1.8.18-foss-2017a-serial</br>1.8.18-intel-2017a-serial</br>1.10.0-patch1-intel-2016.01-mic</br>1.10.0-patch1-intel-2017a</br>1.10.0-patch1-intel-2017b-mic-parallel</br>1.10.1-foss-2017a</br>1.10.1-foss-2017a-serial</br>1.10.1-intel-2017b-serial</br>1.10.1-iomkl-2017b</br>1.10.1-GCC-6.3.0-2.27-serial | `-S-`</br>`US-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`US-`</br>`-S-`</br>`-SA`</br>`--A`</br>`USA`</br>`-S-`</br>`--A`</br>`-S-`</br>`USA`</br>`-S-`</br>`-SA`</br>`-S-`</br>`USA`</br>`-S-`</br>`-S-`</br>`-S-`</br>`--A`</br>`-S-`</br>`-SA` | -| hdf5 | 1.8.11</br>1.8.13 | `--A`</br>`--A` | -| hdf5-parallel | 1.8.11</br>1.8.11-gcc</br>1.8.13</br>1.8.13-gcc</br>1.8.13-gcc49 | `--A`</br>`--A`</br>`--A`</br>`--A`</br>`--A` | -| help2man | 1.47.4</br>1.47.4-GCCcore-6.3.0 | `-SA`</br>`-SA` | -| horovod | 0.11.3-Py-3.6 | `--A` | -| hpg-aligner | 1.0.0 | `--A` | -| hpg-fastq | 1.0.0 | `--A` | -| hpg-variant | 1.0.0 | `--A` | -| HPL | 2.1-foss-2015b</br>2.1-intel-2015b | `-S-`</br>`-S-` | -| html5lib | 0.9999999-Py-3.6</br>1.0.1-Py-3.6 | `-S-`</br>`-S-` | -| HTSlib | 1.6-intel-2017a</br>1.8-intel-2017a | `-S-`</br>`-S-` | -| hwloc | 1.5-GCC-4.4.7-system</br>1.11.0</br>1.11.0-GNU-4.9.3-2.25</br>1.11.0-GNU-5.1.0-2.25</br>1.11.1-iccifort-2015.3.187-GNU-4.9.3-2.25</br>1.11.2-GCC-4.9.3-2.25</br>1.11.3-GCC-5.3.0-2.26</br>1.11.4-iccifort-2017.1.132-GCC-5.4.0-2.26</br>1.11.5-GCC-6.3.0-2.27</br>1.11.6-GCC-6.3.0-2.27</br>1.11.7-GCC-6.3.0-2.27</br>1.11.7-GCC-7.1.0-2.28</br>1.11.7-PGI-18.5-GCC-6.3.0-2.27 | `-S-`</br>`-SA`</br>`USA`</br>`USA`</br>`-SA`</br>`-SA`</br>`-SA`</br>`-SA`</br>`USA`</br>`-SA`</br>`USA`</br>`US-`</br>`-S-` | -| HyperLoom | 0.9 | `-S-` | -| hypermesh | 12.0.110 | `--A` | -| HyperWorks | 13.0 | `-S-` | -| hyperworks | 13.0 | `--A` | -| Hypre | 2.10.0b-intel-2015b</br>2.10.0b-intel-2016.01</br>2.10.1-intel-2015b</br>2.11.1-intel-2017a | `-S-`</br>`-S-`</br>`-S-`</br>`-S-` | -| icc | 2013.5.192-GCC-4.8.3</br>2015.3.187</br>2015.3.187-GNU-4.9.3-2.25</br>2015.3.187-GNU-5.1.0-2.25</br>2016.1.150</br>2016.1.150-GCC-4.9.3</br>2016.1.150-GCC-4.9.3-2.25</br>2017.0.098-GCC-5.4.0-2.26</br>2017.1.132-GCC-5.4.0-2.26</br>2017.1.132-GCC-6.3.0-2.27</br>2017.4.196-GCC-6.3.0-2.27</br>2017.4.196-GCC-6.4.0-2.28</br>2017.5.239-GCC-6.3.0-2.27</br>2017.7.259-GCC-6.3.0-2.27</br>2018.1.163-GCC-6.4.0-2.28</br>2018.3.222-GCC-8.1.0-2.30</br>2019.0.117-GCC-6.3.0-2.27 | `-S-`</br>`-S-`</br>`-SA`</br>`USA`</br>`-S-`</br>`-S-`</br>`-SA`</br>`-SA`</br>`USA`</br>`USA`</br>`-S-`</br>`USA`</br>`-SA`</br>`-SA`</br>`-SA`</br>`-SA`</br>`-S-` | -| iccifort | 2013.5.192-GCC-4.8.3</br>2015.3.187</br>2015.3.187-GNU-4.9.3-2.25</br>2015.3.187-GNU-5.1.0-2.25</br>2016.1.150</br>2016.1.150-GCC-4.9.3</br>2016.1.150-GCC-4.9.3-2.25</br>2017.0.098-GCC-5.4.0-2.26</br>2017.1.132-GCC-5.4.0-2.26</br>2017.1.132-GCC-6.3.0-2.27</br>2017.4.196-GCC-6.3.0-2.27</br>2017.4.196-GCC-6.4.0-2.28</br>2017.5.239-GCC-6.3.0-2.27</br>2017.7.259-GCC-6.3.0-2.27</br>2018.1.163-GCC-6.4.0-2.28</br>2018.3.222-GCC-8.1.0-2.30</br>2019.0.117-GCC-6.3.0-2.27 | `-S-`</br>`-S-`</br>`-SA`</br>`USA`</br>`-S-`</br>`-S-`</br>`-SA`</br>`-SA`</br>`USA`</br>`USA`</br>`-S-`</br>`USA`</br>`-SA`</br>`-SA`</br>`-SA`</br>`-SA`</br>`-S-` | -| ictce | 7.3.5</br>8.3.5 | `-S-`</br>`-S-` | -| idna | 2.7-Py-2.7 | `-S-` | -| ifort | 2013.5.192-GCC-4.8.3</br>2015.3.187</br>2015.3.187-GNU-4.9.3-2.25</br>2015.3.187-GNU-5.1.0-2.25</br>2016.1.150</br>2016.1.150-GCC-4.9.3</br>2016.1.150-GCC-4.9.3-2.25</br>2017.0.098-GCC-5.4.0-2.26</br>2017.1.132-GCC-5.4.0-2.26</br>2017.1.132-GCC-6.3.0-2.27</br>2017.4.196-GCC-6.3.0-2.27</br>2017.4.196-GCC-6.4.0-2.28</br>2017.5.239-GCC-6.3.0-2.27</br>2017.7.259-GCC-6.3.0-2.27</br>2018.1.163-GCC-6.4.0-2.28</br>2018.3.222-GCC-8.1.0-2.30</br>2019.0.117-GCC-6.3.0-2.27 | `-S-`</br>`-S-`</br>`-SA`</br>`USA`</br>`-S-`</br>`-S-`</br>`-SA`</br>`-SA`</br>`USA`</br>`USA`</br>`-S-`</br>`USA`</br>`-SA`</br>`-SA`</br>`-SA`</br>`-SA`</br>`-S-` | -| iimpi | 5.5.0-GCC-4.8.3</br>7.3.5</br>7.3.5-GNU-5.1.0-2.25</br>8.1.5-GCC-4.9.3-2.25</br>8.3.5</br>2016.00-GCC-4.9.3</br>2016.01-GCC-4.9.3</br>2016.01-GCC-4.9.3-2.25</br>2017.00-GCC-5.4.0-2.26</br>2017a</br>2017b</br>2017c</br>2018.03</br>2018a</br>2019.01 | `-S-`</br>`-S-`</br>`USA`</br>`-SA`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-SA`</br>`-SA`</br>`USA`</br>`USA`</br>`-SA`</br>`-SA`</br>`-SA`</br>`-S-` | -| imkl | 11.0.5.192-iimpi-5.5.0-GCC-4.8.3</br>11.2.3.187</br>11.2.3.187-gimpi-2.11.5</br>11.2.3.187-iimpi-7.3.5</br>11.2.3.187-iimpi-7.3.5-GNU-5.1.0-2.25</br>11.2.3.187-iompi-2015.03</br>11.3.0.109-iimpi-2016.00-GCC-4.9.3</br>11.3.1.150-iimpi-8.1.5-GCC-4.9.3-2.25</br>11.3.1.150-iimpi-8.3.5</br>11.3.1.150-iimpi-2016.00-GCC-4.9.3</br>11.3.1.150-iimpi-2016.01-GCC-4.9.3-2.25</br>2017.0.098-iimpi-2017.00-GCC-5.4.0-2.26</br>2017.1.132-iimpi-2017a</br>2017.1.132-iompi-2017a</br>2017.1.132-iompi-2017a-2.0.1</br>2017.3.196-iimpi-2017b</br>2017.4.239-iimpi-2017b</br>2017.4.239-iimpi-2017c</br>2017.4.239-iompi-2017b</br>2018.1.163-iimpi-2018a</br>2018.3.222-iimpi-2018.03</br>2019.0.117-iimpi-2019.01 | `-S-`</br>`-S-`</br>`--A`</br>`-S-`</br>`USA`</br>`-S-`</br>`-S-`</br>`-SA`</br>`-S-`</br>`-S-`</br>`-SA`</br>`-SA`</br>`USA`</br>`-SA`</br>`--A`</br>`USA`</br>`-SA`</br>`-SA`</br>`-S-`</br>`-SA`</br>`-SA`</br>`-S-` | -| impi | 4.1.1.036</br>4.1.1.036-iccifort-2013.5.192-GCC-4.8.3</br>5.0.3.048</br>5.0.3.048-iccifort-2015.3.187</br>5.0.3.048-iccifort-2015.3.187-GNU-5.1.0-2.25</br>5.0.3.048-GCC-4.9.3</br>5.1.2.150-iccifort-2016.1.150</br>5.1.2.150-iccifort-2016.1.150-GCC-4.9.3</br>5.1.2.150-iccifort-2016.1.150-GCC-4.9.3-2.25</br>2017.0.098-iccifort-2017.0.098-GCC-5.4.0-2.26</br>2017.1.132-iccifort-2017.1.132-GCC-6.3.0-2.27</br>2017.3.196-iccifort-2017.4.196-GCC-6.3.0-2.27</br>2017.3.196-iccifort-2017.4.196-GCC-6.4.0-2.28</br>2017.3.196-PGI-17.9-GCC-6.3.0-2.27</br>2017.4.239-iccifort-2017.5.239-GCC-6.3.0-2.27</br>2017.4.239-iccifort-2017.7.259-GCC-6.3.0-2.27</br>2018.1.163-iccifort-2018.1.163-GCC-6.4.0-2.28</br>2018.3.222-iccifort-2018.3.222-GCC-8.1.0-2.30</br>2019.0.117-iccifort-2019.0.117-GCC-6.3.0-2.27 | `--A`</br>`-S-`</br>`--A`</br>`-S-`</br>`USA`</br>`--A`</br>`-S-`</br>`-S-`</br>`-SA`</br>`-SA`</br>`USA`</br>`-S-`</br>`USA`</br>`--A`</br>`-SA`</br>`-SA`</br>`-SA`</br>`-SA`</br>`-S-` | -| inputproto | 2.3</br>2.3.1-foss-2016a</br>2.3.1-intel-2016a</br>2.3-foss-2015g</br>2.3-intel-2015b | `-SA`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-` | -| Inspector | 2016_update1 | `-S-` | -| inspector_xe | 2013.5</br>2015.1.2.379161 | `--A`</br>`--A` | -| intel | 13.5.192</br>14.0.1</br>15.2.164</br>15.3.187</br>2014.06</br>2015b</br>2016.00</br>2016.01</br>2016a</br>2017.00</br>2017a</br>2017b</br>2017c</br>2018.03</br>2018a</br>2019.01 | `--A`</br>`--A`</br>`--A`</br>`--A`</br>`-S-`</br>`USA`</br>`-S-`</br>`-SA`</br>`-SA`</br>`-SA`</br>`USA`</br>`USA`</br>`-SA`</br>`-SA`</br>`-SA`</br>`-S-` | -| intelpcm | 2.6 | `--A` | -| intltool | 0.51.0 | `-S-` | -| iomkl | 2017a</br>2017b | `-SA`</br>`-S-` | -| iompi | 2015.03</br>2017.01</br>2017a</br>2017a-2.0.1</br>2017b | `-S-`</br>`-S-`</br>`-SA`</br>`--A`</br>`-S-` | -| IOR | 3.0.1-foss-2016a-mpiio | `-S-` | -| ipaddress | 1.0.22-Py-2.7 | `-S-` | -| ipm | 0.983-icc-impi | `--A` | -| ipp | 9.0.1.150</br>13.5.192</br>14.0.1</br>15.2.164</br>15.3.187</br>2017.1.132-GCC-6.3.0-2.27 | `-S-`</br>`--A`</br>`--A`</br>`--A`</br>`--A`</br>`-S-` | -| ISL | 0.14-GNU-5.1.0-2.25</br>0.15</br>0.15-GCC-4.9.3-2.25</br>0.15-GNU-4.9.3-2.25 | `-S-`</br>`-SA`</br>`-S-`</br>`-S-` | -| isort | 4.2.15-Python-2.7.13-base | `-SA` | -| ispc | 1.6.0</br>1.9.1 | `-S-`</br>`-SA` | -| itac | 8.1.4.045</br>9.0.3.051</br>9.1.2.024 | `--A`</br>`--A`</br>`-S-` | -| itsdangerous | 0.24-Py-3.6 | `-S-` | -| Jansson | 2.11 | `-SA` | -| JasPer | 1.900.1</br>1.900.1-intel-2015b</br>2.0.12-intel-2017a</br>2.0.14-GCC-6.3.0-2.27 | `--A`</br>`-S-`</br>`USA`</br>`-S-` | -| java | 1.7 | `--A` | -| Java | 1.7.0_79</br>1.8.0_51</br>1.8.0_72</br>1.8.0_112</br>1.8.0_121</br>1.8.0_144</br>1.9.0+181 | `USA`</br>`USA`</br>`US-`</br>`-SA`</br>`USA`</br>`-SA`</br>`-SA` | -| Jinja2 | 2.10-Py-2.7</br>2.10-Py-3.6 | `-S-`</br>`-S-` | -| JOE | 4.2 | `-SA` | -| JUnit | 4.11-Java-1.7.0_79</br>4.12-Java-1.8.0_121 | `-S-`</br>`--A` | -| kbproto | 1.0.6</br>1.0.6-foss-2015g</br>1.0.6-intel-2015b</br>1.0.7</br>1.0.7-foss-2016a</br>1.0.7-intel-2016a | `-SA`</br>`-S-`</br>`-S-`</br>`-SA`</br>`-S-`</br>`-S-` | -| Keras | 2.0.5-Tensorflow-1.1.0-CUDA-7.5.18-Python-3.6.1</br>2.0.5-Tensorflow-1.1.0-CUDA-8.0.44-Python-3.6.1</br>2.0.5-Tensorflow-1.1.0-Python-3.6.1</br>2.0.5-Tensorflow-1.2.0-Python-3.6.1</br>2.0.5-Tensorflow-1.3.0-intel-2017b-mkl-Python-3.6.1</br>2.0.5-Theano-1.2.0-Python-3.6.1</br>2.0.8-Tensorflow-1.1.0-CUDA-8.0.44-Python-3.6.1</br>2.1.2-Tensorflow-1.1.0-CUDA-8.0.44-Python-3.6.1</br>2.1.2-Tensorflow-1.2.0-Python-3.6.1</br>2.1.2-Tensorflow-1.2.1-Python-3.6.1</br>2.1.2-Tensorflow-1.6.0rc0-Python-3.6.1</br>2.1.4-Py-3.6-Tensorflow-1.6.0rc0</br>2.1.4-Py-3.6-Tensorflow-1.6.0rc0-CUDA-9.0.176</br>2.1.4-Py-3.6-Theano-1.0.1 | `--A`</br>`--A`</br>`--A`</br>`-S-`</br>`-S-`</br>`-SA`</br>`--A`</br>`--A`</br>`-S-`</br>`--A`</br>`-S-`</br>`-S-`</br>`--A`</br>`-S-` | -| lam | 7.1.4-icc | `--A` | -| LAMMPS | 16Mar2018-intel-2017a</br>17Jan2018-foss-2017a</br>17Jan2018-foss-2017a-CUDA</br>17Jan2018-intel-2017a</br>17Jan2018-intel-2017a-MIC</br>22Jun2018-foss-2017a</br>22Jun2018-intel-2017a</br>22Sep2017-intel-2017a</br>23Oct2017-intel-2017a</br>24Jul2017-intel-2017a</br>28Jun14-intel-2015b | `-S-`</br>`-S-`</br>`--A`</br>`-SA`</br>`-S-`</br>`-S-`</br>`-SA`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-` | -| lammps | 28Jun14 | `--A` | -| LAPACK | 3.7.1-gompi-2017a | `-S-` | -| LAPACKE | 3.5.0-LAPACK-3.5.0 | `-S-` | -| latexcodec | 1.0.5-Py-3.6 | `-SA` | -| LevelDB | 1.18 | `--A` | -| libarchive | 3.3.2 | `-SA` | -| libc | 2.14-6.3.0 | `-S-` | -| libcerf | 1.5 | `-S-` | -| libctl | 3.2.2-intel-2015b | `-S-` | -| libdrm | 2.4.27</br>2.4.27-foss-2015g</br>2.4.67-intel-2016a</br>2.4.68-foss-2016a</br>2.4.68-intel-2016a</br>2.4.75</br>2.4.76 | `-SA`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`USA`</br>`USA` | -| libepoxy | 1.4.3 | `-S-` | -| libevent | 2.1.8 | `-SA` | -| libffi | 3.0.5</br>3.0.13</br>3.0.13-foss-2015b</br>3.0.13-foss-2015g</br>3.0.13-intel-2015b</br>3.1-foss-2015b</br>3.1-intel-2015b</br>3.1-intel-2016.01</br>3.1-GNU-5.1.0-2.25</br>3.2.1</br>3.2.1-foss-2016a</br>3.2.1-foss-2017a</br>3.2.1-intel-2017.00</br>3.2.1-intel-2017a | `--A`</br>`-SA`</br>`-S-`</br>`-S-`</br>`-SA`</br>`-S-`</br>`-SA`</br>`--A`</br>`-S-`</br>`USA`</br>`-SA`</br>`-S-`</br>`-S-`</br>`-SA` | -| libfontenc | 1.1.3</br>1.1.3-foss-2015g</br>1.1.3-foss-2016a</br>1.1.3-intel-2016a | `-SA`</br>`-S-`</br>`-S-`</br>`-S-` | -| libgd | 2.2.3</br>2.2.4</br>2.2.4-intel-2017a</br>2.2.4-intel-2017b</br>2.2.4-GCC-6.3.0-2.27</br>2.2.5 | `-S-`</br>`-S-`</br>`-S-`</br>`-SA`</br>`-SA`</br>`-SA` | -| libgdiplus | 3.12</br>3.12-intel-2016.01</br>3.12-GCC-4.4.7-system | `-SA`</br>`-S-`</br>`-S-` | -| libglade | 2.6.4 | `-S-` | -| libGLU | 9.0.0</br>9.0.0-foss-2015g | `USA`</br>`-S-` | -| libICE | 1.0.9</br>1.0.9-foss-2015g</br>1.0.9-intel-2015b | `-SA`</br>`-S-`</br>`-S-` | -| libICU | 59_1</br>61.1</br>62.1-GCC-6.3.0-2.27 | `-S-`</br>`-S-`</br>`-S-` | -| Libint | 1.1.4-foss-2015b</br>1.1.4-gompi-2015b</br>1.1.4-intel-2015b</br>1.1.6-intel-2017a</br>1.1.6-GCC-6.3.0-2.27 | `-S-`</br>`-S-`</br>`US-`</br>`-S-`</br>`-S-` | -| libjpeg-turbo | 1.3.1-foss-2015b</br>1.3.1-intel-2015b</br>1.4.0</br>1.4.0-foss-2015g</br>1.4.0-intel-2015b</br>1.4.1-foss-2015b</br>1.4.2-intel-2017.00</br>1.5.1</br>1.5.3</br>2.0.0-GCC-6.3.0-2.27 | `-S-`</br>`-S-`</br>`-SA`</br>`-S-`</br>`-S-`</br>`US-`</br>`-S-`</br>`USA`</br>`-SA`</br>`-S-` | -| LIBLINEAR | 2.11-intel-2017a | `-SA` | -| libmatheval | 1.1.8</br>1.1.8-foss-2015b</br>1.1.8-foss-2015g</br>1.1.8-foss-2016a</br>1.1.8-intel-2015b</br>1.1.11</br>1.1.11-foss-2017a</br>1.1.11-intel-2015b | `-SA`</br>`-S-`</br>`-S-`</br>`-SA`</br>`-SA`</br>`-S-`</br>`-S-`</br>`--A` | -| libMesh | 0.9.5-intel-2016.01 | `-S-` | -| libpciaccess | 0.13.1</br>0.13.1-foss-2015g</br>0.13.4-foss-2016a</br>0.13.4-intel-2016a | `-SA`</br>`-S-`</br>`-S-`</br>`-S-` | -| libpng | 1.6.9-intel-2015b</br>1.6.12</br>1.6.12-foss-2015b</br>1.6.12-foss-2015g</br>1.6.12-intel-2015b</br>1.6.12-intel-2016.01</br>1.6.16-intel-2015b</br>1.6.17-foss-2015b</br>1.6.21-foss-2016a</br>1.6.21-intel-2016a</br>1.6.21-intel-2017.00</br>1.6.29</br>1.6.29-GCCcore-6.3.0</br>1.6.34 | `US-`</br>`-SA`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`US-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`USA`</br>`-S-`</br>`-SA` | -| libpthread-stubs | 0.3</br>0.3-foss-2015g</br>0.3-foss-2016a</br>0.3-intel-2015b</br>0.3-intel-2016a</br>0.4 | `-SA`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`USA` | -| libreadline | 6.2-intel-2015b</br>6.3</br>6.3-foss-2015b</br>6.3-foss-2015g</br>6.3-foss-2016a</br>6.3-foss-2017a</br>6.3-gimkl-2.11.5</br>6.3-gompi-2015e</br>6.3-ictce-7.3.5</br>6.3-intel-2015b</br>6.3-intel-2016.01</br>6.3-intel-2017.00</br>6.3-intel-2017a</br>7.0</br>7.0-GCCcore-6.3.0 | `US-`</br>`USA`</br>`US-`</br>`USA`</br>`-SA`</br>`-S-`</br>`--A`</br>`-S-`</br>`-S-`</br>`USA`</br>`-SA`</br>`--A`</br>`-SA`</br>`USA`</br>`-SA` | -| LibreSSL | 2.1.6-intel-2017b | `-S-` | -| librsync | 2.0.2 | `-S-` | -| libSM | 1.2.2</br>1.2.2-foss-2015g</br>1.2.2-intel-2015b | `-SA`</br>`-S-`</br>`-S-` | -| libsmm | 2015-11-10 | `-S-` | -| libsndfile | 1.0.28</br>1.0.28-intel-2017a | `-S-`</br>`USA` | -| LIBSVM | 3.22-intel-2017a | `-SA` | -| LibTIFF | 4.0.3</br>4.0.3-intel-2015b</br>4.0.7</br>4.0.7-GCC-6.3.0-2.27 | `-SA`</br>`-S-`</br>`USA`</br>`-S-` | -| libtool | 2.4.2</br>2.4.2-foss-2015b</br>2.4.2-foss-2015g</br>2.4.2-intel-2015b</br>2.4.6</br>2.4.6-foss-2016a</br>2.4.6-intel-2015b</br>2.4.6-intel-2017.00</br>2.4.6-intel-2017a</br>2.4.6-GCC-6.3.0-2.27</br>2.4.6-GNU-4.9.3-2.25</br>2.4.6-GNU-5.1.0-2.25 | `-SA`</br>`-S-`</br>`-SA`</br>`-S-`</br>`-SA`</br>`-SA`</br>`--A`</br>`--A`</br>`-SA`</br>`-SA`</br>`--A`</br>`--A` | -| libunistring | 0.9.3</br>0.9.3-foss-2015b</br>0.9.3-foss-2015g</br>0.9.3-foss-2016a</br>0.9.3-intel-2015b</br>0.9.6-foss-2017a | `-SA`</br>`-S-`</br>`-S-`</br>`-SA`</br>`-SA`</br>`-S-` | -| libunwind | 1.1-GCC-5.4.0-2.26</br>1.2</br>1.2.1 | `-S-`</br>`-SA`</br>`-SA` | -| LibUUID | 1.0.3 | `-SA` | -| libuv | 1.20.3 | `-S-` | -| libX11 | 1.6.2-foss-2015g-Python-2.7.9</br>1.6.2-intel-2015b-Python-2.7.9</br>1.6.2-Python-2.7.8</br>1.6.2-Python-2.7.9</br>1.6.3</br>1.6.3-foss-2016a</br>1.6.3-intel-2016a</br>1.6.5-intel-2017a | `-S-`</br>`-S-`</br>`-S-`</br>`-SA`</br>`-SA`</br>`-S-`</br>`-S-`</br>`-S-` | -| libXau | 1.0.8</br>1.0.8-foss-2015g</br>1.0.8-foss-2016a</br>1.0.8-intel-2015b</br>1.0.8-intel-2016a</br>1.0.8-intel-2017a | `-SA`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-` | -| libxc | 2.2.0-foss-2015b</br>2.2.0-gompi-2015b</br>2.2.1-intel-2015b</br>2.2.2-intel-2017a</br>3.0.0</br>3.0.0-intel-2017a</br>3.0.0-GCC-6.3.0-2.27</br>4.0.2-intel-2017a</br>4.1.0-intel-2017a | `-S-`</br>`-S-`</br>`US-`</br>`-S-`</br>`-SA`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-` | -| libxcb | 1.10-Python-2.7.8</br>1.11.1</br>1.11.1-foss-2016a</br>1.11.1-intel-2016a</br>1.11-foss-2015g-Python-2.7.9</br>1.11-intel-2015b-Python-2.7.9</br>1.11-Python-2.7.9 | `-S-`</br>`-SA`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-SA` | -| libXdamage | 1.1.4-foss-2015g-Python-2.7.9</br>1.1.4-foss-2016a</br>1.1.4-intel-2016a</br>1.1.4-intel-2017a | `-S-`</br>`-S-`</br>`-S-`</br>`-S-` | -| libXdmcp | 1.1.2</br>1.1.2-foss-2015g</br>1.1.2-foss-2016a</br>1.1.2-intel-2015b</br>1.1.2-intel-2016a | `-SA`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-` | -| libXext | 1.3.2-Python-2.7.8</br>1.3.3</br>1.3.3-foss-2015g</br>1.3.3-foss-2015g-Python-2.7.9</br>1.3.3-foss-2016a</br>1.3.3-intel-2015b</br>1.3.3-intel-2016a | `-S-`</br>`-SA`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-` | -| libXfixes | 5.0.1</br>5.0.1-foss-2015g</br>5.0.1-foss-2016a</br>5.0.1-intel-2016a | `-SA`</br>`-S-`</br>`-S-`</br>`-S-` | -| libXfont | 1.5.1-foss-2015g-Python-2.7.9</br>1.5.1-foss-2016a-freetype-2.6.3</br>1.5.1-intel-2016a</br>1.5.1-intel-2016a-freetype-2.6.3</br>1.5.1-intel-2017a</br>1.5.1-Python-2.7.9 | `-S-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-SA` | -| libXft | 2.3.2-intel-2015b | `-S-` | -| libXinerama | 1.1.3</br>1.1.3-intel-2015b | `--A`</br>`-S-` | -| libxml2 | 2.9.2</br>2.9.2-foss-2015b</br>2.9.2-foss-2015g-Python-2.7.9</br>2.9.2-intel-2015b</br>2.9.3-foss-2016a</br>2.9.3-intel-2016a</br>2.9.4</br>2.9.4-Python-2.7.13</br>2.9.8-GCC-6.3.0-2.27 | `-S-`</br>`US-`</br>`-S-`</br>`-SA`</br>`-SA`</br>`--A`</br>`USA`</br>`--A`</br>`-S-` | -| libXrender | 0.9.8</br>0.9.8-intel-2015b</br>0.9.9 | `-S-`</br>`-S-`</br>`-SA` | -| libxslt | 1.1.28-intel-2015b</br>1.1.29 | `-S-`</br>`-SA` | -| libxsmm | 1.6.4-intel-2017a</br>1.7.1</br>1.7.1-GCC-6.3.0-2.27 | `-S-`</br>`-S-`</br>`-S-` | -| libXt | 1.1.4-foss-2015g-libX11-1.6.2</br>1.1.4-intel-2015b-libX11-1.6.2</br>1.1.4-libX11-1.6.2</br>1.1.5</br>1.1.5-foss-2015g</br>1.1.5-intel-2017a-libX11-1.6.5 | `-S-`</br>`-S-`</br>`-SA`</br>`--A`</br>`-S-`</br>`-S-` | -| libyaml | 0.1.6-intel-2015b</br>0.1.7 | `-S-`</br>`-SA` | -| libzip | 1.2.0 | `-S-` | -| LicenseChecker | 1.0 | `-S-` | -| likwid | 3.1.1-icc</br>3.1.1-mic</br>3.1.2-gcc</br>3.1.2-icc</br>3.1.2-mic</br>4.1.2-gcc</br>4.1.2-intel | `--A`</br>`--A`</br>`--A`</br>`--A`</br>`--A`</br>`-S-`</br>`-S-` | -| LLVM | 3.7.1-foss-2015g</br>3.7.1-intel-2016a</br>3.8.0-foss-2016a</br>3.8.0-intel-2016a</br>3.8.1-intel-2017a</br>3.9.0-intel-2017.00</br>4.0.0-GCC-6.3.0-2.27</br>5.0.0-GCC-6.3.0-2.27</br>6.0.0-Py-2.7</br>6.0.1-GCC-6.3.0-2.27 | `-S-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`USA`</br>`-S-`</br>`USA`</br>`-SA`</br>`-SA`</br>`-SA` | -| LMDB | 0.9.18 | `--A` | -| LMGC90 | 2017.rc1-GCC-6.3.0-2.27 | `-S-` | -| Lmod | .6.4.2</br>.7.0.6</br>7.2.2</br>7.3.28</br>7.4.4</br>7.7.7 | `--A`</br>`--A`</br>`-SA`</br>`--A`</br>`--A`</br>`-SA` | -| loom | 0.9-Py-3.6 | `-S-` | -| lsdyna | 7.x.x | `--A` | -| LSMS | 3_rev237-foss-2015g</br>3_rev237-foss-2016a | `-S-`</br>`-S-` | -| lsprepost | 4.2 | `--A` | -| Lua | 5.1.4-8</br>.5.1.4-8</br>5.3.4 | `-SA`</br>`--A`</br>`-S-` | -| lux | 1.3.1 | `--A` | -| lxml | 3.4.4-intel-2015b-Python-2.7.9</br>3.8.0-Python-2.7.13-base</br>4.1.1-Py-2.7</br>4.1.1-Py-3.6 | `-S-`</br>`-SA`</br>`-SA`</br>`-SA` | -| M4 | 1.4.16-foss-2015g</br>1.4.16-intel-2015b</br>1.4.17</br>1.4.17-foss-2016a</br>1.4.17-intel-2015b</br>1.4.17-intel-2017.00</br>1.4.17-GCCcore-4.9.3</br>1.4.17-GCCcore-5.3.0</br>1.4.17-GCCcore-5.4.0</br>1.4.17-GCC-4.9.3</br>1.4.17-GCC-4.9.3-binutils-2.25</br>1.4.17-GCC-5.1.0-binutils-2.25</br>1.4.17-GNU-4.9.3-2.25</br>1.4.17-GNU-5.1.0-2.25</br>1.4.18</br>1.4.18-GCCcore-6.3.0</br>1.4.18-GCCcore-6.4.0 | `-S-`</br>`--A`</br>`USA`</br>`-SA`</br>`--A`</br>`--A`</br>`--A`</br>`--A`</br>`--A`</br>`--A`</br>`--A`</br>`--A`</br>`--A`</br>`--A`</br>`USA`</br>`USA`</br>`-S-` | -| magma | 1.1.0-mic</br>1.3.0-mic | `--A`</br>`--A` | -| make | 3.82</br>3.82-intel-2015b</br>4.2.1 | `-SA`</br>`US-`</br>`-S-` | -| makedepend | 1.0.4</br>1.0.4-foss-2015g</br>1.0.5-foss-2016a</br>1.0.5-intel-2016a | `-SA`</br>`-S-`</br>`-S-`</br>`-S-` | -| Mako | 1.0.4-Python-2.7.13</br>1.0.6-Python-2.7.13</br>1.0.7-Py-2.7 | `--A`</br>`USA`</br>`-S-` | -| MAP | 4.2</br>5.0.1 | `-S-`</br>`-S-` | -| marc | 2011</br>2013.1 | `--A`</br>`--A` | -| Marc | 2013.1.0 | `-S-` | -| Markdown | 2.6.11-Py-3.6 | `-S-` | -| MarkupSafe | 1.0-Py-2.7</br>1.0-Py-3.6 | `-S-`</br>`-S-` | -| MATIO | 1.5.2-intel-2017a | `-SA` | -| MATLAB | 2013a-EDU</br>2015a-COM</br>2015a-EDU</br>2015b-COM</br>2015b-EDU</br>2015b-EDU-test</br>2018a-EDU</br>R2013a-COM</br>R2013a-EDU</br>R2014a-COM</br>R2014a-EDU | `US-`</br>`-S-`</br>`-S-`</br>`-SA`</br>`-SA`</br>`--A`</br>`-S-`</br>`--A`</br>`--A`</br>`--A`</br>`--A` | -| matplotlib | 1.4.3-intel-2015b-Python-2.7.9</br>1.5.1-Python-2.7.13-freetype-2.6.3</br>2.0.2-Python-2.7.13-base</br>2.0.2-Python-3.6.1-libpng-1.6.29</br>2.1.1-Py-2.7</br>2.1.1-Py-3.6 | `-S-`</br>`-SA`</br>`-SA`</br>`-SA`</br>`-SA`</br>`-SA` | -| Maven | 3.3.9 | `USA` | -| maxwell | 3.0 | `--A` | -| mdtest | 1.9.3-intel-2017a | `-S-` | -| Meep | 1.3-intel-2015b | `-S-` | -| memoryscape | 3.4 | `--A` | -| mercurial | 2.9.1 | `--A` | -| Mercurial | 3.5-Python-2.7.9</br>3.7.3-foss-2015g-Python-2.7.9</br>4.4.2-Py-2.7</br>4.7-Py-2.7 | `-S-`</br>`USA`</br>`-S-`</br>`-S-` | -| Mesa | 11.0.8-foss-2015g-Python-2.7.9</br>11.2.1-foss-2016a</br>12.0.2-intel-2017a</br>17.0.2-intel-2017a</br>17.2.6-foss-2017a</br>17.2.6-intel-2017a</br>18.1.3-intel-2017a</br>18.1.3-GCC-6.3.0-2.27 | `-S-`</br>`-S-`</br>`USA`</br>`USA`</br>`-S-`</br>`-S-`</br>`-SA`</br>`--A` | -| METIS | 5.1.0</br>5.1.0-intel-2015b</br>5.1.0-intel-2016.01</br>5.1.0-intel-2016.01-32bitIDX</br>5.1.0-intel-2017.00</br>5.1.0-intel-2017a | `-SA`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`USA` | -| MIKE | 2014</br>2016</br>2016-SP2</br>2016-SP2-test</br>2017</br>MIKE-old | `-SA`</br>`-SA`</br>`-SA`</br>`-S-`</br>`-SA`</br>`--A` | -| mkl | 13.5.192</br>14.0.1</br>15.2.164</br>15.3.187</br>2017.4.239</br>2017.4.239-GCC-6.3.0-2.27</br>2018.1.163 | `--A`</br>`--A`</br>`--A`</br>`--A`</br>`-SA`</br>`-S-`</br>`-S-` | -| MLD2P4 | 2.0-rc4-GCC-4.9.3-2.25 | `--A` | -| modflow-2005 | 1.11.00 | `--A` | -| modflow-nwt | 1.0.9</br>1.0.9-aquaveo | `--A`</br>`--A` | -| Molden | 5.7-intel-2017b | `-S-` | -| Molpro | 2010.1-patch-57-intel2015b | `-S-` | -| molpro | 2010.1-p45-intel | `--A` | -| mono | 3.2.3</br>3.12.1 | `--A`</br>`--A` | -| Mono | 3.12.1-GCC-4.4.7-system</br>4.2.2.10-intel-2016.01</br>4.6.2.16</br>4.8.1.0</br>5.0.0.100 | `-S-`</br>`-S-`</br>`--A`</br>`--A`</br>`USA` | -| monotonic | 1.5-Py-2.7 | `-S-` | -| monty | 1.0.2-Py-3.6 | `-SA` | -| moreutils | 0.62 | `US-` | -| motif | 2.3.4-foss-2015g-libX11-1.6.2</br>2.3.4-intel-2015b-libX11-1.6.2</br>2.3.7 | `-S-`</br>`-S-`</br>`--A` | -| MotionCor2 | 1.0.5-CUDA-8.0.44 | `--A` | -| MPC | 1.0.2 | `-S-` | -| MPFR | 3.1.4-intel-2017a</br>3.1.5 | `USA`</br>`-S-` | -| MPI-LIBLINEAR | 2.1-1-intel-2017a | `-SA` | -| mpi.net | 1.0.0</br>1.0.0-impi</br>1.0.0-mono-3.12.1 | `--A`</br>`--A`</br>`--A` | -| mpi4py | 2.0.0-intel-2017a-Python-2.7.13-base</br>3.0.0-foss-2017a-Python-2.7.13</br>3.0.0-Py-2.7</br>3.0.0-Py-3.6 | `-SA`</br>`-S-`</br>`-SA`</br>`-SA` | -| MPI_NET | 1.2.0-gompi-2015e</br>1.2.0-intel-2016.01 | `-S-`</br>`-S-` | -| MPICH | 3.2.1-GCC-6.3.0-2.27</br>3.2-GCC-4.9.3-2.25</br>3.2-GCC-5.3.0-2.25</br>3.2-GCC-5.3.1-snapshot-20160419-2.25 | `-SA`</br>`--A`</br>`-S-`</br>`-S-` | -| mpmath | 1.0.0-Py-3.6 | `-SA` | -| MPT | 2.12 | `-S-` | -| MUMPS | 5.0.2-intel-2017a-parmetis | `-S-` | -| mvapich2 | 1.9-gcc</br>1.9-gcc46</br>1.9-icc | `--A`</br>`--A`</br>`--A` | -| MVAPICH2 | 2.1-iccifort-2015.3.187-GNU-5.1.0-2.25</br>2.1-GCC-4.4.7-system</br>2.1-GNU-5.1.0-2.25 | `-S-`</br>`-S-`</br>`-S-` | -| mxml | 2.9 | `--A` | -| namd | 2.8 | `--A` | -| NAMD | 2.9-mpi | `-S-` | -| nano | 2.9.6 | `--A` | -| NASM | 2.11.05</br>2.11.05-foss-2015b</br>2.11.05-foss-2015g</br>2.11.05-intel-2015b</br>2.11.06-intel-2015b</br>2.11.08-foss-2015b</br>2.11.08-intel-2017.00</br>2.12.02</br>2.13.03 | `-SA`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`US-`</br>`-S-`</br>`USA`</br>`-SA` | -| nastran | 2013.1.1 | `--A` | -| NCCL | 2.1.4 | `--A` | -| ncurses | 5.9</br>5.9-foss-2015b</br>5.9-foss-2015g</br>5.9-gimkl-2.11.5</br>5.9-gompi-2015e</br>5.9-ictce-7.3.5</br>5.9-intel-2015b</br>5.9-intel-2016.01</br>5.9-GCC-4.9.3-2.25</br>5.9-GNU-4.9.3-2.25</br>6.0</br>6.0-foss-2016a</br>6.0-foss-2017a</br>6.0-intel-2016a</br>6.0-intel-2017.00</br>6.0-intel-2017a</br>6.0-GCCcore-6.3.0</br>6.1 | `-SA`</br>`US-`</br>`USA`</br>`--A`</br>`-S-`</br>`-S-`</br>`USA`</br>`-SA`</br>`--A`</br>`--A`</br>`USA`</br>`-SA`</br>`-S-`</br>`-SA`</br>`--A`</br>`USA`</br>`USA`</br>`-SA` | -| netcdf | 4.2.1.1</br>4.3.0 | `--A`</br>`--A` | -| netCDF | 4.3.2-foss-2015g</br>4.3.2-intel-2015b</br>4.3.2-intel-2016.01</br>4.3.3.1-foss-2015b</br>4.3.3.1-intel-2017.00</br>4.4.0-intel-2017.00</br>4.4.1.1-intel-2017a</br>4.4.1-intel-2017a</br>4.6.1-iomkl-2017b</br>4.6.1-GCC-6.3.0-2.27 | `-S-`</br>`US-`</br>`-S-`</br>`US-`</br>`-S-`</br>`-S-`</br>`USA`</br>`USA`</br>`-S-`</br>`-S-` | -| netcdf-cxx | 4.2 | `--A` | -| netcdf-fortran | 4.2 | `--A` | -| netCDF-Fortran | 4.4.0-intel-2016.01</br>4.4.4-intel-2017a</br>4.4.4-iomkl-2017b | `-S-`</br>`USA`</br>`-S-` | -| netcdf-parallel | 4.3.0 | `--A` | -| Netgen | 6.0-beta-intel-2017a-Python-3.6.1 | `-S-` | -| nettle | 3.2-intel-2017a</br>3.3-foss-2017a</br>3.3-intel-2017a</br>3.3-GCC-6.3.0-2.27 | `USA`</br>`-S-`</br>`USA`</br>`--A` | -| networkx | 1.11-Python-2.7.13</br>2.1-Py-3.6 | `-SA`</br>`-SA` | -| ngsPipeline | 1.0.0 | `--A` | -| NLopt | 2.4.2</br>2.4.2-intel-2017a | `-S-`</br>`USA` | -| NodeJS | 6.10.1-foss-2016a | `-S-` | -| numactl | 2.0.9</br>2.0.10</br>2.0.10-iccifort-2015.3.187-GNU-4.9.3-2.25</br>2.0.10-GNU-4.9.3-2.25</br>2.0.10-GNU-5.1.0-2.25</br>2.0.11</br>2.0.11-GCCcore-5.4.0</br>2.0.11-GCCcore-6.3.0</br>2.0.11-GCC-4.9.3-2.25</br>2.0.11-GCC-5.3.0-2.26</br>2.0.11-GCC-6.3.0-2.27</br>2.0.11-GCC-7.1.0-2.28</br>2.0.11-PGI-18.5-GCC-6.3.0-2.27 | `--A`</br>`-SA`</br>`-SA`</br>`USA`</br>`USA`</br>`-SA`</br>`-SA`</br>`-SA`</br>`-SA`</br>`-SA`</br>`USA`</br>`US-`</br>`-S-` | -| numpy | 1.8.2-intel-2015b-Python-2.7.9</br>1.8.2-intel-2015b-Python-2.7.11</br>1.8.2-intel-2016.01-Python-2.7.9</br>1.8.2-Py-2.7</br>1.9.1-intel-2015b-Python-2.7.9</br>1.12.1-intel-2017a-Python-2.7.11</br>1.13.0-Python-2.7.13-base</br>1.13.3-Py-2.7</br>1.13.3-Py-3.6</br>1.14.2-Py-2.7-test | `-SA`</br>`-SA`</br>`-SA`</br>`-S-`</br>`-S-`</br>`--A`</br>`-SA`</br>`-SA`</br>`-SA`</br>`-SA` | -| NWChem | 6.3.revision2-2013-10-17-Python-2.7.8</br>6.5.revision26243-intel-2015b-2014-09-10-Python-2.7.8</br>6.6.revision27746-intel-2017a-2015-10-20-Python-2.7.13</br>6.6.revision27746-iomkl-2017a-2015-10-20-Python-2.7.13 | `-S-`</br>`-S-`</br>`-SA`</br>`-SA` | -| Octave | 3.8.2-foss-2015g</br>3.8.2-gimkl-2.11.5</br>3.8.2-intel-2015b</br>4.0.0-foss-2015g</br>4.0.1-gimkl-2.11.5</br>4.2.1-intel-2017a</br>4.2.1-intel-2017a-without-X11 | `-S-`</br>`--A`</br>`-S-`</br>`-SA`</br>`--A`</br>`-SA`</br>`-SA` | -| octave | .3.6.4</br>.hg-20130730 | `--A`</br>`--A` | -| Octopus | 8.2-intel-2017a-mpi | `-S-` | -| opari2 | 1.1.2-gcc</br>1.1.2-icc | `--A`</br>`--A` | -| OPARI2 | 1.1.4-intel-2015b</br>2.0</br>2.0.2 | `-S-`</br>`-SA`</br>`-S-` | -| OpenBabel | 2.4.1-Python-2.7.13 | `-SA` | -| OpenBLAS | 0.2.14-gompi-2015e-LAPACK-3.5.0</br>0.2.14-GNU-4.9.3-2.25-LAPACK-3.5.0</br>0.2.14-GNU-5.1.0-2.25-LAPACK-3.5.0</br>0.2.14-LAPACK-3.5.0</br>0.2.15-GCC-4.9.3-2.25-LAPACK-3.6.0</br>0.2.15-GCC-5.1.0-binutils-2.25-LAPACK-3.6.0</br>0.2.15-GCC-5.1.0-binutils-2.25-LAPACK-3.6.0-gompi-2016a</br>0.2.18-GCC-5.3.0-2.26-LAPACK-3.6.0</br>0.2.19-GCC-5.4.0-2.26-LAPACK-3.6.0</br>0.2.19-GCC-5.4.0-2.26-LAPACK-3.7.0</br>0.2.19-GCC-6.3.0-2.27-LAPACK-3.7.0</br>0.2.20-GCC-6.3.0-2.27</br>0.2.20-GCC-6.4.0-2.28 | `US-`</br>`USA`</br>`USA`</br>`-S-`</br>`USA`</br>`--A`</br>`--A`</br>`-SA`</br>`-S-`</br>`-S-`</br>`USA`</br>`USA`</br>`-S-` | -| OpenCL-builder | 2015 | `-S-` | -| opencl-rt | 4.5.0.8 | `--A` | -| OpenCL-runtime | 15.1</br>16.1.1</br>16.1.2 | `-S-`</br>`--A`</br>`-SA` | -| OpenCL-sdk | 7.0.0.2568 | `-SA` | -| opencl-sdk | 4.6.0.92 | `--A` | -| OpenCoarrays | 1.0.0-GNU-5.1.0-2.25</br>1.0.1-GNU-5.1.0-2.25</br>1.4.0-GCC-5.3.0-2.25</br>1.4.0-GCC-5.3.1-snapshot-20160419-2.25</br>1.8.10-GCC-6.3.0-2.27 | `-S-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-SA` | -| OpenCV | 2.4.9-intel-2015b</br>3.0.0-intel-2015b</br>3.1.0 | `-S-`</br>`-S-`</br>`--A` | -| opencv-python | 3.3.0.10-Python-3.6.1 | `-SA` | -| OpenDX | 4.4.4-foss-2015g | `-S-` | -| openfoam | 2.2.1-gcc481-openmpi1.6.5-DP</br>2.2.1-gcc481-openmpi1.6.5-SP</br>2.2.1-icc-impi4.1.1.036-DP</br>2.2.1-icc-openmpi1.6.5-DP</br>2.2.2-icc-openmpi1.8.1-DP | `--A`</br>`--A`</br>`--A`</br>`--A`</br>`--A` | -| OpenFOAM | 2.2.2-intel-2015b</br>2.3.0-intel-2015b</br>3.0.0-intel-2016.01</br>4.1-intel-2017a</br>5.0-intel-2017a | `US-`</br>`US-`</br>`-S-`</br>`USA`</br>`-SA` | -| OpenJPEG | 2.3.0 | `-S-` | -| openmpi | 1.6.5-gcc</br>1.6.5-gcc46</br>1.6.5-icc</br>1.8.1-gcc</br>1.8.1-gcc46</br>1.8.1-icc | `--A`</br>`--A`</br>`--A`</br>`--A`</br>`--A`</br>`--A` | -| OpenMPI | 1.8.6-GCC-4.4.7-system</br>1.8.8-iccifort-2015.3.187-GNU-4.9.3-2.25</br>1.8.8-GNU-4.9.3-2.25</br>1.8.8-GNU-5.1.0-2.25</br>1.10.2-GCC-4.9.3-2.25</br>1.10.2-GCC-5.3.0-2.26</br>1.10.7-GCC-6.3.0-2.27</br>1.10.7-GCC-6.3.0-2.27-noPBS</br>1.10.7-GCC-7.1.0-2.28</br>1.10.7-PGI-18.5-GCC-6.3.0-2.27</br>2.0.1-iccifort-2017.1.132-GCC-5.4.0-2.26</br>2.0.1-iccifort-2017.1.132-GCC-6.3.0-2.27</br>2.0.2-GCC-6.3.0-2.27</br>2.1.0-GCC-6.3.0-2.27</br>2.1.1-GCC-6.3.0-2.27</br>3.0.0-GCC-6.3.0-2.27</br>3.0.1-GCC-6.3.0-2.27-nvidia</br>3.0.1-GCC-6.3.0-2.27-nvidia-RHEL6 | `US-`</br>`-SA`</br>`USA`</br>`-S-`</br>`USA`</br>`-SA`</br>`USA`</br>`-SA`</br>`US-`</br>`-S-`</br>`-SA`</br>`--A`</br>`USA`</br>`-SA`</br>`USA`</br>`USA`</br>`--A`</br>`--A` | -| openssh-x509 | 6.2p2 | `--A` | -| OpenSSL | 1.0.2n</br>1.0.2n-intel-2017b</br>1.1.0e-intel-2017b | `--A`</br>`-S-`</br>`-S-` | -| ORCA | 3_0_3-linux_x86-64</br>4.0.1.2</br>4_0_1-linux_x86-64 | `--A`</br>`-SA`</br>`-S-` | -| oscar-modules | 1.0.3 | `--A` | -| osm2pgsql | 0.92.0-intel-2017a | `-S-` | -| OSPRay | 1.3.0-intel-2017a</br>1.6.1-intel-2017a | `-SA`</br>`-S-` | -| OTF2 | 1.4-intel-2015b</br>2.0</br>2.0-intel-2015b-mic</br>2.1 | `-S-`</br>`-SA`</br>`-S-`</br>`-S-` | -| otf2 | 1.2.1-gcc</br>1.2.1-icc</br>1.4-gcc</br>1.4-icc | `--A`</br>`--A`</br>`--A`</br>`--A` | -| p4vasp | 0.3.30 | `-S-` | -| packaging | 17.1-Py-3.6 | `-SA` | -| palettable | 3.1.0-Py-3.6 | `-SA` | -| pandas | 0.22.0-Py-3.6 | `-SA` | -| Pango | 1.39.0</br>1.40.5</br>1.40.5-intel-2017a</br>1.42.1-GCC-6.3.0-2.27 | `-S-`</br>`-SA`</br>`-S-`</br>`-S-` | -| PAPI | 5.4.0-intel-2015b</br>5.4.0-mic</br>5.4.0-p-mic</br>5.4.3</br>5.4.3-intel-2015b-mic</br>5.4.3-pic</br>5.5.1 | `-S-`</br>`-S-`</br>`-S-`</br>`-SA`</br>`-S-`</br>`-S-`</br>`-S-` | -| papi | 5.3.0</br>5.3.2</br>5.3.2-mic</br>5.4.0</br>5.4.0-mic | `--A`</br>`--A`</br>`--A`</br>`--A`</br>`--A` | -| parallel | 20141122</br>20150322</br>20150322-GNU-5.1.0-2.25 | `--A`</br>`-S-`</br>`-S-` | -| paramiko | 2.4.1-Py-2.7 | `-S-` | -| ParaView | 5.0.0-binary</br>5.1.2-intel-2017a-mpi</br>5.4.0-intel-2017a-mpi-OSPRay</br>5.4.0-intel-2017a-mpi-OSPRay-OpenGL</br>5.4.0-intel-2017a-mpi-OSPRay-OpenGL2</br>5.4.0-intel-2017a-mpi-OSPRay-TEST</br>5.4.1-intel-2017a-mpi</br>5.5.2-intel-2017a-mpi-OSPRay | `-S-`</br>`USA`</br>`-SA`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-SA`</br>`-S-` | -| paraview | 4.0.1-gcc481-bullxmpi1.2.4.1-osmesa10.0 | `--A` | -| ParMETIS | 4.0.3-intel-2015b</br>4.0.3-intel-2016.01</br>4.0.3-intel-2017a | `-S-`</br>`-S-`</br>`-SA` | -| PatchELF | 0.9 | `-SA` | -| PCRE | 8.36-intel-2015b</br>8.36-intel-2016.01</br>8.37</br>8.37-foss-2015g</br>8.37-gimkl-2.11.5</br>8.37-intel-2016.01</br>8.39-intel-2017.00</br>8.40</br>8.42</br>8.42-GCC-6.3.0-2.27 | `-S-`</br>`-S-`</br>`-SA`</br>`-SA`</br>`--A`</br>`--A`</br>`-S-`</br>`USA`</br>`-SA`</br>`-S-` | -| PCRE2 | 10.22-intel-2017.00 | `-S-` | -| PDT | 3.18.1</br>3.24 | `-S-`</br>`-SA` | -| perfboost | 1.0 | `-S-` | -| perfcatcher | 1.0 | `-S-` | -| PerformanceReports | 5.1-43967</br>6.0.6</br>7.0.6</br>7.1 | `-S-`</br>`-SA`</br>`-SA`</br>`-SA` | -| PerfReports | 5.0.1 | `-S-` | -| PerfSuite | 1a5.3 | `-S-` | -| Perl | 5.16.3-intel-2015b</br>5.20.2-bare</br>5.24.0-GCC-4.9.3-2.25-bare</br>5.26.0-GCC-7.1.0-2.28-bare</br>5.26.1-foss-2017a</br>5.26.1-intel-2017a</br>5.26.1-intel-2017b</br>5.26.2-GCC-6.3.0-2.27 | `US-`</br>`-S-`</br>`--A`</br>`--A`</br>`-SA`</br>`-S-`</br>`-SA`</br>`--A` | -| pest | 13.0 | `--A` | -| petsc | 3.5.3-icc15-impi-mkl-dbg</br>3.5.3-icc15-impi-mkl-opt</br>3.5.3-icc15-impi-mkl-threads-dbg</br>3.5.3-icc15-impi-mkl-threads-opt</br>3.7.3-icc16-impi5-mkl-dbg</br>3.7.3-icc16-impi5-mkl-opt | `--A`</br>`--A`</br>`--A`</br>`--A`</br>`--A`</br>`--A` | -| PETSc | 3.6.1-intel-2015b-Python-2.7.9</br>3.6.1-intel-2016.01-Python-2.7.9</br>3.6.3-intel-2015b-Python-2.7.11</br>3.7.5-intel-2017a-it4i | `-S-`</br>`-S-`</br>`-S-`</br>`-SA` | -| PFFT | 1.0.8-alpha-intel-2017a | `-S-` | -| PGI | 15.7</br>16.10-GNU-4.9.3-2.25</br>17.9-GCC-6.3.0-2.27</br>18.5-GCC-6.3.0-2.27 | `-S-`</br>`-S-`</br>`-SA`</br>`-SA` | -| phono3py | 0.9.14-ictce-7.3.5-Python-2.7.9</br>1.11.13.35-intel-2015b-Python-2.7.9</br>1.11.13.35-intel-2017a-Python-2.7.13</br>1.11.13.35-Py-2.7</br>1.11.13.35-Py-2.7-test</br>1.12.7.46-Py-2.7</br>1.12.9.5-Py-2.7</br>1.13.3-Py-2.7</br>1.13.3-Py-3.6 | `-S-`</br>`-S-`</br>`-SA`</br>`-SA`</br>`-S-`</br>`--A`</br>`-SA`</br>`-S-`</br>`-S-` | -| phonopy | 1.11.6.7-intel-2015b-Python-2.7.9</br>1.11.6.7-intel-2015b-Python-2.7.11</br>1.11.12.5-intel-2015b-Python-2.7.9</br>1.11.12.5-Python-2.7.13-base</br>1.12.4.11-Py-2.7</br>1.12.6.66-Py-2.7</br>1.12.6.66-Py-3.6</br>1.13.2-Py-2.7</br>1.13.2-Py-3.6 | `-S-`</br>`--A`</br>`-S-`</br>`-SA`</br>`-SA`</br>`-SA`</br>`-SA`</br>`-S-`</br>`-S-` | -| PHREEQC | 3.3.12-12704-intel-2017b | `-SA` | -| picard | 1.117</br>1.119</br>2.1.0 | `--A`</br>`-S-`</br>`-S-` | -| pigz | 2.4-GCC-6.3.0-2.27 | `-SA` | -| Pillow | 3.2.0-Python-2.7.13-freetype-2.6.3</br>5.0.0-Py-3.6 | `-SA`</br>`-SA` | -| pixman | 0.32.6</br>0.32.6-foss-2015b</br>0.32.6-intel-2015b</br>0.34.0 | `-SA`</br>`-S-`</br>`-S-`</br>`USA` | -| pkg-config | 0.27.1</br>0.27.1-foss-2015b</br>0.27.1-foss-2015g</br>0.27.1-intel-2015b</br>0.29</br>0.29.1</br>0.29.1-foss-2016a</br>0.29.1-foss-2017a</br>0.29.1-intel-2016a</br>0.29.2</br>0.29-foss-2016a</br>0.29-intel-2016a | `-SA`</br>`-S-`</br>`-S-`</br>`-SA`</br>`-S-`</br>`USA`</br>`-S-`</br>`-S-`</br>`-S-`</br>`USA`</br>`-SA`</br>`-S-` | -| plasma | 2.6.0 | `--A` | -| Platypus | 20170509-Py-2.7 | `-S-` | -| pluggy | 0.6.0-Py-2.7</br>0.6.0-Py-3.6 | `-S-`</br>`-S-` | -| PLUMED | 2.1.3-foss-2015g</br>2.2.1-intel-2015b</br>2.3.0-foss-2016a</br>2.3.0-foss-2017a</br>2.3.5-intel-2017c</br>2.3b-foss-2015g</br>2.3b-foss-2016a</br>2.4.1-intel-2017c</br>2.4.2-intel-2017c | `-S-`</br>`--A`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-SA`</br>`-S-`</br>`-S-` | -| PLUTO | 4.2-intel-2017b-Python-2.7.14 | `-S-` | -| PostgreSQL | 9.6.9-Py-2.7</br>9.6.9-Py-2.7-Py-2.7 | `-SA`</br>`--A` | -| prace | 20160107-intel-2016.01 | `-S-` | -| PRACE | 20150630-intel-2015b</br>prace | `US-`</br>`--A` | -| PragTic | 0.1-GCC-5.3.0-2.25 | `-S-` | -| PrgEnv-gnu | 4.4.6</br>4.4.6-test</br>4.8.1 | `--A`</br>`--A`</br>`--A` | -| PrgEnv-intel | 13.5.192</br>14.0.1</br>15.0.3 | `--A`</br>`--A`</br>`--A` | -| PROJ | 4.8.0-foss-2015b</br>4.9.2-intel-2017.00</br>4.9.3-foss-2017a</br>4.9.3-intel-2017a | `US-`</br>`-S-`</br>`-S-`</br>`USA` | -| PROJ_4 | 4.9.2</br>4.9.2-foss-2015g | `-SA`</br>`-S-` | -| protobuf | 2.5.0</br>3.2.0-foss-2016a</br>3.2.0-GCC-7.1.0-2.28-Python-3.6.1</br>3.2.0-Python-3.6.1</br>3.3.0-foss-2017a</br>3.3.0-GCC-4.9.3-2.25</br>3.4.0-GCC-6.4.0-2.28-Python-3.6.1</br>3.4.0-GCC-7.1.0-2.28-Python-3.6.1</br>3.4.0-Py-3.6</br>3.5.1-Py-3.6 | `-S-`</br>`--A`</br>`-S-`</br>`-SA`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-SA`</br>`-SA` | -| protobuf-python | 3.2.0-GCC-7.1.0-2.28-Python-3.6.1</br>3.4.0-GCC-6.4.0-2.28-Python-3.6.1</br>3.4.0-Py-3.6</br>3.5.1-Py-3.6 | `-S-`</br>`-S-`</br>`-SA`</br>`-SA` | -| PSBLAS | 3.3.4-3-GCC-4.9.3-2.25 | `--A` | -| PSBLAS-ext | 1.0-4-GCC-4.9.3-2.25 | `--A` | -| psycopg2 | 2.7.4-Py-2.7 | `-SA` | -| pudb | 2017.1.4-Py-2.7</br>2017.1.4-Py-3.6 | `-S-`</br>`-S-` | -| pWord2Vec | 2018-01-25-intel-2017a | `-S-` | -| Py | 2.7</br>3.6 | `USA`</br>`-SA` | -| py4j | 0.10.6-Py-3.6 | `-S-` | -| pyasn1 | 0.4.4-Py-2.7 | `-S-` | -| pybtex | 0.21-Py-3.6 | `-SA` | -| PyCairo | 1.10.0-Python-2.7.13-base | `-S-` | -| pycparser | 2.18-Py-2.7 | `-S-` | -| PyDispatcher | 2.0.5-Py-3.6 | `-SA` | -| pydot | 1.2.4-Py-3.6 | `-S-` | -| pyFFTW | 0.10.4-Py-2.7</br>0.10.4-Py-3.6 | `-SA`</br>`-SA` | -| PyGObject | 2.28.6-Python-2.7.13-base | `-S-` | -| PyGTK | 2.24.0-Python-2.7.13-base | `-S-` | -| pylint | 1.7.2-Python-2.7.13-base | `-SA` | -| pymatgen | 2018.1.29-Py-3.6 | `-SA` | -| PyNaCl | 1.2.1-Py-2.7 | `-S-` | -| pyparsing | 2.2.0-Py-2.7</br>2.2.0-Py-3.6 | `-SA`</br>`-SA` | -| PyQt | 4.12-Py-3.6 | `-SA` | -| PyQt5 | 5.10-Py-3.6 | `-SA` | -| pyspark | 2.3.0-Py-3.6 | `-S-` | -| pytest | 3.3.2-Py-2.7</br>3.3.2-Py-3.6 | `-S-`</br>`-S-` | -| python | 2.7.5</br>2.7.6</br>3.3.2</br>3.3.5</br>3.4.2 | `--A`</br>`--A`</br>`--A`</br>`--A`</br>`--A` | -| Python | 2.7.8-intel-2015b</br>2.7.9</br>2.7.9-foss-2015g</br>2.7.9-gompi-2015e</br>2.7.9-ictce-7.3.5</br>2.7.9-intel-2015b</br>2.7.9-intel-2016.01</br>2.7.11-intel-2015b</br>2.7.11-intel-2017a</br>2.7.12-intel-2017a</br>2.7.13</br>2.7.13-base</br>2.7.14-base</br>2.7.14-GCC-6.3.0-2.27-base</br>2.7.15-base</br>3.5.1</br>3.5.2</br>3.5.2-foss-2016a</br>3.5.2-intel-2017.00</br>3.6.1</br>3.6.2-base</br>3.6.4-base</br>3.6.4-GCC-6.3.0-2.27-base</br>3.7.0-base | `-S-`</br>`-SA`</br>`USA`</br>`-S-`</br>`-S-`</br>`USA`</br>`-SA`</br>`-SA`</br>`-SA`</br>`--A`</br>`USA`</br>`-SA`</br>`-S-`</br>`USA`</br>`-SA`</br>`-S-`</br>`-S-`</br>`--A`</br>`--A`</br>`USA`</br>`-SA`</br>`-S-`</br>`-SA`</br>`--A` | -| python-dateutil | 2.6.1-Py-2.7</br>2.6.1-Py-3.6 | `-SA`</br>`-SA` | -| python-meep | 1.4.2-intel-2015b-Python-2.7.9-Meep-1.3 | `-S-` | -| pytz | 2017.3-Py-3.6 | `-SA` | -| PyWavelets | 0.5.2-Py-3.6 | `-SA` | -| PYXAID | 1.0 | `-S-` | -| PyYAML | 3.11-intel-2015b-Python-2.7.9</br>3.12-Py-2.7</br>3.12-Py-3.6</br>3.12-Python-2.7.13-base | `-S-`</br>`-SA`</br>`-SA`</br>`-SA` | -| pyzmq | 16.0.4-Py-2.7 | `-S-` | -| QBOX | r140b-foss-2016a | `-S-` | -| QCA | 2.1.0-foss-2015g | `-S-` | -| QEMU | 2.1.2-GCC-4.4.7-system</br>2.1.2-GCC-4.4.7-system-VDE2</br>2.9.0-GCC-4.4.7-system</br>2.9.0-GCC-4.4.7-system-VDE2</br>2.10.0-GCC-4.4.7-system</br>2.10.0-GCC-4.4.7-system-VDE2 | `US-`</br>`US-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-` | -| qemu | 2.1.0</br>2.1.0-vde2</br>2.1.2</br>2.1.2-vde2</br>2.9.0</br>2.9.0-vde2</br>2.10.0</br>2.10.0-vde2 | `--A`</br>`--A`</br>`--A`</br>`--A`</br>`--A`</br>`--A`</br>`--A`</br>`--A` | -| Qhull | 2015.2 | `-SA` | -| qrupdate | 1.1.2-intel-2017a | `-SA` | -| Qt | 4.8.6</br>4.8.6-foss-2015g</br>4.8.7 | `-SA`</br>`-S-`</br>`-SA` | -| Qt5 | 5.8.0-intel-2017a</br>5.8.0-GCC-6.3.0-2.27</br>5.11.1-GCC-6.3.0-2.27 | `-S-`</br>`USA`</br>`-SA` | -| QuantumESPRESSO | 5.4.0-foss-2015g</br>5.4.0-foss-2017a</br>5.4.0-intel-2017.00</br>6.0-intel-2017a</br>6.1-intel-2017a | `-S-`</br>`-S-`</br>`-SA`</br>`-S-`</br>`-SA` | -| Qwt | 6.1.2-foss-2015g | `-S-` | -| R | 3.0.1</br>3.1.1</br>3.1.1-intel-2015b</br>3.2.3-intel-2016.01</br>3.4.0-intel-2017a</br>3.4.0-intel-2017a-X11-20170314</br>3.4.2-foss-2017a</br>3.4.2-intel-2017a | `--A`</br>`--A`</br>`US-`</br>`-S-`</br>`-S-`</br>`USA`</br>`-S-`</br>`-S-` | -| Racket | 6.1.1-GNU-5.1.0-2.25 | `-S-` | -| racket | 6.0.1 | `--A` | -| ranger | 1.9.1-Py-3.6 | `-S-` | -| RapidJSON | 1.1.0-GCC-6.3.0-2.27 | `-S-` | -| redis | 4.0.11-GCC-6.3.0-2.27 | `-S-` | -| relion | 1.2</br>1.3 | `--A`</br>`--A` | -| RELION | 1.3-intel-2015b</br>2.1-foss-2017a-DP</br>2.1-foss-2017a-SP | `-S-`</br>`--A`</br>`--A` | -| renderproto | 0.11</br>0.11-intel-2015b | `-SA`</br>`-S-` | -| requests | 2.18.4-Py-3.6 | `-SA` | -| Rosetta | 3.10-intel-2017c | `-S-` | -| RStudio | 0.98.1103 | `-SA` | -| ruamel.yaml | 0.15.35-Py-3.6 | `-SA` | -| ruby | 2.0.0-p247 | `--A` | -| Ruby | 2.1.5-intel-2015b</br>2.3.1</br>2.3.3</br>2.4.2 | `-S-`</br>`-S-`</br>`-S-`</br>`-SA` | -| S4MPLE | 1.0.0 | `-S-` | -| samtools | 0.1.19 | `--A` | -| SAMtools | 1.3-foss-2015g</br>1.6-intel-2017a</br>1.8-intel-2017a | `-S-`</br>`-S-`</br>`-S-` | -| ScaLAPACK | 2.0.2-gompi-2015b-OpenBLAS-0.2.14-LAPACK-3.5.0</br>2.0.2-gompi-2015e-OpenBLAS-0.2.14-LAPACK-3.5.0</br>2.0.2-gompi-2015g-OpenBLAS-0.2.14-LAPACK-3.5.0</br>2.0.2-gompi-2016.04-OpenBLAS-0.2.18-LAPACK-3.6.0</br>2.0.2-gompi-2016a-OpenBLAS-0.2.15-LAPACK-3.6.0</br>2.0.2-gompi-2017a-OpenBLAS-0.2.19-LAPACK-3.7.0</br>2.0.2-gompi-2017b-OpenBLAS-0.2.20</br>2.0.2-gompi-2018a-OpenBLAS-0.2.20</br>2.0.2-OpenBLAS-0.2.14-LAPACK-3.5.0 | `US-`</br>`US-`</br>`USA`</br>`-SA`</br>`-SA`</br>`USA`</br>`-SA`</br>`-SA`</br>`-S-` | -| Scalasca | 2.3.1-foss-2016a</br>2.3.1-intel-2015b</br>2.4-GCC-6.3.0-2.27-MPICH | `--A`</br>`-S-`</br>`-S-` | -| ScientificPython | 2.9.4-foss-2015g-Python-2.7.9</br>2.9.4-intel-2015b-Python-2.7.9</br>2.9.4-intel-2015b-Python-2.7.11</br>2.9.4-intel-2016.01-Python-2.7.9 | `--A`</br>`-SA`</br>`-SA`</br>`-SA` | -| scikit-image | 0.12.3-Python-2.7.13</br>0.13.1-Py-3.6 | `-SA`</br>`-SA` | -| scikit-learn | 0.18.2-Python-3.6.1</br>0.19.1-Py-3.6 | `-SA`</br>`-SA` | -| Scipion | 1.0.1-Java-1.8.0_112-OpenMPI-1.10.2-GCC-5.3.0-2.26 | `-S-` | -| scipy | 0.19.1-Python-2.7.13-base</br>1.0.0-Py-2.7</br>1.0.0-Py-3.6 | `-SA`</br>`-SA`</br>`-SA` | -| scite | 3.4.3 | `--A` | -| SCons | 2.3.6-foss-2015g-Python-2.7.9</br>2.3.6-Py-2.7</br>2.3.6-Python-2.7.9</br>2.5.1-intel-2015b-Python-2.7.11</br>2.5.1-intel-2017a-Python-2.7.13</br>2.5.1-Python-2.7.13</br>3.0.0</br>3.0.0-intel-2017a-Python-2.7.13</br>3.0.1-Py-2.7 | `-SA`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-` | -| Score-P | 2.0.1-foss-2016a</br>3.0-intel-2015b</br>3.1-intel-2017a</br>4.1-GCC-6.3.0-2.27-MPICH | `--A`</br>`-S-`</br>`-S-`</br>`-S-` | -| SCOTCH | 5.1.12b_esmumps-foss-2015b</br>6.0.0_esmumps-intel-2015b</br>6.0.3-intel-2015b</br>6.0.3-intel-2016.01</br>6.0.4-intel-2015b</br>6.0.4-intel-2016.01</br>6.0.4-intel-2017a</br>6.0.5a-intel-2017a | `-S-`</br>`US-`</br>`US-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`USA`</br>`-SA` | -| SDE | 7.41.0 | `-S-` | -| seaborn | 0.8.1-Py-3.6 | `-SA` | -| seekpath | 1.5.0-Python-2.7.13-base | `-SA` | -| Sen2Cor | 2.3.1-Python-2.7.13 | `-S-` | -| SentinelToolboxes | 5.0.0 | `-S-` | -| Serf | 1.3.8</br>1.3.8-foss-2015g | `-S-`</br>`-SA` | -| Siesta | 4.1-b2-intel-2017a | `-SA` | -| singledispatch | 3.4.0.3-Py-2.7 | `-S-` | -| Singularity | 2.2.1-GCC-6.3.0-2.27</br>2.2.99-GCC-6.3.0-2.27-develop</br>2.3.1</br>2.3.2</br>2.4.2</br>2.4.4</br>2.5.1</br>2.6.0</br>3.0.0-GCC-6.3.0-2.27 | `USA`</br>`-S-`</br>`-SA`</br>`-SA`</br>`-SA`</br>`-SA`</br>`-SA`</br>`-S-`</br>`-S-` | -| Singularity-wrappers | master | `-S-` | -| SIONlib | 1.6.1-intel-2015b-tools</br>1.6.1-tools</br>1.7.1-foss-2017a | `-S-`</br>`-SA`</br>`-SA` | -| SIP | 4.19.6-Py-3.6 | `-SA` | -| six | 1.11.0-Py-2.7</br>1.11.0-Py-3.6 | `-SA`</br>`-SA` | -| SLEPc | 3.7.4-intel-2017a | `-SA` | -| snappy | 1.1.3 | `--A` | -| snpEff | 3.6 | `--A` | -| SnpEff | 4.1_G | `US-` | -| SnuCL | 1.3.3-gompi-2015e | `-S-` | -| Spack | default | `-SA` | -| Spark | 1.5.2</br>2.1.0</br>2.3.0 | `-S-`</br>`-S-`</br>`-SA` | -| sparsehash | 2.0.3-foss-2018a</br>2.0.3-GCCcore-6.4.0 | `-SA`</br>`-S-` | -| spatialindex | 1.8.5-foss-2015g | `-S-` | -| SpatiaLite | 4.3.0a | `--A` | -| spglib-python | 1.10.2.4-Py-3.6 | `-SA` | -| spGPU | master-GCC-4.9.3-2.25 | `--A` | -| SQLite | 3.8.8.1</br>3.8.8.1-foss-2015b</br>3.8.8.1-foss-2015g</br>3.8.8.1-foss-2016a</br>3.8.8.1-gompi-2015e</br>3.8.8.1-ictce-7.3.5</br>3.8.8.1-intel-2015b</br>3.8.8.1-intel-2016.01</br>3.8.8.1-GNU-5.1.0-2.25</br>3.9.2-foss-2016a</br>3.9.2-intel-2015b</br>3.9.2-intel-2017.00</br>3.13.0</br>3.13.0-intel-2017a</br>3.17.0</br>3.18.2-GCC-6.3.0-2.27</br>3.21.0</br>3.24.0</br>3.25.2-GCC-6.3.0-2.27 | `-SA`</br>`US-`</br>`USA`</br>`--A`</br>`-S-`</br>`-S-`</br>`USA`</br>`-SA`</br>`-S-`</br>`--A`</br>`-SA`</br>`--A`</br>`USA`</br>`-SA`</br>`USA`</br>`--A`</br>`USA`</br>`-SA`</br>`-S-` | -| sqsgenerator | 20180226-Py-3.6</br>20180823-Py-3.6 | `-SA`</br>`-S-` | -| squashfs-tools | 4.3 | `-SA` | -| Subversion | 1.8.16-foss-2015g</br>1.9.3 | `-SA`</br>`-S-` | -| SuiteSparse | 4.4.3-intel-2015b-ParMETIS-4.0.3</br>4.4.3-intel-2016.01-ParMETIS-4.0.3</br>4.4.5-intel-2015b-METIS-5.1.0</br>4.4.6-intel-2015b-ParMETIS-4.0.3</br>4.5.3-intel-2017.00-METIS-5.1.0</br>4.5.3-intel-2017a-ParMETIS-4.0.3</br>4.5.5-intel-2017a-METIS-5.1.0 | `-S-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-SA`</br>`-SA` | -| SUMO | 0.25.0-foss-2015g</br>0.26.0-foss-2015g</br>0.27.1-foss-2015g | `-S-`</br>`-S-`</br>`-S-` | -| SWIG | 2.0.12-intel-2015b-Python-2.7.9</br>2.0.12-Python-2.7.9</br>3.0.7-Python-2.7.9</br>3.0.12-GCC-6.3.0-2.27-Py-2.7</br>3.0.12-Python-2.7.13</br>3.0.12-Python-3.6.1 | `-S-`</br>`-S-`</br>`-S-`</br>`-S-`</br>`USA`</br>`-S-` | -| sympy | 0.7.6.1-intel-2015b-Python-2.7.11</br>0.7.6-intel-2015b-Python-2.7.9</br>0.7.6-intel-2016.01-Python-2.7.9</br>1.1.1-Py-3.6 | `-S-`</br>`-S-`</br>`-S-`</br>`-SA` | -| Szip | 2.1</br>2.1.1-GCC-6.3.0-2.27</br>2.1-foss-2015b</br>2.1-foss-2015g</br>2.1-foss-2016a</br>2.1-ictce-7.3.5</br>2.1-intel-2015b</br>2.1-intel-2016.01</br>2.1-intel-2017.00</br>2.1-intel-2017a | `-SA`</br>`-S-`</br>`US-`</br>`-S-`</br>`-SA`</br>`-S-`</br>`USA`</br>`-SA`</br>`-S-`</br>`USA` | -| szip | 2.1 | `--A` | -| tabulate | 0.8.2-Py-3.6 | `-SA` | -| Tar | 1.29 | `-S-` | -| tbb | 4.3.5.187</br>4.4.2.152</br>13.5.192</br>14.0.1</br>15.2.164</br>15.3.187</br>2017.6.196 | `-S-`</br>`USA`</br>`--A`</br>`--A`</br>`--A`</br>`--A`</br>`-SA` | -| Tcl | 8.5.12</br>8.5.12-intel-2015b</br>8.6.3</br>8.6.3-foss-2015g</br>8.6.3-foss-2016a</br>8.6.3-gompi-2015e</br>8.6.3-ictce-7.3.5</br>8.6.3-intel-2015b</br>8.6.3-intel-2016.01</br>8.6.4</br>8.6.4-foss-2015b</br>8.6.4-foss-2016a</br>8.6.4-intel-2015b</br>8.6.4-intel-2017.00</br>8.6.5</br>8.6.5-intel-2017a</br>8.6.6</br>8.6.6-GCCcore-6.3.0</br>8.6.7-GCC-6.3.0-2.27 | `--A`</br>`US-`</br>`-SA`</br>`USA`</br>`--A`</br>`-S-`</br>`-S-`</br>`USA`</br>`-SA`</br>`--A`</br>`US-`</br>`--A`</br>`-SA`</br>`--A`</br>`--A`</br>`-SA`</br>`USA`</br>`-SA`</br>`--A` | -| tcl | 8.5.15 | `--A` | -| tcsh | 6.18.01-intel-2015b</br>6.19.00 | `US-`</br>`-SA` | -| tensorboard | 1.6.0-Py-3.6 | `-S-` | -| Tensorflow | 1.1.0</br>1.1.0-CUDA-7.5.18-Python-3.6.1</br>1.1.0-CUDA-8.0.44-Python-3.6.1</br>1.2.0-intel-2017b-mkl</br>1.2.0-GCC-7.1.0-2.28</br>1.2.1</br>1.3.0</br>1.3.0-intel-2017b-mkl</br>1.6.0rc0</br>1.6.0rc0-CUDA-9.0.176-Python-3.6.1</br>1.6.0rc0-Py-3.6</br>1.6.0rc0-Py-3.6-CUDA-9.0.176 | `-SA`</br>`--A`</br>`--A`</br>`-S-`</br>`-S-`</br>`--A`</br>`-S-`</br>`-S-`</br>`-S-`</br>`--A`</br>`-S-`</br>`--A` | -| tensorflow-tensorboard | 1.5.1-Py-3.6 | `-S-` | -| termcolor | 1.1.0-Py-3.6 | `-S-` | -| Theano | 0.9.0-Python-3.6.1</br>1.0.1-Py-3.6 | `-SA`</br>`-S-` | -| Tix | 8.1.4-intel-2017a | `-S-` | -| tk | 8.5.15 | `--A` | -| Tk | 8.5.12</br>8.5.12-intel-2015b</br>8.6.3</br>8.6.4-foss-2015b-no-X11</br>8.6.4-foss-2016a-no-X11</br>8.6.4-intel-2015b-no-X11</br>8.6.4-intel-2017.00-no-X11</br>8.6.4-no-X11</br>8.6.5</br>8.6.5-intel-2017a</br>8.6.6</br>8.6.7-GCC-6.3.0-2.27 | `--A`</br>`US-`</br>`-SA`</br>`US-`</br>`--A`</br>`-SA`</br>`--A`</br>`--A`</br>`--A`</br>`-SA`</br>`USA`</br>`--A` | -| tmux | 2.3 | `-SA` | -| Togl | 1.7-intel-2017a | `-S-` | -| toolz | 0.9.0-Py-3.6 | `-SA` | -| tornado | 4.5.3-Py-2.7 | `-S-` | -| totalview | 8.12</br>8.13 | `--A`</br>`--A` | -| TotalView | 8.15.4-6-linux-x86-64</br>2018.1.12</br>2018.2.6 | `-S-`</br>`-S-`</br>`-S-` | -| trilinos | 11.2.3-gcc-openmpi-mkl-dbg</br>11.2.3-gcc-openmpi-mkl-opt</br>11.2.3-icc | `--A`</br>`--A`</br>`--A` | -| Trilinos | 12.10.1-intel-2017a-Python-2.7.11</br>12.10.1-intel-2017a-Python-2.7.11-test | `-SA`</br>`-S-` | -| Trimmomatic | 0.35-Java-1.7.0_79 | `-S-` | -| TRIQS | 1.4.1-foss-2017a | `-S-` | -| turbovnc | 1.2.2</br>1.2.3 | `--A`</br>`-S-` | -| Ubuntu | 16.04</br>16.04-GPU</br>16.04-OpenFOAM | `-SA`</br>`--A`</br>`-S-` | -| urllib3 | 1.22-Py-3.6 | `-SA` | -| util-linux | 2.26.1</br>2.26.1-foss-2015g</br>2.28-intel-2016a</br>2.29</br>2.29.2</br>2.32 | `-SA`</br>`-S-`</br>`--A`</br>`--A`</br>`USA`</br>`-SA` | -| Valgrind | 3.11.0-foss-2015b</br>3.11.0-intel-2015b</br>3.13.0-intel-2017b | `-S-`</br>`-S-`</br>`-S-` | -| valgrind | 3.9.0-impi | `--A` | -| Vampir | 8.5.0</br>9.0.0 | `-SA`</br>`-S-` | -| vampir | 8.2 | `--A` | -| VampirServer | 8.5.0-intel-2015b</br>9.0.0-intel-2015b | `-S-`</br>`-S-` | -| VASP | 5.4.1-intel-2015b-24Jun15</br>5.4.4-intel-2016a-CUDA-8.0.44-mkl=sequential</br>5.4.4-intel-2017a-mkl=cluster</br>5.4.4-intel-2017a-mkl=paralel</br>5.4.4-intel-2017a-mkl=sequential</br>5.4.4-intel-2017b-mkl=cluster</br>5.4.4-intel-2017c-CUDA-9.1.85-mkl=sequential | `USA`</br>`--A`</br>`USA`</br>`USA`</br>`USA`</br>`-SA`</br>`--A` | -| vde2 | 2.3.2 | `--A` | -| VDE2 | 2.3.2-GCC-4.4.7-system | `US-` | -| virtualenv | 15.1.0-Py-2.7 | `-S-` | -| virtualgl | 2.4 | `--A` | -| VirtualGL | 2.4.1 | `-S-` | -| VisIt | 2.10.0 | `US-` | -| VTK | 6.3.0-intel-2017a-Python-2.7.13</br>7.1.1-intel-2017a-Python-2.7.13 | `-SA`</br>`-SA` | -| VTune | 2017_update5</br>2018_update3 | `-S-`</br>`-SA` | -| webencodings | 0.5.1-Py-3.6 | `-S-` | -| Werkzeug | 0.14.1-Py-3.6 | `-S-` | -| wheel | 0.30.0-Py-3.6 | `-S-` | -| wien2k | 13.1</br>14.2 | `--A`</br>`--A` | -| wine | 1.7.29 | `--A` | -| Wine | 1.7.29-GCC-4.4.7-system</br>1.7.29-GNU-5.1.0-2.25 | `-S-`</br>`-S-` | -| X11 | 20160819</br>20170314 | `USA`</br>`USA` | -| x264 | 20160430</br>20160430-intel-2017a | `--A`</br>`-S-` | -| x86_adapt | github | `-S-` | -| xbitmaps | 1.1.1</br>1.1.1-foss-2015g</br>1.1.1-intel-2015b | `--A`</br>`-S-`</br>`-S-` | -| xcb-proto | 1.10-Python-2.7.8</br>1.11</br>1.11-foss-2015g-Python-2.7.9</br>1.11-intel-2015b-Python-2.7.9</br>1.11-Python-2.7.9 | `-S-`</br>`-SA`</br>`-S-`</br>`-S-`</br>`-SA` | -| xcb-util | 0.4.0 | `--A` | -| xcb-util-image | 0.4.0 | `--A` | -| xcb-util-keysyms | 0.4.0 | `--A` | -| xcb-util-renderutil | 0.3.9 | `--A` | -| xcb-util-wm | 0.4.1 | `--A` | -| xdrfile | 1.1.4-foss-2015g</br>1.1.4-foss-2016a</br>1.1.4-intel-2015b | `-SA`</br>`-SA`</br>`--A` | -| xextproto | 7.3.0</br>7.3.0-foss-2015g</br>7.3.0-foss-2016a</br>7.3.0-intel-2015b</br>7.3.0-intel-2016a | `-SA`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-` | -| xineramaproto | 1.2.1</br>1.2.1-intel-2015b | `-SA`</br>`-S-` | -| XKeyboardConfig | 2.21 | `-S-` | -| XML-Parser | 2.44 | `-S-` | -| xorg-macros | 1.17</br>1.17-foss-2015g</br>1.19.0-foss-2016a</br>1.19.0-intel-2016a</br>1.19.1 | `-SA`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-` | -| xproto | 7.0.26</br>7.0.26-foss-2015g</br>7.0.26-intel-2015b</br>7.0.28</br>7.0.28-foss-2016a</br>7.0.28-intel-2016a | `-SA`</br>`-S-`</br>`-S-`</br>`-SA`</br>`-S-`</br>`-S-` | -| xtrans | 1.3.4</br>1.3.4-intel-2015b</br>1.3.5</br>1.3.5-foss-2015g</br>1.3.5-foss-2016a</br>1.3.5-intel-2015b</br>1.3.5-intel-2016a | `--A`</br>`-S-`</br>`-SA`</br>`-S-`</br>`-S-`</br>`-S-`</br>`-S-` | -| Xvfb | 1.17.4 | `-S-` | -| XZ | 5.2.2</br>5.2.2-foss-2016a</br>5.2.2-intel-2017.00</br>5.2.3 | `-SA`</br>`-SA`</br>`--A`</br>`USA` | -| Yasm | 1.3.0</br>1.3.0-intel-2017a | `--A`</br>`-S-` | -| zlib | 1.2.7-intel-2015b</br>1.2.8</br>1.2.8-foss-2015b</br>1.2.8-foss-2015g</br>1.2.8-foss-2016a</br>1.2.8-gompi-2015e</br>1.2.8-ictce-7.3.5</br>1.2.8-intel-2015b</br>1.2.8-intel-2016.01</br>1.2.8-intel-2016a</br>1.2.8-intel-2017.00</br>1.2.8-GCCcore-5.3.0</br>1.2.8-GCCcore-5.3.1-snapshot-20160419</br>1.2.8-GCCcore-6.3.0</br>1.2.8-GNU-5.1.0-2.25-intel-2015b</br>1.2.11</br>1.2.11-foss-2017a</br>1.2.11-GCCcore-6.3.0 | `US-`</br>`USA`</br>`US-`</br>`USA`</br>`-SA`</br>`-S-`</br>`-S-`</br>`USA`</br>`-SA`</br>`--A`</br>`-SA`</br>`-S-`</br>`-S-`</br>`--A`</br>`-S-`</br>`USA`</br>`-S-`</br>`-SA` | -| zsh | 5.2-foss-2018a | `-S-` | - ----8<--- "modules_matrix_search.md" diff --git a/docs.it4i/modules-salomon-phi.md b/docs.it4i/modules-salomon-phi.md deleted file mode 100644 index b28ea1f1cd3792a4e898fcb219de195d8b35a7b4..0000000000000000000000000000000000000000 --- a/docs.it4i/modules-salomon-phi.md +++ /dev/null @@ -1,79 +0,0 @@ -# Available Modules - -## Compiler - -| Module | Description | -| ------ | ----------- | -| [icc](http://software.intel.com/en-us/intel-compilers/) | Intel C and C++ compilers | - -## Data - -| Module | Description | -| ------ | ----------- | -| [HDF5](http://www.hdfgroup.org/HDF5/) | HDF5 is a unique technology suite that makes possible the management of extremely large and complex data collections. | - -## Devel - -| Module | Description | -| ------ | ----------- | -| [devel_environment](https://docs.it4i.cz/software/mic/mic_environment) | Devel environment for intel xeon phi GCC 5.1.1 Python 2.7.12 Perl 5.14.2 CMake 2.8.7 Make 3.82 ncurses 5.9 ... | -| [M4](http://www.gnu.org/software/m4/m4.html) | GNU M4 is an implementation of the traditional Unix macro processor. It is mostly SVR4 compatible although it has some extensions (for example, handling more than 9 positional parameters to macros). GNU M4 also has built-in functions for including files, running shell commands, doing arithmetic, etc. | -| [ncurses](http://www.gnu.org/software/ncurses/) | The Ncurses (new curses) library is a free software emulation of curses in System V Release 4.0, and more. It uses Terminfo format, supports pads and color and multiple highlights and forms characters and function-key mapping, and has all the other SYSV-curses enhancements over BSD Curses. | - -## Lang - -| Module | Description | -| ------ | ----------- | -| [Bison](http://www.gnu.org/software/bison) | Bison is a general-purpose parser generator that converts an annotated context-free grammar into a deterministic LR or generalized LR (GLR) parser employing LALR(1) parser tables. | -| [flex](http://flex.sourceforge.net/) | Flex (Fast Lexical Analyzer) is a tool for generating scanners. A scanner, sometimes called a tokenizer, is a program which recognizes lexical patterns in text. | -| [Tcl](http://www.tcl.tk/) | Tcl (Tool Command Language) is a very powerful but easy to learn dynamic programming language, suitable for a very wide range of uses, including web and desktop applications, networking, administration, testing and many more. | - -## Lib - -| Module | Description | -| ------ | ----------- | -| [libreadline](http://cnswww.cns.cwru.edu/php/chet/readline/rltop.html) | The GNU Readline library provides a set of functions for use by applications that allow users to edit command lines as they are typed in. Both Emacs and vi editing modes are available. The Readline library includes additional functions to maintain a list of previously-entered command lines, to recall and perhaps reedit those lines, and perform csh-like history expansion on previous commands. | -| [zlib](http://www.zlib.net/) | zlib is designed to be a free, general-purpose, legally unencumbered -- that is, not covered by any patents -- lossless data-compression library for use on virtually any computer hardware and operating system. | - -## Math - -| Module | Description | -| ------ | ----------- | -| GMP | | -| [Octave](http://www.gnu.org/software/octave/) | GNU Octave is a high-level interpreted language, primarily intended for numerical computations. | - -## Mpi - -| Module | Description | -| ------ | ----------- | -| [impi](http://software.intel.com/en-us/intel-mpi-library/) | Intel MPI Library, compatible with MPICH ABI | - -## Numlib - -| Module | Description | -| ------ | ----------- | -| [imkl](http://software.intel.com/en-us/intel-mkl/) | Intel Math Kernel Library is a library of highly optimized, extensively threaded math routines for science, engineering, and financial applications that require maximum performance. Core math functions include BLAS, LAPACK, ScaLAPACK, Sparse Solvers, Fast Fourier Transforms, Vector Math, and more. | - -## Toolchain - -| Module | Description | -| ------ | ----------- | -| [iccifort](http://software.intel.com/en-us/intel-cluster-toolkit-compiler/) | Intel C, C++ & Fortran compilers | -| [ifort](http://software.intel.com/en-us/intel-compilers/) | Intel Fortran compiler | -| [iimpi](http://software.intel.com/en-us/intel-cluster-toolkit-compiler/) | Intel C/C++ and Fortran compilers, alongside Intel MPI. | -| [intel](http://software.intel.com/en-us/intel-cluster-toolkit-compiler/) | Compiler toolchain including Intel compilers, Intel MPI and Intel Math Kernel Library (MKL). | - -## Tools - -| Module | Description | -| ------ | ----------- | -| [bzip2](http://www.bzip.org/) | bzip2 is a freely available, patent free, high-quality data compressor. It typically compresses files to within 10% to 15% of the best available techniques (the PPM family of statistical compressors), whilst being around twice as fast at compression and six times faster at decompression. | -| [cURL](http://curl.haxx.se) | libcurl is a free and easy-to-use client-side URL transfer library | -| [expat](http://expat.sourceforge.net/) | Expat is an XML parser library written in C. It is a stream-oriented parser in which an application registers handlers for things the parser might find in the XML document (like start tags) | -| OpenSSL | | - -## Vis - -| Module | Description | -| ------ | ----------- | -| [gettext](http://www.gnu.org/software/gettext/) | GNU `gettext' is an important step for the GNU Translation Project, as it is an asset on which we may build many other steps. This package offers to programmers, translators, and even users, a well integrated set of tools and documentation | diff --git a/docs.it4i/modules-salomon-uv.md b/docs.it4i/modules-salomon-uv.md deleted file mode 100644 index 69d27cdeb452c94dfaf5c43e73cd729af54cbcb8..0000000000000000000000000000000000000000 --- a/docs.it4i/modules-salomon-uv.md +++ /dev/null @@ -1,206 +0,0 @@ -# Available Modules - -## Bio - -| Module | Description | -| ------ | ----------- | -| [FastQC](http://www.bioinformatics.babraham.ac.uk/projects/download.html) | A quality control application for high throughput sequence data | -| [GATK](http://www.broadinstitute.org/gatk/) | The Genome Analysis Toolkit or GATK is a software package developed at the Broad Institute to analyse next-generation resequencing data. The toolkit offers a wide variety of tools, with a primary focus on variant discovery and genotyping as well as strong emphasis on data quality assurance. Its robust architecture, powerful processing engine and high-performance computing features make it capable of taking on projects of any size. | -| [SnpEff](http://snpeff.sourceforge.net/) | Genetic variant annotation and effect prediction toolbox. | - -## Cae - -| Module | Description | -| ------ | ----------- | -| COMSOL | | -| [OpenFOAM](http://www.openfoam.com/) | OpenFOAM is a free, open source CFD software package. OpenFOAM has an extensive range of features to solve anything from complex fluid flows involving chemical reactions, turbulence and heat transfer, to solid dynamics and electromagnetics. | - -## Chem - -| Module | Description | -| ------ | ----------- | -| [ABINIT](http://www.abinit.org/) | Abinit is a plane wave pseudopotential code for doing condensed phase electronic structure calculations using DFT. | -| [Libint](https://sourceforge.net/p/libint/) | Libint library is used to evaluate the traditional (electron repulsion) and certain novel two-body matrix elements (integrals) over Cartesian Gaussian functions used in modern atomic and molecular theory. | -| [libxc](http://www.tddft.org/programs/octopus/wiki/index.php/Libxc) | Libxc is a library of exchange-correlation functionals for density-functional theory. The aim is to provide a portable, well tested and reliable set of exchange and correlation functionals. | - -## Compiler - -| Module | Description | -| ------ | ----------- | -| [GCC](http://gcc.gnu.org/) | The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Java, and Ada, as well as libraries for these languages (libstdc++, libgcj,...). | -| GCCcore | | -| icc | | -| [ifort](http://software.intel.com/en-us/intel-compilers/) | Fortran compiler from Intel | -| [LLVM](http://llvm.org/) | The LLVM Core libraries provide a modern source- and target-independent optimizer, along with code generation support for many popular CPUs (as well as some less common ones!) These libraries are built around a well specified code representation known as the LLVM intermediate representation ("LLVM IR"). The LLVM Core libraries are well documented, and it is particularly easy to invent your own language (or port an existing compiler) to use LLVM as an optimizer and code generator. | - -## Data - -| Module | Description | -| ------ | ----------- | -| [GDAL](http://www.gdal.org/) | GDAL is a translator library for raster geospatial data formats that is released under an X/MIT style Open Source license by the Open Source Geospatial Foundation. As a library, it presents a single abstract data model to the calling application for all supported formats. It also comes with a variety of useful commandline utilities for data translation and processing. | -| [HDF5](http://www.hdfgroup.org/HDF5/) | HDF5 is a unique technology suite that makes possible the management of extremely large and complex data collections. | -| [netCDF](http://www.unidata.ucar.edu/software/netcdf/) | NetCDF (network Common Data Form) is a set of software libraries and machine-independent data formats that support the creation, access, and sharing of array-oriented scientific data. | -| [netCDF-Fortran](http://www.unidata.ucar.edu/software/netcdf/) | NetCDF (network Common Data Form) is a set of software libraries and machine-independent data formats that support the creation, access, and sharing of array-oriented scientific data. | - -## Devel - -| Module | Description | -| ------ | ----------- | -| [Autoconf](http://www.gnu.org/software/autoconf/) | Autoconf is an extensible package of M4 macros that produce shell scripts to automatically configure software source code packages. These scripts can adapt the packages to many kinds of UNIX-like systems without manual user intervention. Autoconf creates a configuration script for a package from a template file that lists the operating system features that the package can use, in the form of M4 macro calls. | -| [Automake](http://www.gnu.org/software/automake/automake.html) | Automake: GNU Standards-compliant Makefile generator | -| [Autotools](http://autotools.io) | This bundle collect the standard GNU build tools: Autoconf, Automake and libtool | -| [Boost](http://www.boost.org/) | Boost provides free peer-reviewed portable C++ source libraries. | -| [CMake](http://www.cmake.org) | CMake, the cross-platform, open-source build system. CMake is a family of tools designed to build, test and package software. | -| [Doxygen](http://www.doxygen.org) | Doxygen is a documentation system for C++, C, Java, Objective-C, Python, IDL (Corba and Microsoft flavors), Fortran, VHDL, PHP, C#, and to some extent D. | -| [M4](http://www.gnu.org/software/m4/m4.html) | GNU M4 is an implementation of the traditional Unix macro processor. It is mostly SVR4 compatible although it has some extensions (for example, handling more than 9 positional parameters to macros). GNU M4 also has built-in functions for including files, running shell commands, doing arithmetic, etc. | -| [make](http://www.gnu.org/software/make/make.html) | make-3.82: GNU version of make utility | -| [Mako](http://www.makotemplates.org) | A super-fast templating language that borrows the best ideas from the existing templating languages | -| [Maven](http://maven.apache.org/index.html) | Binary maven install, Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information. | -| [ncurses](http://www.gnu.org/software/ncurses/) | The Ncurses (new curses) library is a free software emulation of curses in System V Release 4.0, and more. It uses Terminfo format, supports pads and color and multiple highlights and forms characters and function-key mapping, and has all the other SYSV-curses enhancements over BSD Curses. | -| [PCRE](http://www.pcre.org/) | The PCRE library is a set of functions that implement regular expression pattern matching using the same syntax and semantics as Perl 5. | -| [pkg-config](http://www.freedesktop.org/wiki/Software/pkg-config/) | pkg-config is a helper tool used when compiling applications and libraries. It helps you insert the correct compiler options on the command line so an application can use gcc -o test test.c `pkg-config --libs --cflags glib-2.0` for instance, rather than hard-coding values on where to find glib (or other libraries). | -| [Qt](http://qt-project.org/) | Qt is a comprehensive cross-platform C++ application framework. | -| [Qt5](http://qt.io/) | Qt is a comprehensive cross-platform C++ application framework. | -| [sparsehash](https://github.com/sparsehash/sparsehash) | An extremely memory-efficient hash_map implementation. 2 bits/entry overhead! The SparseHash library contains several hash-map implementations, including implementations that optimize for space or speed. | -| [SQLite](http://www.sqlite.org/) | SQLite: SQL Database Engine in a C Library | -| [SWIG](http://www.swig.org/) | SWIG is a software development tool that connects programs written in C and C++ with a variety of high-level programming languages. | -| [xorg-macros](http://cgit.freedesktop.org/xorg/util/macros) | X.org macros utilities. | - -## Lang - -| Module | Description | -| ------ | ----------- | -| [Bison](http://www.gnu.org/software/bison) | Bison is a general-purpose parser generator that converts an annotated context-free grammar into a deterministic LR or generalized LR (GLR) parser employing LALR(1) parser tables. | -| flex | | -| [Java](http://java.com/) | Java Platform, Standard Edition (Java SE) lets you develop and deploy Java applications on desktops and servers. | -| [Lua](http://www.lua.org/) | Lua is a powerful, fast, lightweight, embeddable scripting language. Lua combines simple procedural syntax with powerful data description constructs based on associative arrays and extensible semantics. Lua is dynamically typed, runs by interpreting bytecode for a register-based virtual machine, and has automatic memory management with incremental garbage collection, making it ideal for configuration, scripting, and rapid prototyping. | -| [Mono](http://mono-framework.com) | An open source, cross-platform, implementation of C# and the CLR that is binary compatible with Microsoft.NET. | -| [NASM](http://www.nasm.us/) | NASM: General-purpose x86 assembler | -| [OpenCL-runtime](https://software.intel.com/en-us/intel-opencl) | OpenCL™ is the first open, royalty-free standard for cross-platform, parallel programming of modern processors found in personal computers, servers and handheld/embedded devices. OpenCL (Open Computing Language) greatly improves speed and responsiveness for a wide spectrum of applications in numerous market categories from gaming and entertainment to scientific and medical software. | -| [Perl](http://www.perl.org/) | Larry Wall's Practical Extraction and Report Language | -| [Python](http://python.org/) | Python is a programming language that lets you work more quickly and integrate your systems more effectively. | -| [R](http://www.r-project.org/) | R is a free software environment for statistical computing and graphics. | -| [Tcl](http://www.tcl.tk/) | Tcl (Tool Command Language) is a very powerful but easy to learn dynamic programming language, suitable for a very wide range of uses, including web and desktop applications, networking, administration, testing and many more. | - -## Lib - -| Module | Description | -| ------ | ----------- | -| [libdrm](http://dri.freedesktop.org) | Direct Rendering Manager runtime library. | -| [libffi](http://sourceware.org/libffi/) | The libffi library provides a portable, high level programming interface to various calling conventions. This allows a programmer to call any function specified by a call interface description at run-time. | -| [libjpeg-turbo](http://sourceforge.net/libjpeg-turbo/) | libjpeg-turbo is a fork of the original IJG libjpeg which uses SIMD to accelerate baseline JPEG compression and decompression. libjpeg is a library that implements JPEG image encoding, decoding and transcoding. | -| [libpng](http://www.libpng.org/pub/png/libpng.html) | libpng is the official PNG reference library | -| [libpthread-stubs](http://xcb.freedesktop.org/) | The X protocol C-language Binding (XCB) is a replacement for Xlib featuring a small footprint, latency hiding, direct access to the protocol, improved threading support, and extensibility. | -| [libreadline](http://cnswww.cns.cwru.edu/php/chet/readline/rltop.html) | The GNU Readline library provides a set of functions for use by applications that allow users to edit command lines as they are typed in. Both Emacs and vi editing modes are available. The Readline library includes additional functions to maintain a list of previously-entered command lines, to recall and perhaps reedit those lines, and perform csh-like history expansion on previous commands. | -| [libsndfile](http://www.mega-nerd.com/libsndfile) | Libsndfile is a C library for reading and writing files containing sampled sound (such as MS Windows WAV and the Apple/SGI AIFF format) through one standard library interface. | -| [LibTIFF](http://www.remotesensing.org/libtiff/) | tiff: Library and tools for reading and writing TIFF data files | -| libtool | | -| [libxml2](http://xmlsoft.org/) | Libxml2 is the XML C parser and toolchain developed for the Gnome project (but usable outside of the Gnome platform). | -| [nettle](http://www.lysator.liu.se/~nisse/nettle/) | Nettle is a cryptographic library that is designed to fit easily in more or less any context: In crypto toolkits for object-oriented languages (C++, Python, Pike, ...), in applications like LSH or GNUPG, or even in kernel space. | -| [PROJ](http://trac.osgeo.org/proj/) | Program proj is a standard Unix filter function which converts geographic longitude and latitude coordinates into cartesian coordinates | -| [tbb](http://software.intel.com/en-us/articles/intel-tbb/) | Intel Threading Building Blocks 4.0 (Intel TBB) is a widely used, award-winning C++ template library for creating reliable, portable, and scalable parallel applications. Use Intel TBB for a simple and rapid way of developing robust task-based parallel applications that scale to available processor cores, are compatible with multiple environments, and are easier to maintain. Intel TBB is the most proficient way to implement future-proof parallel applications that tap into the power and performance of multicore and manycore hardware platforms. | -| [zlib](http://www.zlib.net/) | zlib is designed to be a free, general-purpose, legally unencumbered -- that is, not covered by any patents -- lossless data-compression library for use on virtually any computer hardware and operating system. | - -## Math - -| Module | Description | -| ------ | ----------- | -| [Eigen](http://eigen.tuxfamily.org/index.php?title=Main_Page) | Eigen is a C++ template library for linear algebra: matrices, vectors, numerical solvers, and related algorithms. | -| [GEOS](http://trac.osgeo.org/geos) | GEOS (Geometry Engine - Open Source) is a C++ port of the Java Topology Suite (JTS) | -| GMP | | -| [METIS](http://glaros.dtc.umn.edu/gkhome/metis/metis/overview) | METIS is a set of serial programs for partitioning graphs, partitioning finite element meshes, and producing fill reducing orderings for sparse matrices. The algorithms implemented in METIS are based on the multilevel recursive-bisection, multilevel k-way, and multi-constraint partitioning schemes. | -| [MPFR](http://www.mpfr.org) | The MPFR library is a C library for multiple-precision floating-point computations with correct rounding. | -| [SCOTCH](http://gforge.inria.fr/projects/scotch/) | Software package and libraries for sequential and parallel graph partitioning, static mapping, and sparse matrix block ordering, and sequential mesh and hypergraph partitioning. | - -## Mpi - -| Module | Description | -| ------ | ----------- | -| [impi](http://software.intel.com/en-us/intel-mpi-library/) | The Intel(R) MPI Library for Linux* OS is a multi-fabric message passing library based on ANL MPICH2 and OSU MVAPICH2. The Intel MPI Library for Linux OS implements the Message Passing Interface, version 2 (MPI-2) specification. | -| [OpenMPI](http://www.open-mpi.org/) | The Open MPI Project is an open source MPI-2 implementation. | - -## Numlib - -| Module | Description | -| ------ | ----------- | -| [CGAL](http://www.cgal.org/) | The goal of the CGAL Open Source Project is to provide easy access to efficient and reliable geometric algorithms in the form of a C++ library. | -| [cuDNN](https://developer.nvidia.com/cudnn) | The NVIDIA CUDA Deep Neural Network library (cuDNN) is a GPU-accelerated library of primitives for deep neural networks. | -| [FFTW](http://www.fftw.org) | FFTW is a C subroutine library for computing the discrete Fourier transform (DFT) in one or more dimensions, of arbitrary input size, and of both real and complex data. | -| [imkl](http://software.intel.com/en-us/intel-mkl/) | Intel Math Kernel Library is a library of highly optimized, extensively threaded math routines for science, engineering, and financial applications that require maximum performance. Core math functions include BLAS, LAPACK, ScaLAPACK, Sparse Solvers, Fast Fourier Transforms, Vector Math, and more. | -| [NLopt](http://ab-initio.mit.edu/wiki/index.php/NLopt) | NLopt is a free/open-source library for nonlinear optimization, providing a common interface for a number of different free optimization routines available online as well as original implementations of various other algorithms. | -| [OpenBLAS](http://xianyi.github.com/OpenBLAS/) | OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version. | -| [ScaLAPACK](http://www.netlib.org/scalapack/) | The ScaLAPACK (or Scalable LAPACK) library includes a subset of LAPACK routines redesigned for distributed memory MIMD parallel computers. | - -## Phys - -| Module | Description | -| ------ | ----------- | -| [VASP](http://www.vasp.at) | The Vienna Ab initio Simulation Package (VASP) is a computer program for atomic scale materials modelling, e.g. electronic structure calculations and quantum-mechanical molecular dynamics, from first principles. | - -## System - -| Module | Description | -| ------ | ----------- | -| [CUDA](https://developer.nvidia.com/cuda-toolkit) | CUDA (formerly Compute Unified Device Architecture) is a parallel computing platform and programming model created by NVIDIA and implemented by the graphics processing units (GPUs) that they produce. CUDA gives developers access to the virtual instruction set and memory of the parallel computational elements in CUDA GPUs. | -| [hwloc](http://www.open-mpi.org/projects/hwloc/) | The Portable Hardware Locality (hwloc) software package provides a portable abstraction (across OS, versions, architectures, ...) of the hierarchical topology of modern architectures, including NUMA memory nodes, sockets, shared caches, cores and simultaneous multithreading. It also gathers various system attributes such as cache and memory information as well as the locality of I/O devices such as network interfaces, InfiniBand HCAs or GPUs. It primarily aims at helping applications with gathering information about modern computing hardware so as to exploit it accordingly and efficiently. | -| [libpciaccess](http://cgit.freedesktop.org/xorg/lib/libpciaccess/) | Generic PCI access library. | - -## Toolchain - -| Module | Description | -| ------ | ----------- | -| foss | GNU Compiler Collection (GCC) based compiler toolchain, including OpenMPI for MPI support, OpenBLAS (BLAS and LAPACK support), FFTW and ScaLAPACK. | -| [GNU](http://www.gnu.org/software/) | Compiler-only toolchain with GCC and binutils. | -| gompi | GNU Compiler Collection (GCC) based compiler toolchain, including OpenMPI for MPI support. | -| [iccifort](http://software.intel.com/en-us/intel-cluster-toolkit-compiler/) | Intel C, C++ and Fortran compilers | -| [iimpi](http://software.intel.com/en-us/intel-cluster-toolkit-compiler/) | Intel C/C++ and Fortran compilers, alongside Intel MPI. | -| [intel](http://software.intel.com/en-us/intel-cluster-toolkit-compiler/) | Intel Cluster Toolkit Compiler Edition provides Intel C/C++ and Fortran compilers, Intel MPI & Intel MKL. | -| [PRACE](http://www.prace-ri.eu/PRACE-Common-Production) | The PRACE Common Production Environment (PCPE) is a set of software tools and libraries that are planned to be available on all PRACE execution sites. The PCPE also defines a set of environment variables that try to make compilation on all sites as homogeneous and simple as possible. | -| [Py](https://www.python.org) | Python 2.7 toolchain | - -## Tools - -| Module | Description | -| ------ | ----------- | -| [Bash](http://www.gnu.org/software/bash) | Bash is an sh-compatible command language interpreter that executes commands read from the standard input or from a file. Bash also incorporates useful features from the Korn and C shells (ksh and csh). | -| [binutils](http://directory.fsf.org/project/binutils/) | binutils: GNU binary utilities | -| [BLCR](http://crd.lbl.gov/departments/computer-science/CLaSS/research/BLCR/) | Future Technologies Group researchers are developing a hybrid kernel/user implementation of checkpoint/restart. Their goal is to provide a robust, production quality implementation that checkpoints a wide range of applications, without requiring changes to be made to application code. This work focuses on checkpointing parallel applications that communicate through MPI, and on compatibility with the software suite produced by the SciDAC Scalable Systems Software ISIC. | -| [bzip2](http://www.bzip.org/) | bzip2 is a freely available, patent free, high-quality data compressor. It typically compresses files to within 10% to 15% of the best available techniques (the PPM family of statistical compressors), whilst being around twice as fast at compression and six times faster at decompression. | -| [cURL](http://curl.haxx.se) | libcurl is a free and easy-to-use client-side URL transfer library, supporting DICT, FILE, FTP, FTPS, Gopher, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMTP, SMTPS, Telnet and TFTP. libcurl supports SSL certificates, HTTP POST, HTTP PUT, FTP uploading, HTTP form based upload, proxies, cookies, user+password authentication (Basic, Digest, NTLM, Negotiate, Kerberos), file transfer resume, http proxy tunneling and more. | -| [DMTCP](http://dmtcp.sourceforge.net/index.html) | DMTCP (Distributed MultiThreaded Checkpointing) transparently checkpoints a single-host or distributed computation in user-space -- with no modifications to user code or to the O/S. | -| EasyBuild | | -| [expat](http://expat.sourceforge.net/) | Expat is an XML parser library written in C. It is a stream-oriented parser in which an application registers handlers for things the parser might find in the XML document (like start tags) | -| [git](http://git-scm.com/) | Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency. | -| [gzip](http://www.gnu.org/software/gzip/) | gzip (GNU zip) is a popular data compression program as a replacement for compress | -| MATLAB | | -| [Mercurial](http://mercurial.selenic.com/) | Mercurial is a free, distributed source control management tool. It efficiently handles projects of any size and offers an easy and intuitive interface. | -| [moreutils](https://joeyh.name/code/moreutils/) | Moreutils is a growing collection of the unix tools that nobody thought to write long ago when unix was young. | -| [numactl](http://oss.sgi.com/projects/libnuma/) | The numactl program allows you to run your application program on specific cpu's and memory nodes. It does this by supplying a NUMA memory policy to the operating system before running your program. The libnuma library provides convenient ways for you to add NUMA memory policies into your own program. | -| pigz | | -| [QEMU](http://wiki.qemu.org/Main_Page) | QEMU is a generic and open source machine emulator and virtualizer. | -| [RStudio](https://www.rstudio.com) | RStudio is a set of integrated tools designed to help you be more productive with R. It includes a console, syntax-highlighting editor that supports direct code execution, as well as tools for plotting, history, debugging and workspace management. | -| Singularity | | -| [Szip](http://www.hdfgroup.org/doc_resource/SZIP/) | Szip compression software, providing lossless compression of scientific data | -| [tcsh](http://www.tcsh.org) | Tcsh is an enhanced, but completely compatible version of the Berkeley UNIX C shell (csh). It is a command language interpreter usable both as an interactive login shell and a shell script command processor. It includes a command-line editor, programmable word completion, spelling correction, a history mechanism, job control and a C-like syntax. | -| [util-linux](http://www.kernel.org/pub/linux/utils/util-linux) | Set of Linux utilities | -| [VDE2](http://vde.sourceforge.net) | VDE is an ethernet compliant virtual network that can be spawned over a set of physical computer over the Internet. VDE is part of virtualsquare project. | -| [VTune](http://software.intel.com/en-us/intel-vtune-amplifier-xe) | Intel VTune Amplifier XE 2016 is the premier performance profiler for C, C++, C#, Fortran, Assembly and Java. | -| [XZ](http://tukaani.org/xz/) | xz: XZ utilities | - -## Vis - -| Module | Description | -| ------ | ----------- | -| [cairo](http://cairographics.org) | Cairo is a 2D graphics library with support for multiple output devices. Currently supported output targets include the X Window System (via both Xlib and XCB), Quartz, Win32, image buffers, PostScript, PDF, and SVG file output. Experimental backends include OpenGL, BeOS, OS/2, and DirectFB | -| [fontconfig](http://www.freedesktop.org/software/fontconfig) | Fontconfig is a library designed to provide system-wide font configuration, customization and application access. | -| [freetype](http://freetype.org) | FreeType 2 is a software font engine that is designed to be small, efficient, highly customizable, and portable while capable of producing high-quality output (glyph images). It can be used in graphics libraries, display servers, font conversion tools, text image generation tools, and many other products as well. | -| [gettext](http://www.gnu.org/software/gettext/) | GNU `gettext' is an important step for the GNU Translation Project, as it is an asset on which we may build many other steps. This package offers to programmers, translators, and even users, a well integrated set of tools and documentation | -| [GLib](http://www.gtk.org/) | GLib is one of the base libraries of the GTK+ project | -| [JasPer](http://www.ece.uvic.ca/~frodo/jasper/) | The JasPer Project is an open-source initiative to provide a free software-based reference implementation of the codec specified in the JPEG-2000 Part-1 standard. | -| [libGLU](ftp://ftp.freedesktop.org/pub/mesa/glu/) | The OpenGL Utility Library (GLU) is a computer graphics library for OpenGL. | -| [Mesa](http://www.mesa3d.org/) | Mesa is an open-source implementation of the OpenGL specification - a system for rendering interactive 3D graphics. | -| [ParaView](http://www.paraview.org) | ParaView is a scientific parallel visualizer. | -| [pixman](http://www.pixman.org/) | Pixman is a low-level software library for pixel manipulation, providing features such as image compositing and trapezoid rasterization. Important users of pixman are the cairo graphics library and the X server. | -| [Tk](http://www.tcl.tk/) | Tk is an open source, cross-platform widget toolchain that provides a library of basic elements for building a graphical user interface (GUI) in many different programming languages. | -| [VisIt](https://wci.llnl.gov/simulation/computer-codes/visit) | VisIt is an Open Source, interactive, scalable, visualization, animation and analysis tool | -| [X11](https://www.x.org) | The X Window System (X11) is a windowing system for bitmap displays | diff --git a/docs.it4i/modules-salomon.md b/docs.it4i/modules-salomon.md deleted file mode 100644 index ff822119fb834a6a7a9b640d30d9c49747855bf0..0000000000000000000000000000000000000000 --- a/docs.it4i/modules-salomon.md +++ /dev/null @@ -1,658 +0,0 @@ -# Available Modules - -## Os - -| Module | Description | -| ------ | ----------- | -| [CentOS](https://www.centos.org/) | The CentOS Project is a community-driven free software effort focused on delivering a robust open source ecosystem. For users, we offer a consistent manageable platform that suits a wide variety of deployments. For open source communities, we offer a solid, predictable base to build upon, along with extensive resources to build, test, release, and maintain their code. We’re also expanding the availability of CentOS images across a number of vendors, providing official images for Amazon, Google, and more. For self-hosted cloud, we also provide a generic cloud-init enabled image. For more information about updates and improvements in CentOS 7, please check out the release notes or the release announcement in the mailing list archive. | -| [Debian](https://www.debian.org/) | Debian is a Unix-like operating system composed entirely of free software packaged by a team of volunteers. The Debian Project was started by Ian Murdock on August 16, 1993, Debian 0.01 was released on September 15, 1993, and the first stable version, 1.1, was released on June 17, 1996. The Debian stable branch is the most popular edition for personal computers and network servers, and is used as a base for many other distributions. The project's work is carried out over the Internet, guided by the Debian Project Leader and three foundational documents: the Debian Social Contract, the Debian Constitution, and the Debian Free Software Guidelines. New distributions are updated continually, and the next candidate is released after a time-based freeze. One of the earliest operating systems based on the Linux kernel, Debian has been developed openly and distributed freely in the spirit of the GNU Project. This decision drew the support of the Free Software Foundation, which sponsored the project for one year from November 1994 to November 1995. When the sponsorship ended, the Debian Project formed Software in the Public Interest to continue supporting development. While all Debian releases are based on the GNU userland and GNU C Library (glibc), kernels other than Linux are also available, including FreeBSD and the GNU Hurd microkernel. | -| [Singularity-wrappers](https://docs.it4i.cz) | Wrappers for Singularity containers (mailto:easybuild@vsb.cz). | -| [Ubuntu](https://www.ubuntu.com/) | Ubuntu is a Debian-based Linux operating system for personal computers, tablets and smartphones, where Ubuntu Touch edition is used. It also runs network servers. That is usually with the Ubuntu Server edition, either on physical or virtual servers (such as on mainframes) or with containers, that is with enterprise-class features. It runs on the most popular architectures, including server-class ARM-based. Ubuntu is published by Canonical Ltd, who offer commercial support. It is based on free software and named after the Southern African philosophy of ubuntu (literally, 'human-ness'), which Canonical Ltd. suggests can be loosely translated as "humanity to others" or "I am what I am because of who we all are". Since Ubuntu 11.04 Natty Narwhal Ubuntu has used Unity as its default user interface for the desktop, but following the release of Ubuntu 17.10 it will move to the GNOME 3 desktop instead, as work on Unity ends. Ubuntu is the most popular operating system running in hosted environments, so–called "clouds", as it is the most popular server Linux distribution. Development of Ubuntu is led by UK-based Canonical Ltd., a company of South African entrepreneur Mark Shuttleworth. Canonical generates revenue through the sale of technical support and other services related to Ubuntu. The Ubuntu project is publicly committed to the principles of open-source software development; people are encouraged to use free software, study how it works, improve upon it, and distribute it. | - -## Bio - -| Module | Description | -| ------ | ----------- | -| [ABySS](http://www.bcgsc.ca/platform/bioinfo/software/abyss) | Assembly By Short Sequences - a de novo, parallel, paired-end sequence assembler | -| [almost](http://www-almost.ch.cam.ac.uk/site) | all atom molecular simulation toolkit - is a fast and flexible molecular modeling environment that provides powerful and efficient algorithms for molecular simulation, homology modeling, de novo design and ab-initio calculations. | -| [BCFtools](http://www.htslib.org/) | Samtools is a suite of programs for interacting with high-throughput sequencing data. BCFtools - Reading/writing BCF2/VCF/gVCF files and calling/filtering/summarising SNP and short indel sequence variants | -| [bcl2fastq2](https://support.illumina.com/sequencing/sequencing_software/bcl2fastq-conversion-software.html) | bcl2fastq Conversion Software both demultiplexes data and converts BCL files generated by Illumina sequencing systems to standard FASTQ file formats for downstream analysis. | -| [BWA](http://bio-bwa.sourceforge.net/) | Burrows-Wheeler Aligner (BWA) is an efficient program that aligns relatively short nucleotide sequences against a long reference sequence such as the human genome. | -| [FastQC](http://www.bioinformatics.babraham.ac.uk/projects/fastqc/) | FastQC is a quality control application for high throughput sequence data. It reads in sequence data in a variety of formats and can either provide an interactive application to review the results of several different QC checks, or create an HTML based report which can be integrated into a pipeline. | -| [GATK](http://www.broadinstitute.org/gatk/) | The Genome Analysis Toolkit or GATK is a software package developed at the Broad Institute to analyse next-generation resequencing data. The toolkit offers a wide variety of tools, with a primary focus on variant discovery and genotyping as well as strong emphasis on data quality assurance. Its robust architecture, powerful processing engine and high-performance computing features make it capable of taking on projects of any size. | -| [GROMACS](http://www.gromacs.org) | GROMACS is a versatile package to perform molecular dynamics, i.e. simulate the Newtonian equations of motion for systems with hundreds to millions of particles. | -| [HTSlib](http://www.htslib.org/) | A C library for reading/writing high-throughput sequencing data. This package includes the utilities bgzip and tabix | -| [picard](http://sourceforge.net/projects/picard) | A set of tools (in Java) for working with next generation sequencing data in the BAM format. | -| [PLUMED](http://www.plumed-code.org) | PLUMED is an open source library for free energy calculations in molecular systems which works together with some of the most popular molecular dynamics engines. Free energy calculations can be performed as a function of many order parameters with a particular focus on biological problems, using state of the art methods such as metadynamics, umbrella sampling and Jarzynski-equation based steered MD. The software, written in C++, can be easily interfaced with both fortran and C/C++ codes. | -| [RELION](http://www2.mrc-lmb.cam.ac.uk/relion/index.php/Main_Page) | RELION (for REgularised LIkelihood OptimisatioN, pronounce rely-on) is a stand-alone computer program that employs an empirical Bayesian approach to refinement of (multiple) 3D reconstructions or 2D class averages in electron cryo-microscopy (cryo-EM). | -| [Rosetta](https://www.rosettacommons.org) | Rosetta is the premier software suite for modeling macromolecular structures. As a flexible, multi-purpose application, it includes tools for structure prediction, design, and remodeling of proteins and nucleic acids. | -| [SAMtools](http://www.htslib.org/) | SAM Tools provide various utilities for manipulating alignments in the SAM format, including sorting, merging, indexing and generating alignments in a per-position format. | -| [SnpEff](http://snpeff.sourceforge.net/) | Genetic variant annotation and effect prediction toolbox. | -| [Trimmomatic](http://www.usadellab.org/cms/?page=trimmomatic) | Trimmomatic performs a variety of useful trimming tasks for illumina paired-end and single ended data.The selection of trimming steps and their associated parameters are supplied on the command line. | - -## Cae - -| Module | Description | -| ------ | ----------- | -| [COMSOL](https://www.comsol.com/) | The COMSOL Multiphysics simulation environment facilitates the steps in the modeling process – defining your geometry, meshing, specifying your physics, solving, and then visualizing your results. It also serves as a platform for the application specific modules. | -| [deMonNano](http://www.demon-software.com) | deMonNano is a software package for density functional theory based tight binding calculations. It is part of the deMon (density of MontrĂ©al) suite of programs. The present version of the code of deMon for DFT is now known as deMon2k. This code and general information about deMon are available at http://www.demon-software.com | -| [Digimat](http://www.mscsoftware.com/product/digimat) | The Nonlinear Multi-scale Material and Structure Modeling Platform - Todays' major challenge is the shift from metal to composite in order to bring significant weight saving in the design. This paradigm however requires a dedicated tool for composite design in order to take into account the specific composite behavior. Classical design tools are not able to describe accurately the local composite material behavior, leading to introduction of safety factors and lack of confidence in the design. | -| [FreeFem++](http://www.freefem.org) | FreeFem++ is a partial differential equation solver. It has its own language. freefem scripts can solve multiphysics non linear systems in 2D and 3D. Problems involving PDE (2d, 3d) from several branches of physics such as fluid-structure interactions require interpolations of data on several meshes and their manipulation within one program. FreeFem++ includes a fast 2^d-tree-based interpolation algorithm and a language for the manipulation of data on multiple meshes (as a follow up of bamg (now a part of FreeFem++ ). FreeFem++ is written in C++ and the FreeFem++ language is a C++ idiom. It runs on Macs, Windows, Unix machines. FreeFem++ replaces the older freefem and freefem+. | -| [HyperWorks](https://altairhyperworks.com/) | Altair HyperMesh is a high-performance finite element pre-processor to prepare even the largest models, starting from import of CAD geometry to exporting an analysis run for various disciplines. This module is licensed for specified users only. For more informations please contact Pavel Marsalek mailto:pavel.marsalek@vsb.cz. | -| [Marc](http://www.mscsoftware.com/product/marc) | Advanced Nonlinear Simulation Solution. Simulate products more accurately with the industry’s leading nonlinear FEA solver technology. | -| [OpenFOAM](http://www.openfoam.com/) | OpenFOAM is a free, open source CFD software package. OpenFOAM has an extensive range of features to solve anything from complex fluid flows involving chemical reactions, turbulence and heat transfer, to solid dynamics and electromagnetics. | - -## Chem - -| Module | Description | -| ------ | ----------- | -| [ABINIT](http://www.abinit.org/) | Abinit is a plane wave pseudopotential code for doing condensed phase electronic structure calculations using DFT. | -| [Amber](http://ambermd.org) | A set of molecular mechanical force fields for the simulation of biomolecules | -| [ASE](https://wiki.fysik.dtu.dk/ase/) | ASE is a python package providing an open source Atomic Simulation Environment in the Python scripting language. | -| [ChronusQ](https://github.com/liresearchgroup/chronusq_public) | ChronusQ is a high-performance computational chemistry software package with a strong emphasis on explicitly time-dependent and post-SCF quantum mechanical methods. | -| [CP2K](http://www.cp2k.org/) | CP2K is a freely available (GPL) program, written in Fortran 95, to perform atomistic and molecular simulations of solid state, liquid, molecular and biological systems. It provides a general framework for different methods such as e.g. density functional theory (DFT) using a mixed Gaussian and plane waves approach (GPW), and classical pair and many-body potentials. | -| [LAMMPS](http://lammps.sandia.gov) | LAMMPS is a classical molecular dynamics code, and an acronym for Large-scale Atomic/Molecular Massively Parallel Simulator. Has potentials for solid-state materials (metals, semiconductors) and soft matter (biomolecules, polymers) and coarse-grained or mesoscopic systems. It can be used to model atoms or, more generically, as a parallel particle simulator at the atomic, meso, or continuum scale. | -| [libctl](http://ab-initio.mit.edu/libctl) | libctl is a free Guile-based library implementing flexible control files for scientific simulations. | -| [Libint](https://sourceforge.net/p/libint/) | Libint library is used to evaluate the traditional (electron repulsion) and certain novel two-body matrix elements (integrals) over Cartesian Gaussian functions used in modern atomic and molecular theory. | -| [libxc](http://www.tddft.org/programs/octopus/wiki/index.php/Libxc) | Libxc is a library of exchange-correlation functionals for density-functional theory. The aim is to provide a portable, well tested and reliable set of exchange and correlation functionals. | -| [Molden](http://www.cmbi.ru.nl/molden/) | Molden is a package for displaying Molecular Density from the Ab Initio packages GAMESS-UK, GAMESS-US and GAUSSIAN and the Semi-Empirical packages Mopac/Ampac | -| [Molpro](http://www.molpro.net) | Molpro quantum chemistry package | -| [NAMD](http://www.ks.uiuc.edu/Research/namd/) | NAMD is a parallel molecular dynamics code designed for high-performance simulation of large biomolecular systems. | -| [NWChem](http://www.nwchem-sw.org) | NWChem aims to provide its users with computational chemistry tools that are scalable both in their ability to treat large scientific computational chemistry problems efficiently, and in their use of available parallel computing resources from high-performance parallel supercomputers to conventional workstation clusters. NWChem software can handle: biomolecules, nanostructures, and solid-state; from quantum to classical, and all combinations; Gaussian basis functions or plane-waves; scaling from one to thousands of processors; properties and relativity. | -| [Octopus](http://www.tddft.org/programs/octopus/wiki/index.php/Main_Page) | Octopus is a scientific program aimed at the ab initio virtual experimentation on a hopefully ever-increasing range of system types. Electrons are described quantum-mechanically within density-functional theory (DFT), in its time-dependent form (TDDFT) when doing simulations in time. Nuclei are described classically as point particles. Electron-nucleus interaction is described within the pseudopotential approximation. | -| [OpenBabel](http://openbabel.org) | Open Babel is a chemical toolbox designed to speak the many languages of chemical data. It's an open, collaborative project allowing anyone to search, convert, analyze, or store data from molecular modeling, chemistry, solid-state materials, biochemistry, or related areas. | -| [ORCA](http://cec.mpg.de/forum/) | ORCA is a flexible, efficient and easy-to-use general purpose tool for quantum chemistry with specific emphasis on spectroscopic properties of open-shell molecules. It features a wide variety of standard quantum chemical methods ranging from semiempirical methods to DFT to single- and multireference correlated ab initio methods. It can also treat environmental and relativistic effects. | -| [PLUMED](http://www.plumed-code.org) | PLUMED is an open source library for free energy calculations in molecular systems which works together with some of the most popular molecular dynamics engines. Free energy calculations can be performed as a function of many order parameters with a particular focus on biological problems, using state of the art methods such as metadynamics, umbrella sampling and Jarzynski-equation based steered MD. The software, written in C++, can be easily interfaced with both fortran and C/C++ codes. | -| [pWord2Vec](https://github.com/IntelLabs/pWord2Vec) | This tool provides an efficient implementation of the continuous bag-of-words and skip-gram architectures for computing vector representations of words. These representations can be subsequently used in many natural language processing applications and for further research. | -| [QuantumESPRESSO](http://www.pwscf.org/) | Quantum ESPRESSO is an integrated suite of computer codes for electronic-structure calculations and materials modeling at the nanoscale. It is based on density-functional theory, plane waves, and pseudopotentials (both norm-conserving and ultrasoft). | -| [S4MPLE](http://infochim.u-strasbg.fr/spip.php?rubrique152) | S4MPLE (Sampler For Multiple Protein-Ligand Entities) is a flexible molecular modeling tool, supporting empirical force field-driven conformational sampling and geometry optimization heuristics using a hybrid genetic algorithm (GA). | -| [Scipion](https://github.com/I2PC/scipion/wiki) | Scipion is an image processing framework for obtaining 3D models of macromolecular complexes using Electron Microscopy (3DEM). It integrates several software packages and presents a unified interface for both biologists and developers. Scipion allows you to execute workflows combining different software tools, while taking care of formats and conversions. Additionally, all steps are tracked and can be reproduced later on. | -| [xdrfile](http://www.gromacs.org/Developer_Zone/Programming_Guide/XTC_Library) | XTC library | - -## Compiler - -| Module | Description | -| ------ | ----------- | -| [BerkeleyUPC](http://upc.lbl.gov) | The goal of the Berkeley UPC compiler group is to develop a portable, high performance implementation of UPC for large-scale multiprocessors, PC clusters, and clusters of shared memory multiprocessors. | -| [Clang](http://clang.llvm.org/) | C, C++, Objective-C compiler, based on LLVM. Does not include C++ standard library -- use libstdc++ from GCC. | -| [GCC](http://gcc.gnu.org/) | The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Java, and Ada, as well as libraries for these languages (libstdc++, libgcj,...). | -| [GCCcore](http://gcc.gnu.org/) | The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Java, and Ada, as well as libraries for these languages (libstdc++, libgcj,...). | -| [Go](http://www.golang.org) | Go is an open source programming language that makes it easy to build simple, reliable, and efficient software. | -| [icc](http://software.intel.com/en-us/intel-compilers/) | C and C++ compiler from Intel | -| [ifort](http://software.intel.com/en-us/intel-compilers/) | Fortran compiler from Intel | -| [ispc](http://ispc.github.io/) | Intel SPMD Program Compilers; An open-source compiler for high-performance SIMD programming on the CPU. ispc is a compiler for a variant of the C programming language, with extensions for 'single program, multiple data' (SPMD) programming. Under the SPMD model, the programmer writes a program that generally appears to be a regular serial program, though the execution model is actually that a number of program instances execute in parallel on the hardware. | -| [LLVM](http://llvm.org/) | The LLVM Core libraries provide a modern source- and target-independent optimizer, along with code generation support for many popular CPUs (as well as some less common ones!) These libraries are built around a well specified code representation known as the LLVM intermediate representation ("LLVM IR"). The LLVM Core libraries are well documented, and it is particularly easy to invent your own language (or port an existing compiler) to use LLVM as an optimizer and code generator. | -| [OpenCoarrays](http://www.opencoarrays.org) | OpenCoarrays is an open-source software project for developing, porting and tuning transport layers that support coarray Fortran compilers. | -| [PGI](http://www.pgroup.com/) | C, C++ and Fortran compilers from The Portland Group - PGI | - -## Data - -| Module | Description | -| ------ | ----------- | -| [GDAL](http://www.gdal.org/) | GDAL is a translator library for raster geospatial data formats that is released under an X/MIT style Open Source license by the Open Source Geospatial Foundation. As a library, it presents a single abstract data model to the calling application for all supported formats. It also comes with a variety of useful commandline utilities for data translation and processing. | -| [h5py](http://www.h5py.org/) | HDF5 for Python (h5py) is a general-purpose Python interface to the Hierarchical Data Format library, version 5. HDF5 is a versatile, mature scientific software library designed for the fast, flexible storage of enormous amounts of data. | -| [HDF5](http://www.hdfgroup.org/HDF5/) | HDF5 is a unique technology suite that makes possible the management of extremely large and complex data collections. | -| [netCDF](http://www.unidata.ucar.edu/software/netcdf/) | NetCDF (network Common Data Form) is a set of software libraries and machine-independent data formats that support the creation, access, and sharing of array-oriented scientific data. | -| [netCDF-Fortran](http://www.unidata.ucar.edu/software/netcdf/) | NetCDF (network Common Data Form) is a set of software libraries and machine-independent data formats that support the creation, access, and sharing of array-oriented scientific data. | -| [PostgreSQL](http://www.mysql.com/) | PostgreSQL is a powerful, open source object-relational database system. It is fully ACID compliant, has full support for foreign keys, joins, views, triggers, and stored procedures (in multiple languages). It includes most SQL:2008 data types, including INTEGER, NUMERIC, BOOLEAN, CHAR, VARCHAR, DATE, INTERVAL, and TIMESTAMP. It also supports storage of binary large objects, including pictures, sounds, or video. It has native programming interfaces for C/C++, Java, .Net, Perl, Python, Ruby, Tcl, ODBC, among others, and exceptional documentation. | -| [redis](https://redis.io) | Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker. | -| [scikit-learn](http://scikit-learn.org/stable/index.html) | Scikit-learn integrates machine learning algorithms in the tightly-knit scientific Python world, building upon numpy, scipy, and matplotlib. As a machine-learning module, it provides versatile tools for data mining and analysis in any field of science and engineering. It strives to be simple and efficient, accessible to everybody, and reusable in various contexts. | -| [XML-Parser](http://search.cpan.org/~toddr/XML-Parser-2.41/) | This is a Perl extension interface to James Clark's XML parser, expat. | - -## Debugger - -| Module | Description | -| ------ | ----------- | -| [aislinn](https://github.com/spirali/aislinn) | Aislinn is a dynamic verifier for MPI programs; it can check all possible runs with respect to nondeterminism introduced by MPI. | -| [DDT](http://www.allinea.com/) | Debugger for scalar, multi-threaded and large-scale parallel applications. | -| [Forge](http://www.allinea.com/products/develop-allinea-forge) | Allinea Forge is the complete toolsuite for software development - with everything needed to debug, profile, optimize, edit and build C, C++ and FORTRAN applications on Linux for high performance - from single threads through to complex parallel HPC codes with MPI, OpenMP, threads or CUDA. | -| [PerformanceReports](http://www.allinea.com/products/allinea-performance-reports) | Allinea Performance Reports are the most effective way to characterize and understand the performance of HPC application runs. One single-page HTML report elegantly answers a range of vital questions for any HPC site. - Is this application well-optimized for the system and the processors it is running on? - Does it benefit from running at this scale? - Are there I/O, networking or threading bottlenecks affecting performance? - Which hardware, software or configuration changes can we make to improve performance further. - How much energy did this application use? | -| [TotalView](http://www.roguewave.com/products/totalview.aspx) | Dynamic source code and memory debugging for C, C++ and Fortran applications. | -| [Valgrind](http://valgrind.org/downloads/) | Valgrind: Debugging and profiling tools | - -## Devel - -| Module | Description | -| ------ | ----------- | -| [ant](http://ant.apache.org/) | Apache Ant is a Java library and command-line tool whose mission is to drive processes described in build files as targets and extension points dependent upon each other. The main known usage of Ant is the build of Java applications. | -| [Autoconf](http://www.gnu.org/software/autoconf/) | Autoconf is an extensible package of M4 macros that produce shell scripts to automatically configure software source code packages. These scripts can adapt the packages to many kinds of UNIX-like systems without manual user intervention. Autoconf creates a configuration script for a package from a template file that lists the operating system features that the package can use, in the form of M4 macro calls. | -| [Automake](http://www.gnu.org/software/automake/automake.html) | Automake: GNU Standards-compliant Makefile generator | -| [Autotools](http://autotools.io) | This bundle collect the standard GNU build tools: Autoconf, Automake and libtool | -| [Bazel](http://bazel.io/) | Bazel is a build tool that builds code quickly and reliably. It is used to build the majority of Google's software. | -| [Boost](http://www.boost.org/) | Boost provides free peer-reviewed portable C++ source libraries. | -| [CMake](http://www.cmake.org) | CMake, the cross-platform, open-source build system. CMake is a family of tools designed to build, test and package software. | -| [Doxygen](http://www.doxygen.org) | Doxygen is a documentation system for C++, C, Java, Objective-C, Python, IDL (Corba and Microsoft flavors), Fortran, VHDL, PHP, C#, and to some extent D. | -| [fontsproto](http://www.freedesktop.org/wiki/Software/xlibs) | X11 font extension wire protocol | -| [glproto](http://www.freedesktop.org/wiki/Software/xlibs) | X protocol and ancillary headers | -| [GObject-Introspection](https://wiki.gnome.org/GObjectIntrospection/) | GObject introspection is a middleware layer between C libraries (using GObject) and language bindings. The C library can be scanned at compile time and generate a metadata file, in addition to the actual native C library. Then at runtime, language bindings can read this metadata and automatically provide bindings to call into the C library. | -| [gperf](http://www.gnu.org/software/gperf/) | GNU gperf is a perfect hash function generator. For a given list of strings, it produces a hash function and hash table, in form of C or C++ code, for looking up a value depending on the input string. The hash function is perfect, which means that the hash table has no collisions, and the hash table lookup needs a single string comparison only. | -| [guile](http://www.gnu.org/software/guile) | Guile is the GNU Ubiquitous Intelligent Language for Extensions, the official extension language for the GNU operating system. | -| [intltool](http://freedesktop.org/wiki/Software/intltool/) | intltool is a set of tools to centralize translation of many different file formats using GNU gettext-compatible PO files. | -| [Jansson](http://www.digip.org/jansson/) | Jansson is a C library for encoding, decoding and manipulating JSON data. Its main features and design principles are: * Simple and intuitive API and data model * Comprehensive documentation * No dependencies on other libraries * Full Unicode support (UTF-8) * Extensive test suite | -| [JUnit](http://sourceforge.net/projects/junit) | A programmer-oriented testing framework for Java. | -| [libICU](http://maven.apache.org/index.html) | Binary maven install, Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information. | -| [libSM](http://www.freedesktop.org/wiki/Software/xlibs) | X11 Session Management library, which allows for applications to both manage sessions, and make use of session managers to save and restore their state for later use. | -| [M4](http://www.gnu.org/software/m4/m4.html) | GNU M4 is an implementation of the traditional Unix macro processor. It is mostly SVR4 compatible although it has some extensions (for example, handling more than 9 positional parameters to macros). GNU M4 also has built-in functions for including files, running shell commands, doing arithmetic, etc. | -| [make](http://www.gnu.org/software/make/make.html) | make-3.82: GNU version of make utility | -| [makedepend](http://www.linuxfromscratch.org/blfs/view/svn/x/makedepend.html) | The makedepend package contains a C-preprocessor like utility to determine build-time dependencies. | -| [Mako](http://www.makotemplates.org) | A super-fast templating language that borrows the best ideas from the existing templating languages | -| [Maven](http://maven.apache.org/index.html) | Binary maven install, Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information. | -| [ncurses](http://www.gnu.org/software/ncurses/) | The Ncurses (new curses) library is a free software emulation of curses in System V Release 4.0, and more. It uses Terminfo format, supports pads and color and multiple highlights and forms characters and function-key mapping, and has all the other SYSV-curses enhancements over BSD Curses. | -| [PCRE](http://www.pcre.org/) | The PCRE library is a set of functions that implement regular expression pattern matching using the same syntax and semantics as Perl 5. | -| [PCRE2](http://www.pcre.org/) | The PCRE library is a set of functions that implement regular expression pattern matching using the same syntax and semantics as Perl 5. | -| [pkg-config](http://www.freedesktop.org/wiki/Software/pkg-config/) | pkg-config is a helper tool used when compiling applications and libraries. It helps you insert the correct compiler options on the command line so an application can use gcc -o test test.c `pkg-config --libs --cflags glib-2.0` for instance, rather than hard-coding values on where to find glib (or other libraries). | -| [protobuf](http://python.org/) | Python is a programming language that lets you work more quickly and integrate your systems more effectively. | -| [protobuf-python](https://github.com/google/protobuf/) | Python Protocol Buffers runtime library. | -| [python-meep](https://code.launchpad.net/python-meep) | Python wrapper for the Meep FDTD solver. | -| [Qt](http://qt-project.org/) | Qt is a comprehensive cross-platform C++ application framework. | -| [Qt5](http://qt.io/) | Qt is a comprehensive cross-platform C++ application framework. | -| [renderproto](http://www.freedesktop.org/wiki/Software/xlibs) | Xrender protocol and ancillary headers | -| [SCons](http://www.scons.org/) | SCons is a software construction tool. | -| [Spack](https://spack.io/) | Spack is a package manager for supercomputers, Linux, and macOS. It makes installing scientific software easy. With Spack, you can build a package with multiple versions, configurations, platforms, and compilers, and all of these builds can coexist on the same machine. | -| [Spark](http://spark.apache.org) | Spark is Hadoop MapReduce done in memory | -| [sparsehash](https://github.com/sparsehash/sparsehash) | An extremely memory-efficient hash_map implementation. 2 bits/entry overhead! The SparseHash library contains several hash-map implementations, including implementations that optimize for space or speed. | -| [SQLite](http://www.sqlite.org/) | SQLite: SQL Database Engine in a C Library | -| [squashfs-tools](http://squashfs.sourceforge.net/) | Squashfs is a compressed read-only filesystem for Linux. | -| [SWIG](http://www.swig.org/) | SWIG is a software development tool that connects programs written in C and C++ with a variety of high-level programming languages. | -| [xbitmaps](http://www.freedesktop.org/wiki/Software/xlibs) | provides bitmaps for x | -| [xcb-proto](http://xcb.freedesktop.org/) | The X protocol C-language Binding (XCB) is a replacement for Xlib featuring a small footprint, latency hiding, direct access to the protocol, improved threading support, and extensibility. | -| [xextproto](http://www.freedesktop.org/wiki/Software/xlibs) | XExtProto protocol headers. | -| [xineramaproto](http://www.freedesktop.org/wiki/Software/xlibs) | X protocol and ancillary headers for xinerama | -| [XKeyboardConfig](http://www.freedesktop.org/wiki/Software/XKeyboardConfig/) | The non-arch keyboard configuration database for X Window. The goal is to provide the consistent, well-structured, frequently released open source of X keyboard configuration data for X Window System implementations (free, open source and commercial). The project is targeted to XKB-based systems. | -| [xorg-macros](http://cgit.freedesktop.org/xorg/util/macros) | X.org macros utilities. | -| [xproto](http://www.freedesktop.org/wiki/Software/xlibs) | X protocol and ancillary headers | -| [xtrans](http://www.freedesktop.org/wiki/Software/xlibs) | xtrans includes a number of routines to make X implementations transport-independent; at time of writing, it includes support for UNIX sockets, IPv4, IPv6, and DECnet. | - -## Geo - -| Module | Description | -| ------ | ----------- | -| [DCW](http://gmt.soest.hawaii.edu/projects/gmt) | country polygons for GMT | -| [Doris](http://doris.tudelft.nl/) | Delft object-oriented radar interferometric software | -| [FEFLOW](https://www.mikepoweredbydhi.com/products/feflow) | FEFLOW provides best-in-class technology for groundwater flow, contaminant, groundwater age and heat transport simulations. With its efficient user interface and its yet unmatched range of functionality and flexibility, FEFLOW has become a standard in premium groundwater modelling over the last 35 years. | -| [PHREEQC](https://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc/) | A Computer Program for Speciation, Batch-Reaction, One-Dimensional Transport, and Inverse Geochemical Calculations | -| [PROJ_4](http://proj.osgeo.org) | PROJ.4 - Cartographic Projections Library originally written by Gerald Evenden then of the USGS. | - -## Lang - -| Module | Description | -| ------ | ----------- | -| [Anaconda2](https://www.continuum.io/anaconda-overview) | Built to complement the rich, open source Python community, the Anaconda platform provides an enterprise-ready data analytics platform that empowers companies to adopt a modern open data science analytics architecture. | -| [Anaconda3](https://www.continuum.io/anaconda-overview) | Built to complement the rich, open source Python community, the Anaconda platform provides an enterprise-ready data analytics platform that empowers companies to adopt a modern open data science analytics architecture. | -| [Bison](http://www.gnu.org/software/bison) | Bison is a general-purpose parser generator that converts an annotated context-free grammar into a deterministic LR or generalized LR (GLR) parser employing LALR(1) parser tables. | -| [byacc](http://invisible-island.net/byacc/byacc.html) | Berkeley Yacc (byacc) is generally conceded to be the best yacc variant available. In contrast to bison, it is written to avoid dependencies upon a particular compiler. | -| [Cython](https://pypi.python.org/pypi/Cython/) | The Cython language makes writing C extensions for the Python language as easy as Python itself. Cython is a source code translator based on the well-known Pyrex, but supports more cutting edge functionality and optimizations. | -| [dotNET-Core-Runtime](https://www.microsoft.com/net/) | .NET is a free, cross-platform, open source developer platform for building many different types of applications. | -| [dotNET-Core-SDK](https://www.microsoft.com/net/) | .NET is a free, cross-platform, open source developer platform for building many different types of applications. | -| [flex](http://flex.sourceforge.net/) | Flex (Fast Lexical Analyzer) is a tool for generating scanners. A scanner, sometimes called a tokenizer, is a program which recognizes lexical patterns in text. | -| [FriBidi](https://github.com/fribidi/fribidi) | The Free Implementation of the Unicode Bidirectional Algorithm. | -| [Java](http://java.com/) | Java Platform, Standard Edition (Java SE) lets you develop and deploy Java applications on desktops and servers. | -| [libgdiplus](https://github.com/mono/libgdiplus) | An Open Source implementation of the GDI+ API. | -| [Lua](http://www.lua.org/) | Lua is a powerful, fast, lightweight, embeddable scripting language. Lua combines simple procedural syntax with powerful data description constructs based on associative arrays and extensible semantics. Lua is dynamically typed, runs by interpreting bytecode for a register-based virtual machine, and has automatic memory management with incremental garbage collection, making it ideal for configuration, scripting, and rapid prototyping. | -| [Mono](http://www.mono-project.com) | Mono is an open source implementation of Microsoft's .NET Framework based on the ECMA standards for C# and the Common Language Runtime. | -| [NASM](http://www.nasm.us/) | NASM: General-purpose x86 assembler | -| [NodeJS](http://nodejs.org) | Node.js is a platform built on Chrome's JavaScript runtime for easily building fast, scalable network applications. Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient, perfect for data-intensive real-time applications that run across distributed devices. | -| [OpenCL-builder](https://software.intel.com/en-us/intel-opencl) | OpenCL™ is the first open, royalty-free standard for cross-platform, parallel programming of modern processors found in personal computers, servers and handheld/embedded devices. OpenCL (Open Computing Language) greatly improves speed and responsiveness for a wide spectrum of applications in numerous market categories from gaming and entertainment to scientific and medical software. This is builder (formerly runtime) package. | -| [OpenCL-runtime](https://software.intel.com/en-us/intel-opencl) | OpenCL™ is the first open, royalty-free standard for cross-platform, parallel programming of modern processors found in personal computers, servers and handheld/embedded devices. OpenCL (Open Computing Language) greatly improves speed and responsiveness for a wide spectrum of applications in numerous market categories from gaming and entertainment to scientific and medical software. | -| [OpenCL-sdk](https://software.intel.com/en-us/intel-opencl) | OpenCL™ is the first open, royalty-free standard for cross-platform, parallel programming of modern processors found in personal computers, servers and handheld/embedded devices. OpenCL (Open Computing Language) greatly improves speed and responsiveness for a wide spectrum of applications in numerous market categories from gaming and entertainment to scientific and medical software. | -| [Perl](http://www.perl.org/) | Larry Wall's Practical Extraction and Report Language | -| [Python](http://python.org/) | Python is a programming language that lets you work more quickly and integrate your systems more effectively. | -| [R](http://www.r-project.org/) | R is a free software environment for statistical computing and graphics. | -| [Racket](http://racket-lang.org) | Racket is a full-spectrum programming language. It goes beyond Lisp and Scheme with dialects that support objects, types, laziness, and more. | -| [RapidJSON](http://rapidjson.org/) | A fast JSON parser/generator for C++ with both SAX/DOM style API Tencent is pleased to support the open source community by making RapidJSON available. Copyright (C) 2015 THL A29 Limited, a Tencent company, and Milo Yip. All rights reserved. | -| [Ruby](https://www.ruby-lang.org) | Ruby is a dynamic, open source programming language with a focus on simplicity and productivity. It has an elegant syntax that is natural to read and easy to write. | -| [SnuCL](http://snucl.snu.ac.kr) | An OpenCL Framework for Heterogeneous Clusters | -| [sqsgenerator](https://github.com/dnoeger/sqsgenerator) | This package is a Special Quasirandom Structure generator written in Python3/Cython. Please note that the programm currently only works with Python 3. | -| [Tcl](http://www.tcl.tk/) | Tcl (Tool Command Language) is a very powerful but easy to learn dynamic programming language, suitable for a very wide range of uses, including web and desktop applications, networking, administration, testing and many more. | -| [Yasm](http://www.tortall.net/projects/yasm/) | Yasm: Complete rewrite of the NASM assembler with BSD license | - -## Lib - -| Module | Description | -| ------ | ----------- | -| [ACE](http://www.dre.vanderbilt.edu/~schmidt/ACE-overview.html) | The ADAPTIVE Communication Environment (ACE) is a freely available, open-source object-oriented (OO) framework that implements many core patterns for concurrent communication software. ACE provides a rich set of reusable C++ wrapper facades and framework components that perform common communication software tasks across a range of OS platforms. The communication software tasks provided by ACE include event demultiplexing and event handler dispatching, signal handling, service initialization, interprocess communication, shared memory management, message routing, dynamic (re)configuration of distributed services, concurrent execution and synchronization. ACE is targeted for developers of high-performance and real-time communication services and applications. It simplifies the development of OO network applications and services that utilize interprocess communication, event demultiplexing, explicit dynamic linking, and concurrency. In addition, ACE automates system configuration and reconfiguration by dynamically linking services into applications at run-time and executing these services in one or more processes or threads. | -| [ACTC](https://sourceforge.net/projects/actc) | ACTC converts independent triangles into triangle strips or fans. | -| [astroid](https://github.com/PyCQA/astroid) | The aim of this module is to provide a common base representation of python source code for projects such as pychecker, pyreverse, pylint… Well, actually the development of this library is essentially governed by pylint’s needs. It used to be called logilab-astng. | -| [cereal](http://uscilab.github.io/cereal/) | cereal is a header-only C++11 serialization library. | -| [darshan-runtime](http://www.mcs.anl.gov/research/projects/darshan/) | Darshan is designed to capture an accurate picture of application I/O behavior, including properties such as patterns of access within files, with minimum overhead. The name is taken from a Sanskrit word for “sight” or “vision”. Darshan can be used to investigate and tune the I/O behavior of complex HPC applications. In addition, Darshan’s lightweight design makes it suitable for full time deployment for workload characterization of large systems. We hope that such studies will help the storage research community to better serve the needs of scientific computing. Darshan was originally developed on the IBM Blue Gene series of computers deployed at the Argonne Leadership Computing Facility, but it is portable across a wide variety of platforms include the Cray XE6, Cray XC30, and Linux clusters. Darshan routinely instruments jobs using up to 786,432 compute cores on the Mira system at ALCF. | -| [darshan-util](http://www.mcs.anl.gov/research/projects/darshan/) | Darshan is designed to capture an accurate picture of application I/O behavior, including properties such as patterns of access within files, with minimum overhead. The name is taken from a Sanskrit word for “sight” or “vision”. Darshan can be used to investigate and tune the I/O behavior of complex HPC applications. In addition, Darshan’s lightweight design makes it suitable for full time deployment for workload characterization of large systems. We hope that such studies will help the storage research community to better serve the needs of scientific computing. Darshan was originally developed on the IBM Blue Gene series of computers deployed at the Argonne Leadership Computing Facility, but it is portable across a wide variety of platforms include the Cray XE6, Cray XC30, and Linux clusters. Darshan routinely instruments jobs using up to 786,432 compute cores on the Mira system at ALCF. | -| [Embree](https://embree.github.io/index.html) | Embree is a collection of high-performance ray tracing kernels, developed at Intel. | -| [ETSF_IO](http://www.etsf.eu/resources/software/libraries_and_tools) | A library of F90 routines to read/write the ETSF file format has been written. It is called ETSF_IO and available under LGPL. | -| [FOX](http://fox-toolkit.org) | FOX is a C++ based Toolkit for developing Graphical User Interfaces easily and effectively. It offers a wide, and growing, collection of Controls, and provides state of the art facilities such as drag and drop, selection, as well as OpenGL widgets for 3D graphical manipulation. | -| [freeglut](http://freeglut.sourceforge.net/) | freeglut is a completely OpenSourced alternative to the OpenGL Utility Toolkit (GLUT) library. | -| [glibc](https://www.gnu.org/software/libc/) | The Glibc package contains the main C library. This library provides the basic routines for allocating memory, searching directories, opening and closing files, reading and writing files, string handling, pattern matching, arithmetic, and so on. | -| [GLM](https://github.com/g-truc/glm) | OpenGL Mathematics (GLM) is a header only C++ mathematics library for graphics software based on the OpenGL Shading Language (GLSL) specifications. | -| [HyperLoom](https://code.it4i.cz/ADAS/loom) | Framework for distributed task execution | -| [isort](https://github.com/timothycrosley/isort) | isort is a Python utility / library to sort imports alphabetically, and automatically separated into sections. It provides a command line utility, Python library and plugins for various editors to quickly sort all your imports. | -| [libarchive](https://www.libarchive.org/) | Multi-format archive and compression library | -| [libdrm](http://dri.freedesktop.org) | Direct Rendering Manager runtime library. | -| [libevent](http://libevent.org/) | The libevent API provides a mechanism to execute a callback function when a specific event occurs on a file descriptor or after a timeout has been reached. Furthermore, libevent also support callbacks due to signals or regular timeouts. | -| [libffi](http://sourceware.org/libffi/) | The libffi library provides a portable, high level programming interface to various calling conventions. This allows a programmer to call any function specified by a call interface description at run-time. | -| [libfontenc](http://www.freedesktop.org/wiki/Software/xlibs/) | X11 font encoding library | -| [libgd](http://libgd.bitbucket.org/) | GD is an open source code library for the dynamic creation of images by programmers. | -| [libglade](https://developer.gnome.org/libglade/) | Libglade is a library for constructing user interfaces dynamically from XML descriptions. | -| [libjpeg-turbo](http://sourceforge.net/libjpeg-turbo/) | libjpeg-turbo is a fork of the original IJG libjpeg which uses SIMD to accelerate baseline JPEG compression and decompression. libjpeg is a library that implements JPEG image encoding, decoding and transcoding. | -| [libmatheval](http://www.gnu.org/software/libmatheval/) | GNU libmatheval is a library (callable from C and Fortran) to parse and evaluate symbolic expressions input as text. | -| [libMesh](http://libmesh.github.io/) | The libMesh library provides a framework for the numerical simulation of partial differential equations using arbitrary unstructured discretizations on serial and parallel platforms. A major goal of the library is to provide support for adaptive mesh refinement (AMR) computations in parallel while allowing a research scientist to focus on the physics they are modeling. | -| [libpng](http://www.libpng.org/pub/png/libpng.html) | libpng is the official PNG reference library | -| [libpthread-stubs](http://xcb.freedesktop.org/) | The X protocol C-language Binding (XCB) is a replacement for Xlib featuring a small footprint, latency hiding, direct access to the protocol, improved threading support, and extensibility. | -| [libreadline](http://cnswww.cns.cwru.edu/php/chet/readline/rltop.html) | The GNU Readline library provides a set of functions for use by applications that allow users to edit command lines as they are typed in. Both Emacs and vi editing modes are available. The Readline library includes additional functions to maintain a list of previously-entered command lines, to recall and perhaps reedit those lines, and perform csh-like history expansion on previous commands. | -| [librsync](http://git-scm.com/) | librsync is a library for calculating and applying network deltas, with an interface designed to ease integration into diverse network applications. | -| [libsndfile](http://www.mega-nerd.com/libsndfile) | Libsndfile is a C library for reading and writing files containing sampled sound (such as MS Windows WAV and the Apple/SGI AIFF format) through one standard library interface. | -| [LIBSVM](http://www.csie.ntu.edu.tw/~cjlin/libsvm/) | LIBSVM is an integrated software for support vector classification, (C-SVC, nu-SVC), regression (epsilon-SVR, nu-SVR) and distribution estimation (one-class SVM). It supports multi-class classification. | -| [LibTIFF](http://www.remotesensing.org/libtiff/) | tiff: Library and tools for reading and writing TIFF data files | -| [libtool](http://www.gnu.org/software/libtool) | GNU libtool is a generic library support script. Libtool hides the complexity of using shared libraries behind a consistent, portable interface. | -| [libunistring](http://www.gnu.org/software/libunistring/) | This library provides functions for manipulating Unicode strings and for manipulating C strings according to the Unicode standard. | -| [libunwind](http://www.nongnu.org/libunwind/) | The primary goal of libunwind is to define a portable and efficient C programming interface (API) to determine the call-chain of a program. The API additionally provides the means to manipulate the preserved (callee-saved) state of each call-frame and to resume execution at any point in the call-chain (non-local goto). The API supports both local (same-process) and remote (across-process) operation. As such, the API is useful in a number of applications | -| [LibUUID](http://sourceforge.net/projects/libuuid/) | Portable uuid C library | -| [libuv](https://github.com/libuv) | libuv is a multi-platform support library with a focus on asynchronous I/O. It was primarily developed for use by Node.js, but it's also used by Luvit, Julia, pyuv, and others. | -| [libxcb](http://xcb.freedesktop.org/) | The X protocol C-language Binding (XCB) is a replacement for Xlib featuring a small footprint, latency hiding, direct access to the protocol, improved threading support, and extensibility. | -| [libxml2](http://xmlsoft.org/) | Libxml2 is the XML C parser and toolchain developed for the Gnome project (but usable outside of the Gnome platform). | -| [libxslt](http://xmlsoft.org/) | Libxslt is the XSLT C library developed for the GNOME project (but usable outside of the Gnome platform). | -| [libyaml](http://pyyaml.org/wiki/LibYAML) | LibYAML is a YAML 1.1 parser and emitter written in C. | -| [libzip](https://nih.at/libzip/) | libzip is a C library for reading, creating, and modifying zip archives. Files can be added from data buffers, files, or compressed data copied directly from other zip archives. Changes made without closing the archive can be reverted. The API is documented by man pages. | -| [lxml](http://lxml.de/) | The lxml XML toolkit is a Pythonic binding for the C libraries libxml2 and libxslt. | -| [MATIO](http://sourceforge.net/projects/matio/) | matio is an C library for reading and writing Matlab MAT files. | -| [mpi4py](http://mpi4py.scipy.org/docs) | MPI for Python (mpi4py) provides bindings of the Message Passing Interface (MPI) standard for the Python programming language, allowing any Python program to exploit multiple processors. | -| [nettle](http://www.lysator.liu.se/~nisse/nettle/) | Nettle is a cryptographic library that is designed to fit easily in more or less any context: In crypto toolkits for object-oriented languages (C++, Python, Pike, ...), in applications like LSH or GNUPG, or even in kernel space. | -| [OpenCoarrays](http://www.opencoarrays.org) | OpenCoarrays is an open-source software project for developing, porting and tuning transport layers that support coarray Fortran compilers. | -| [PROJ](http://trac.osgeo.org/proj/) | Program proj is a standard Unix filter function which converts geographic longitude and latitude coordinates into cartesian coordinates | -| [psycopg2](http://initd.org/psycopg/) | Psycopg is the most popular PostgreSQL adapter for the Python programming language. | -| [pylint](https://github.com/PyCQA/pylint) | Pylint is a Python source code analyzer which looks for programming errors, helps enforcing a coding standard and sniffs for some code smells (as defined in Martin Fowler's Refactoring book). | -| [PyYAML](https://pypi.python.org/pypi/PyYAML/) | PyYAML is a YAML parser and emitter for the Python programming language. | -| [QCA](http://delta.affinix.com/qca/) | QCA aims to provide a straightforward and cross-platform crypto API, using Qt datatypes and conventions. QCA separates the API from the implementation, using plugins known as Providers | -| [Qwt](http://qwt.sourceforge.net/index.html) | The Qwt library contains GUI Components and utility classes which are primarily useful for programs with a technical background. Beside a framework for 2D plots it provides scales, sliders, dials, compasses, thermometers, wheels and knobs to control or display values, arrays, or ranges of type double. | -| [scipy](https://github.com/jupyter/testpath) | Test utilities for code working with files and commands | -| [SIONlib](http://www.fz-juelich.de/ias/jsc/EN/Expertise/Support/Software/SIONlib/_node.html) | SIONlib is a scalable I/O library for parallel access to task-local files. The library not only supports writing and reading binary data to or from several thousands of processors into a single or a small number of physical files, but also provides global open and close functions to access SIONlib files in parallel. This package provides a stripped-down installation of SIONlib for use with performance tools (e.g., Score-P), with renamed symbols to avoid conflicts when an application using SIONlib itself is linked against a tool requiring a different SIONlib version. | -| [spatialindex](https://libspatialindex.github.io/index.html) | The purpose of this library is to provide: * An extensible framework that will support robust spatial indexing methods. * Support for sophisticated spatial queries. Range, point location, nearest neighbor and k-nearest neighbor as well as parametric queries (defined by spatial constraints) should be easy to deploy and run. * Easy to use interfaces for inserting, deleting and updating information. | -| [tbb](http://software.intel.com/en-us/articles/intel-tbb/) | Intel Threading Building Blocks 4.0 (Intel TBB) is a widely used, award-winning C++ template library for creating reliable, portable, and scalable parallel applications. Use Intel TBB for a simple and rapid way of developing robust task-based parallel applications that scale to available processor cores, are compatible with multiple environments, and are easier to maintain. Intel TBB is the most proficient way to implement future-proof parallel applications that tap into the power and performance of multicore and manycore hardware platforms. | -| [Tensorflow](https://www.tensorflow.org/) | An open-source software library for Machine Intelligence | -| [TRIQS](https://triqs.ipht.cnrs.fr) | TRIQS (Toolbox for Research on Interacting Quantum Systems) is a scientific project providing a set of C++ and Python libraries to develop new tools for the study of interacting quantum systems. | -| [zlib](http://www.zlib.net/) | zlib is designed to be a free, general-purpose, legally unencumbered -- that is, not covered by any patents -- lossless data-compression library for use on virtually any computer hardware and operating system. | - -## Math - -| Module | Description | -| ------ | ----------- | -| [Eigen](http://eigen.tuxfamily.org/index.php?title=Main_Page) | Eigen is a C++ template library for linear algebra: matrices, vectors, numerical solvers, and related algorithms. | -| [FIAT](https://bitbucket.org/fenics-project/fiat) | The FInite element Automatic Tabulator FIAT supports generation of arbitrary order instances of the Lagrange elements on lines, triangles, and tetrahedra. It is also capable of generating arbitrary order instances of Jacobi-type quadrature rules on the same element shapes. | -| [GEOS](http://trac.osgeo.org/geos) | GEOS (Geometry Engine - Open Source) is a C++ port of the Java Topology Suite (JTS) | -| [GMP](http://gmplib.org/) | GMP is a free library for arbitrary precision arithmetic, operating on signed integers, rational numbers, and floating point numbers. | -| [h5py](http://www.h5py.org/) | HDF5 for Python (h5py) is a general-purpose Python interface to the Hierarchical Data Format library, version 5. HDF5 is a versatile, mature scientific software library designed for the fast, flexible storage of enormous amounts of data. | -| [Harminv](http://ab-initio.mit.edu/wiki/index.php/Harminv) | Harminv is a free program (and accompanying library) to solve the problem of harmonic inversion - given a discrete-time, finite-length signal that consists of a sum of finitely-many sinusoids (possibly exponentially decaying) in a given bandwidth, it determines the frequencies, decay constants, amplitudes, and phases of those sinusoids. | -| [ISL](http://isl.gforge.inria.fr/) | isl is a library for manipulating sets and relations of integer points bounded by linear constraints. | -| [Keras](https://keras.io/) | Keras is a minimalist, highly modular neural networks library, written in Python and capable of running on top of either TensorFlow or Theano. | -| [libcerf](http://gnuplot.sourceforge.net/) | libcerf is a self-contained numeric library that provides an efficient and accurate implementation of complex error functions, along with Dawson, Faddeeva, and Voigt functions. | -| [libsmm](https://www.cp2k.org/) | Library for small matrix multiplies. | -| [libxsmm](https://github.com/hfp/libxsmm) | LIBXSMM is a library for small dense and small sparse matrix-matrix multiplications targeting Intel Architecture (x86). | -| [MATLAB](http://www.mathworks.com/products/matlab) | MATLAB is a high-level language and interactive environment that enables you to perform computationally intensive tasks faster than with traditional programming languages such as C, C++, and Fortran. | -| [METIS](http://glaros.dtc.umn.edu/gkhome/metis/metis/overview) | METIS is a set of serial programs for partitioning graphs, partitioning finite element meshes, and producing fill reducing orderings for sparse matrices. The algorithms implemented in METIS are based on the multilevel recursive-bisection, multilevel k-way, and multi-constraint partitioning schemes. | -| [MPC](http://www.multiprecision.org/) | Gnu Mpc is a C library for the arithmetic of complex numbers with arbitrarily high precision and correct rounding of the result. It extends the principles of the IEEE-754 standard for fixed precision real floating point numbers to complex numbers, providing well-defined semantics for every operation. At the same time, speed of operation at high precision is a major design goal. | -| [MPFR](http://www.mpfr.org) | The MPFR library is a C library for multiple-precision floating-point computations with correct rounding. | -| [MUMPS](http://graal.ens-lyon.fr/MUMPS/) | [A parallel sparse direct solver | -| [numpy](http://www.numpy.org) | NumPy is the fundamental package for scientific computing with Python. It contains among other things: a powerful N-dimensional array object, sophisticated (broadcasting) functions, tools for integrating C/C++ and Fortran code, useful linear algebra, Fourier transform, and random number capabilities. Besides its obvious scientific uses, NumPy can also be used as an efficient multi-dimensional container of generic data. Arbitrary data-types can be defined. This allows NumPy to seamlessly and speedily integrate with a wide variety of databases. | -| [Octave](http://www.gnu.org/software/octave/) | GNU Octave is a high-level interpreted language, primarily intended for numerical computations. | -| [ParMETIS](http://glaros.dtc.umn.edu/gkhome/metis/parmetis/overview) | ParMETIS is an MPI-based parallel library that implements a variety of algorithms for partitioning unstructured graphs, meshes, and for computing fill-reducing orderings of sparse matrices. ParMETIS extends the functionality provided by METIS and includes routines that are especially suited for parallel AMR computations and large scale numerical simulations. The algorithms implemented in ParMETIS are based on the parallel multilevel k-way graph-partitioning, adaptive repartitioning, and parallel multi-constrained partitioning schemes. | -| [Qhull](http://www.qhull.org) | Qhull computes the convex hull, Delaunay triangulation, Voronoi diagram, halfspace intersection about a point, furthest-site Delaunay triangulation, and furthest-site Voronoi diagram. The source code runs in 2-d, 3-d, 4-d, and higher dimensions. Qhull implements the Quickhull algorithm for computing the convex hull. | -| [ScientificPython](https://sourcesup.cru.fr/projects/scientific-py/) | ScientificPython is a collection of Python modules for scientific computing. It contains support for geometry, mathematical functions, statistics, physical units, IO, visualization, and parallelization. | -| [scipy](https://github.com/jupyter/testpath) | Test utilities for code working with files and commands | -| [SCOTCH](http://gforge.inria.fr/projects/scotch/) | Software package and libraries for sequential and parallel graph partitioning, static mapping, and sparse matrix block ordering, and sequential mesh and hypergraph partitioning. | -| [sympy](http://sympy.org/) | SymPy is a Python library for symbolic mathematics. It aims to become a full-featured computer algebra system (CAS) while keeping the code as simple as possible in order to be comprehensible and easily extensible. SymPy is written entirely in Python and does not require any external libraries. | -| [Theano](http://deeplearning.net/software/theano) | Theano is a Python library that allows you to define, optimize, and evaluate mathematical expressions involving multi-dimensional arrays efficiently. | - -## Mpi - -| Module | Description | -| ------ | ----------- | -| [impi](http://software.intel.com/en-us/intel-mpi-library/) | The Intel(R) MPI Library for Linux* OS is a multi-fabric message passing library based on ANL MPICH2 and OSU MVAPICH2. The Intel MPI Library for Linux OS implements the Message Passing Interface, version 2 (MPI-2) specification. | -| [MPI_NET](http://www.osl.iu.edu/research/mpi.net/) | MPI.NET is a high-performance, easy-to-use implementation of the Message Passing Interface (MPI) for Microsoft's .NET environment | -| [MPICH](http://www.mpich.org/) | MPICH v3.x is an open source high-performance MPI 3.0 implementation. It does not support InfiniBand (use MVAPICH2 with InfiniBand devices). | -| [MPT](https://www.nas.nasa.gov/hecc/support/kb/sgi-mpt_89.html) | [The modulefile defines paths and environment variables needed to use MPT in a non-default location. | -| [MVAPICH2](http://mvapich.cse.ohio-state.edu/overview/mvapich2/) | This is an MPI 3.0 implementation. It is based on MPICH2 and MVICH. | -| [OpenMPI](http://www.open-mpi.org/) | The Open MPI Project is an open source MPI-2 implementation. | - -## Numlib - -| Module | Description | -| ------ | ----------- | -| [Armadillo](http://arma.sourceforge.net/) | Armadillo is an open-source C++ linear algebra library (matrix maths) aiming towards a good balance between speed and ease of use. Integer, floating point and complex numbers are supported, as well as a subset of trigonometric and statistics functions. | -| [arpack-ng](http://forge.scilab.org/index.php/p/arpack-ng/) | ARPACK is a collection of Fortran77 subroutines designed to solve large scale eigenvalue problems. | -| [ATLAS](http://math-atlas.sourceforge.net) | ATLAS (Automatically Tuned Linear Algebra Software) is the application of the AEOS (Automated Empirical Optimization of Software) paradigm, with the present emphasis on the Basic Linear Algebra Subprograms (BLAS), a widely used, performance-critical, linear algebra kernel library. | -| [CGAL](http://www.cgal.org/) | [The goal of the CGAL Open Source Project is to provide easy access to efficient and reliable geometric algorithms in the form of a C++ library. | -| [Clp](https://projects.coin-or.org/Clp) | [Clp (COIN-OR linear programming) is an open-source linear programming solver written in C++. It is primarily meant to be used as a callable library, but a basic stand-alone executable version is also available. It is a part of the COIN-OR project (https://www.coin-or.org). | -| [CNTKCustomMKL](https://www.microsoft.com/en-us/cognitive-toolkit/) | The default CNTK math library is the Intel Math Kernel Library (Intel MKL). CNTK supports using the Intel MKL via a custom library version (CNTK custom MKL). | -| [FFTW](http://www.fftw.org) | FFTW is a C subroutine library for computing the discrete Fourier transform (DFT) in one or more dimensions, of arbitrary input size, and of both real and complex data. | -| [GSL](http://www.gnu.org/software/gsl/) | The GNU Scientific Library (GSL) is a numerical library for C and C++ programmers. The library provides a wide range of mathematical routines such as random number generators, special functions and least-squares fitting. | -| [Hypre](https://computation.llnl.gov/casc/linear_solvers/sls_hypre.html) | Hypre is a library for solving large, sparse linear systems of equations on massively parallel computers. The problems of interest arise in the simulation codes being developed at LLNL and elsewhere to study physical phenomena in the defense, environmental, energy, and biological sciences. | -| [imkl](http://software.intel.com/en-us/intel-mkl/) | Intel Math Kernel Library is a library of highly optimized, extensively threaded math routines for science, engineering, and financial applications that require maximum performance. Core math functions include BLAS, LAPACK, ScaLAPACK, Sparse Solvers, Fast Fourier Transforms, Vector Math, and more. | -| [LAPACK](http://www.netlib.org/lapack/) | LAPACK is written in Fortran90 and provides routines for solving systems of simultaneous linear equations, least-squares solutions of linear systems of equations, eigenvalue problems, and singular value problems. | -| [LAPACKE](http://www.netlib.org/lapack/lapacke.html) | LAPACKE C Interface to LAPACK header files and library | -| [LIBLINEAR](http://www.csie.ntu.edu.tw/~cjlin/liblinear/) | LIBLINEAR is a simple package for solving large-scale regularized linear classification and regression. It supports L2-regularized logistic regression, L2-loss support vector classification L1-loss support vector classification, L1-regularized L2-loss support vector classification, L1-regularized logistic regression L2-regularized L2-loss support vector regression, L1-loss support vector regression. | -| [mkl](http://software.intel.com/en-us/intel-mkl/) | Intel Math Kernel Library is a library of highly optimized, extensively threaded math routines for science, engineering, and financial applications that require maximum performance. Core math functions include BLAS, LAPACK, ScaLAPACK, Sparse Solvers, Fast Fourier Transforms, Vector Math, and more. | -| [MPI-LIBLINEAR](https://www.csie.ntu.edu.tw/~cjlin/libsvmtools/distributed-liblinear/mpi/) | MPI LIBLINEAR is an extension of LIBLINEAR on distributed environments. The usage and the data format are the same as LIBLINEAR. It supports L2-regularized logistic regression, L2-regularized logistic regression, L2-regularized L2-loss linear SVM (primal trust-region Newton), L2-regularized L1-loss linear SVM (dual), L2-regularized logistic regression (primal limited common directions), L2-regularized L2-loss linear SVM (primal limited common directions). Module created by the PERMON Team (http://permon.it4i.cz). | -| [NLopt](http://ab-initio.mit.edu/wiki/index.php/NLopt) | NLopt is a free/open-source library for nonlinear optimization, providing a common interface for a number of different free optimization routines available online as well as original implementations of various other algorithms. | -| [OpenBLAS](http://xianyi.github.com/OpenBLAS/) | OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version. | -| [PETSc](http://www.mcs.anl.gov/petsc) | PETSc, pronounced PET-see (the S is silent), is a suite of data structures and routines for the scalable (parallel) solution of scientific applications modeled by partial differential equations. | -| [PFFT](https://www-user.tu-chemnitz.de/~mpip/software.php?lang=en) | PFFT is a software library for computing massively parallel, fast Fourier transformations on distributed memory architectures. PFFT can be understood as a generalization of FFTW-MPI to multidimensional data decomposition. | -| [qrupdate](https://sourceforge.net/projects/qrupdate/) | qrupdate is a Fortran library for fast updates of QR and Cholesky decompositions. | -| [ScaLAPACK](http://www.netlib.org/scalapack/) | The ScaLAPACK (or Scalable LAPACK) library includes a subset of LAPACK routines redesigned for distributed memory MIMD parallel computers. | -| [SLEPc](http://www.grycap.upv.es/slepc/) | SLEPc (Scalable Library for Eigenvalue Problem Computations) is a software library for the solution of large scale sparse eigenvalue problems on parallel computers. It is an extension of PETSc and can be used for either standard or generalized eigenproblems, with real or complex arithmetic. It can also be used for computing a partial SVD of a large, sparse, rectangular matrix, and to solve quadratic eigenvalue problems. | -| [SuiteSparse](http://www.cise.ufl.edu/research/sparse/SuiteSparse/) | SuiteSparse is a collection of libraries manipulate sparse matrices. | -| [Trilinos](http://trilinos.sandia.gov/) | The Trilinos Project is an effort to develop algorithms and enabling technologies within an object-oriented software framework for the solution of large-scale, complex multi-physics engineering and scientific problems. A unique design feature of Trilinos is its focus on packages. | - -## Perf - -| Module | Description | -| ------ | ----------- | -| [Advisor](https://software.intel.com/intel-advisor-xe) | Vectorization Optimization and Thread Prototyping - Vectorize & thread code or performance “dies” - Easy workflow + data + tips = faster code faster - Prioritize, Prototype & Predict performance gain | -| [Cube](http://www.scalasca.org/software/cube-4.x/download.html) | Cube, which is used as performance report explorer for Scalasca and Score-P, is a generic tool for displaying a multi-dimensional performance space consisting of the dimensions (i) performance metric, (ii) call path, and (iii) system resource. Each dimension can be represented as a tree, where non-leaf nodes of the tree can be collapsed or expanded to achieve the desired level of granularity. | -| [ipp](http://software.intel.com/en-us/articles/intel-ipp/) | Intel Integrated Performance Primitives (Intel IPP) is an extensive library of multicore-ready, highly optimized software functions for multimedia, data processing, and communications applications. Intel IPP offers thousands of optimized functions covering frequently used fundamental algorithms. | -| [MAP](http://www.allinea.com/) | C, C++ and F90 profiler for high performance and multithreaded Linux applications | -| [OPARI2](http://www.score-p.org) | OPARI2, the successor of Forschungszentrum Juelich's OPARI, is a source-to-source instrumentation tool for OpenMP and hybrid codes. It surrounds OpenMP directives and runtime library calls with calls to the POMP2 measurement interface. | -| [OTF2](http://www.score-p.org) | The Open Trace Format 2 is a highly scalable, memory efficient event trace data format plus support library. It will become the new standard trace format for Scalasca, Vampir, and Tau and is open for other tools. | -| [PAPI](http://icl.cs.utk.edu/projects/papi/) | PAPI provides the tool designer and application engineer with a consistent interface and methodology for use of the performance counter hardware found in most major microprocessors. PAPI enables software engineers to see, in near real time, the relation between software performance and processor events. In addition Component PAPI provides access to a collection of components that expose performance measurement opportunites across the hardware and software stack. | -| [PDT](http://www.cs.uoregon.edu/research/pdt/) | Program Database Toolkit (PDT) is a framework for analyzing source code written in several programming languages and for making rich program knowledge accessible to developers of static and dynamic analysis tools. PDT implements a standard program representation, the program database (PDB), that can be accessed in a uniform way through a class library supporting common PDB operations. | -| [perfboost](http://www.sgi.com/) | Use applications compiled with other MPIs with SGI MPI | -| [perfcatcher](http://www.sgi.com/) | Light-weight application profiler for SGI MPI | -| [PerfReports](http://www.allinea.com/") | helps you address the question of quality of utilization. It provides a one page HTML report - collecting, analyzing and reporting the key metrics that impact performance. It can be used without changing either the source code or the application - removing the barriers and opening access to everyon | -| [PerfSuite](http://perfsuite.ncsa.illinois.edu/") | PerfSuite is a collection of tools, utilities, and libraries for software performance analysis where the primary design goals are ease of use, comprehensibility, interoperability, and simplicity. This software can provide a good "entry point" for more detailed performance analysis and can help point the way towards selecting other tools and/or techniques using more specialized software if necessary (for example, tools/libraries from academic research groups or third-party commercial software | -| [Scalasca](http://www.scalasca.org/) | Scalasca is a software tool that supports the performance optimization of parallel programs by measuring and analyzing their runtime behavior. The analysis identifies potential performance bottlenecks – in particular those concerning communication and synchronization – and offers guidance in exploring their causes. | -| [Score-P](http://www.vi-hps.org/projects/score-p//) | Score-P offers the user a maximum of convenience by supporting a number of analysis tools. Currently, it works with Periscope, Scalasca, Vampir, and Tau and is open for other tools. Score-P comes together with the new Open Trace Format Version 2, the Cube4 profiling format and the Opari2 instrumenter (see below). Score-P is available under the New BSD Open Source license. | -| [Vampir](http://www.vampir.eu) | The Vampir software tool provides an easy-to-use framework that enables developers to quickly display and analyze arbitrary program behavior at any level of detail. The tool suite implements optimized event analysis algorithms and customizable displays that enable fast and interactive rendering of very complex performance monitoring data. | -| [VampirServer](http://www.vampir.eu) | The Vampir software tool provides an easy-to-use framework that enables developers to quickly display and analyze arbitrary program behavior at any level of detail. The tool suite implements optimized event analysis algorithms and customizable displays that enable fast and interactive rendering of very complex performance monitoring data. | - -## Phys - -| Module | Description | -| ------ | ----------- | -| [ALAMODE](http://alamode.readthedocs.io/) | ALAMODE is an open source software designed for analyzing lattice anharmonicity and lattice thermal conductivity of solids. By using an external DFT package such as VASP and Quantum ESPRESSO, you can extract harmonic and anharmonic force constants straightforwardly with ALAMODE. Using the calculated anharmonic force constants, you can also estimate lattice thermal conductivity, phonon linewidth, and other anharmonic phonon properties from first principles. | -| [CASMcode](CASMcode) | CASM (https://github.com/prisms-center/CASMcode) is an open source software package designed to perform first-principles statistical mechanical studies of multi-component crystalline solids. CASM interfaces with first-principles electronic structure codes, automates the construction and parameterization of effective Hamiltonians and subsequently builds highly optimized (kinetic) Monte Carlo codes to predict finite-temperature thermodynamic and kinetic properties. CASM uses group theoretic techniques that take full advantage of crystal symmetry in order to rigorously construct effective Hamiltonians for almost arbitrary degrees of freedom in crystalline solids. This includes cluster expansions for configurational disorder in multi-component solids and lattice-dynamical effective Hamiltonians for vibrational degrees of freedom involved in structural phase transitions. | -| [DynaPhoPy](https://github.com/abelcarreras/DynaPhoPy) | Software to calculate crystal microscopic anharmonic properties from molecular dynamics (MD) using the normal-mode-decomposition technique. These properties include the phonon frequency shifts and linewidths, as well as the renormalized force constanst and thermal properties by using quasiparticle theory. This code includes interfaces for MD outputs from VASP and LAMMPS .PHONOPY code is used to obtain harmonic phonon modes. | -| [Elk](http://elk.sourceforge.net/) | An all-electron full-potential linearised augmented-plane wave (FP-LAPW) code with many advanced features. Written originally at Karl-Franzens-Universität Graz as a milestone of the EXCITING EU Research and Training Network, the code is designed to be as simple as possible so that new developments in the field of density functional theory (DFT) can be added quickly and reliably. | -| [LMGC90](https://git-xen.lmgc.univ-montp2.fr/lmgc90/) | LMGC90 is a free and open source software dedicated to multiple physics simulation of discrete material and structures. Module created by Jiri Tomcala from the PERMON Team (http://permon.it4i.cz) and Josef Hrabal from IT4I Supercomputing Services | -| [Meep](http://ab-initio.mit.edu/wiki/index.php/Meep) | Meep (or MEEP) is a free finite-difference time-domain (FDTD) simulation software package developed at MIT to model electromagnetic systems. | -| [Netgen](https://ngsolve.org/) | Netgen/NGSolve is a high performance multiphysics finite element software. It is widely used to analyze models from solid mechanics, fluid dynamics and electromagnetics. Due to its flexible Python interface new physical equations and solution algorithms can be implemented easily. | -| [phono3py](http://phonopy.sourceforge.net/phono3py/index.html) | This software calculates phonon-phonon interaction related properties | -| [phonopy](http://python.org/) | Python is a programming language that lets you work more quickly and integrate your systems more effectively. | -| [PLUTO](https://github.com/JohannesBuchner/PLUTO) | PLUTO is Godunov-type code for astrophysical fluid dynamics supporting several modules and algorithms. This is the v 4.2 (August 2015) version of the code (http://plutocode.ph.unito.it). This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. | -| [PragTic](http://permon.it4i.cz/pragtic) | PragTic is a module for massively parallel runs of the PragTic library. Homepage: http://permon.it4i.cz/pragtic. Module created by Jiri Tomcala from the PERMON Team (http://permon.it4i.cz) | -| [Sen2Cor](http://step.esa.int/main/third-party-plugins-2/sen2cor/) | Sen2Cor is a processor for Sentinel-2 Level 2A product generation and formatting; it performs the atmospheric-, terrain and cirrus correction of Top-Of- Atmosphere Level 1C input data. Sen2Cor creates Bottom-Of-Atmosphere, optionally terrain- and cirrus corrected reflectance images; additional, Aerosol Optical Thickness-, Water Vapor-, Scene Classification Maps and Quality Indicators for cloud and snow probabilities. Its output product format is equivalent to the Level 1C User Product: JPEG 2000 images, three different resolutions, 60, 20 and 10 m. | -| [Siesta](http://departments.icmab.es/leem/siesta) | SIESTA is both a method and its computer program implementation, to perform efficient electronic structure calculations and ab initio molecular dynamics simulations of molecules and solids. This version si compiled with OpenMP and MPI support. | -| [VASP](http://www.vasp.at) | The Vienna Ab initio Simulation Package (VASP) is a computer program for atomic scale materials modelling, e.g. electronic structure calculations and quantum-mechanical molecular dynamics, from first principles. To use VASP, You need academic licenses from University of Wiena. Follow the instructions https://www.vasp.at/index.php/faqs. Then send us please a list of authorized users and their ID for which you need this access. Please use only http://support.it4i.cz/rt. We are responsible to verify your licenses. After succesfull verification You will be granted to use VASP in our enviroment. | - -## Python - -| Module | Description | -| ------ | ----------- | -| [absl-py](https://pypi.python.org/pypi/absl-py) | Abseil Python Common Libraries, see https://github.com/abseil/abseil-py. | -| [ASE](https://wiki.fysik.dtu.dk/ase/) | ASE is a python package providing an open source Atomic Simulation Environment in the Python scripting language. | -| [asn1crypto](https://pypi.python.org/pypi/asn1crypto) | A fast, pure Python library for parsing and serializing ASN.1 structures. | -| [astor](https://pypi.python.org/pypi/astor) | Read/rewrite/write Python ASTs | -| [asv](https://github.com/airspeed-velocity/asv) | Airspeed velocity (asv) is a tool for benchmarking Python packages over their lifetime. | -| [attrs](http://www.attrs.org/) | Classes Without Boilerplate | -| [backports_abc](https://pypi.python.org/pypi/backports_abc) | A backport of recent additions to the "collections.abc" module. | -| [bcrypt](https://pypi.python.org/pypi/bcrypt) | Modern password hashing for your software and your servers | -| [bleach](https://pypi.python.org/pypi/bleach) | An easy safelist-based HTML-sanitizing tool. | -| [BoltzTraP2](https://www.imc.tuwien.ac.at/index.php?id=21094) | BoltzTraP2 is a modern implementation of the smoothed Fourier interpolation algorithm for electronic bands that formed the base of the original and widely used BoltzTraP code. | -| [certifi](https://pypi.python.org/pypi/certifi) | Python package for providing Mozillas CA Bundle. | -| [cffi](https://pypi.python.org/pypi/cffi) | Foreign Function Interface for Python calling C code. | -| [click](https://pypi.python.org/pypi/click) | A simple wrapper around optparse for powerful command line utilities. | -| [cryptography](https://pypi.python.org/pypi/cryptography) | Cryptography is a package which provides cryptographic recipes and primitives to Python developers. | -| [cycler](https://matplotlib.org/cycler) | Composable style cycles. | -| [dask](https://pypi.python.org/pypi/dask) | Parallel PyData with Task Scheduling. | -| [decorator](https://pypi.python.org/pypi/decorator) | Better living through Python with decorators. | -| [dist-keras](https://pypi.python.org/pypi/dist-keras) | Distributed Deep learning with Apache Spark with Keras. | -| [DynaPhoPy](https://github.com/abelcarreras/DynaPhoPy) | Software to calculate crystal microscopic anharmonic properties from molecular dynamics (MD) using the normal-mode-decomposition technique. These properties include the phonon frequency shifts and linewidths, as well as the renormalized force constanst and thermal properties by using quasiparticle theory. This code includes interfaces for MD outputs from VASP and LAMMPS .PHONOPY code is used to obtain harmonic phonon modes. | -| [enum34](https://pypi.python.org/pypi/enum34) | An enumeration is a set of symbolic names (members) bound to unique, constant values. | -| [fasteners](https://pypi.python.org/pypi/fasteners) | A python package that provides useful locks. | -| [Flask](https://pypi.python.org/pypi/flask) | A microframework based on Werkzeug, Jinja2 and good intentions. | -| [gast](https://pypi.python.org/pypi/gast) | Python AST that abstracts the underlying Python version | -| [grpcio](https://pypi.python.org/pypi/grpcio) | HTTP/2-based RPC framework | -| [h5py](http://www.h5py.org/) | HDF5 for Python (h5py) is a general-purpose Python interface to the Hierarchical Data Format library, version 5. HDF5 is a versatile, mature scientific software library designed for the fast, flexible storage of enormous amounts of data. | -| [html5lib](https://pypi.python.org/pypi/html5lib) | HTML parser based on the WHATWG HTML specification. | -| [idna](https://pypi.python.org/pypi/idna) | Support for the Internationalised Domain Names in Applications (IDNA) protocol as specified in RFC 5891. | -| [ipaddress](https://pypi.python.org/pypi/ipaddress) | IPv4/IPv6 manipulation library. | -| [itsdangerous](https://pypi.python.org/pypi/itsdangerous) | Various helpers to pass trusted data to untrusted environments and back. | -| [Jinja2](https://pypi.python.org/pypi/jinja) | A small but fast and easy to use stand-alone template engine written in pure python. | -| [Keras](https://keras.io/) | Keras is a minimalist, highly modular neural networks library, written in Python and capable of running on top of either TensorFlow or Theano. | -| [latexcodec](https://pypi.python.org/pypi/latexcodec) | A lexer and codec to work with LaTeX code in Python. | -| [loom](https://code.it4i.cz/ADAS/loom) | Framework for distributed task execution | -| [lxml](http://lxml.de/) | The lxml XML toolkit is a Pythonic binding for the C libraries libxml2 and libxslt. | -| [Mako](http://www.makotemplates.org) | A super-fast templating language that borrows the best ideas from the existing templating languages | -| [Markdown](https://pypi.python.org/pypi/Markdown) | Python implementation of Markdown. | -| [MarkupSafe](https://pypi.python.org/pypi/markupsafe) | Implements a XML/HTML/XHTML Markup safe string for Python. | -| [matplotlib](http://matplotlib.org) | matplotlib is a python 2D plotting library which produces publication quality figures in a variety of hardcopy formats and interactive environments across platforms. matplotlib can be used in python scripts, the python and ipython shell, web application servers, and six graphical user interface toolkits. | -| [Mercurial](http://mercurial.selenic.com/) | Mercurial is a free, distributed source control management tool. It efficiently handles projects of any size and offers an easy and intuitive interface. | -| [monotonic](https://pypi.python.org/pypi/monotonic) | This module provides a monotonic() function which returns the value (in fractional seconds) of a clock which never goes backwards. | -| [monty](https://pypi.python.org/pypi/monty) | Monty is the missing complement to Python. | -| [mpi4py](http://mpi4py.scipy.org/docs) | MPI for Python (mpi4py) provides bindings of the Message Passing Interface (MPI) standard for the Python programming language, allowing any Python program to exploit multiple processors. | -| [mpmath](https://pypi.python.org/pypi/mpmath) | Python library for arbitrary-precision floating-point arithmetic. | -| [networkx](https://pypi.python.org/pypi/networkx) | NetworkX is a Python package for the creation, manipulation, and study of the structure, dynamics, and functions of complex networks. | -| [numpy](http://www.numpy.org) | NumPy is the fundamental package for scientific computing with Python. It contains among other things: a powerful N-dimensional array object, sophisticated (broadcasting) functions, tools for integrating C/C++ and Fortran code, useful linear algebra, Fourier transform, and random number capabilities. Besides its obvious scientific uses, NumPy can also be used as an efficient multi-dimensional container of generic data. Arbitrary data-types can be defined. This allows NumPy to seamlessly and speedily integrate with a wide variety of databases. | -| [packaging](https://pypi.python.org/pypi/packaging) | Core utilities for Python packages. | -| [palettable](https://pypi.python.org/pypi/palettable) | Color palettes for Python. | -| [pandas](https://pypi.python.org/pypi/pandas) | Powerful data structures for data analysis, time series,and statistics. | -| [paramiko](https://pypi.python.org/pypi/paramiko) | This is a library for making SSH2 connections (client or server). | -| [phonopy](http://python.org/) | Python is a programming language that lets you work more quickly and integrate your systems more effectively. | -| [Pillow](http://pillow.readthedocs.org/) | Pillow is the 'friendly PIL fork' by Alex Clark and Contributors. PIL is the Python Imaging Library by Fredrik Lundh and Contributors. | -| [Platypus](https://github.com/andyrimmer/Platypus) | The Platypus variant caller. | -| [pluggy](https://github.com/pytest-dev/pluggy) | Plugin and hook calling mechanisms for python. | -| [pudb](https://pypi.python.org/pypi/pudb) | PuDB is a full-screen, console-based visual debugger for Python. | -| [py4j](https://pypi.python.org/pypi/py4j) | Enables Python programs to dynamically access arbitrary Java objects. | -| [pyasn1](https://pypi.python.org/pypi/pyasn1) | Pure-Python implementation of ASN.1 types and DER/BER/CER codecs (X.208) | -| [pybtex](https://pypi.python.org/pypi/pybtex) | A BibTeX-compatible bibliography processor in Python. | -| [pycparser](https://pypi.python.org/pypi/pycparser) | Pycparser is a complete parser of the C language, written in pure Python using the PLY parsing library. It parses C code into an AST and can serve as a front-end for C compilers or analysis tools. | -| [PyDispatcher](https://pypi.python.org/pypi/PyDispatcher) | Multi-producer-multi-consumer signal dispatching mechanism. | -| [pydot](https://pypi.python.org/pypi/pydot) | A Python interface to GraphViz and the DOT language. | -| [pyFFTW](https://pypi.python.org/pypi/pyFFTW) | A pythonic wrapper around FFTW, the FFT library, presenting a unified interface for all the supported transforms. | -| [pymatgen](https://pypi.python.org/pypi/pymatgen) | Python Materials Genomics is a robust materials analysis code that defines core object representations for structures and molecules with support for many electronic structure codes. It is currently the core analysis code powering the Materials Project (https://www.materialsproject.org). | -| [PyNaCl](https://pypi.python.org/pypi/PyNaCl) | Python binding to the Networking and Cryptography (NaCl) library | -| [pyparsing](http://pyparsing.wikispaces.com) | The pyparsing module provides a library of classes that client code uses to construct the grammar directly in Python code. | -| [PyQt](http://www.riverbankcomputing.co.uk/software/pyqt) | PyQt is a set of Python v2 and v3 bindings for Digia's Qt application framework. | -| [PyQt5](http://www.riverbankcomputing.co.uk/software/pyqt) | PyQt5 is a set of Python bindings for v5 of the Qt application framework from The Qt Company. | -| [pyspark](https://pypi.python.org/pypi/pyspark) | Apache Spark Python API | -| [pytest](http://pytest.org) | Simple powerful testing with Python | -| [python-dateutil](https://github.com/dateutil/dateutil) | Useful extensions to the standard Python datetime features. | -| [pytz](http://pytz.sourceforge.net/) | pytz brings the Olson tz database into Python. This library allows accurate and cross platform timezone calculations using Python 2.4 or higher. | -| [PyWavelets](https://pypi.python.org/pypi/PyWavelets) | PyWavelets, wavelet transform module. | -| [PyYAML](https://pypi.python.org/pypi/PyYAML/) | PyYAML is a YAML parser and emitter for the Python programming language. | -| [pyzmq](https://pypi.python.org/pypi/pyzmq) | Python bindings for 0MQ. | -| [ranger](https://github.com/ranger/ranger) | ranger is a console file manager with VI key bindings. It provides a minimalistic and nice curses interface with a view on the directory hierarchy. It ships with rifle, a file launcher that is good at automatically finding out which program to use for what file type. | -| [requests](https://pypi.python.org/pypi/requests) | Python HTTP for Humans. | -| [ruamel.yaml](https://pypi.python.org/pypi/ruamel.yaml) | ruamel.yaml is a YAML parser/emitter that supports roundtrip preservation of comments, seq/map flow style, and map key order | -| [scikit-image](http://scikit-learn.org/stable/index.html) | Scikit-learn integrates machine learning algorithms in the tightly-knit scientific Python world, building upon numpy, scipy, and matplotlib. As a machine-learning module, it provides versatile tools for data mining and analysis in any field of science and engineering. It strives to be simple and efficient, accessible to everybody, and reusable in various contexts. | -| [scikit-learn](http://scikit-learn.org/stable/index.html) | Scikit-learn integrates machine learning algorithms in the tightly-knit scientific Python world, building upon numpy, scipy, and matplotlib. As a machine-learning module, it provides versatile tools for data mining and analysis in any field of science and engineering. It strives to be simple and efficient, accessible to everybody, and reusable in various contexts. | -| [scipy](https://github.com/jupyter/testpath) | Test utilities for code working with files and commands | -| [SCons](http://www.scons.org/) | SCons is a software construction tool. | -| [seaborn](https://pypi.python.org/pypi/seaborn) | Seaborn: statistical data visualization | -| [singledispatch](https://pypi.python.org/pypi/singledispatch) | A small but fast and easy to use stand-alone template engine written in pure python. | -| [SIP](http://www.riverbankcomputing.com/software/sip/) | SIP is a tool that makes it very easy to create Python bindings for C and C++ libraries. | -| [six](https://github.com/benjaminp/six) | Python 2 and 3 compatibility library. | -| [spglib-python](https://pypi.python.org/pypi/spglib) | Spglib for Python. Spglib is a library for finding and handling crystal symmetries written in C. | -| [sympy](http://sympy.org/) | SymPy is a Python library for symbolic mathematics. It aims to become a full-featured computer algebra system (CAS) while keeping the code as simple as possible in order to be comprehensible and easily extensible. SymPy is written entirely in Python and does not require any external libraries. | -| [tabulate](https://pypi.python.org/pypi/tabulate) | Pretty-print tabular data. | -| [tensorboard](https://github.com/tensorflow/tensorboard) | TensorBoard lets you watch Tensors Flow. | -| [Tensorflow](https://www.tensorflow.org/) | An open-source software library for Machine Intelligence | -| [tensorflow-tensorboard](https://github.com/tensorflow/tensorboard) | TensorBoard lets you watch Tensors Flow. | -| [termcolor](https://pypi.python.org/pypi/termcolor) | ANSII Color formatting for output in terminal. | -| [Theano](http://deeplearning.net/software/theano) | Theano is a Python library that allows you to define, optimize, and evaluate mathematical expressions involving multi-dimensional arrays efficiently. | -| [toolz](https://pypi.python.org/pypi/toolz) | List processing tools and functional utilities. | -| [tornado](https://pypi.python.org/pypi/tornado) | Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed. | -| [urllib3](https://pypi.python.org/pypi/urllib3) | HTTP library with thread-safe connection pooling, file post, and more. | -| [virtualenv](https://pypi.python.org/pypi/virtualenv) | Virtual Python Environment builder. | -| [webencodings](https://pypi.python.org/pypi/webencodings) | Character encoding aliases for legacy web content. | -| [Werkzeug](https://pypi.python.org/pypi/Werkzeug) | The comprehensive WSGI web application library. | -| [wheel](https://pypi.python.org/pypi/wheel) | A built-package format for Python. | - -## System - -| Module | Description | -| ------ | ----------- | -| [eudev](https://wiki.gentoo.org/wiki/Project:Eudev) | eudev is a fork of systemd-udev with the goal of obtaining better compatibility with existing software such as OpenRC and Upstart, older kernels, various toolchains and anything else required by users and various distributions. | -| [hwloc](http://www.open-mpi.org/projects/hwloc/) | The Portable Hardware Locality (hwloc) software package provides a portable abstraction (across OS, versions, architectures, ...) of the hierarchical topology of modern architectures, including NUMA memory nodes, sockets, shared caches, cores and simultaneous multithreading. It also gathers various system attributes such as cache and memory information as well as the locality of I/O devices such as network interfaces, InfiniBand HCAs or GPUs. It primarily aims at helping applications with gathering information about modern computing hardware so as to exploit it accordingly and efficiently. | -| [libpciaccess](http://cgit.freedesktop.org/xorg/lib/libpciaccess/) | Generic PCI access library. | -| [LibreSSL](http://www.libressl.org/) | LibreSSL is a version of the TLS/crypto stack forked from OpenSSL in 2014, with goals of modernizing the codebase, improving security, and applying best practice development processes. Primary development occurs inside the OpenBSD source tree with the usual care the project is known for. On a regular basis the code is re-packaged for portable use by other operating systems (Linux, FreeBSD, Windows, etc). | -| [OpenSSL](http://www.openssl.org/) | The OpenSSL Project is a collaborative effort to develop a robust, commercial-grade, full-featured, and Open Source toolchain implementing the Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1) protocols as well as a full-strength general purpose cryptography library. | - -## Toolchain - -| Module | Description | -| ------ | ----------- | -| foss | GNU Compiler Collection (GCC) based compiler toolchain, including OpenMPI for MPI support, OpenBLAS (BLAS and LAPACK support), FFTW and ScaLAPACK. | -| [GNU](http://www.gnu.org/software/) | Compiler-only toolchain with GCC and binutils. | -| gompi | GNU Compiler Collection (GCC) based compiler toolchain, including OpenMPI for MPI support. | -| [iccifort](http://software.intel.com/en-us/intel-cluster-toolkit-compiler/) | Intel C, C++ and Fortran compilers | -| [ictce](http://software.intel.com/en-us/intel-cluster-toolkit-compiler/) | Intel Cluster Toolkit Compiler Edition provides Intel C/C++ and Fortran compilers, Intel MPI & Intel MKL. | -| [iimpi](http://software.intel.com/en-us/intel-cluster-toolkit-compiler/) | Intel C/C++ and Fortran compilers, alongside Intel MPI. | -| [intel](http://software.intel.com/en-us/intel-cluster-toolkit-compiler/) | Intel Cluster Toolkit Compiler Edition provides Intel C/C++ and Fortran compilers, Intel MPI & Intel MKL. | -| [iomkl](http://software.intel.com/en-us/intel-cluster-toolkit-compiler/) | Intel Cluster Toolchain Compiler Edition provides Intel C/C++ and Fortran compilers, Intel MKL & OpenMPI. | -| [iompi](http://software.intel.com/en-us/intel-cluster-toolkit-compiler/) | Intel C/C++ and Fortran compilers, alongside Open MPI. | -| [libc](https://www.gnu.org/software/libc/) | The Glibc package contains the main C library. This library provides the basic routines for allocating memory, searching directories, opening and closing files, reading and writing files, string handling, pattern matching, arithmetic, and so on. | -| [PRACE](http://www.prace-ri.eu/PRACE-Common-Production) | The PRACE Common Production Environment (PCPE) is a set of software tools and libraries that are planned to be available on all PRACE execution sites. The PCPE also defines a set of environment variables that try to make compilation on all sites as homogeneous and simple as possible. | -| [prace](http://www.prace-ri.eu/PRACE-Common-Production) | PRACE Common Production Environment (PCPE) Initialisation of the PRACE common production environment. This allows you to assume that the following tools/libraries are available by default in your PATH/environment. * Fortran, C, C++ Compilers * MPI * BLAS, LAPACK, BLACS, ScaLAPACK * FFTW * HDF5, NetCDF The compiler commands on are: * mpif90 - Fortran compiler * mpicc - C compiler * mpicxx - C++ compiler For more information on the PCPE please see the documentation at: http://www.prace-ri.eu/PRACE-Common-Production For help using this system, please see Local User Guide available at: http://prace-ri.eu/Best-Practice-Guide-Anselm-HTML | -| [Py](https://www.python.org) | Python 2.7 toolchain | - -## Tools - -| Module | Description | -| ------ | ----------- | -| [ANSYS](http://www.ansys.com) | ANSYS simulation software enables organizations to confidently predict how their products will operate in the real world. We believe that every product is a promise of something greater. | -| [APR](http://apr.apache.org/) | Apache Portable Runtime (APR) libraries. | -| [APR-util](http://apr.apache.org/) | Apache Portable Runtime (APR) util libraries. | -| [Bash](http://www.gnu.org/software/bash) | Bash is an sh-compatible command language interpreter that executes commands read from the standard input or from a file. Bash also incorporates useful features from the Korn and C shells (ksh and csh). | -| [BeoPEST](http://www.prinmath.com/pest/) | BeoPEST is a special version of John Doherty's PEST adapted for Beowulf clusters. BeoPEST is identical in operation to Parallel PEST, except that it instead of a master and slaves that communicate through the file system, BeoPEST uses a master and smart slaves that communicate via TCP/IP or MPI. BeoPEST also uses smart slaves which offloads much of the effort to the slaves which is important for BeoPEST to scale to hundreds or thousands of slaves. More detail is provided in the BeoPEST Documentation. | -| [binutils](http://directory.fsf.org/project/binutils/) | binutils: GNU binary utilities | -| [bzip2](http://www.bzip.org/) | bzip2 is a freely available, patent free, high-quality data compressor. It typically compresses files to within 10% to 15% of the best available techniques (the PPM family of statistical compressors), whilst being around twice as fast at compression and six times faster at decompression. | -| [CORALbenchmark](https://asc.llnl.gov/CORAL-benchmarks) | Benchmark Codes | -| [Coreutils](http://www.gnu.org/software/coreutils/) | The GNU Core Utilities are the basic file, shell and text manipulation utilities of the GNU operating system. These are the core utilities which are expected to exist on every operating system. | -| [cURL](http://curl.haxx.se) | libcurl is a free and easy-to-use client-side URL transfer library, supporting DICT, FILE, FTP, FTPS, Gopher, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMTP, SMTPS, Telnet and TFTP. libcurl supports SSL certificates, HTTP POST, HTTP PUT, FTP uploading, HTTP form based upload, proxies, cookies, user+password authentication (Basic, Digest, NTLM, Negotiate, Kerberos), file transfer resume, http proxy tunneling and more. | -| [DMTCP](http://dmtcp.sourceforge.net/index.html) | DMTCP (Distributed MultiThreaded Checkpointing) transparently checkpoints a single-host or distributed computation in user-space -- with no modifications to user code or to the O/S. | -| [duplicity](http://duplicity.nongnu.org/index.html) | Encrypted bandwidth-efficient backup using the rsync algorithm. | -| [EasyBuild](https://easybuilders.github.io/easybuild) | EasyBuild is a software build and installation framework written in Python that allows you to install software in a structured, repeatable and robust way. | -| [expat](http://expat.sourceforge.net/) | Expat is an XML parser library written in C. It is a stream-oriented parser in which an application registers handlers for things the parser might find in the XML document (like start tags) | -| [Ghostscript](http://ghostscript.com) | Ghostscript is a versatile processor for PostScript data with the ability to render PostScript to different targets. It used to be part of the cups printing stack, but is no longer used for that. | -| [git](http://git-scm.com/) | Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency. | -| [globus](http://toolkit.globus.org/toolkit/") | Set environment variables to enable usage of Globus | -| [GLPK](https://www.gnu.org/software/glpk/) | The GLPK (GNU Linear Programming Kit) package is intended for solving large-scale linear programming (LP), mixed integer programming (MIP), and other related problems. It is a set of routines written in ANSI C and organized in the form of a callable library. | -| [gperftools](http://github.com/gperftools/gperftools) | gperftools are for use by developers so that they can create more robust applications. Especially of use to those developing multi-threaded applications in C++ with templates. Includes TCMalloc, heap-checker, heap-profiler and cpu-profiler. | -| [Graph500](http://graph500.org/) | Reference code of the Graph500 benchmark. | -| [gzip](http://www.gnu.org/software/gzip/) | gzip (GNU zip) is a popular data compression program as a replacement for compress | -| [Hadoop](http://archive.cloudera.com/cdh5/cdh/5/) | Hadoop MapReduce by Cloudera | -| [help2man](https://www.gnu.org/software/help2man/) | help2man produces simple manual pages from the '--help' and '--version' output of other commands. | -| [HPL](http://www.netlib.org/benchmark/hpl/) | HPL is a software package that solves a (random) dense linear system in double precision (64 bits) arithmetic on distributed-memory computers. It can thus be regarded as a portable as well as freely available implementation of the High Performance Computing Linpack Benchmark. | -| [Inspector](http://software.intel.com/en-us/intel-inspector-xe) | Intel Inspector XE 2013 is an easy to use memory error checker and thread checker for serial and parallel applications | -| [IOR](https://github.com/chaos/ior) | The IOR software is used for benchmarking parallel file systems using POSIX, MPIIO, or HDF5 interfaces. | -| [itac](http://software.intel.com/en-us/intel-trace-analyzer/) | The Intel Trace Collector is a low-overhead tracing library that performs event-based tracing in applications. The Intel Trace Analyzer provides a convenient way to monitor application activities gathered by the Intel Trace Collector through graphical displays. | -| [JOE](http://joe-editor.sourceforge.net) | JOE is a full featured terminal-based screen editor which is distributed under the GNU General Public License (GPL) | -| [LicenseChecker](http://www.it4i.cz) | Tools for Dr. Sevcik (mailto:dr.sevcik@vsb.cz)- checking license files | -| [likwid](https://github.com/RRZE-HPC/likwid) | Toolsuite of command line applications for performance oriented programmers | -| [Lmod](http://sourceforge.net/projects/lmod/) | Lmod is a Lua based module system. Modules allow for dynamic modification of a user's environment under Unix systems. See www.tacc.utexas.edu/tacc-projects/lmod for a complete description. Lmod is a new implementation that easily handles the MODULEPATH Hierarchical problem. It is drop-in replacement for TCL/C modules and reads TCL modulefiles directly. | -| [LSMS](https://asc.llnl.gov/CORAL-benchmarks/#lsms) | LSMS benchmark, part of CORAL suite | -| [mdtest](http://sourceforge.net/projects/mdtest/) | mdtest is an MPI-coordinated metadata benchmark test that performs open/stat/close operations on files and directories and then reports the performance. | -| [Mercurial](http://mercurial.selenic.com/) | Mercurial is a free, distributed source control management tool. It efficiently handles projects of any size and offers an easy and intuitive interface. | -| [MIKE](http://www.mikepoweredbydhi.com) | MIKE Powered by DHI is a part of DHI, the global organisation dedicated to solving challenges in water environments worldwide. | -| [moreutils](https://joeyh.name/code/moreutils/) | Moreutils is a growing collection of the unix tools that nobody thought to write long ago when unix was young. | -| [networkx](https://pypi.python.org/pypi/networkx) | NetworkX is a Python package for the creation, manipulation, and study of the structure, dynamics, and functions of complex networks. | -| [numactl](http://oss.sgi.com/projects/libnuma/) | The numactl program allows you to run your application program on specific cpu's and memory nodes. It does this by supplying a NUMA memory policy to the operating system before running your program. The libnuma library provides convenient ways for you to add NUMA memory policies into your own program. | -| [osm2pgsql](http://wiki.openstreetmap.org/wiki/Osm2pgsql) | osm2pgsql is a command-line based program that converts OpenStreetMap data to postGIS-enabled PostgreSQL databases | -| [PAPI](http://icl.cs.utk.edu/projects/papi/) | PAPI provides the tool designer and application engineer with a consistent interface and methodology for use of the performance counter hardware found in most major microprocessors. PAPI enables software engineers to see, in near real time, the relation between software performance and processor events. In addition Component PAPI provides access to a collection of components that expose performance measurement opportunites across the hardware and software stack. | -| [parallel](http://savannah.gnu.org/projects/parallel/) | parallel: Build and execute shell commands in parallel | -| [PatchELF](https://nixos.org/patchelf.html) | PatchELF is a small utility to modify the dynamic linker and RPATH of ELF executables. | -| [pigz](http://zlib.net/pigz/) | pigz, which stands for parallel implementation of gzip, is a fully functional replacement for gzip that exploits multiple processors and multiple cores to the hilt when compressing data. pigz was written by Mark Adler, and uses the zlib and pthread libraries. | -| [QBOX](https://asc.llnl.gov/CORAL-benchmarks/#qbox) | QBOX benchmark, part of CORAL suite | -| [QEMU](http://wiki.qemu.org/Main_Page) | QEMU is a generic and open source machine emulator and virtualizer. | -| [RStudio](https://www.rstudio.com) | RStudio is a set of integrated tools designed to help you be more productive with R. It includes a console, syntax-highlighting editor that supports direct code execution, as well as tools for plotting, history, debugging and workspace management. | -| [Scalasca](http://www.scalasca.org/) | Scalasca is a software tool that supports the performance optimization of parallel programs by measuring and analyzing their runtime behavior. The analysis identifies potential performance bottlenecks – in particular those concerning communication and synchronization – and offers guidance in exploring their causes. | -| [Score-P](http://www.vi-hps.org/projects/score-p//) | Score-P offers the user a maximum of convenience by supporting a number of analysis tools. Currently, it works with Periscope, Scalasca, Vampir, and Tau and is open for other tools. Score-P comes together with the new Open Trace Format Version 2, the Cube4 profiling format and the Opari2 instrumenter (see below). Score-P is available under the New BSD Open Source license. | -| [SDE](https://software.intel.com/en-us/articles/intel-software-development-emulator) | Intel Software Development Emulator is a pintool that enables the development of applications using instruction set extensions that are not currently implemented in hardware. | -| [SentinelToolboxes](https://sentinel.esa.int/web/sentinel/toolboxes) | A common architecture for all Sentinel Toolboxes is being jointly developed by Brockmann Consult, Array Systems Computing and C-S called the Sentinel Application Platform (SNAP). The SNAP architecture is ideal for Earth Observation processing and analysis due the following technological innovations: Extensibility, Portability, Modular Rich Client Platform, Generic EO Data Abstraction, Tiled Memory Management, and a Graph Processing Framework. | -| [Serf](http://serf.apache.org/) | The serf library is a high performance C-based HTTP client library built upon the Apache Portable Runtime (APR) library | -| [Singularity](http://gmkurtzer.github.io/singularity) | Singularity is a portable application stack packaging and runtime utility. | -| [Subversion](http://subversion.apache.org/) | Subversion is an open source version control system. | -| [Szip](http://www.hdfgroup.org/doc_resource/SZIP/) | Szip compression software, providing lossless compression of scientific data | -| [Tar](http://www.gnu.org/software/tar/tar.html) | tar: The GNU tape archiver | -| [tcsh](http://www.tcsh.org) | Tcsh is an enhanced, but completely compatible version of the Berkeley UNIX C shell (csh). It is a command language interpreter usable both as an interactive login shell and a shell script command processor. It includes a command-line editor, programmable word completion, spelling correction, a history mechanism, job control and a C-like syntax. | -| [tmux](https://github.com/tmux/tmux/wiki) | It lets you switch easily between several programs in one terminal, detach them (they keep running in the background) and reattach them to a different terminal | -| [turbovnc](http://www.turbovnc.org) | TurboVNC is a derivative of VNC (Virtual Network Computing) that is tuned to provide peak performance for 3D and video workloads. | -| [util-linux](http://www.kernel.org/pub/linux/utils/util-linux) | Set of Linux utilities | -| [VDE2](http://vde.sourceforge.net) | VDE is an ethernet compliant virtual network that can be spawned over a set of physical computer over the Internet. VDE is part of virtualsquare project. | -| [VirtualGL](http://www.virtualgl.org) | VirtualGL is an open source toolkit that gives any Unix or Linux remote display software the ability to run OpenGL applications with full 3D hardware acceleration. | -| [VTune](http://software.intel.com/en-us/intel-vtune-amplifier-xe) | Intel VTune Amplifier XE 2016 is the premier performance profiler for C, C++, C#, Fortran, Assembly and Java. | -| [Wine](https://www.winehq.org) | Wine (originally an acronym for "Wine Is Not an Emulator") is a compatibility layer capable of running Windows applications on several POSIX-compliant operating systems, such as Linux, Mac OSX, & BSD. | -| [x86_adapt](https://github.com/tud-zih-energy/x86_adapt) | http://dx.doi.org/10.1007/s00450-013-0243-7 | -| [XZ](http://tukaani.org/xz/) | xz: XZ utilities | -| [zsh](http://www.zsh.org/) | Zsh is a shell designed for interactive use, although it is also a powerful scripting language. | - -## Vis - -| Module | Description | -| ------ | ----------- | -| [ATK](https://developer.gnome.org/ATK/stable/) | ATK provides the set of accessibility interfaces that are implemented by other toolkits and applications. Using the ATK interfaces, accessibility tools have full access to view and control running applications. | -| [cairo](http://cairographics.org) | Cairo is a 2D graphics library with support for multiple output devices. Currently supported output targets include the X Window System (via both Xlib and XCB), Quartz, Win32, image buffers, PostScript, PDF, and SVG file output. Experimental backends include OpenGL, BeOS, OS/2, and DirectFB | -| [ffmpeg](https://www.ffmpeg.org/) | A complete, cross-platform solution to record, convert and stream audio and video. | -| [FFmpeg](https://www.ffmpeg.org/) | A complete, cross-platform solution to record, convert and stream audio and video. | -| [fixesproto](http://www.freedesktop.org/wiki/Software/xlibs) | X.org FixesProto protocol headers. | -| [FLTK](http://www.fltk.org) | FLTK is a cross-platform C++ GUI toolkit for UNIX/Linux (X11), Microsoft Windows, and MacOS X. FLTK provides modern GUI functionality without the bloat and supports 3D graphics via OpenGL and its built-in GLUT emulation. | -| [fontconfig](http://www.freedesktop.org/software/fontconfig) | Fontconfig is a library designed to provide system-wide font configuration, customization and application access. | -| [freetype](http://freetype.org) | FreeType 2 is a software font engine that is designed to be small, efficient, highly customizable, and portable while capable of producing high-quality output (glyph images). It can be used in graphics libraries, display servers, font conversion tools, text image generation tools, and many other products as well. | -| [Gdk-Pixbuf](https://developer.gnome.org/gdk-pixbuf/stable/) | The Gdk Pixbuf is a toolkit for image loading and pixel buffer manipulation. It is used by GTK+ 2 and GTK+ 3 to load and manipulate images. In the past it was distributed as part of GTK+ 2 but it was split off into a separate package in preparation for the change to GTK+ 3. | -| [gettext](http://www.gnu.org/software/gettext/) | GNU `gettext' is an important step for the GNU Translation Project, as it is an asset on which we may build many other steps. This package offers to programmers, translators, and even users, a well integrated set of tools and documentation | -| [GL2PS](http://www.geuz.org/gl2ps/) | GL2PS: an OpenGL to PostScript printing library | -| [GLib](http://www.gtk.org/) | GLib is one of the base libraries of the GTK+ project | -| [gnuplot](http://gnuplot.sourceforge.net/) | Portable interactive, function plotting utility | -| [GPI-2](http://www.gpi-site.com/gpi2/) | GPI-2 is an API for the development of scalable, asynchronous and fault tolerant parallel applications. | -| [grace](http://freecode.com/projects/grace) | Grace is a WYSIWYG 2D plotting tool for X Windows System and Motif. | -| [GraphicsMagick](http://www.graphicsmagick.org/) | GraphicsMagick is the swiss army knife of image processing. | -| [GTK+](https://developer.gnome.org/gtk+/stable/) | The GTK+ 2 package contains libraries used for creating graphical user interfaces for applications. | -| [HarfBuzz](http://www.freedesktop.org/wiki/Software/HarfBuzz) | HarfBuzz is an OpenType text shaping engine. | -| [inputproto](http://www.freedesktop.org/wiki/Software/xlibs) | X.org InputProto protocol headers. | -| [JasPer](http://www.ece.uvic.ca/~frodo/jasper/) | The JasPer Project is an open-source initiative to provide a free software-based reference implementation of the codec specified in the JPEG-2000 Part-1 standard. | -| [kbproto](http://www.freedesktop.org/wiki/Software/xlibs) | X.org KBProto protocol headers. | -| [libepoxy](https://github.com/anholt/libepoxy) | Epoxy is a library for handling OpenGL function pointer management for you | -| [libGLU](ftp://ftp.freedesktop.org/pub/mesa/glu/) | The OpenGL Utility Library (GLU) is a computer graphics library for OpenGL. | -| [libICE](http://www.freedesktop.org/wiki/Software/xlibs) | X Inter-Client Exchange library for freedesktop.org | -| [libX11](http://www.freedesktop.org/wiki/Software/xlibs) | X11 client-side library | -| [libXau](http://www.freedesktop.org/wiki/Software/xlibs) | The libXau package contains a library implementing the X11 Authorization Protocol. This is useful for restricting client access to the display. | -| [libXdamage](http://www.freedesktop.org/wiki/Software/xlibs) | X Damage extension library | -| [libXdmcp](http://www.freedesktop.org/wiki/Software/xlibs) | The libXdmcp package contains a library implementing the X Display Manager Control Protocol. This is useful for allowing clients to interact with the X Display Manager. | -| [libXext](http://www.freedesktop.org/wiki/Software/xlibs) | Common X Extensions library | -| [libXfixes](http://www.freedesktop.org/wiki/Software/xlibs) | X Fixes extension library | -| [libXfont](http://www.freedesktop.org/wiki/Software/xlibs) | X font libary | -| [libXft](http://www.freedesktop.org/wiki/Software/xlibs) | X11 client-side library | -| [libXinerama](http://www.freedesktop.org/wiki/Software/xlibs) | Xinerama multiple monitor library | -| [libXrender](http://www.freedesktop.org/wiki/Software/xlibs) | X11 client-side library | -| [libXt](http://www.freedesktop.org/wiki/Software/xlibs) | libXt provides the X Toolkit Intrinsics, an abstract widget library upon which other toolkits are based. Xt is the basis for many toolkits, including the Athena widgets (Xaw), and LessTif (a Motif implementation). | -| [matplotlib](http://matplotlib.org) | matplotlib is a python 2D plotting library which produces publication quality figures in a variety of hardcopy formats and interactive environments across platforms. matplotlib can be used in python scripts, the python and ipython shell, web application servers, and six graphical user interface toolkits. | -| [Mesa](http://www.mesa3d.org/) | Mesa is an open-source implementation of the OpenGL specification - a system for rendering interactive 3D graphics. | -| [motif](http://motif.ics.com/) | Motif refers to both a graphical user interface (GUI) specification and the widget toolkit for building applications that follow that specification under the X Window System on Unix and other POSIX-compliant systems. It was the standard toolkit for the Common Desktop Environment and thus for Unix. | -| [OpenCV](http://opencv.org/) | OpenCV (Open Source Computer Vision Library) is an open source computer vision and machine learning software library. OpenCV was built to provide a common infrastructure for computer vision applications and to accelerate the use of machine perception in the commercial products. | -| [opencv-python](http://deeplearning.net/software/theano) | Theano is a Python library that allows you to define, optimize, and evaluate mathematical expressions involving multi-dimensional arrays efficiently. | -| [OpenDX](http://www.opendx.org) | Open source visualization software package based on IBM's Visualization Data Explorer. | -| [OpenJPEG](http://www.openjpeg.org/) | OpenJPEG is an open-source JPEG 2000 codec written in C language. | -| [OSPRay](http://www.ospray.org) | A Ray Tracing Based Rendering Engine for High-Fidelity Visualization | -| [p4vasp](http://www.p4vasp.at) | p4vasp is a visualization suite for the Vienna Ab-initio Simulation Package (VASP). It contains an extensible GUI framework, that can be used to view material structure, density of states, band-structure and more. | -| [Pango](http://www.pango.org/) | Pango is a library for laying out and rendering of text, with an emphasis on internationalization. Pango can be used anywhere that text layout is needed, though most of the work on Pango so far has been done in the context of the GTK+ widget toolkit. Pango forms the core of text and font handling for GTK+-2.x. | -| [ParaView](http://www.paraview.org) | ParaView is a scientific parallel visualizer. | -| [Pillow](http://pillow.readthedocs.org/) | Pillow is the 'friendly PIL fork' by Alex Clark and Contributors. PIL is the Python Imaging Library by Fredrik Lundh and Contributors. | -| [pixman](http://www.pixman.org/) | Pixman is a low-level software library for pixel manipulation, providing features such as image compositing and trapezoid rasterization. Important users of pixman are the cairo graphics library and the X server. | -| [PyCairo](http://cairographics.org/pycairo/) | Python bindings for the cairo library | -| [PyGObject](http://www.pygtk.org/) | Python Bindings for GLib/GObject/GIO/GTK+ | -| [PyGTK](http://www.pygtk.org/) | PyGTK lets you to easily create programs with a graphical user interface using the Python programming language. | -| [python-dateutil](https://github.com/dateutil/dateutil) | Useful extensions to the standard Python datetime features. | -| [scikit-image](http://scikit-learn.org/stable/index.html) | Scikit-learn integrates machine learning algorithms in the tightly-knit scientific Python world, building upon numpy, scipy, and matplotlib. As a machine-learning module, it provides versatile tools for data mining and analysis in any field of science and engineering. It strives to be simple and efficient, accessible to everybody, and reusable in various contexts. | -| [seekpath](https://github.com/giovannipizzi/seekpath) | SeeK-path is a python module to obtain and visualize band paths in the Brillouin zone of crystal structures. The definition of k-point labels follows crystallographic convention, as defined and discussed in the HPKOT paper. Moreover, the Bravais lattice is detected properly using the spacegroup symmetry. Also the suggested band path provided in the HPKOT paper is returned. Systems without time-reversal and inversion-symmetry are also properly taken into account. | -| [SUMO](http://www.sumo.dlr.de/wiki/Main_Page) | Simulation of Urban MObility (SUMO) is an open source, highly portable, microscopic and continuous road traffic simulation package designed to handle large road networks. | -| [Tix](http://tix.sourceforge.net/) | Tix, the Tk Interface eXtension, is a powerful set of user interface components that expands the capabilities of your Tcl/Tk and Python applications. Using Tix together with Tk will greatly enhance the appearance and functionality of your application. | -| [Tk](http://www.tcl.tk/) | Tk is an open source, cross-platform widget toolchain that provides a library of basic elements for building a graphical user interface (GUI) in many different programming languages. | -| [Togl](https://sourceforge.net/projects/togl/) | A Tcl/Tk widget for OpenGL rendering. | -| [VisIt](https://wci.llnl.gov/simulation/computer-codes/visit) | VisIt is an Open Source, interactive, scalable, visualization, animation and analysis tool | -| [VTK](http://www.vtk.org) | The Visualization Toolkit (VTK) is an open-source, freely available software system for 3D computer graphics, image processing and visualization. VTK consists of a C++ class library and several interpreted interface layers including Tcl/Tk, Java, and Python. VTK supports a wide variety of visualization algorithms including: scalar, vector, tensor, texture, and volumetric methods; and advanced modeling techniques such as: implicit modeling, polygon reduction, mesh smoothing, cutting, contouring, and Delaunay triangulation. | -| [X11](https://www.x.org) | The X Window System (X11) is a windowing system for bitmap displays | -| [x264](http://www.videolan.org/developers/x264.html) | x264 is a free software library and application for encoding video streams into the H.264/MPEG-4 AVC compression format, and is released under the terms of the GNU GPL. | -| [Xvfb](http://www.x.org) | Xvfb is an X server that can run on machines with no display hardware and no physical input devices. It emulates a dumb framebuffer using virtual memory. | - -## Vizserv - -| Module | Description | -| ------ | ----------- | -| [CUDA](https://developer.nvidia.com/cuda-toolkit) | CUDA (formerly Compute Unified Device Architecture) is a parallel computing platform and programming model created by NVIDIA and implemented by the graphics processing units (GPUs) that they produce. CUDA gives developers access to the virtual instruction set and memory of the parallel computational elements in CUDA GPUs. | diff --git a/docs.it4i/prace.md b/docs.it4i/prace.md index 4c673293701e7ccffb10f2f19942d5cb7abaa015..485193d244ce8c98a18b4a412ee213f8cdce8e6b 100644 --- a/docs.it4i/prace.md +++ b/docs.it4i/prace.md @@ -2,7 +2,7 @@ ## Introduction -PRACE users coming to the TIER-1 systems offered through the DECI calls are in general treated as standard users and so most of the general documentation applies to them as well. This section shows the main differences for quicker orientation, but often uses references to the original documentation. PRACE users who don't undergo the full procedure (including signing the IT4I AuP on top of the PRACE AuP) will not have a password and thus access to some services intended for regular users. This can lower their comfort, but otherwise they should be able to use the TIER-1 system as intended. Please see the [Obtaining Login Credentials section][1], if the same level of access is required. +PRACE users coming to the TIER-1 systems offered through the DECI calls are in general treated as standard users and so most of the general documentation applies to them as well. This section shows the main differences for quicker orientation, but often uses references to the original documentation. PRACE users who don't undergo the full procedure (including signing the IT4I AuP on top of the PRACE AuP) will not have a password and thus access to some services intended for regular users. This can lower their comfort, but otherwise they should be able to use the TIER-1 system as intended. See the [Obtaining Login Credentials section][1], if the same level of access is required. All general [PRACE User Documentation][a] should be read before continuing reading the local documentation here. @@ -10,7 +10,7 @@ All general [PRACE User Documentation][a] should be read before continuing readi If you have any troubles, need information, request support or want to install additional software, use [PRACE Helpdesk][b]. -Information about the local services are provided in the [introduction of general user documentation Salomon][2] and [introduction of general user documentation Anselm][3]. Please keep in mind, that standard PRACE accounts don't have a password to access the web interface of the local (IT4Innovations) request tracker and thus a new ticket should be created by sending an e-mail to support[at]it4i.cz. +Information about the local services are provided in the [introduction of general user documentation Salomon][2] and [introduction of general user documentation Anselm][3]. Keep in mind, that standard PRACE accounts don't have a password to access the web interface of the local (IT4Innovations) request tracker and thus a new ticket should be created by sending an e-mail to support[at]it4i.cz. ## Obtaining Login Credentials @@ -157,11 +157,11 @@ $ gsissh -p 2222 salomon.it4i.cz -L 5961:localhost:5961 ### Access With SSH -After successful obtainment of login credentials for the local IT4Innovations account, the PRACE users can access the cluster as regular users using SSH. For more information see [the section in general documentation for Salomon][9] and [the section in general documentation for Anselm][9]. +After successful obtainment of login credentials for the local IT4Innovations account, the PRACE users can access the cluster as regular users using SSH. For more information see [the section in general documentation[9]. ## File Transfers -PRACE users can use the same transfer mechanisms as regular users (if they've undergone the full registration procedure). For information about this, see [the section in the general documentation for Salomon][8] and [the section in general documentation for Anselm][9]. +PRACE users can use the same transfer mechanisms as regular users (if they've undergone the full registration procedure). For information about this, see [the section in the general documentation][9]. Apart from the standard mechanisms, for PRACE users to transfer data to/from Salomon cluster, a GridFTP server running Globus Toolkit GridFTP service is available. The service is available from public Internet as well as from the internal PRACE network (accessible only from other PRACE partners). @@ -332,7 +332,7 @@ $ ml prace ### Resource Allocation and Job Execution -General information about the resource allocation, job queuing and job execution is in this [section of general documentation for Salomon][13] and [section of general documentation for Anselm][14]. +General information about the resource allocation, job queuing and job execution is in this [section of general documentation][13]. For PRACE users, the default production run queue is "qprace". PRACE users can also use two other queues "qexp" and "qfree". @@ -356,7 +356,7 @@ For Anselm: ### Accounting & Quota -The resources that are currently subject to accounting are the core hours. The core hours are accounted on the wall clock basis. The accounting runs whenever the computational cores are allocated or blocked via the PBS Pro workload manager (the qsub command), regardless of whether the cores are actually used for any calculation. See [example in the general documentation for Salomon][13] and [example in the general documentation for Anselm][14]. +The resources that are currently subject to accounting are the core hours. The core hours are accounted on the wall clock basis. The accounting runs whenever the computational cores are allocated or blocked via the PBS Pro workload manager (the qsub command), regardless of whether the cores are actually used for any calculation. See [example in the general documentation][13]. PRACE users should check their project accounting using the [PRACE Accounting Tool (DART)][i]. @@ -388,13 +388,11 @@ If the quota is insufficient, contact the [support][15] and request an increase. [3]: anselm/introduction.md [5]: #file-transfers [6]: general/accessing-the-clusters/graphical-user-interface/x-window-system.md -[8]: salomon/shell-and-data-access.md -[9]: anselm/shell-and-data-access.md +[9]: general/shell-and-data-access.md [10]: salomon/storage.md [11]: anselm/storage.md [12]: environment-and-modules.md -[13]: salomon/resources-allocation-policy.md -[14]: anselm/resources-allocation-policy.md +[13]: general/resources-allocation-policy.md [15]: #help-and-support [a]: http://www.prace-ri.eu/user-documentation/ diff --git a/docs.it4i/salomon-upgrade.md b/docs.it4i/salomon-upgrade.md deleted file mode 100644 index eb109aea86370855148909507e70594f7214e39e..0000000000000000000000000000000000000000 --- a/docs.it4i/salomon-upgrade.md +++ /dev/null @@ -1,36 +0,0 @@ -!!! Warning - This upgrade introduced a lot of changes with respect to production and user experience. - -!!! Hint - You might **need** to **recompile** your binaries. - -Salomon operating system has been upgraded to the latest CentOS 7.6 on 2018-12-05. We are able to support the latest software versions and keep the cluster security with upstream releases after the upgrade. - - Major changes are: - -* kernel upgraded to 3.10 (2.6.32 now) -* glibc upgraded to 2.17 (2.12 now) -* software modules/binaries should be recompiled or deleted - -# Discontinued Modules - -A new tag has been introduced. Modules tagged with **C6** might be malfunctioning. These modules might be recompiled during transition period. Keep support@it4i.cz informed on malfunctioning modules. - -```console -$ ml av intel/ - ---------------------------- /apps/modules/toolchain ---------------------------- - intel/default (C6) intel/2015b (C6) intel/2017c (C6) - intel/13.5.192 (O) intel/2016a (C6) intel/2017.00 - intel/14.0.1 (O) intel/2016.01 intel/2018a (C6) - intel/15.2.164 (O) intel/2017a (C6) intel/2018.03 (C6) - intel/15.3.187 (O) intel/2017b (C6,D) - - Where: - O: Obsolete - C6: Old CentOS6 module - D: Default Module -``` - -!!! Warning - Obsolete modules **O** are going to be deleted after the cluster upgrade. diff --git a/docs.it4i/salomon/capacity-computing.md b/docs.it4i/salomon/capacity-computing.md deleted file mode 100644 index 05a300ba86a17ae7b60686e2d79066523955fa9f..0000000000000000000000000000000000000000 --- a/docs.it4i/salomon/capacity-computing.md +++ /dev/null @@ -1,329 +0,0 @@ -# Capacity Computing - -## Introduction - -In many cases, it is useful to submit huge (100+) number of computational jobs into the PBS queue system. Huge number of (small) jobs is one of the most effective ways to execute embarrassingly parallel calculations, achieving best runtime, throughput and computer utilization. - -However, executing huge number of jobs via the PBS queue may strain the system. This strain may result in slow response to commands, inefficient scheduling and overall degradation of performance and user experience, for all users. For this reason, the number of jobs is **limited to 100 per user, 1500 per job array** - -!!! note - Please follow one of the procedures below, in case you wish to schedule more than 100 jobs at a time. - -* Use [Job arrays][1] when running huge number of [multithread][2] (bound to one node only) or multinode (multithread across several nodes) jobs -* Use [GNU parallel][3] when running single core jobs -* Combine [GNU parallel with Job arrays][4] when running huge number of single core jobs - -## Policy - -1. A user is allowed to submit at most 100 jobs. Each job may be [a job array][1]. -1. The array size is at most 1500 subjobs. - -## Job Arrays - -!!! note - Huge number of jobs may be easily submitted and managed as a job array. - -A job array is a compact representation of many jobs, called subjobs. The subjobs share the same job script, and have the same values for all attributes and resources, with the following exceptions: - -* each subjob has a unique index, $PBS_ARRAY_INDEX -* job Identifiers of subjobs only differ by their indices -* the state of subjobs can differ (R,Q,...etc.) - -All subjobs within a job array have the same scheduling priority and schedule as independent jobs. Entire job array is submitted through a single qsub command and may be managed by qdel, qalter, qhold, qrls and qsig commands as a single job. - -### Shared jobscript - -All subjobs in job array use the very same, single jobscript. Each subjob runs its own instance of the jobscript. The instances execute different work controlled by $PBS_ARRAY_INDEX variable. - -Example: - -Assume we have 900 input files with name beginning with "file" (e. g. file001, ..., file900). Assume we would like to use each of these input files with program executable myprog.x, each as a separate job. - -First, we create a tasklist file (or subjobs list), listing all tasks (subjobs) - all input files in our example: - -```console -$ find . -name 'file*' > tasklist -``` - -Then we create jobscript: - -```bash -#!/bin/bash -#PBS -A PROJECT_ID -#PBS -q qprod -#PBS -l select=1:ncpus=24,walltime=02:00:00 - -# change to scratch directory -SCR=/scratch/work/user/$USER/$PBS_JOBID -mkdir -p $SCR ; cd $SCR || exit - -# get individual tasks from tasklist with index from PBS JOB ARRAY -TASK=$(sed -n "${PBS_ARRAY_INDEX}p" $PBS_O_WORKDIR/tasklist) - -# copy input file and executable to scratch -cp $PBS_O_WORKDIR/$TASK input ; cp $PBS_O_WORKDIR/myprog.x . - -# execute the calculation -./myprog.x < input > output - -# copy output file to submit directory -cp output $PBS_O_WORKDIR/$TASK.out -``` - -In this example, the submit directory holds the 900 input files, executable myprog.x and the jobscript file. As input for each run, we take the filename of input file from created tasklist file. We copy the input file to scratch (/scratch/work/user/$USER/$PBS_JOBID), execute the myprog.x and copy the output file back to the submit directory, under the $TASK.out name. The myprog.x runs on one node only and must use threads to run in parallel. Be aware, that if the myprog.x **is not multithreaded**, then all the **jobs are run as single thread programs in sequential** manner. Due to allocation of the whole node, the **accounted time is equal to the usage of whole node**, while using only 1/24 of the node! - -If huge number of parallel multicore (in means of multinode multithread, e. g. MPI enabled) jobs is needed to run, then a job array approach should also be used. The main difference compared to previous example using one node is that the local scratch should not be used (as it's not shared between nodes) and MPI or other technique for parallel multinode run has to be used properly. - -### Submit the Job Array - -To submit the job array, use the qsub -J command. The 900 jobs of the [example above][5] may be submitted like this: - -```console -$ qsub -N JOBNAME -J 1-900 jobscript -506493[].isrv5 -``` - -In this example, we submit a job array of 900 subjobs. Each subjob will run on full node and is assumed to take less than 2 hours (note the #PBS directives in the beginning of the jobscript file, dont' forget to set your valid PROJECT_ID and desired queue). - -Sometimes for testing purposes, you may need to submit only one-element array. This is not allowed by PBSPro, but there's a workaround: - -```console -$ qsub -N JOBNAME -J 9-10:2 jobscript -``` - -This will only choose the lower index (9 in this example) for submitting/running your job. - -### Manage the Job Array - -Check status of the job array by the qstat command. - -```console -$ qstat -a 506493[].isrv5 - -isrv5: - Req'd Req'd Elap -Job ID Username Queue Jobname SessID NDS TSK Memory Time S Time ---------------- -------- -- |---|---| ------ --- --- ------ ----- - ----- -12345[].dm2 user2 qprod xx 13516 1 24 -- 00:50 B 00:02 -``` - -The status B means that some subjobs are already running. - -Check status of the first 100 subjobs by the qstat command. - -```console -$ qstat -a 12345[1-100].isrv5 - -isrv5: - Req'd Req'd Elap -Job ID Username Queue Jobname SessID NDS TSK Memory Time S Time ---------------- -------- -- |---|---| ------ --- --- ------ ----- - ----- -12345[1].isrv5 user2 qprod xx 13516 1 24 -- 00:50 R 00:02 -12345[2].isrv5 user2 qprod xx 13516 1 24 -- 00:50 R 00:02 -12345[3].isrv5 user2 qprod xx 13516 1 24 -- 00:50 R 00:01 -12345[4].isrv5 user2 qprod xx 13516 1 24 -- 00:50 Q -- - . . . . . . . . . . . - , . . . . . . . . . . -12345[100].isrv5 user2 qprod xx 13516 1 24 -- 00:50 Q -- -``` - -Delete the entire job array. Running subjobs will be killed, queueing subjobs will be deleted. - -```console -$ qdel 12345[].isrv5 -``` - -Deleting large job arrays may take a while. - -Display status information for all user's jobs, job arrays, and subjobs. - -```console -$ qstat -u $USER -t -``` - -Display status information for all user's subjobs. - -```console -$ qstat -u $USER -tJ -``` - -Read more on job arrays in the [PBSPro Users guide][6]. - -## GNU Parallel - -!!! note - Use GNU parallel to run many single core tasks on one node. - -GNU parallel is a shell tool for executing jobs in parallel using one or more computers. A job can be a single command or a small script that has to be run for each of the lines in the input. GNU parallel is most useful in running single core jobs via the queue system on the cluster. - -For more information and examples see the parallel man page: - -```console -$ ml parallel -$ man parallel -``` - -### GNU Parallel jobscript - -The GNU parallel shell executes multiple instances of the jobscript using all cores on the node. The instances execute different work, controlled by the $PARALLEL_SEQ variable. - -Example: - -Assume we have 101 input files with name beginning with "file" (e. g. file001, ..., file101). Assume we would like to use each of these input files with program executable myprog.x, each as a separate single core job. We call these single core jobs tasks. - -First, we create a tasklist file, listing all tasks - all input files in our example: - -```console -$ find . -name 'file*' > tasklist -``` - -Then we create jobscript: - -```bash -#!/bin/bash -#PBS -A PROJECT_ID -#PBS -q qprod -#PBS -l select=1:ncpus=24,walltime=02:00:00 - -[ -z "$PARALLEL_SEQ" ] && -{ ml parallel ; exec parallel -a $PBS_O_WORKDIR/tasklist $0 ; } - -# change to scratch directory -SCR=/scratch/work/user/$USER/$PBS_JOBID/$PARALLEL_SEQ -mkdir -p $SCR ; cd $SCR || exit - -# get individual task from tasklist -TASK=$1 - -# copy input file and executable to scratch -cp $PBS_O_WORKDIR/$TASK input - -# execute the calculation -cat input > output - -# copy output file to submit directory -cp output $PBS_O_WORKDIR/$TASK.out -``` - -In this example, tasks from tasklist are executed via the GNU parallel. The jobscript executes multiple instances of itself in parallel, on all cores of the node. Once an instace of jobscript is finished, new instance starts until all entries in tasklist are processed. Currently processed entry of the joblist may be retrieved via $1 variable. Variable $TASK expands to one of the input filenames from tasklist. We copy the input file to the scratch, execute the myprog.x and copy the output file back to the submit directory, under the $TASK.out name. - -### Submit the Job - -To submit the job, use the qsub command. The 101 tasks' job of the [example above][7] may be submitted like this: - -```console -$ qsub -N JOBNAME jobscript -12345.dm2 -``` - -In this example, we submit a job of 101 tasks. 24 input files will be processed in parallel. The 101 tasks on 24 cores are assumed to complete in less than 2 hours. - -!!! note - Use #PBS directives in the beginning of the jobscript file, dont' forget to set your valid PROJECT_ID and desired queue. - -## Job Arrays and GNU Parallel - -!!! note - Combine the Job arrays and GNU parallel for best throughput of single core jobs - -While job arrays are able to utilize all available computational nodes, the GNU parallel can be used to efficiently run multiple single-core jobs on single node. The two approaches may be combined to utilize all available (current and future) resources to execute single core jobs. - -!!! note - Every subjob in an array runs GNU parallel to utilize all cores on the node - -### GNU Parallel, Shared jobscript - -Combined approach, very similar to job arrays, can be taken. Job array is submitted to the queuing system. The subjobs run GNU parallel. The GNU parallel shell executes multiple instances of the jobscript using all cores on the node. The instances execute different work, controlled by the $PBS_JOB_ARRAY and $PARALLEL_SEQ variables. - -Example: - -Assume we have 960 input files with name beginning with "file" (e. g. file001, ..., file960). Assume we would like to use each of these input files with program executable myprog.x, each as a separate single core job. We call these single core jobs tasks. - -First, we create a tasklist file, listing all tasks - all input files in our example: - -```console -$ find . -name 'file*' > tasklist -``` - -Next we create a file, controlling how many tasks will be executed in one subjob - -```console -$ seq 48 > numtasks -``` - -Then we create jobscript: - -```bash -#!/bin/bash -#PBS -A PROJECT_ID -#PBS -q qprod -#PBS -l select=1:ncpus=24,walltime=02:00:00 - -[ -z "$PARALLEL_SEQ" ] && -{ ml parallel ; exec parallel -a $PBS_O_WORKDIR/numtasks $0 ; } - -# change to scratch directory -SCR=/scratch/work/user/$USER/$PBS_JOBID/$PARALLEL_SEQ -mkdir -p $SCR ; cd $SCR || exit - -# get individual task from tasklist with index from PBS JOB ARRAY and index form Parallel -IDX=$(($PBS_ARRAY_INDEX + $PARALLEL_SEQ - 1)) -TASK=$(sed -n "${IDX}p" $PBS_O_WORKDIR/tasklist) -[ -z "$TASK" ] && exit - -# copy input file and executable to scratch -cp $PBS_O_WORKDIR/$TASK input - -# execute the calculation -cat input > output - -# copy output file to submit directory -cp output $PBS_O_WORKDIR/$TASK.out -``` - -In this example, the jobscript executes in multiple instances in parallel, on all cores of a computing node. Variable $TASK expands to one of the input filenames from tasklist. We copy the input file to the scratch, execute the myprog.x and copy the output file back to the submit directory, under the $TASK.out name. The numtasks file controls how many tasks will be run per subjob. Once an task is finished, new task starts, until the number of tasks in numtasks file is reached. - -!!! note - Select subjob walltime and number of tasks per subjob carefully - -When deciding this values, think about following guiding rules : - -1. Let n = N / 24. Inequality (n + 1) x T < W should hold. The N is number of tasks per subjob, T is expected single task walltime and W is subjob walltime. Short subjob walltime improves scheduling and job throughput. -1. Number of tasks should be modulo 24. -1. These rules are valid only when all tasks have similar task walltimes T. - -### Submit the Job Array (-J) - -To submit the job array, use the qsub -J command. The 960 tasks' job of the [example above][8] may be submitted like this: - -```console -$ qsub -N JOBNAME -J 1-960:48 jobscript -12345[].dm2 -``` - -In this example, we submit a job array of 20 subjobs. Note the -J 1-960:48, this must be the same as the number sent to numtasks file. Each subjob will run on full node and process 24 input files in parallel, 48 in total per subjob. Every subjob is assumed to complete in less than 2 hours. - -!!! note - Use #PBS directives in the beginning of the jobscript file, dont' forget to set your valid PROJECT_ID and desired queue. - -## Examples - -Download the examples in [capacity.zip][9], illustrating the above listed ways to run huge number of jobs. We recommend to try out the examples, before using this for running production jobs. - -Unzip the archive in an empty directory on the cluster and follow the instructions in the README file - -```console -$ unzip capacity.zip -$ cd capacity -$ cat README -``` - -[1]: #job-arrays -[2]: #shared-jobscript-on-one-node -[3]: #gnu-parallel -[4]: #job-arrays-and-gnu-parallel -[5]: #array_example -[6]: ../pbspro.md -[7]: #gp_example -[8]: #combined_example -[9]: capacity.zip diff --git a/docs.it4i/salomon/introduction.md b/docs.it4i/salomon/introduction.md index f7b1a06c58532116ef25107726aefd8ec5ae9fe6..6a91baaf3cd437eb0e54a38a7eebb16ac69a22fe 100644 --- a/docs.it4i/salomon/introduction.md +++ b/docs.it4i/salomon/introduction.md @@ -1,6 +1,6 @@ # Introduction -Welcome to Salomon supercomputer cluster. The Salomon cluster consists of 1008 compute nodes, totalling 24192 compute cores with 129 TB RAM and giving over 2 Pflop/s theoretical peak performance. Each node is a powerful x86-64 computer, equipped with 24 cores, and at least 128 GB RAM. Nodes are interconnected through a 7D Enhanced hypercube InfiniBand network and are equipped with Intel Xeon E5-2680v3 processors. The Salomon cluster consists of 576 nodes without accelerators, and 432 nodes equipped with Intel Xeon Phi MIC accelerators. Read more in [Hardware Overview][1]. +Welcome to Salomon supercomputer cluster. The Salomon cluster consists of 1009 compute nodes, totaling 24192 compute cores with 129 TB RAM and giving over 2 PFLOP/s theoretical peak performance. Each node is a powerful x86-64 computer, equipped with 24 cores, and at least 128 GB RAM. Nodes are interconnected through a 7D Enhanced hypercube InfiniBand network and are equipped with Intel Xeon E5-2680v3 processors. The Salomon cluster consists of 576 nodes without accelerators, and 432 nodes equipped with Intel Xeon Phi MIC accelerators. Read more in [Hardware Overview][1]. The cluster runs with a [CentOS Linux][a] operating system, which is compatible with the RedHat [Linux family][b]. diff --git a/docs.it4i/salomon/job-priority.md b/docs.it4i/salomon/job-priority.md deleted file mode 100644 index 03e0a46026953777f6f75c42b555ca4f95d1bdec..0000000000000000000000000000000000000000 --- a/docs.it4i/salomon/job-priority.md +++ /dev/null @@ -1,82 +0,0 @@ -# Job Scheduling - -## Job Execution Priority - -Scheduler gives each job an execution priority and then uses this job execution priority to select which job(s) to run. - -Job execution priority is determined by these job properties (in order of importance): - -1. queue priority -1. fair-share priority -1. eligible time - -### Queue Priority - -Queue priority is priority of queue where job is queued before execution. - -Queue priority has the biggest impact on job execution priority. Execution priority of jobs in higher priority queues is always greater than execution priority of jobs in lower priority queues. Other properties of job used for determining job execution priority (fair-share priority, eligible time) cannot compete with queue priority. - -Queue priorities can be seen [here][a]. - -### Fair-Share Priority - -Fair-share priority is priority calculated on recent usage of resources. Fair-share priority is calculated per project, all members of project share same fair-share priority. Projects with higher recent usage have lower fair-share priority than projects with lower or none recent usage. - -Fair-share priority is used for ranking jobs with equal queue priority. - -Fair-share priority is calculated as - ----8<--- "fairshare_formula.md" - -where MAX_FAIRSHARE has value 1E6, -usage<sub>Project</sub> is cumulated usage by all members of selected project, -usage<sub>Total</sub> is total usage by all users, by all projects. - -Usage counts allocated core-hours (`ncpus x walltime`). Usage is decayed, or cut in half periodically, at the interval 168 hours (one week). - -## Jobs Queued in Queue qexp Are Not Calculated to Project's Usage - -!!! note - Calculated usage and fair-share priority can be seen [here][b]. - -Calculated fair-share priority can be also seen as Resource_List.fairshare attribute of a job. - -### Eligible Time - -Eligible time is amount (in seconds) of eligible time job accrued while waiting to run. Jobs with higher eligible time gains higher priority. - -Eligible time has the least impact on execution priority. Eligible time is used for sorting jobs with equal queue priority and fair-share priority. It is very, very difficult for eligible time to compete with fair-share priority. - -Eligible time can be seen as eligible_time attribute of job. - -### Formula - -Job execution priority (job sort formula) is calculated as: - ----8<--- "job_sort_formula.md" - -### Job backfilling - -The scheduler uses job backfilling. - -Backfilling means fitting smaller jobs around the higher-priority jobs that the scheduler is going to run next, in such a way that the higher-priority jobs are not delayed. Backfilling allows us to keep resources from becoming idle when the top job (job with the highest execution priority) cannot run. - -The scheduler makes a list of jobs to run in order of execution priority. Scheduler looks for smaller jobs that can fit into the usage gaps around the highest-priority jobs in the list. The scheduler looks in the prioritized list of jobs and chooses the highest-priority smaller jobs that fit. Filler jobs are run only if they will not delay the start time of top jobs. - -It means, that jobs with lower execution priority can be run before jobs with higher execution priority. - -!!! note - It is **very beneficial to specify the walltime** when submitting jobs. - -Specifying more accurate walltime enables better scheduling, better execution times and better resource usage. Jobs with suitable (small) walltime could be backfilled - and overtake job(s) with higher priority. - -### Job Placement - -Job [placement can be controlled by flags during submission][1]. - ----8<--- "mathjax.md" - -[1]: job-submission-and-execution.md#job_placement - -[a]: https://extranet.it4i.cz/rsweb/salomon/queues -[b]: https://extranet.it4i.cz/rsweb/salomon/projects diff --git a/docs.it4i/salomon/job-submission-and-execution.md b/docs.it4i/salomon/job-submission-and-execution.md deleted file mode 100644 index b0c6e9f02f55fdf3acee50c43de4bbd5cb85a8e9..0000000000000000000000000000000000000000 --- a/docs.it4i/salomon/job-submission-and-execution.md +++ /dev/null @@ -1,547 +0,0 @@ -# Job Submission and Execution - -## Job Submission - -When allocating computational resources for the job, specify: - -1. suitable queue for your job (default is qprod) -1. number of computational nodes required -1. number of cores per node required -1. maximum wall time allocated to your calculation, note that jobs exceeding maximum wall time will be killed -1. Project ID -1. Jobscript or interactive switch - -!!! note - Use the **qsub** command to submit your job to a queue for allocation of the computational resources. - -Submit the job using the qsub command: - -```console -$ qsub -A Project_ID -q queue -l select=x:ncpus=y,walltime=[[hh:]mm:]ss[.ms] jobscript -``` - -The qsub submits the job into the queue, in another words the qsub command creates a request to the PBS Job manager for allocation of specified resources. The resources will be allocated when available, subject to above described policies and constraints. **After the resources are allocated the jobscript or interactive shell is executed on first of the allocated nodes.** - -!!! note - PBS statement nodes (qsub -l nodes=nodespec) is not supported on Salomon cluster. - -### Job Submission Examples - -```console -$ qsub -A OPEN-0-0 -q qprod -l select=64:ncpus=24,walltime=03:00:00 ./myjob -``` - -In this example, we allocate 64 nodes, 24 cores per node, for 3 hours. We allocate these resources via the qprod queue, consumed resources will be accounted to the Project identified by Project ID OPEN-0-0. Jobscript myjob will be executed on the first node in the allocation. - -```console -$ qsub -q qexp -l select=4:ncpus=24 -I -``` - -In this example, we allocate 4 nodes, 24 cores per node, for 1 hour. We allocate these resources via the qexp queue. The resources will be available interactively - -```console -$ qsub -A OPEN-0-0 -q qlong -l select=10:ncpus=24 ./myjob -``` - -In this example, we allocate 10 nodes, 24 cores per node, for 72 hours. We allocate these resources via the qlong queue. Jobscript myjob will be executed on the first node in the allocation. - -```console -$ qsub -A OPEN-0-0 -q qfree -l select=10:ncpus=24 ./myjob -``` - -In this example, we allocate 10 nodes, 24 cores per node, for 12 hours. We allocate these resources via the qfree queue. It is not required that the project OPEN-0-0 has any available resources left. Consumed resources are still accounted for. Jobscript myjob will be executed on the first node in the allocation. - -### Intel Xeon Phi Co-Processors - -To allocate a node with Xeon Phi co-processor, user needs to specify that in select statement. Currently only allocation of whole nodes with both Phi cards as the smallest chunk is supported. Standard PBSPro approach through attributes "accelerator", "naccelerators" and "accelerator_model" is used. The "accelerator_model" can be omitted, since on Salomon only one type of accelerator type/model is available. - -The absence of specialized queue for accessing the nodes with cards means, that the Phi cards can be utilized in any queue, including qexp for testing/experiments, qlong for longer jobs, qfree after the project resources have been spent, etc. The Phi cards are thus also available to PRACE users. There's no need to ask for permission to utilize the Phi cards in project proposals. - -```console -$ qsub -A OPEN-0-0 -I -q qprod -l select=1:ncpus=24:accelerator=True:naccelerators=2:accelerator_model=phi7120 ./myjob -``` - -In this example, we allocate 1 node, with 24 cores, with 2 Xeon Phi 7120p cards, running batch job ./myjob. The default time for qprod is used, e. g. 24 hours. - -```console -$ qsub -A OPEN-0-0 -I -q qlong -l select=4:ncpus=24:accelerator=True:naccelerators=2 -l walltime=56:00:00 -I -``` - -In this example, we allocate 4 nodes, with 24 cores per node (totalling 96 cores), with 2 Xeon Phi 7120p cards per node (totalling 8 Phi cards), running interactive job for 56 hours. The accelerator model name was omitted. - -#### Intel Xeon Phi - Queue QMIC - -Examples executions - -```console --l select=1 -exec_vnode = (r21u05n581-mic0:naccelerators=1:ncpus=0) - --l select=4 -(r21u05n581-mic0:naccelerators=1:ncpus=0)+(r21u05n581-mic1:naccelerators=1:ncpus=0)+(r21u06n582-mic0:naccelerators=1:ncpus=0)+(r21u06n582-mic1:naccelerators=1:ncpus=0) --l select=4:naccelerators=1 -(r21u05n581-mic0:naccelerators=1:ncpus=0)+(r21u05n581-mic1:naccelerators=1:ncpus=0)+(r21u06n582-mic0:naccelerators=1:ncpus=0)+(r21u06n582-mic1:naccelerators=1:ncpus=0) - --l select=1:naccelerators=2 -(r21u05n581-mic0:naccelerators=1+r21u05n581-mic1:naccelerators=1) - --l select=2:naccelerators=2 -(r21u05n581-mic0:naccelerators=1+r21u05n581-mic1:naccelerators=1)+(r21u06n582-mic0:naccelerators=1+r21u06n582-mic1:naccelerators=1) - --l select=1:ncpus=24:naccelerators=2 -(r22u32n610:ncpus=24+r22u32n610-mic0:naccelerators=1+r22u32n610-mic1:naccelerators=1) - --l select=1:ncpus=24:naccelerators=0+4 -(r33u17n878:ncpus=24:naccelerators=0)+(r33u13n874-mic0:naccelerators=1:ncpus=0)+(r33u13n874-mic1:naccelerators=1:ncpus=0)+(r33u16n877-mic0:naccelerators=1:ncpus=0)+(r33u16n877-mic1:naccelerators=1:ncpus=0) -``` - -### UV2000 SMP - -!!! note - 13 NUMA nodes available on UV2000 - Per NUMA node allocation. - Jobs are isolated by cpusets. - -The UV2000 (node uv1) offers 3TB of RAM and 104 cores, distributed in 13 NUMA nodes. A NUMA node packs 8 cores and approx. 247GB RAM (with exception, node 11 has only 123GB RAM). In the PBS the UV2000 provides 13 chunks, a chunk per NUMA node (see [Resource allocation policy][1]). The jobs on UV2000 are isolated from each other by cpusets, so that a job by one user may not utilize CPU or memory allocated to a job by other user. Always, full chunks are allocated, a job may only use resources of the NUMA nodes allocated to itself. - -```console - $ qsub -A OPEN-0-0 -q qfat -l select=13 ./myjob -``` - -In this example, we allocate all 13 NUMA nodes (corresponds to 13 chunks), 104 cores of the SGI UV2000 node for 24 hours. Jobscript myjob will be executed on the node uv1. - -```console -$ qsub -A OPEN-0-0 -q qfat -l select=1:mem=2000GB ./myjob -``` - -In this example, we allocate 2000GB of memory on the UV2000 for 24 hours. By requesting 2000GB of memory, memory from 10 chunks and 8 cores are allocated. Jobscript myjob will be executed on the node uv1. - -```console -$ qsub -A OPEN-0-0 -q qfat -l select=1:mem=3099GB,walltime=48:00:00 ./myjob -``` - -In this example, we allocate 3099GB of memory on the UV2000 for 48 hours. By requesting 3099GB of memory, memory from all 13 chunks and 8 cores are allocated. Jobscript myjob will be executed on the node uv1. - -```console -$ qsub -A OPEN-0-0 -q qfat -l select=2:mem=1000GB,walltime=48:00:00 ./myjob -``` - -In this example, we allocate 2000GB of memory and 16 cores on the UV2000 for 48 hours. By requesting 1000GB of memory per chunk, 2000GB of memory and 16 cores are allocated. Jobscript myjob will be executed on the node uv1. - -### Useful Tricks - -All qsub options may be [saved directly into the jobscript][2]. In such a case, no options to qsub are needed. - -```console -$ qsub ./myjob -``` - -By default, the PBS batch system sends an e-mail only when the job is aborted. Disabling mail events completely can be done like this: - -```console -$ qsub -m n -``` - -## Advanced Job Placement - -### Placement by Name - -!!! note - Not useful for ordinary computing, suitable for node testing/bechmarking and management tasks. - -Specific nodes may be selected using PBS resource attribute host (for hostnames): - -```console -qsub -A OPEN-0-0 -q qprod -l select=1:ncpus=24:host=r24u35n680+1:ncpus=24:host=r24u36n681 -I -``` - -Specific nodes may be selected using PBS resource attribute cname (for short names in cns[0-1]+ format): - -```console -qsub -A OPEN-0-0 -q qprod -l select=1:ncpus=24:host=cns680+1:ncpus=24:host=cns681 -I -``` - -In this example, we allocate nodes r24u35n680 and r24u36n681, all 24 cores per node, for 24 hours. Consumed resources will be accounted to the Project identified by Project ID OPEN-0-0. The resources will be available interactively. - -### Placement by Network Location - -Network location of allocated nodes in the [InifiBand network][3] influences efficiency of network communication between nodes of job. Nodes on the same InifiBand switch communicate faster with lower latency than distant nodes. To improve communication efficiency of jobs, PBS scheduler on Salomon is configured to allocate nodes - from currently available resources - which are as close as possible in the network topology. - -For communication intensive jobs it is possible to set stricter requirement - to require nodes directly connected to the same InifiBand switch or to require nodes located in the same dimension group of the InifiBand network. - -### Placement by InifiBand Switch - -Nodes directly connected to the same InifiBand switch can communicate most efficiently. Using the same switch prevents hops in the network and provides for unbiased, most efficient network communication. There are 9 nodes directly connected to every InifiBand switch. - -!!! note - We recommend allocating compute nodes of a single switch when the best possible computational network performance is required to run job efficiently. - -Nodes directly connected to the one InifiBand switch can be allocated using node grouping on PBS resource attribute switch. - -In this example, we request all 9 nodes directly connected to the same switch using node grouping placement. - -```console -$ qsub -A OPEN-0-0 -q qprod -l select=9:ncpus=24 -l place=group=switch ./myjob -``` - -### Placement by Specific InifiBand Switch - -!!! note - Not useful for ordinary computing, suitable for testing and management tasks. - -Nodes directly connected to the specific InifiBand switch can be selected using the PBS resource attribute _switch_. - -In this example, we request all 9 nodes directly connected to r4i1s0sw1 switch. - -```console -$ qsub -A OPEN-0-0 -q qprod -l select=9:ncpus=24:switch=r4i1s0sw1 ./myjob -``` - -List of all InifiBand switches: - -```console -$ qmgr -c 'print node @a' | grep switch | awk '{print $6}' | sort -u -r1i0s0sw0 -r1i0s0sw1 -r1i1s0sw0 -r1i1s0sw1 -r1i2s0sw0 -... -``` - -List of all all nodes directly connected to the specific InifiBand switch: - -```console -$ qmgr -c 'p n @d' | grep 'switch = r36sw3' | awk '{print $3}' | sort -r36u31n964 -r36u32n965 -r36u33n966 -r36u34n967 -r36u35n968 -r36u36n969 -r37u32n970 -r37u33n971 -r37u34n972 -``` - -### Placement by Hypercube Dimension - -Nodes located in the same dimension group may be allocated using node grouping on PBS resource attribute ehc\_[1-7]d . - -| Hypercube dimension | node_group_key | #nodes per group | -| ------------------- | -------------- | ---------------- | -| 1D | ehc_1d | 18 | -| 2D | ehc_2d | 36 | -| 3D | ehc_3d | 72 | -| 4D | ehc_4d | 144 | -| 5D | ehc_5d | 144,288 | -| 6D | ehc_6d | 432,576 | -| 7D | ehc_7d | all | - -In this example, we allocate 16 nodes in the same [hypercube dimension][4] 1 group. - -```console -$ qsub -A OPEN-0-0 -q qprod -l select=16:ncpus=24 -l place=group=ehc_1d -I -``` - -For better understanding: - -List of all groups in dimension 1: - -```console -$ qmgr -c 'p n @d' | grep ehc_1d | awk '{print $6}' | sort |uniq -c - 18 r1i0 - 18 r1i1 - 18 r1i2 - 18 r1i3 -... -``` - -List of all all nodes in specific dimension 1 group: - -```console -$ $ qmgr -c 'p n @d' | grep 'ehc_1d = r1i0' | awk '{print $3}' | sort -r1i0n0 -r1i0n1 -r1i0n10 -r1i0n11 -... -``` - -## Job Management - -!!! note - Check status of your jobs using the **qstat** and **check-pbs-jobs** commands - -```console -$ qstat -a -$ qstat -a -u username -$ qstat -an -u username -$ qstat -f 12345.isrv5 -``` - -Example: - -```console -$ qstat -a - -srv11: - Req'd Req'd Elap -Job ID Username Queue Jobname SessID NDS TSK Memory Time S Time ---------------- -------- -- |---|---| ------ --- --- ------ ----- - ----- -16287.isrv5 user1 qlong job1 6183 4 64 -- 144:0 R 38:25 -16468.isrv5 user1 qlong job2 8060 4 64 -- 144:0 R 17:44 -16547.isrv5 user2 qprod job3x 13516 2 32 -- 48:00 R 00:58 -``` - -In this example user1 and user2 are running jobs named job1, job2 and job3x. The jobs job1 and job2 are using 4 nodes, 16 cores per node each. The job1 already runs for 38 hours and 25 minutes, job2 for 17 hours 44 minutes. The job1 already consumed 64 x 38.41 = 2458.6 core hours. The job3x already consumed 0.96 x 32 = 30.93 core hours. These consumed core hours will be accounted on the respective project accounts, regardless of whether the allocated cores were actually used for computations. - -Check status of your jobs using check-pbs-jobs command. Check presence of user's PBS jobs' processes on execution hosts. Display load, processes. Display job standard and error output. Continuously display (tail -f) job standard or error output. - -```console -$ check-pbs-jobs --check-all -$ check-pbs-jobs --print-load --print-processes -$ check-pbs-jobs --print-job-out --print-job-err -$ check-pbs-jobs --jobid JOBID --check-all --print-all -$ check-pbs-jobs --jobid JOBID --tailf-job-out -``` - -Examples: - -```console -$ check-pbs-jobs --check-all -JOB 35141.dm2, session_id 71995, user user2, nodes r3i6n2,r3i6n3 -Check session id: OK -Check processes -r3i6n2: OK -r3i6n3: No process -``` - -In this example we see that job 35141.dm2 currently runs no process on allocated node r3i6n2, which may indicate an execution error. - -```console -$ check-pbs-jobs --print-load --print-processes -JOB 35141.dm2, session_id 71995, user user2, nodes r3i6n2,r3i6n3 -Print load -r3i6n2: LOAD: 16.01, 16.01, 16.00 -r3i6n3: LOAD: 0.01, 0.00, 0.01 -Print processes - %CPU CMD -r3i6n2: 0.0 -bash -r3i6n2: 0.0 /bin/bash /var/spool/PBS/mom_priv/jobs/35141.dm2.SC -r3i6n2: 99.7 run-task -... -``` - -In this example we see that job 35141.dm2 currently runs process run-task on node r3i6n2, using one thread only, while node r3i6n3 is empty, which may indicate an execution error. - -```console -$ check-pbs-jobs --jobid 35141.dm2 --print-job-out -JOB 35141.dm2, session_id 71995, user user2, nodes r3i6n2,r3i6n3 -Print job standard output: -======================== Job start ========================== -Started at : Fri Aug 30 02:47:53 CEST 2013 -Script name : script -Run loop 1 -Run loop 2 -Run loop 3 -``` - -In this example, we see actual output (some iteration loops) of the job 35141.dm2 - -!!! note - Manage your queued or running jobs, using the **qhold**, **qrls**, **qdel,** **qsig** or **qalter** commands - -You may release your allocation at any time, using qdel command - -```console -$ qdel 12345.isrv5 -``` - -You may kill a running job by force, using qsig command - -```console -$ qsig -s 9 12345.isrv5 -``` - -Learn more by reading the pbs man page - -```console -$ man pbs_professional -``` - -## Job Execution - -### Jobscript - -!!! note - Prepare the jobscript to run batch jobs in the PBS queue system - -The Jobscript is a user made script, controlling sequence of commands for executing the calculation. It is often written in bash, other scripts may be used as well. The jobscript is supplied to PBS **qsub** command as an argument and executed by the PBS Professional workload manager. - -!!! note - The jobscript or interactive shell is executed on first of the allocated nodes. - -```console -$ qsub -q qexp -l select=4:ncpus=24 -N Name0 ./myjob -$ qstat -n -u username - -isrv5: - Req'd Req'd Elap -Job ID Username Queue Jobname SessID NDS TSK Memory Time S Time ---------------- -------- -- |---|---| ------ --- --- ------ ----- - ----- -15209.isrv5 username qexp Name0 5530 4 96 -- 01:00 R 00:00 - r21u01n577/0*24+r21u02n578/0*24+r21u03n579/0*24+r21u04n580/0*24 -``` - -In this example, the nodes r21u01n577, r21u02n578, r21u03n579, r21u04n580 were allocated for 1 hour via the qexp queue. The jobscript myjob will be executed on the node r21u01n577, while the nodes r21u02n578, r21u03n579, r21u04n580 are available for use as well. - -!!! note - The jobscript or interactive shell is by default executed in home directory - -```console -$ qsub -q qexp -l select=4:ncpus=24 -I -qsub: waiting for job 15210.isrv5 to start -qsub: job 15210.isrv5 ready - -$ pwd -/home/username -``` - -In this example, 4 nodes were allocated interactively for 1 hour via the qexp queue. The interactive shell is executed in the home directory. - -!!! note - All nodes within the allocation may be accessed via ssh. Unallocated nodes are not accessible to user. - -The allocated nodes are accessible via ssh from login nodes. The nodes may access each other via ssh as well. - -Calculations on allocated nodes may be executed remotely via the MPI, ssh, pdsh or clush. You may find out which nodes belong to the allocation by reading the $PBS_NODEFILE file - -```console -qsub -q qexp -l select=2:ncpus=24 -I -qsub: waiting for job 15210.isrv5 to start -qsub: job 15210.isrv5 ready - -$ pwd -/home/username - -$ sort -u $PBS_NODEFILE -r2i5n6.ib0.smc.salomon.it4i.cz -r4i6n13.ib0.smc.salomon.it4i.cz -r4i7n0.ib0.smc.salomon.it4i.cz -r4i7n2.ib0.smc.salomon.it4i.cz - -$ pdsh -w r2i5n6,r4i6n13,r4i7n[0,2] hostname -r4i6n13: r4i6n13 -r2i5n6: r2i5n6 -r4i7n2: r4i7n2 -r4i7n0: r4i7n0 -``` - -In this example, the hostname program is executed via pdsh from the interactive shell. The execution runs on all four allocated nodes. The same result would be achieved if the pdsh is called from any of the allocated nodes or from the login nodes. - -### Example Jobscript for MPI Calculation - -!!! note - Production jobs must use the /scratch directory for I/O - -The recommended way to run production jobs is to change to /scratch directory early in the jobscript, copy all inputs to /scratch, execute the calculations and copy outputs to home directory. - -```bash -#!/bin/bash - -# change to scratch directory, exit on failure -SCRDIR=/scratch/work/user/$USER/myjob -mkdir -p $SCRDIR -cd $SCRDIR || exit - -# copy input file to scratch -cp $PBS_O_WORKDIR/input . -cp $PBS_O_WORKDIR/mympiprog.x . - -# load the MPI module -ml OpenMPI - -# execute the calculation -mpiexec -pernode ./mympiprog.x - -# copy output file to home -cp output $PBS_O_WORKDIR/. - -#exit -exit -``` - -In this example, some directory on the /home holds the input file input and executable mympiprog.x . We create a directory myjob on the /scratch filesystem, copy input and executable files from the /home directory where the qsub was invoked ($PBS_O_WORKDIR) to /scratch, execute the MPI programm mympiprog.x and copy the output file back to the /home directory. The mympiprog.x is executed as one process per node, on all allocated nodes. - -!!! note - Consider preloading inputs and executables onto [shared scratch][5] before the calculation starts. - -In some cases, it may be impractical to copy the inputs to scratch and outputs to home. This is especially true when very large input and output files are expected, or when the files should be reused by a subsequent calculation. In such a case, it is users responsibility to preload the input files on shared /scratch before the job submission and retrieve the outputs manually, after all calculations are finished. - -!!! note - Store the qsub options within the jobscript. Use **mpiprocs** and **ompthreads** qsub options to control the MPI job execution. - -### Example Jobscript for MPI Calculation With Preloaded Inputs - -Example jobscript for an MPI job with preloaded inputs and executables, options for qsub are stored within the script : - -```bash -#!/bin/bash -#PBS -q qprod -#PBS -N MYJOB -#PBS -l select=100:ncpus=24:mpiprocs=1:ompthreads=24 -#PBS -A OPEN-0-0 - -# change to scratch directory, exit on failure -SCRDIR=/scratch/work/user/$USER/myjob -cd $SCRDIR || exit - -# load the MPI module -ml OpenMPI - -# execute the calculation -mpiexec ./mympiprog.x - -#exit -exit -``` - -In this example, input and executable files are assumed preloaded manually in /scratch/$USER/myjob directory. Note the **mpiprocs** and **ompthreads** qsub options, controlling behavior of the MPI execution. The mympiprog.x is executed as one process per node, on all 100 allocated nodes. If mympiprog.x implements OpenMP threads, it will run 24 threads per node. - -HTML commented section #2 (examples need to be reworked) - -### Example Jobscript for Single Node Calculation - -!!! note - Local scratch directory is often useful for single node jobs. Local scratch will be deleted immediately after the job ends. Be very careful, use of RAM disk filesystem is at the expense of operational memory. - -Example jobscript for single node calculation, using [local scratch][5] on the node: - -```bash -#!/bin/bash - -# change to local scratch directory -cd /lscratch/$PBS_JOBID || exit - -# copy input file to scratch -cp $PBS_O_WORKDIR/input . -cp $PBS_O_WORKDIR/myprog.x . - -# execute the calculation -./myprog.x - -# copy output file to home -cp output $PBS_O_WORKDIR/. - -#exit -exit -``` - -In this example, some directory on the home holds the input file input and executable myprog.x . We copy input and executable files from the home directory where the qsub was invoked ($PBS_O_WORKDIR) to local scratch /lscratch/$PBS_JOBID, execute the myprog.x and copy the output file back to the /home directory. The myprog.x runs on one node only and may use threads. - -[1]: resources-allocation-policy.md -[2]: #example-jobscript-for-mpi-calculation-with-preloaded-inputs -[3]: network.md -[4]: 7d-enhanced-hypercube.md -[5]: storage.md diff --git a/docs.it4i/salomon/shell-and-data-access.md b/docs.it4i/salomon/shell-and-data-access.md deleted file mode 100644 index 941b539eaad9d1af8640c078b27a3779378cb623..0000000000000000000000000000000000000000 --- a/docs.it4i/salomon/shell-and-data-access.md +++ /dev/null @@ -1,224 +0,0 @@ -# Accessing the Cluster - -## Shell Access - -The Salomon cluster is accessed by SSH protocol via login nodes login1, login2, login3 and login4 at address salomon.it4i.cz. The login nodes may be addressed specifically, by prepending the login node name to the address. - -!!! note - The alias salomon.it4i.cz is currently not available through VPN connection. Please use loginX.salomon.it4i.cz when connected to VPN. - -| Login address | Port | Protocol | Login node | -| ---------------------- | ---- | -------- | ------------------------------------- | -| salomon.it4i.cz | 22 | ssh | round-robin DNS record for login[1-4] | -| login1.salomon.it4i.cz | 22 | ssh | login1 | -| login2.salomon.it4i.cz | 22 | ssh | login2 | -| login3.salomon.it4i.cz | 22 | ssh | login3 | -| login4.salomon.it4i.cz | 22 | ssh | login4 | - -The authentication is by the [private key][1] only. - -!!! note - Please verify SSH fingerprints during the first logon. They are identical on all login nodes: - - md5: - - f6:28:98:e4:f9:b2:a6:8f:f2:f4:2d:0a:09:67:69:80 (DSA)<br /> - 70:01:c9:9a:5d:88:91:c7:1b:c0:84:d1:fa:4e:83:5c (RSA) - - sha256: - - epkqEU2eFzXnMeMMkpX02CykyWjGyLwFj528Vumpzn4 (DSA) - WNIrR7oeQDYpBYy4N2d5A6cJ2p0837S7gzzTpaDBZrc (RSA) - -Private key authentication: - -On **Linux** or **Mac**, use - -```console -local $ ssh -i /path/to/id_rsa username@salomon.it4i.cz -``` - -If you see warning message "UNPROTECTED PRIVATE KEY FILE!", use this command to set lower permissions to private key file. - -```console -local $ chmod 600 /path/to/id_rsa -``` - -On **Windows**, use [PuTTY ssh client][2]. - -After logging in, you will see the command prompt: - -```console - _____ _ - / ____| | | - | (___ __ _| | ___ _ __ ___ ___ _ __ - \___ \ / _` | |/ _ \| '_ ` _ \ / _ \| '_ \ - ____) | (_| | | (_) | | | | | | (_) | | | | - |_____/ \__,_|_|\___/|_| |_| |_|\___/|_| |_| - - - http://www.it4i.cz/?lang=en - - -Last login: Tue Jul 9 15:57:38 2018 from your-host.example.com -[username@login2.salomon ~]$ -``` - -!!! note - The environment is **not** shared between login nodes, except for [shared filesystems][3]. - -## Data Transfer - -Data in and out of the system may be transferred by the [scp][a] and sftp protocols. - -| Address | Port | Protocol | -| ---------------------- | ---- | --------- | -| salomon.it4i.cz | 22 | scp, sftp | -| login1.salomon.it4i.cz | 22 | scp, sftp | -| login2.salomon.it4i.cz | 22 | scp, sftp | -| login3.salomon.it4i.cz | 22 | scp, sftp | -| login4.salomon.it4i.cz | 22 | scp, sftp | - -The authentication is by the [private key][1] only. - -On linux or Mac, use scp or sftp client to transfer the data to Salomon: - -```console -local $ scp -i /path/to/id_rsa my-local-file username@salomon.it4i.cz:directory/file -``` - -```console -local $ scp -i /path/to/id_rsa -r my-local-dir username@salomon.it4i.cz:directory -``` - -or - -```console -local $ sftp -o IdentityFile=/path/to/id_rsa username@salomon.it4i.cz -``` - -Very convenient way to transfer files in and out of the Salomon computer is via the fuse filesystem [sshfs][b]. - -```console -local $ sshfs -o IdentityFile=/path/to/id_rsa username@salomon.it4i.cz:. mountpoint -``` - -Using sshfs, the users Salomon home directory will be mounted on your local computer, just like an external disk. - -Learn more on ssh, scp and sshfs by reading the manpages - -```console -$ man ssh -$ man scp -$ man sshfs -``` - -On Windows, use [WinSCP client][c] to transfer the data. The [win-sshfs client][d] provides a way to mount the Salomon filesystems directly as an external disc. - -More information about the shared file systems is available [here][3]. - -## Connection Restrictions - -Outgoing connections, from Salomon Cluster login nodes to the outside world, are restricted to following ports: - -| Port | Protocol | -| ---- | -------- | -| 22 | ssh | -| 80 | http | -| 443 | https | -| 9418 | git | - -!!! note - Please use **ssh port forwarding** and proxy servers to connect from Salomon to all other remote ports. - -Outgoing connections, from Salomon Cluster compute nodes are restricted to the internal network. Direct connections form compute nodes to outside world are cut. - -## Port Forwarding - -### Port Forwarding From Login Nodes - -!!! note - Port forwarding allows an application running on Salomon to connect to arbitrary remote host and port. - -It works by tunneling the connection from Salomon back to users workstation and forwarding from the workstation to the remote host. - -Pick some unused port on Salomon login node (for example 6000) and establish the port forwarding: - -```console -local $ ssh -R 6000:remote.host.com:1234 salomon.it4i.cz -``` - -In this example, we establish port forwarding between port 6000 on Salomon and port 1234 on the remote.host.com. By accessing localhost:6000 on Salomon, an application will see response of remote.host.com:1234. The traffic will run via users local workstation. - -Port forwarding may be done **using PuTTY** as well. On the PuTTY Configuration screen, load your Salomon configuration first. Then go to Connection->SSH->Tunnels to set up the port forwarding. Click Remote radio button. Insert 6000 to Source port textbox. Insert remote.host.com:1234. Click Add button, then Open. - -Port forwarding may be established directly to the remote host. However, this requires that user has ssh access to remote.host.com - -```console -$ ssh -L 6000:localhost:1234 remote.host.com -``` - -Note: Port number 6000 is chosen as an example only. Pick any free port. - -### Port Forwarding From Compute Nodes - -Remote port forwarding from compute nodes allows applications running on the compute nodes to access hosts outside Salomon Cluster. - -First, establish the remote port forwarding form the login node, as [described above][4]. - -Second, invoke port forwarding from the compute node to the login node. Insert following line into your jobscript or interactive shell - -```console -$ ssh -TN -f -L 6000:localhost:6000 login1 -``` - -In this example, we assume that port forwarding from login1:6000 to remote.host.com:1234 has been established beforehand. By accessing localhost:6000, an application running on a compute node will see response of remote.host.com:1234 - -### Using Proxy Servers - -Port forwarding is static, each single port is mapped to a particular port on remote host. Connection to other remote host, requires new forward. - -!!! note - Applications with inbuilt proxy support, experience unlimited access to remote hosts, via single proxy server. - -To establish local proxy server on your workstation, install and run SOCKS proxy server software. On Linux, sshd demon provides the functionality. To establish SOCKS proxy server listening on port 1080 run: - -```console -local $ ssh -D 1080 localhost -``` - -On Windows, install and run the free, open source [Sock Puppet][e] server. - -Once the proxy server is running, establish ssh port forwarding from Salomon to the proxy server, port 1080, exactly as [described above][4]. - -```console -local $ ssh -R 6000:localhost:1080 salomon.it4i.cz -``` - -Now, configure the applications proxy settings to **localhost:6000**. Use port forwarding to access the [proxy server from compute nodes][4] as well. - -## Graphical User Interface - -* The [X Window system][5] is a principal way to get GUI access to the clusters. -* The [Virtual Network Computing][6] is a graphical [desktop sharing][f] system that uses the [Remote Frame Buffer protocol][g] to remotely control another [computer][h]. - -## VPN Access - -* Access to IT4Innovations internal resources via [VPN][7]. - -[1]: ../general/accessing-the-clusters/shell-access-and-data-transfer/ssh-keys.md -[2]: ../general/accessing-the-clusters/shell-access-and-data-transfer/putty.md -[3]: storage.md -[4]: #port-forwarding-from-login-nodes -[5]: ../general/accessing-the-clusters/graphical-user-interface/x-window-system.md -[6]: ../general/accessing-the-clusters/graphical-user-interface/vnc.md -[7]: ../general/accessing-the-clusters/vpn-access.md - -[a]: http://en.wikipedia.org/wiki/Secure_copy -[b]: http://linux.die.net/man/1/sshfs -[c]: http://winscp.net/eng/download.php -[d]: http://code.google.com/p/win-sshfs/ -[e]: http://sockspuppet.com/ -[f]: http://en.wikipedia.org/wiki/Desktop_sharing -[g]: http://en.wikipedia.org/wiki/RFB_protocol -[h]: http://en.wikipedia.org/wiki/Computer diff --git a/docs.it4i/salomon/storage.md b/docs.it4i/salomon/storage.md index 1a3becfff6d1f75b7236829408caab39da644e7c..24b5d9310bfdd7d962fe9589703c6a42250915dc 100644 --- a/docs.it4i/salomon/storage.md +++ b/docs.it4i/salomon/storage.md @@ -18,7 +18,7 @@ All login and compute nodes may access same data on shared file systems. Compute ## Archiving -Please don't use shared file systems as a backup for large amount of data or long-term archiving mean. The academic staff and students of research institutions in the Czech Republic can use [CESNET storage service][6], which is available via SSHFS. +Don't use shared file systems as a backup for large amount of data or long-term archiving mean. The academic staff and students of research institutions in the Czech Republic can use [CESNET storage service][6], which is available via SSHFS. ## Shared File Systems @@ -484,7 +484,7 @@ The procedure to obtain the CESNET access is quick and trouble-free. ### Understanding CESNET Storage !!! note - It is very important to understand the CESNET storage before uploading data. [Please read][h] first. + It is very important to understand the CESNET storage before uploading data. [Read][h] first. Once registered for CESNET Storage, you may [access the storage][i] in number of ways. We recommend the SSHFS and RSYNC methods. diff --git a/docs.it4i/salomon/visualization.md b/docs.it4i/salomon/visualization.md index 0cd031b8a499a8a74079b78a8afa7fd52563f3ce..9e258028e52960e23b5ada620b882c60a8da59cd 100644 --- a/docs.it4i/salomon/visualization.md +++ b/docs.it4i/salomon/visualization.md @@ -1,6 +1,6 @@ # Visualization Servers -Remote visualization with NICE DCV software is availabe on two nodes. +Remote visualization with [NICE DCV software][3] is availabe on two nodes. | Node | Count | Processor | Cores | Memory | GPU Accelerator | |---------------|-------|-----------------------------------|-------|--------|------------------------------| @@ -17,178 +17,6 @@ Remote visualization with NICE DCV software is availabe on two nodes. * [Graphical User Interface][1] * [VPN Access][2] -## Install and Run - -**Install NICE DCV 2016** (user-computer) - -* [Overview][a] -* [Linux download][b] -* [Windows download][c] - -**Install VPN client** [VPN Access][3] - -!!! note - Visualisation server is a compute node. You are not able to SSH with your private key. There are two solutions available to solve login issue. - -### Windows Users - -**Solution 1 - Add the public fingerprint** - -* Generate public fingerprint for your private key with PuTTYgen - - - -* Add this key to `~/.ssh/authorized_keys` on the cluster - - - -* Use your standard SSH key to connect to visualization server - -**Solution 2 - Copy private key from the cluster** - -* Install WinSCP client (user-computer) [Download WinSCP installer][d] -* Add credentials - - - -* Add path to key file - - - -* Save -* Copy `~/.ssh/id_rsa` to your computer -* Convert key to PuTTY format with PuTTYgen - - - -* Use this new ssh key to connect to visualization server - -**Install PuTTY** - -* [Overview][4] -* [Download PuTTY installer][e] -* Configure PuTTY - - - -* Add credentials and key file (create 3x sessions: **vizserv1.salomon.it4i.cz**, **vizserv2.salomon.it4i.cz**, **login1.salomon.it4i.cz**) -* Config SSH tunnels (user-computer) (for sessions vizserv1 and vizserv2 only) - ports: **5901**, **5902**, **7300-7305** - - - -* Save - -**Run VPN client** [VPN IT4Innovations][f] (user-computer) - -**Login to Salomon via PuTTY** (user-computer) - -```console -$ ssh salomon.it4i.cz -``` - -**Remove ~/.vnc/xstartup** - -**Run job** - -```console -$ qsub -I -q qviz -A OPEN-XX-XX -l select=1:ncpus=4:host=vizserv1,walltime=04:00:00 -N Vizserver1 -$ qsub -I -q qviz -A OPEN-XX-XX -l select=1:ncpus=4:host=vizserv2,walltime=04:00:00 -N Vizserver2 -``` - -**Run vncserver on vizservX** - -* check existing vncservers in /tmp/.X11-unix/X\* (rm /tmp/.X11-unix/X1 /tmp/.X11-unix/X2) -* vizserv1: vncserver :1 -geometry 2540x1380 -depth 24 -* vizserv2: vncserver :2 -geometry 2540x1380 -depth 24 -* set password for vncserver - -**Login to vizservX via PuTTY (vizserv1/vizserv2) with tunnels** (user-computer) - -**Run NICE DCV 2016** (user-computer) - -* vizserv1: localhost:5901 -* vizserv2: localhost:5902 -* fill password - - - - -**Check DCV status (Salomon-vizservX) in VNC window** - -**Run glxgears (Salomon-vizservX)** - - - -**LOGOUT FROM MENU: System->Logout** - -### Linux Users - -**Config SSH tunnels (user-computer)** - -* ports: 5901, 5902, 7300-7305 -* vizserv1 - -```console -$ ssh -i ~/salomon_key -TN -f user@vizserv1.salomon.it4i.cz -L 5901:localhost:5901 -L 7300:localhost:7300 -L 7301:localhost:7301 -L 7302:localhost:7302 -L 7303:localhost:7303 -L 7304:localhost:7304 -L 7305:localhost:7305 -``` - -* vizserv2 - -```console -$ ssh -i ~/salomon_key -TN -f user@vizserv2.salomon.it4i.cz -L 5902:localhost:5902 -L 7300:localhost:7300 -L 7301:localhost:7301 -L 7302:localhost:7302 -L 7303:localhost:7303 -L 7304:localhost:7304 -L 7305:localhost:7305 -``` - -**Run VPN client** [VPN IT4Innovations][f] (user-computer) - -**Login to Salomon** (user-computer) - -```console -$ ssh salomon.it4i.cz -``` - -**Remove ~/.vnc/xstartup** - -**Run job** - -```console -$ qsub -I -q qviz -A OPEN-XX-XX -l select=1:ncpus=4:host=vizserv1,walltime=04:00:00 -N Vizserver1 -$ qsub -I -q qviz -A OPEN-XX-XX -l select=1:ncpus=4:host=vizserv2,walltime=04:00:00 -N Vizserver2 -``` - -**Run vncserver on vizservX** - -* check existing vncservers in /tmp/.X11-unix/X\* (rm /tmp/.X11-unix/X1 /tmp/.X11-unix/X2) -* vizserv1: vncserver :1 -geometry 2540x1380 -depth 24 -* vizserv2: vncserver :2 -geometry 2540x1380 -depth 24 -* set password for vncserver - -**Run SSH (vizserv1/vizserv2) with tunnels** (user-computer) - -**Run NICE DCV 2016** (user-computer) - -* vizserv1: localhost:5901 -* vizserv2: localhost:5902 -* fill password - - - - -**Check DCV status in VNC window** - -**Run glxgears** - - - -**LOGOUT FROM MENU: System->Logout** - -[1]: shell-and-data-access.md#graphical-user-interface -[2]: shell-and-data-access.md#vpn-access -[3]: ../general/accessing-the-clusters/vpn-access.md -[4]: ../general/accessing-the-clusters/shell-access-and-data-transfer/putty.md - -[a]: https://www.nice-software.com/download/nice-dcv-2016 -[b]: http://www.nice-software.com/storage/nice-dcv/2016.0/endstation/linux/nice-dcv-endstation-2016.0-17066.run -[c]: http://www.nice-software.com/storage/nice-dcv/2016.0/endstation/win/nice-dcv-endstation-2016.0-17066-Release.msi -[d]: https://winscp.net/download/WinSCP-5.13.3-Setup.exe -[e]: https://the.earth.li/~sgtatham/putty/latest/w64/putty-64bit-0.70-installer.msi -[f]: https://vpn.it4i.cz/user +[1]: ../general/shell-and-data-access.md#graphical-user-interface +[2]: ../general/shell-and-data-access.md#vpn-access +[3]: ../software/viz/NICEDCVsoftware.md diff --git a/docs.it4i/software/bio/omics-master/overview.md b/docs.it4i/software/bio/omics-master/overview.md index 4cb6210ad3747e663c154cacd25bf99874c58d37..4a3ef99016b20adc5dca06d6773e97223485bff7 100644 --- a/docs.it4i/software/bio/omics-master/overview.md +++ b/docs.it4i/software/bio/omics-master/overview.md @@ -393,9 +393,9 @@ Each prioritization (â€job’) has three associated screens that facilitate the [1]: diagnostic-component-team.md [2]: priorization-component-bierapp.md -[3]: ../../../salomon/resources-allocation-policy.md +[3]: ../../../general/resources-allocation-policy.md [4]: ../../../salomon/storage.md -[5]: ../../../salomon/job-submission-and-execution.md +[5]: ../../../general/job-submission-and-execution.md [a]: http://www.bioinformatics.babraham.ac.uk/projects/fastqc/ [b]: https://www.broadinstitute.org/gatk/ diff --git a/docs.it4i/software/chemistry/molpro.md b/docs.it4i/software/chemistry/molpro.md index d5876eb083044d6ed3cd39b965f16ff64b33ed3d..7ab456aa1cd871b89c943ecf5aafcd5213a3069c 100644 --- a/docs.it4i/software/chemistry/molpro.md +++ b/docs.it4i/software/chemistry/molpro.md @@ -8,7 +8,7 @@ Molpro is a software package used for accurate ab-initio quantum chemistry calcu ## License -Molpro software package is available only to users that have a valid license. Please contact support to enable access to Molpro if you have a valid license appropriate for running on our cluster (eg. academic research group licence, parallel execution). +Molpro software package is available only to users that have a valid license. Contact support to enable access to Molpro if you have a valid license appropriate for running on our cluster (eg. academic research group licence, parallel execution). To run Molpro, you need to have a valid license token present in " $HOME/.molpro/token". You can download the token from [Molpro website][b]. @@ -30,7 +30,7 @@ Compilation parameters are default: ## Running -Molpro is compiled for parallel execution using MPI and OpenMP. By default, Molpro reads the number of allocated nodes from PBS and launches a data server on one node. On the remaining allocated nodes, compute processes are launched, one process per node, each with 16 threads. You can modify this behavior by using -n, -t and helper-server options. Please refer to the [Molpro documentation][c] for more details. +Molpro is compiled for parallel execution using MPI and OpenMP. By default, Molpro reads the number of allocated nodes from PBS and launches a data server on one node. On the remaining allocated nodes, compute processes are launched, one process per node, each with 16 threads. You can modify this behavior by using -n, -t and helper-server options. Refer to the [Molpro documentation][c] for more details. !!! note The OpenMP parallelization in Molpro is limited and has been observed to produce limited scaling. We therefore recommend to use MPI parallelization only. This can be achieved by passing option mpiprocs=16:ompthreads=1 to PBS. diff --git a/docs.it4i/software/chemistry/nwchem.md b/docs.it4i/software/chemistry/nwchem.md index 7540e48dc97b892f55145056900b827894b36c14..d4ff1b08d175f1ed65117d8a01673f495309f247 100644 --- a/docs.it4i/software/chemistry/nwchem.md +++ b/docs.it4i/software/chemistry/nwchem.md @@ -28,7 +28,7 @@ mpirun nwchem h2o.nw ## Options -Please refer to [the documentation][b] and in the input file set the following directives: +Refer to [the documentation][b] and in the input file set the following directives: * MEMORY : controls the amount of memory NWChem will use * SCRATCH_DIR : set this to a directory in [SCRATCH filesystem - Salomon][1] (or run the calculation completely in a scratch directory). For certain calculations, it might be advisable to reduce I/O by forcing "direct" mode, eg. "scf direct" diff --git a/docs.it4i/software/chemistry/phono3py.md b/docs.it4i/software/chemistry/phono3py.md index 29251338f91e7bb84f5e6490dccfd9ab3464b5e7..9277cbea77b5c2c7d9630ea0eeb28dcf859630d8 100644 --- a/docs.it4i/software/chemistry/phono3py.md +++ b/docs.it4i/software/chemistry/phono3py.md @@ -14,7 +14,7 @@ $ ml av phono3py $ ml phono3py ``` -## Example of Calculating Thermal Conductivity of Si Using VASP Code +## Example of Calculating Thermal Conductivity of Si Using VASP Code. ### Calculating Force Constants diff --git a/docs.it4i/software/compilers.md b/docs.it4i/software/compilers.md index ee950c1016c591aa4e5f95c71a6154ad89b579a0..4d276b761a0a3fc77d0664ea2d7bcb08d1a1407c 100644 --- a/docs.it4i/software/compilers.md +++ b/docs.it4i/software/compilers.md @@ -195,6 +195,6 @@ For information how to work with NVIDIA CUDA, read the [NVIDIA CUDA page][3]. [1]: intel/intel-suite/intel-compilers.md [2]: lang/java.md -[3]: ../anselm/software/nvidia-cuda.md +[3]: nvidia-cuda.md [a]: http://www.pgroup.com/products/pgicdk.htm diff --git a/docs.it4i/software/debuggers/allinea-ddt.md b/docs.it4i/software/debuggers/allinea-ddt.md index 6d195b0e7192e9b9f72c4cee0bc80e2377a8ab2a..42d3b3327ad0162f726e726750bdee8415e3e05d 100644 --- a/docs.it4i/software/debuggers/allinea-ddt.md +++ b/docs.it4i/software/debuggers/allinea-ddt.md @@ -59,7 +59,7 @@ Be sure to log in with an X window forwarding enabled. This could mean using the $ ssh -X username@anselm.it4i.cz ``` -Other options is to access login node using VNC. Please see the detailed information on how to [use graphic user interface on Anselm][1]. +Other options is to access login node using VNC. See the detailed information on how to [use graphic user interface on Anselm][1]. From the login node an interactive session **with X windows forwarding** (-X option) can be started by following command: diff --git a/docs.it4i/software/debuggers/allinea-performance-reports.md b/docs.it4i/software/debuggers/allinea-performance-reports.md index f4d6491b525c2678c8dc4a3415a871967cff957f..2319747dc8665bbd0539c262a8e7133b99f69ee3 100644 --- a/docs.it4i/software/debuggers/allinea-performance-reports.md +++ b/docs.it4i/software/debuggers/allinea-performance-reports.md @@ -59,6 +59,6 @@ $ perf-report mpirun ./mympiprog.x Performance report files [mympiprog_32p\*.txt][3] and [mympiprog_32p\*.html][4] were created. We can see that the code is very efficient on MPI and is CPU bounded. [1]: ../mpi/mpi.md -[2]: ../../salomon/job-submission-and-execution.md +[2]: ../../general/job-submission-and-execution.md [3]: mympiprog_32p_2014-10-15_16-56.txt [4]: mympiprog_32p_2014-10-15_16-56.html diff --git a/docs.it4i/software/debuggers/papi.md b/docs.it4i/software/debuggers/papi.md index 7ab30475f8f7de01e9a32941e7b60313d6ec592f..7b747db6cc4ac189ece3c0a30a5658f1755914d4 100644 --- a/docs.it4i/software/debuggers/papi.md +++ b/docs.it4i/software/debuggers/papi.md @@ -90,7 +90,7 @@ The include path is automatically added by papi module to $INCLUDE. ### High Level API -Please refer to [this description of the High level API][a]. +Refer to [this description of the High level API][a]. ### Low Level API diff --git a/docs.it4i/software/debuggers/scalasca.md b/docs.it4i/software/debuggers/scalasca.md index b2ad3dd09ea0de40a5c6e204d4b77649cd2a6926..232e221cbe995f2823621dd00f2d7dcc269ff72b 100644 --- a/docs.it4i/software/debuggers/scalasca.md +++ b/docs.it4i/software/debuggers/scalasca.md @@ -43,7 +43,7 @@ Some notable Scalasca options are: * **-e <directory> Specify a directory to save the collected data to. By default, Scalasca saves the data to a directory with prefix scorep\_, followed by name of the executable and launch configuration.** !!! note - Scalasca can generate a huge amount of data, especially if tracing is enabled. Please consider saving the data to a [scratch directory][6]. + Scalasca can generate a huge amount of data, especially if tracing is enabled. Consider saving the data to a [scratch directory][6]. ### Analysis of Reports diff --git a/docs.it4i/software/debuggers/score-p.md b/docs.it4i/software/debuggers/score-p.md index 4c98d7a1159905067856d73fbd91bba86c67f170..f0e06900035854bca64a923afa4ef32e0598f8b8 100644 --- a/docs.it4i/software/debuggers/score-p.md +++ b/docs.it4i/software/debuggers/score-p.md @@ -74,7 +74,7 @@ subroutine foo end subroutine foo ``` -Please refer to the [documentation for description of the API][b]. +Refer to the [documentation for description of the API][b]. ### Manual Instrumentation Using Directives diff --git a/docs.it4i/software/debuggers/total-view.md b/docs.it4i/software/debuggers/total-view.md index 667216bc182d6c728d836f6415521ff7c8b2d02a..758418f8cd5a0f5eb039e9d8bbe6fb9105b807cb 100644 --- a/docs.it4i/software/debuggers/total-view.md +++ b/docs.it4i/software/debuggers/total-view.md @@ -68,7 +68,7 @@ Be sure to log in with an X window forwarding enabled. This could mean using the ssh -X username@salomon.it4i.cz ``` -Other options is to access login node using VNC. Please see the detailed information on how to use graphic user interface on Anselm. +Other options is to access login node using VNC. See the detailed information on how to use graphic user interface on Anselm. From the login node an interactive session with X windows forwarding (-X option) can be started by following command (for Anselm use 16 threads): diff --git a/docs.it4i/software/debuggers/valgrind.md b/docs.it4i/software/debuggers/valgrind.md index d84bd4020f80ba1a0ac7be5bf26042281c256d02..ea08c75d46a8673f603ba9f53faed5d0b3d74dfb 100644 --- a/docs.it4i/software/debuggers/valgrind.md +++ b/docs.it4i/software/debuggers/valgrind.md @@ -63,7 +63,7 @@ Now, lets run it with Valgrind. The syntax is : `valgrind [valgrind options] <your program binary> [your program options]` -If no Valgrind options are specified, Valgrind defaults to running Memcheck tool. Please refer to the Valgrind documentation for a full description of command line options. +If no Valgrind options are specified, Valgrind defaults to running Memcheck tool. Refer to the Valgrind documentation for a full description of command line options. ```console $ valgrind ./valgrind-example diff --git a/docs.it4i/software/intel/intel-suite/intel-trace-analyzer-and-collector.md b/docs.it4i/software/intel/intel-suite/intel-trace-analyzer-and-collector.md index c6f264ce5cd915d8d2613695cf48220ff2a97a17..d418692398f3e4d1af30917b7d1be62993383e2d 100644 --- a/docs.it4i/software/intel/intel-suite/intel-trace-analyzer-and-collector.md +++ b/docs.it4i/software/intel/intel-suite/intel-trace-analyzer-and-collector.md @@ -32,7 +32,7 @@ The GUI will launch and you can open the produced `*`.stf file.  -Please refer to Intel documenation about usage of the GUI tool. +Refer to Intel documenation about usage of the GUI tool. ## References diff --git a/docs.it4i/software/mpi/mpi.md b/docs.it4i/software/mpi/mpi.md index 43e8c61d073024b7f8ef54a4ee556b7832a0759b..b60d56cf865403d950086cae936045df21bebc5b 100644 --- a/docs.it4i/software/mpi/mpi.md +++ b/docs.it4i/software/mpi/mpi.md @@ -39,7 +39,7 @@ Examples: $ ml gompi/2015b ``` -In this example, we activate the latest OpenMPI with latest GNU compilers (OpenMPI 1.8.6 and GCC 5.1). Please see more information about toolchains in section [Environment and Modules][1]. +In this example, we activate the latest OpenMPI with latest GNU compilers (OpenMPI 1.8.6 and GCC 5.1). See more information about toolchains in section [Environment and Modules][1]. To use OpenMPI with the intel compiler suite, use diff --git a/docs.it4i/software/mpi/running_openmpi.md b/docs.it4i/software/mpi/running_openmpi.md index 5f2606bc2671012b95e53831eb63aa0c95451500..05629a9a6bf11c4bfedce2d87eb4eb7c24fdd251 100644 --- a/docs.it4i/software/mpi/running_openmpi.md +++ b/docs.it4i/software/mpi/running_openmpi.md @@ -26,7 +26,7 @@ $ mpiexec -pernode ./helloworld_mpi.x ``` !!! note - Please be aware, that in this example, the directive **-pernode** is used to run only **one task per node**, which is normally an unwanted behaviour (unless you want to run hybrid code with just one MPI and 16 OpenMP tasks per node). In normal MPI programs **omit the -pernode directive** to run up to 16 MPI tasks per each node. + Be aware, that in this example, the directive **-pernode** is used to run only **one task per node**, which is normally an unwanted behaviour (unless you want to run hybrid code with just one MPI and 16 OpenMP tasks per node). In normal MPI programs **omit the -pernode directive** to run up to 16 MPI tasks per each node. In this example, we allocate 4 nodes via the express queue interactively. We set up the openmpi environment and interactively run the helloworld_mpi.x program. Note that the executable helloworld_mpi.x must be available within the same path on all nodes. This is automatically fulfilled on the /home and /scratch filesystem. diff --git a/docs.it4i/software/numerical-languages/octave.md b/docs.it4i/software/numerical-languages/octave.md index 6788bff11884fe6a88c5d50bd97fea27ffac5c35..c5b77e3205714e5c2a529e6214c47a14ef343adb 100644 --- a/docs.it4i/software/numerical-languages/octave.md +++ b/docs.it4i/software/numerical-languages/octave.md @@ -107,7 +107,7 @@ $ source /apps/tools/octave/3.8.2-mic/bin/octave-env.sh # set up environment va $ octave -q /apps/tools/octave/3.8.2-mic/example/test0.m # run an example ``` -[1]: ../../salomon/job-submission-and-execution.md +[1]: ../../general/job-submission-and-execution.md [2]: ../intel/intel-xeon-phi-salomon.md [3]: ../../salomon/compute-nodes.md diff --git a/docs.it4i/software/numerical-languages/r.md b/docs.it4i/software/numerical-languages/r.md index 8351cd0f67d4d8e17cb317f0d18507f8f1ac89e1..ad3ca39fb26a647e8f19b608ecc4c4cf2c239f18 100644 --- a/docs.it4i/software/numerical-languages/r.md +++ b/docs.it4i/software/numerical-languages/r.md @@ -402,7 +402,7 @@ $ export MKL_MIC_ENABLE=1 Read more about automatic offload [here][6]. -[1]: ../../anselm/job-submission-and-execution.md +[1]: ../../general/job-submission-and-execution.md [2]: #interactive-execution [3]: ../mpi/running_openmpi.md [4]: #static-rmpi diff --git a/docs.it4i/anselm/software/nvidia-cuda.md b/docs.it4i/software/nvidia-cuda.md similarity index 100% rename from docs.it4i/anselm/software/nvidia-cuda.md rename to docs.it4i/software/nvidia-cuda.md diff --git a/docs.it4i/software/tools/ansys/ansys-cfx.md b/docs.it4i/software/tools/ansys/ansys-cfx.md index 61d6c208a73e6593789e7e4fc4f938056015726d..1699c40b46663f7d0cc4b2db6bd42ca44c54e50b 100644 --- a/docs.it4i/software/tools/ansys/ansys-cfx.md +++ b/docs.it4i/software/tools/ansys/ansys-cfx.md @@ -53,6 +53,6 @@ Working directory has to be created before sending PBS job into the queue. Input **License** should be selected by parameter -P (Big letter **P**). Licensed products are the following: aa_r (ANSYS **Academic** Research), ane3fl (ANSYS Multiphysics)-**Commercial**. -[1]: ../../../anselm/job-submission-and-execution.md +[1]: ../../../general/job-submission-and-execution.md [a]: http://www.ansys.com/products/fluids/ansys-cfx diff --git a/docs.it4i/software/tools/ansys/ansys-fluent.md b/docs.it4i/software/tools/ansys/ansys-fluent.md index 36a9dcdd165fdcfa06ba8b767b7e8d21721e2487..155e6fb1b0992ad69d68645ec7f97500b806ab0b 100644 --- a/docs.it4i/software/tools/ansys/ansys-fluent.md +++ b/docs.it4i/software/tools/ansys/ansys-fluent.md @@ -160,7 +160,7 @@ ANSYS Academic Research license should be moved up to the top of the list.  -[1]: ../../../salomon/resources-allocation-policy.md +[1]: ../../../general/resources-allocation-policy.md [a]: http://www.ansys.com/products/fluids/ansys-fluent [b]: http://www.svsfem.cz diff --git a/docs.it4i/software/tools/ansys/ansys-ls-dyna.md b/docs.it4i/software/tools/ansys/ansys-ls-dyna.md index 19b692afbd034a4ab434073acda3dab68850f760..52f08a77e00f6c77094d2b1d49766fb45e67fb51 100644 --- a/docs.it4i/software/tools/ansys/ansys-ls-dyna.md +++ b/docs.it4i/software/tools/ansys/ansys-ls-dyna.md @@ -52,7 +52,7 @@ echo Machines: $hl Header of the PBS file (above) is common and description can be find on [this site][1]. [SVS FEM][b] recommends to utilize sources by keywords: nodes, ppn. These keywords allows to address directly the number of nodes (computers) and cores (ppn) which will be utilized in the job. Also the rest of code assumes such structure of allocated resources. -[1]: ../../../anselm/job-submission-and-execution.md +[1]: ../../../general/job-submission-and-execution.md [a]: http://www.ansys.com/products/structures/ansys-ls-dyna [b]: http://www.svsfem.cz diff --git a/docs.it4i/software/tools/ansys/ansys-mechanical-apdl.md b/docs.it4i/software/tools/ansys/ansys-mechanical-apdl.md index eaadfdb4cd1a7080f0d7ec20bd6e4b5795a6297f..836192599bef7185c9c354f4f97fffac902e0138 100644 --- a/docs.it4i/software/tools/ansys/ansys-mechanical-apdl.md +++ b/docs.it4i/software/tools/ansys/ansys-mechanical-apdl.md @@ -54,7 +54,7 @@ Working directory has to be created before sending PBS job into the queue. Input **License** should be selected by parameter -p. Licensed products are the following: aa_r (ANSYS **Academic** Research), ane3fl (ANSYS Multiphysics)-**Commercial**, aa_r_dy (ANSYS **Academic** AUTODYN) -[1]: ../../../anselm/resources-allocation-policy.md +[1]: ../../../general/resources-allocation-policy.md [a]: http://www.ansys.com/products/multiphysics [b]: http://www.svsfem.cz diff --git a/docs.it4i/software/tools/ansys/ls-dyna.md b/docs.it4i/software/tools/ansys/ls-dyna.md index aed47abfe14997382ebd0bfddac3395a4dd79442..8bf6c446f8433d0d456bb9a3012c37a9d54f9fd8 100644 --- a/docs.it4i/software/tools/ansys/ls-dyna.md +++ b/docs.it4i/software/tools/ansys/ls-dyna.md @@ -34,7 +34,7 @@ Header of the PBS file (above) is common and description can be find on [this si Working directory has to be created before sending PBS job into the queue. Input file should be in working directory or full path to input file has to be specified. Input file has to be defined by common LS-DYNA **.k** file which is attached to the LS-DYNA solver via parameter `i=`. -[1]: ../../../anselm/job-submission-and-execution.md +[1]: ../../../general/job-submission-and-execution.md [a]: http://www.lstc.com/ [b]: http://www.svsfem.cz diff --git a/docs.it4i/software/tools/ansys/setting-license-preferences.md b/docs.it4i/software/tools/ansys/setting-license-preferences.md index 204dda4788f2e51f153e96088ec9b1534180ade6..91d05256e7ab3a04756e0e190aeea7a9c0078907 100644 --- a/docs.it4i/software/tools/ansys/setting-license-preferences.md +++ b/docs.it4i/software/tools/ansys/setting-license-preferences.md @@ -2,7 +2,7 @@ Some ANSYS tools allow you to explicitly specify usage of academic or commercial licenses in the command line (e.g. ansys161 -p aa_r to select Academic Research license). However, we have observed that not all tools obey this option and choose commercial license. -Thus you need to configure preferred license order with ANSLIC_ADMIN. Please follow these steps and move Academic Research license to the top or bottom of the list accordingly. +Thus you need to configure preferred license order with ANSLIC_ADMIN. Follow these steps and move Academic Research license to the top or bottom of the list accordingly. Launch the ANSLIC_ADMIN utility in a graphical environment: diff --git a/docs.it4i/software/tools/singularity-it4i.md b/docs.it4i/software/tools/singularity-it4i.md index 129d97b4b49766dd3b82216571567f20cf3815cd..5c416052812c979a10c485aa5e92c9daac117f56 100644 --- a/docs.it4i/software/tools/singularity-it4i.md +++ b/docs.it4i/software/tools/singularity-it4i.md @@ -1,23 +1,24 @@ # Singularity on IT4Innovations -On our clusters, the Singularity images of main linux distributions are prepared. List of available singularity images (05.04.2018): +On our clusters, the Singularity images of main linux distributions are prepared. ```console Salomon Anselm ├── CentOS ├── CentOS │  ├── 6.9 │  ├── 6.9 │  ├── 6.9-MIC │  ├── 6.9-GPU - │  ├── 7.4 │  ├── 7.4 - │  └── 7.4-MIC │  └── 7.4-GPU + │  ├── 7.5 │  ├── 7.4 + │  └── 7.5-intel │  └── 7.4-GPU ├── Debian ├── Debian │  └── 8.0 │  ├── 8.0 - └── Ubuntu │  └── 8.0-GPU - └── 16.04 └── Ubuntu - ├── 16.04 - └── 16.04-GPU + ├── Fedora │ └── 8.0-GPU + │ └── 29 └── Ubuntu + └── Ubuntu ├── 16.04 + └── 16.04 └── 16.04-GPU ``` -Current information about available Singularity images can be obtained by the `ml av` command. The Images are listed in the `OS` section. +!!! info + Current information about available Singularity images can be obtained by the `ml av` command. The Images are listed in the `OS` section. The bootstrap scripts, wrappers, features, etc. are located [here][a]. diff --git a/docs.it4i/software/tools/singularity.md b/docs.it4i/software/tools/singularity.md index e932eb24794ae902665e7812b86089a6fa54abbd..b8cc8c94f412842f3d2e12f281c6c6490cbd96a6 100644 --- a/docs.it4i/software/tools/singularity.md +++ b/docs.it4i/software/tools/singularity.md @@ -11,6 +11,13 @@ Singularity also allows you to leverage the resources of whatever host you are o This documentation is for Singularity version 2.4 and newer. +<div align="center"> + <iframe width="250" height="50%" src="https://www.youtube.com/embed/m8llDjFuXlc" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe> + <iframe width="250" height="50%" src="https://www.youtube.com/embed/SJHizTjwyFk" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe> + <iframe width="250" height="50%" src="https://www.youtube.com/embed/97VuBVnfcwg" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe> + <iframe width="250" height="50%" src="https://www.youtube.com/embed/wGJnkRmW5iU" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe> +</div> + ## Using Docker Images Singularity can import, bootstrap, and even run Docker images directly from [Docker Hub][b]. You can easily run RHEL7 container like this: diff --git a/docs.it4i/software/tools/virtualization.md b/docs.it4i/software/tools/virtualization.md index 082680ebd88ccd7f1dee9c3bec20bd653412babc..60edc84bea697a62bbadda2f8972a76d2e28f390 100644 --- a/docs.it4i/software/tools/virtualization.md +++ b/docs.it4i/software/tools/virtualization.md @@ -27,10 +27,10 @@ Virtualization has also some drawbacks, it is not so easy to setup efficient sol Solution described in chapter [HOWTO][2] is suitable for single node tasks, does not introduce virtual machine clustering. !!! note - Please consider virtualization as last resort solution for your needs. + Consider virtualization as last resort solution for your needs. !!! warning - Please consult use of virtualization with IT4Innovation's support. + Consult use of virtualization with IT4Innovation's support. For running Windows application (when source code and Linux native application are not available) consider use of Wine, Windows compatibility layer. Many Windows applications can be run using Wine with less effort and better performance than when using virtualization. @@ -413,7 +413,7 @@ For Windows guests we recommend these options, life will be easier: $ qemu-system-x86_64 ... -localtime -usb -usbdevice tablet ``` -[1]: ../../salomon/job-submission-and-execution.md +[1]: ../../general/job-submission-and-execution.md [2]: #howto [3]: #snapshot-mode [4]: #virtual-machine-job-workflow diff --git a/docs.it4i/software/viz/NICEDCVsoftware.md b/docs.it4i/software/viz/NICEDCVsoftware.md new file mode 100644 index 0000000000000000000000000000000000000000..ecd2e279cfc9c051dead6fabbf86991fd6d1619d --- /dev/null +++ b/docs.it4i/software/viz/NICEDCVsoftware.md @@ -0,0 +1,173 @@ +# NICE DCV + +**Install NICE DCV 2016** (user-computer) + +* [Overview][a] +* [Linux download][b] +* [Windows download][c] + +**Install VPN client** [VPN Access][1] + +!!! note + Visualisation server is a compute node. You are not able to SSH with your private key. There are two solutions available to solve login issue. + +## Windows Users + +**Solution 1 - Add the public fingerprint** + +* Generate public fingerprint for your private key with PuTTYgen + + + +* Add this key to `~/.ssh/authorized_keys` on the cluster + + + +* Use your standard SSH key to connect to visualization server + +**Solution 2 - Copy private key from the cluster** + +* Install WinSCP client (user-computer) [Download WinSCP installer][d] +* Add credentials + + + +* Add path to key file + + + +* Save +* Copy `~/.ssh/id_rsa` to your computer +* Convert key to PuTTY format with PuTTYgen + + + +* Use this new ssh key to connect to visualization server + +**Install PuTTY** + +* [Overview][2] +* [Download PuTTY installer][e] +* Configure PuTTY + + + +* Add credentials and key file (create 3x sessions: **vizserv1.salomon.it4i.cz**, **vizserv2.salomon.it4i.cz**, **login1.salomon.it4i.cz**) +* Config SSH tunnels (user-computer) (for sessions vizserv1 and vizserv2 only) - ports: **5901**, **5902**, **7300-7305** + + + +* Save + +**Run VPN client** [VPN IT4Innovations][f] (user-computer) + +**Login to Salomon via PuTTY** (user-computer) + +```console +$ ssh salomon.it4i.cz +``` + +**Remove ~/.vnc/xstartup** + +**Run job** + +```console +$ qsub -I -q qviz -A OPEN-XX-XX -l select=1:ncpus=4:host=vizserv1,walltime=04:00:00 -N Vizserver1 +$ qsub -I -q qviz -A OPEN-XX-XX -l select=1:ncpus=4:host=vizserv2,walltime=04:00:00 -N Vizserver2 +``` + +**Run vncserver on vizservX** + +* check existing vncservers in /tmp/.X11-unix/X\* (rm /tmp/.X11-unix/X1 /tmp/.X11-unix/X2) +* vizserv1: vncserver :1 -geometry 2540x1380 -depth 24 +* vizserv2: vncserver :2 -geometry 2540x1380 -depth 24 +* set password for vncserver + +**Login to vizservX via PuTTY (vizserv1/vizserv2) with tunnels** (user-computer) + +**Run NICE DCV 2016** (user-computer) + +* vizserv1: localhost:5901 +* vizserv2: localhost:5902 +* fill password + + + + +**Check DCV status (Salomon-vizservX) in VNC window** + +**Run glxgears (Salomon-vizservX)** + + + +**LOGOUT FROM MENU: System->Logout** + +## Linux Users + +**Config SSH tunnels (user-computer)** + +* ports: 5901, 5902, 7300-7305 +* vizserv1 + +```console +$ ssh -i ~/salomon_key -TN -f user@vizserv1.salomon.it4i.cz -L 5901:localhost:5901 -L 7300:localhost:7300 -L 7301:localhost:7301 -L 7302:localhost:7302 -L 7303:localhost:7303 -L 7304:localhost:7304 -L 7305:localhost:7305 +``` + +* vizserv2 + +```console +$ ssh -i ~/salomon_key -TN -f user@vizserv2.salomon.it4i.cz -L 5902:localhost:5902 -L 7300:localhost:7300 -L 7301:localhost:7301 -L 7302:localhost:7302 -L 7303:localhost:7303 -L 7304:localhost:7304 -L 7305:localhost:7305 +``` + +**Run VPN client** [VPN IT4Innovations][f] (user-computer) + +**Login to Salomon** (user-computer) + +```console +$ ssh salomon.it4i.cz +``` + +**Remove ~/.vnc/xstartup** + +**Run job** + +```console +$ qsub -I -q qviz -A OPEN-XX-XX -l select=1:ncpus=4:host=vizserv1,walltime=04:00:00 -N Vizserver1 +$ qsub -I -q qviz -A OPEN-XX-XX -l select=1:ncpus=4:host=vizserv2,walltime=04:00:00 -N Vizserver2 +``` + +**Run vncserver on vizservX** + +* check existing vncservers in /tmp/.X11-unix/X\* (rm /tmp/.X11-unix/X1 /tmp/.X11-unix/X2) +* vizserv1: vncserver :1 -geometry 2540x1380 -depth 24 +* vizserv2: vncserver :2 -geometry 2540x1380 -depth 24 +* set password for vncserver + +**Run SSH (vizserv1/vizserv2) with tunnels** (user-computer) + +**Run NICE DCV 2016** (user-computer) + +* vizserv1: localhost:5901 +* vizserv2: localhost:5902 +* fill password + + + + +**Check DCV status in VNC window** + +**Run glxgears** + + + +**LOGOUT FROM MENU: System->Logout** + +[1]: ../../general/accessing-the-clusters/vpn-access.md +[2]: ../../general/accessing-the-clusters/shell-access-and-data-transfer/putty.md + +[a]: https://www.nice-software.com/download/nice-dcv-2016 +[b]: http://www.nice-software.com/storage/nice-dcv/2016.0/endstation/linux/nice-dcv-endstation-2016.0-17066.run +[c]: http://www.nice-software.com/storage/nice-dcv/2016.0/endstation/win/nice-dcv-endstation-2016.0-17066-Release.msi +[d]: https://winscp.net/download/WinSCP-5.13.3-Setup.exe +[e]: https://the.earth.li/~sgtatham/putty/latest/w64/putty-64bit-0.70-installer.msi +[f]: https://vpn.it4i.cz/user diff --git a/docs.it4i/software/viz/openfoam.md b/docs.it4i/software/viz/openfoam.md index 43b143acb01a7d1e87ecee4c13b13f537cab3c40..bb947cfe6416a32ce8f5b44abf64f76f224eeae0 100644 --- a/docs.it4i/software/viz/openfoam.md +++ b/docs.it4i/software/viz/openfoam.md @@ -55,7 +55,7 @@ $ source $FOAM_BASHRC ``` !!! note - Please load correct module with your requirements “compiler - GCC/ICC, precision - DP/SP”. + Load correct module with your requirements “compiler - GCC/ICC, precision - DP/SP”. Create a project directory within the $HOME/OpenFOAM directory named \<USER\>-\<OFversion\> and create a directory named run within it, e.g. by typing: @@ -228,7 +228,7 @@ $ wmake ``` [1]: ../../environment-and-modules.md -[2]: ../../anselm/job-submission-and-execution.md +[2]: ../../general/job-submission-and-execution.md [a]: http://www.openfoam.com/ [b]: http://www.openfoam.com/about diff --git a/docs.it4i/software/viz/paraview.md b/docs.it4i/software/viz/paraview.md index 20dd88a98bd5155a8fe7e7c2dcc991b33bcf0aa7..6e40e462ab4dc41b2f072f19b4a07193fd7a5aef 100644 --- a/docs.it4i/software/viz/paraview.md +++ b/docs.it4i/software/viz/paraview.md @@ -85,7 +85,7 @@ You can now use Parallel ParaView. Remember to close the interactive session after you finish working with ParaView server, as it will remain launched even after your client is disconnected and will continue to consume resources. -[1]: ../../salomon/job-submission-and-execution.md +[1]: ../../general/job-submission-and-execution.md [a]: http://www.paraview.org/ [b]: http://paraview.org/paraview/resources/software.php diff --git a/mkdocs.yml b/mkdocs.yml index 8adb490494972af56d20118cea0bfa13858f4e35..399cbe036ac15a0eb746f6ea370221b4c1bf4e82 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -44,9 +44,15 @@ nav: - General: - Home: index.md - Obtaining Login Credentials: general/obtaining-login-credentials/obtaining-login-credentials.md + - Accessing the Clusters: general/shell-and-data-access.md - Applying for Resources: general/applying-for-resources.md - Certificates FAQ: general/obtaining-login-credentials/certificates-faq.md - - Resource Allocation and Job Execution: general/resource_allocation_and_job_execution.md + - Resource Allocation and Job Execution: + - Introduction: general/resource_allocation_and_job_execution.md + - Resource Allocation Policy: general/resources-allocation-policy.md + - Job Priority: general/job-priority.md + - Job Submission and Execution: general/job-submission-and-execution.md + - Capacity Computing: general/capacity-computing.md - Connect to the Clusters: - OpenSSH Keys (UNIX): general/accessing-the-clusters/shell-access-and-data-transfer/ssh-keys.md - PuTTY (Windows): general/accessing-the-clusters/shell-access-and-data-transfer/putty.md @@ -55,35 +61,25 @@ nav: - VPN Access: general/accessing-the-clusters/vpn-access.md - PRACE User Support: prace.md - API Documentation: apiv1.md - - Salomon Upgrade: salomon-upgrade.md - - Salomon: - - Introduction: salomon/introduction.md - - Hardware Overview: salomon/hardware-overview.md - - Accessing the Cluster: salomon/shell-and-data-access.md - - Resource Allocation and Job Execution: - - Resources Allocation Policy: salomon/resources-allocation-policy.md - - Job Scheduling: salomon/job-priority.md - - Job Submission and Execution: salomon/job-submission-and-execution.md - - Capacity Computing: salomon/capacity-computing.md - - Compute Nodes: salomon/compute-nodes.md - - Network: - - InfiniBand Network: salomon/network.md - - IB Single-Plane Topology: salomon/ib-single-plane-topology.md - - 7D Enhanced Hypercube: salomon/7d-enhanced-hypercube.md - - Storage: salomon/storage.md - - Visualization Servers: salomon/visualization.md - - Anselm: - - Introduction: anselm/introduction.md - - Hardware Overview: anselm/hardware-overview.md - - Accessing the Cluster: anselm/shell-and-data-access.md - - Resource Allocation and Job Execution: - - Resource Allocation Policy: anselm/resources-allocation-policy.md - - Job Priority: anselm/job-priority.md - - Job Submission and Execution: anselm/job-submission-and-execution.md - - Capacity Computing: anselm/capacity-computing.md - - Compute Nodes: anselm/compute-nodes.md - - Storage: anselm/storage.md - - Network: anselm/network.md + - Clusters: + - Anselm: + - Introduction: anselm/introduction.md + - Hardware Overview: anselm/hardware-overview.md + - Compute Nodes: anselm/compute-nodes.md + - Storage: anselm/storage.md + - Network: anselm/network.md + - Salomon: + - Introduction: salomon/introduction.md + - Hardware Overview: salomon/hardware-overview.md + - Compute Nodes: salomon/compute-nodes.md + - Network: + - InfiniBand Network: salomon/network.md + - IB Single-Plane Topology: salomon/ib-single-plane-topology.md + - 7D Enhanced Hypercube: salomon/7d-enhanced-hypercube.md + - Storage: salomon/storage.md + - Visualization Servers: salomon/visualization.md + - NVIDIA DGX-2: + - Introduction: dgx2/introduction.md - Software: - Environment and Modules: environment-and-modules.md - Modules: @@ -91,10 +87,10 @@ nav: - Intel Xeon Phi Environment: software/mic/mic_environment.md - Modules Matrix: modules-matrix.md - Job Features: job-features.md + - Available Anselm Modules: modules-anselm.md - Available Salomon Modules: modules-salomon.md - Available Salomon Modules on UV: modules-salomon-uv.md - Available Salomon Modules on PHI Cards: modules-salomon-phi.md - - Available Anselm Modules: modules-anselm.md - ISV Licenses: software/isv_licenses.md - Bioinformatics: - Bioinformatics Applications: software/bio/bioinformatics.md @@ -127,7 +123,7 @@ nav: - Valgrind: software/debuggers/valgrind.md - Vampir: software/debuggers/vampir.md - GPU: - - NVIDIA CUDA: anselm/software/nvidia-cuda.md + - NVIDIA CUDA: software/nvidia-cuda.md - Intel: - Intel Suite: - Introduction: software/intel/intel-suite/intel-parallel-studio-introduction.md @@ -200,6 +196,7 @@ nav: - OpenFOAM: software/viz/openfoam.md - ParaView: software/viz/paraview.md - In situ: software/viz/insitu.md + - NICE DCV: software/viz/NICEDCVsoftware.md - PBS Pro Documentation: pbspro.md extra: