<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://hpc.mediawiki.hull.ac.uk/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Seif</id>
	<title>HPC - User contributions [en-gb]</title>
	<link rel="self" type="application/atom+xml" href="https://hpc.mediawiki.hull.ac.uk/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Seif"/>
	<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/Special:Contributions/Seif"/>
	<updated>2026-05-27T14:37:25Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.31.16</generator>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications/HyPhy&amp;diff=2319</id>
		<title>Applications/HyPhy</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications/HyPhy&amp;diff=2319"/>
		<updated>2018-03-26T14:57:14Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Batch Script */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Application Details==&lt;br /&gt;
*Description: HyPhy (Hypothesis Testing using Phylogenies) is an open-source software package for the analysis of genetic sequences (in particular the inference of natural selection) using techniques in phylogenetics, molecular evolution, and machine learning &lt;br /&gt;
*Version: 2.2.7&lt;br /&gt;
*Module: hyphy/2.2.7/gcc-6.3.0/openmpi-2.0.2&lt;br /&gt;
*Licence:  Open source &lt;br /&gt;
==Usage Examples==&lt;br /&gt;
Currently its available only after through interactive session. its not possible to run it on login nodes of Viper&lt;br /&gt;
===Module===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #000000; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
[username@c001 ~]$ module add hyphy/2.2.7/gcc-6.3.0/openmpi-2.0.2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
or&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #000000; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
[username@c001 ~]$ module add hyphy/2.2.7/gcc-6.3.0/openmpi-2.0.2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Description===&lt;br /&gt;
&lt;br /&gt;
There are two binaries available.&lt;br /&gt;
* HYPHYMP is openMP implementation that could utilise more than 1 processors.&lt;br /&gt;
* HYPHYMPI is MPI implementation that could run on single or multiple nodes.&lt;br /&gt;
you can use the openmp version in side an interactive session to define your input arrguments that you can run later as batch job below&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #000000; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
[username@c001 ~]$ interactive&lt;br /&gt;
[username@c001 ~]$ HYPHYMP&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Batch Script===&lt;br /&gt;
&lt;br /&gt;
once you know the input arguments (sections) that you have made to HYPHY using interactive session. you can then create a submission script. below is an example of HYPHY slurm submission script&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #C8C8C8; color: black; border: 2px solid #C8C8C8; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
&lt;br /&gt;
#SBATCH -J amphibio_meme          # Job Name&lt;br /&gt;
#SBATCH -N 1                      # Number of  Nodes to use&lt;br /&gt;
#SBATCH  -n 28                    # Number of CPUs&lt;br /&gt;
#SBATCH -o %N.%j.%a.out           # Output file name&lt;br /&gt;
#SBATCH -e %N.%j.%a.err           # Error file name&lt;br /&gt;
#SBATCH -p compute                # Partition to run on&lt;br /&gt;
#SBATCH --exclusive               # Request exclusive access to a node (all 28 cores, 128GB of RAM)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
module load hyphy/2.2.7/gcc-6.3.0/openmpi-2.0.2&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(echo &amp;quot;10&amp;quot;; echo &amp;quot;4&amp;quot;; echo &amp;quot;2&amp;quot;; echo &amp;quot;/pass/to/input1/example.fas&amp;quot;; echo &amp;quot;/pass/to/input2/example.tre&amp;quot;; echo &amp;quot;1&amp;quot;; echo &amp;quot;d&amp;quot;) | HYPHYMP&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications/HyPhy&amp;diff=2318</id>
		<title>Applications/HyPhy</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications/HyPhy&amp;diff=2318"/>
		<updated>2018-03-26T14:48:51Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Batch Script */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Application Details==&lt;br /&gt;
*Description: HyPhy (Hypothesis Testing using Phylogenies) is an open-source software package for the analysis of genetic sequences (in particular the inference of natural selection) using techniques in phylogenetics, molecular evolution, and machine learning &lt;br /&gt;
*Version: 2.2.7&lt;br /&gt;
*Module: hyphy/2.2.7/gcc-6.3.0/openmpi-2.0.2&lt;br /&gt;
*Licence:  Open source &lt;br /&gt;
==Usage Examples==&lt;br /&gt;
Currently its available only after through interactive session. its not possible to run it on login nodes of Viper&lt;br /&gt;
===Module===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #000000; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
[username@c001 ~]$ module add hyphy/2.2.7/gcc-6.3.0/openmpi-2.0.2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
or&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #000000; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
[username@c001 ~]$ module add hyphy/2.2.7/gcc-6.3.0/openmpi-2.0.2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Description===&lt;br /&gt;
&lt;br /&gt;
There are two binaries available.&lt;br /&gt;
* HYPHYMP is openMP implementation that could utilise more than 1 processors.&lt;br /&gt;
* HYPHYMPI is MPI implementation that could run on single or multiple nodes.&lt;br /&gt;
you can use the openmp version in side an interactive session to define your input arrguments that you can run later as batch job below&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #000000; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
[username@c001 ~]$ interactive&lt;br /&gt;
[username@c001 ~]$ HYPHYMP&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Batch Script===&lt;br /&gt;
&lt;br /&gt;
once you know the input arguments (sections) that you have made to HYPHY using interactive session. you can then create a submission script. below is an example of HYPHY slurm submission script&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #C8C8C8; color: black; border: 2px solid #C8C8C8; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
&lt;br /&gt;
#SBATCH -J amphibio_meme      # Job Name&lt;br /&gt;
#SBATCH -N 1                      # Number of  Nodes to use&lt;br /&gt;
#SBATCH  -n 28                    # Number of CPUs&lt;br /&gt;
#SBATCH -o %N.%j.%a.out           # Output file name&lt;br /&gt;
#SBATCH -e %N.%j.%a.err           # Error file name&lt;br /&gt;
#SBATCH -p compute                # Partition to run on&lt;br /&gt;
#SBATCH --exclusive         # Request exclusive access to a node (all 28 cores, 128GB of RAM)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
module load hyphy/2.2.7/gcc-6.3.0/openmpi-2.0.2&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(echo &amp;quot;10&amp;quot;; echo &amp;quot;4&amp;quot;; echo &amp;quot;2&amp;quot;; echo &amp;quot;/pass/to/input1/example.fas&amp;quot;; echo &amp;quot;/pass/to/input2/example.tre&amp;quot;; echo &amp;quot;1&amp;quot;; echo &amp;quot;d&amp;quot;) | HYPHYMP&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications/HyPhy&amp;diff=2317</id>
		<title>Applications/HyPhy</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications/HyPhy&amp;diff=2317"/>
		<updated>2018-03-26T14:47:07Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Description */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Application Details==&lt;br /&gt;
*Description: HyPhy (Hypothesis Testing using Phylogenies) is an open-source software package for the analysis of genetic sequences (in particular the inference of natural selection) using techniques in phylogenetics, molecular evolution, and machine learning &lt;br /&gt;
*Version: 2.2.7&lt;br /&gt;
*Module: hyphy/2.2.7/gcc-6.3.0/openmpi-2.0.2&lt;br /&gt;
*Licence:  Open source &lt;br /&gt;
==Usage Examples==&lt;br /&gt;
Currently its available only after through interactive session. its not possible to run it on login nodes of Viper&lt;br /&gt;
===Module===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #000000; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
[username@c001 ~]$ module add hyphy/2.2.7/gcc-6.3.0/openmpi-2.0.2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
or&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #000000; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
[username@c001 ~]$ module add hyphy/2.2.7/gcc-6.3.0/openmpi-2.0.2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Description===&lt;br /&gt;
&lt;br /&gt;
There are two binaries available.&lt;br /&gt;
* HYPHYMP is openMP implementation that could utilise more than 1 processors.&lt;br /&gt;
* HYPHYMPI is MPI implementation that could run on single or multiple nodes.&lt;br /&gt;
you can use the openmp version in side an interactive session to define your input arrguments that you can run later as batch job below&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #000000; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
[username@c001 ~]$ interactive&lt;br /&gt;
[username@c001 ~]$ HYPHYMP&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Batch Script===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #C8C8C8; color: black; border: 2px solid #C8C8C8; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
&lt;br /&gt;
#SBATCH -J amphibio_meme      # Job Name&lt;br /&gt;
#SBATCH -N 1                      # Number of  Nodes to use&lt;br /&gt;
#SBATCH  -n 28                    # Number of CPUs&lt;br /&gt;
#SBATCH -o %N.%j.%a.out           # Output file name&lt;br /&gt;
#SBATCH -e %N.%j.%a.err           # Error file name&lt;br /&gt;
#SBATCH -p compute                # Partition to run on&lt;br /&gt;
#SBATCH --exclusive         # Request exclusive access to a node (all 28 cores, 128GB of RAM)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
module load hyphy/2.2.7/gcc-6.3.0/openmpi-2.0.2&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(echo &amp;quot;10&amp;quot;; echo &amp;quot;4&amp;quot;; echo &amp;quot;2&amp;quot;; echo &amp;quot;/pass/to/input1/example.fas&amp;quot;; echo &amp;quot;/pass/to/input2/example.tre&amp;quot;; echo &amp;quot;1&amp;quot;; echo &amp;quot;d&amp;quot;) | HYPHYMP&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications/HyPhy&amp;diff=2316</id>
		<title>Applications/HyPhy</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications/HyPhy&amp;diff=2316"/>
		<updated>2018-03-26T14:44:26Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Description */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Application Details==&lt;br /&gt;
*Description: HyPhy (Hypothesis Testing using Phylogenies) is an open-source software package for the analysis of genetic sequences (in particular the inference of natural selection) using techniques in phylogenetics, molecular evolution, and machine learning &lt;br /&gt;
*Version: 2.2.7&lt;br /&gt;
*Module: hyphy/2.2.7/gcc-6.3.0/openmpi-2.0.2&lt;br /&gt;
*Licence:  Open source &lt;br /&gt;
==Usage Examples==&lt;br /&gt;
Currently its available only after through interactive session. its not possible to run it on login nodes of Viper&lt;br /&gt;
===Module===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #000000; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
[username@c001 ~]$ module add hyphy/2.2.7/gcc-6.3.0/openmpi-2.0.2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
or&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #000000; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
[username@c001 ~]$ module add hyphy/2.2.7/gcc-6.3.0/openmpi-2.0.2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Description===&lt;br /&gt;
&lt;br /&gt;
There are two binaries available.&lt;br /&gt;
* HYPHYMP is openMP implementation that could utilise more than 1 processors.&lt;br /&gt;
* HYPHYMPI is MPI implementation that could run on single or multiple nodes.&lt;br /&gt;
&lt;br /&gt;
===Batch Script===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #C8C8C8; color: black; border: 2px solid #C8C8C8; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
&lt;br /&gt;
#SBATCH -J amphibio_meme      # Job Name&lt;br /&gt;
#SBATCH -N 1                      # Number of  Nodes to use&lt;br /&gt;
#SBATCH  -n 28                    # Number of CPUs&lt;br /&gt;
#SBATCH -o %N.%j.%a.out           # Output file name&lt;br /&gt;
#SBATCH -e %N.%j.%a.err           # Error file name&lt;br /&gt;
#SBATCH -p compute                # Partition to run on&lt;br /&gt;
#SBATCH --exclusive         # Request exclusive access to a node (all 28 cores, 128GB of RAM)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
module load hyphy/2.2.7/gcc-6.3.0/openmpi-2.0.2&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(echo &amp;quot;10&amp;quot;; echo &amp;quot;4&amp;quot;; echo &amp;quot;2&amp;quot;; echo &amp;quot;/pass/to/input1/example.fas&amp;quot;; echo &amp;quot;/pass/to/input2/example.tre&amp;quot;; echo &amp;quot;1&amp;quot;; echo &amp;quot;d&amp;quot;) | HYPHYMP&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2314</id>
		<title>Training/Matlab-Viper-plugin</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2314"/>
		<updated>2018-03-16T16:25:09Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Batch job */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Matlab viper plugin=&lt;br /&gt;
please note this page is still under development. &lt;br /&gt;
==Introduction==&lt;br /&gt;
There is a feature in Matlab that enables you to submit jobs to clusters directly from your Matlab client (normal desktop Matlab). we were able to develop Matlab-Viper plugin that utilise this feature and integrate Matlab with viper to enable all our Matlab users to submit some Matlab jobs to viper easily without the need to know much about HPC or Linux. Everything could be done from the normal desktop Matlab version that many users are already using. &lt;br /&gt;
This guide should explain more on how to use viper through the Matlab viper plugin. In-general the toolbox that could utilise such integration is the Matlab parallel computing toolbox. we will try to explain the main concepts here and point you to some Mathworks tutorial that you could use and try on viper.&lt;br /&gt;
*If you don't have Matlab-Viper plugin installed and tested on your Matlab contact help@hull.ac.uk or viper@hull.ac.uk and we will help you to install it and configure it.&lt;br /&gt;
*This is only available for Matlab 2017a , we will try to support it for all the upcoming versions starting from 2017a. if you have a special use case that requires the usage of older version you could check the possibility of creating this plugin for it by emailing us : viper@hull.ac.uk&lt;br /&gt;
* This link https://uk.mathworks.com/products/ineligible_programs.html  shows a list of Ineligible programs that couldn't run on Matlab distributed computing server through this plugin.&lt;br /&gt;
&lt;br /&gt;
==Matlab to Viper==&lt;br /&gt;
===Main concepts===&lt;br /&gt;
Before we start we would like to introduce to you some basic concepts in order to be able to use this plugin efficiently.&lt;br /&gt;
&lt;br /&gt;
==== This plugin works by connecting 2 components together:====&lt;br /&gt;
#'''Client:'''&lt;br /&gt;
#:The client could run on your laptop or desktop computer. This is where you will run Matlab commands and submit your jobs.&lt;br /&gt;
#'''Worker:'''&lt;br /&gt;
#:The worker is and instance of Matlab distributed computing enviornement that runs on Viper in order to perform a calculation for one of the clients. you could submit batch jobs from your clients that runs some simulations in parallel using functions like parfor, you could also run normal Matlab code on it.&lt;br /&gt;
&lt;br /&gt;
==== limitations ====&lt;br /&gt;
submitting a job to Viper has a a lot of overhead. if you are running a small computing task it might take even longer to run on the cluster as there are a lot of time will be lost in communication and transferring your data to Viper then in sometimes your job could be queued and start running in a later time. however in many other cases it will show you a speedup and as a minimum you will be able to free up your client from doing this computation.&lt;br /&gt;
===Run Matlab Job===&lt;br /&gt;
using parallel tool box, you can run your Matlab code on viper using 2 modes:&lt;br /&gt;
===='''Batch job'''====&lt;br /&gt;
*This is the main way to utilize the Matlab-viper-plugin. This submit your job to Viper queuing system (SLURM) and send back the results to your client once everything is done.  &lt;br /&gt;
*Very useful for time consuming job that need hours or even days to finish. you will submit your job and you don't need to keep your Matlab running or even the whole computer could be turned off as all your simulation will be running on Viper.&lt;br /&gt;
* if you want to know more about the job life cycles and different stages https://uk.mathworks.com/help/distcomp/how-parallel-computing-products-run-a-job.html#f3-11033 &lt;br /&gt;
*'''Create Matlab script'''&lt;br /&gt;
*:this can be either a normal serial script or a parallel one that uses functions like parfor. if you have an exisiting script make sure that the following is done before running it:&lt;br /&gt;
** remove any parpool commands if any&lt;br /&gt;
**modify the file paths if any is used in your script. consider that all your files will move to the cluster and run *:there so if your script contains a filepath that exisits only on your client it will not be able to find it there. &lt;br /&gt;
*:example: &lt;br /&gt;
*:use &lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; load  ('INPUT_FILE_NAME') &amp;lt;/pre&amp;gt;&lt;br /&gt;
::instead of&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; load ('/INPUT_DIRECTORY_NAME/INPUT_FILE_NAME')&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*'''Batch command''': This command begins an automated process that connects to the cluster, submits a job to the scheduler, and initializes MDCS. it will ask you to enter your user name and password. you must also make sure that you are using on the campus network or while using VPN&lt;br /&gt;
*For example if you submit a script to Viper with one input file:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; viper = parcluster()&lt;br /&gt;
 job = viper.batch('&amp;lt;your script&amp;gt;', 'pool', 9, 'AttachedFiles', '&amp;lt;name of input file&amp;gt;')&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
:*Specify the name of your script without the “m” prefix. For instance use test, and not test.m&lt;br /&gt;
:*The argument pool specified the number of workers you need for execution of the script. Note that the MATLAB adds one worker to the number of workers you specified in pool. So for instance if you specify 9 workers in the pool, then MATLAB will use 10 workers.&lt;br /&gt;
:*The 4th Argument 'AttachedFiles' highlight that we are going to attache input file/files to this batch job. you can send multiple files by including them in braces. For Example&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; job = viper.batch('test', 'pool', 9, 'AttachedFiles', {input1, input2})&amp;lt;/pre&amp;gt;&lt;br /&gt;
*When you finish working with this job and get all your outputs back. permanently delete its data and remove its reference from the workspace:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; &lt;br /&gt;
delete(job)&lt;br /&gt;
clear job&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
== useful commands ==&lt;br /&gt;
below is some useful commands and its detailed offical documentation&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
| style=&amp;quot;width:25%&amp;quot; | &amp;lt;Strong&amp;gt;Training Area&amp;lt;/Strong&amp;gt;&lt;br /&gt;
| style=&amp;quot;width:75%&amp;quot; | &amp;lt;Strong&amp;gt;Description&amp;lt;/Strong&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| [[https://uk.mathworks.com/help/distcomp/getdebuglog.html| getDebugLog ]]&lt;br /&gt;
| shows a details log that is very useful in debugging the job submission process&lt;br /&gt;
|-&lt;br /&gt;
| [[https://uk.mathworks.com/help/distcomp/job-monitor.html/XQuartz| Job Monitor]] &lt;br /&gt;
| enable you to monitor all your jobs and its status&lt;br /&gt;
|-&lt;br /&gt;
| [[https://uk.mathworks.com/help/distcomp/index.html| Parallel Computing Toolbox]]&lt;br /&gt;
| This contains all the details of the Parallel Computing toolbox.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Parallel pool====&lt;br /&gt;
* Another mode of operation that is easier if you are testing piece of code or running a small job that you expect to finish in few minutes. &lt;br /&gt;
* This requires a running connection to be in place between your computer and viper. at any point you shutdown your Matlab/Wifi or even your laptop everything will be lost and you will need to rerun your code/simulation.&lt;br /&gt;
&lt;br /&gt;
== Further Information ==&lt;br /&gt;
&lt;br /&gt;
* [https://matlabacademy.mathworks.com/ Matlab online courses]&lt;br /&gt;
* [https://uk.mathworks.com/help/distcomp/batch.html/ Batch command documentation]&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_home.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; | &lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;br /&gt;
* [[Programming|Programming support]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2313</id>
		<title>Training/Matlab-Viper-plugin</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2313"/>
		<updated>2018-03-16T12:01:43Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Batch job */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Matlab viper plugin=&lt;br /&gt;
please note this page is still under development. &lt;br /&gt;
==Introduction==&lt;br /&gt;
There is a feature in Matlab that enables you to submit jobs to clusters directly from your Matlab client (normal desktop Matlab). we were able to develop Matlab-Viper plugin that utilise this feature and integrate Matlab with viper to enable all our Matlab users to submit some Matlab jobs to viper easily without the need to know much about HPC or Linux. Everything could be done from the normal desktop Matlab version that many users are already using. &lt;br /&gt;
This guide should explain more on how to use viper through the Matlab viper plugin. In-general the toolbox that could utilise such integration is the Matlab parallel computing toolbox. we will try to explain the main concepts here and point you to some Mathworks tutorial that you could use and try on viper.&lt;br /&gt;
*If you don't have Matlab-Viper plugin installed and tested on your Matlab contact help@hull.ac.uk or viper@hull.ac.uk and we will help you to install it and configure it.&lt;br /&gt;
*This is only available for Matlab 2017a , we will try to support it for all the upcoming versions starting from 2017a. if you have a special use case that requires the usage of older version you could check the possibility of creating this plugin for it by emailing us : viper@hull.ac.uk&lt;br /&gt;
* This link https://uk.mathworks.com/products/ineligible_programs.html  shows a list of Ineligible programs that couldn't run on Matlab distributed computing server through this plugin.&lt;br /&gt;
&lt;br /&gt;
==Matlab to Viper==&lt;br /&gt;
===Main concepts===&lt;br /&gt;
Before we start we would like to introduce to you some basic concepts in order to be able to use this plugin efficiently.&lt;br /&gt;
&lt;br /&gt;
==== This plugin works by connecting 2 components together:====&lt;br /&gt;
#'''Client:'''&lt;br /&gt;
#:The client could run on your laptop or desktop computer. This is where you will run Matlab commands and submit your jobs.&lt;br /&gt;
#'''Worker:'''&lt;br /&gt;
#:The worker is and instance of Matlab distributed computing enviornement that runs on Viper in order to perform a calculation for one of the clients. you could submit batch jobs from your clients that runs some simulations in parallel using functions like parfor, you could also run normal Matlab code on it.&lt;br /&gt;
&lt;br /&gt;
==== limitations ====&lt;br /&gt;
submitting a job to Viper has a a lot of overhead. if you are running a small computing task it might take even longer to run on the cluster as there are a lot of time will be lost in communication and transferring your data to Viper then in sometimes your job could be queued and start running in a later time. however in many other cases it will show you a speedup and as a minimum you will be able to free up your client from doing this computation.&lt;br /&gt;
===Run Matlab Job===&lt;br /&gt;
using parallel tool box, you can run your Matlab code on viper using 2 modes:&lt;br /&gt;
===='''Batch job'''====&lt;br /&gt;
*This is the main way to utilize the Matlab-viper-plugin. This submit your job to Viper queuing system (SLURM) and send back the results to your client once everything is done.  &lt;br /&gt;
*Very useful for time consuming job that need hours or even days to finish. you will submit your job and you don't need to keep your Matlab running or even the whole computer could be turned off as all your simulation will be running on Viper.&lt;br /&gt;
* if you want to know more about the job life cycles and different stages https://uk.mathworks.com/help/distcomp/how-parallel-computing-products-run-a-job.html#f3-11033 &lt;br /&gt;
*'''Create Matlab script'''&lt;br /&gt;
*:this can be either a normal serial script or a parallel one that uses functions like parfor. if you have an exisiting script make sure that the following is done before running it:&lt;br /&gt;
** remove any parpool commands if any&lt;br /&gt;
**modify the file paths if any is used in your script. consider that all your files will move to the cluster and run *:there so if your script contains a filepath that exisits only on your client it will not be able to find it there. &lt;br /&gt;
*:example: &lt;br /&gt;
*:use &lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; load  ('INPUT_FILE_NAME') &amp;lt;/pre&amp;gt;&lt;br /&gt;
::instead of&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; load ('/INPUT_DIRECTORY_NAME/INPUT_FILE_NAME')&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*'''Batch command''': This command begins an automated process that connects to the cluster, submits a job to the scheduler, and initializes MDCS. it will ask you to enter your user name and password. you must also make sure that you are using on the campus network or while using VPN&lt;br /&gt;
*For example if you submit a script to Viper with one input file:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; viper = parcluster()&lt;br /&gt;
 job = viper.batch('&amp;lt;your script&amp;gt;', 'pool', 9, 'AttachedFiles', '&amp;lt;name of input file&amp;gt;')&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
:*Specify the name of your script without the “m” prefix. For instance use test, and not test.m&lt;br /&gt;
:*The argument pool specified the number of workers you need for execution of the script. Note that the MATLAB adds one worker to the number of workers you specified in pool. So for instance if you specify 9 workers in the pool, then MATLAB will use 10 workers.&lt;br /&gt;
:*The 4th Argument 'AttachedFiles' highlight that we are going to attache input file/files to this batch job. you can send multiple files by including them in braces. For Example&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; job = viper.batch('test', 'pool', 9, 'AttachedFiles', {input1, input2})&amp;lt;/pre&amp;gt;&lt;br /&gt;
*When you finish working with this job and get all your outputs back. permanently delete its data and remove its reference from the workspace:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; &lt;br /&gt;
delete(job)&lt;br /&gt;
clear job&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Parallel pool====&lt;br /&gt;
* Another mode of operation that is easier if you are testing piece of code or running a small job that you expect to finish in few minutes. &lt;br /&gt;
* This requires a running connection to be in place between your computer and viper. at any point you shutdown your Matlab/Wifi or even your laptop everything will be lost and you will need to rerun your code/simulation.&lt;br /&gt;
&lt;br /&gt;
== Further Information ==&lt;br /&gt;
&lt;br /&gt;
* [https://matlabacademy.mathworks.com/ Matlab online courses]&lt;br /&gt;
* [https://uk.mathworks.com/help/distcomp/batch.html/ Batch command documentation]&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_home.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; | &lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;br /&gt;
* [[Programming|Programming support]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2312</id>
		<title>Training/Matlab-Viper-plugin</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2312"/>
		<updated>2018-03-16T12:01:14Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Batch job */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Matlab viper plugin=&lt;br /&gt;
please note this page is still under development. &lt;br /&gt;
==Introduction==&lt;br /&gt;
There is a feature in Matlab that enables you to submit jobs to clusters directly from your Matlab client (normal desktop Matlab). we were able to develop Matlab-Viper plugin that utilise this feature and integrate Matlab with viper to enable all our Matlab users to submit some Matlab jobs to viper easily without the need to know much about HPC or Linux. Everything could be done from the normal desktop Matlab version that many users are already using. &lt;br /&gt;
This guide should explain more on how to use viper through the Matlab viper plugin. In-general the toolbox that could utilise such integration is the Matlab parallel computing toolbox. we will try to explain the main concepts here and point you to some Mathworks tutorial that you could use and try on viper.&lt;br /&gt;
*If you don't have Matlab-Viper plugin installed and tested on your Matlab contact help@hull.ac.uk or viper@hull.ac.uk and we will help you to install it and configure it.&lt;br /&gt;
*This is only available for Matlab 2017a , we will try to support it for all the upcoming versions starting from 2017a. if you have a special use case that requires the usage of older version you could check the possibility of creating this plugin for it by emailing us : viper@hull.ac.uk&lt;br /&gt;
* This link https://uk.mathworks.com/products/ineligible_programs.html  shows a list of Ineligible programs that couldn't run on Matlab distributed computing server through this plugin.&lt;br /&gt;
&lt;br /&gt;
==Matlab to Viper==&lt;br /&gt;
===Main concepts===&lt;br /&gt;
Before we start we would like to introduce to you some basic concepts in order to be able to use this plugin efficiently.&lt;br /&gt;
&lt;br /&gt;
==== This plugin works by connecting 2 components together:====&lt;br /&gt;
#'''Client:'''&lt;br /&gt;
#:The client could run on your laptop or desktop computer. This is where you will run Matlab commands and submit your jobs.&lt;br /&gt;
#'''Worker:'''&lt;br /&gt;
#:The worker is and instance of Matlab distributed computing enviornement that runs on Viper in order to perform a calculation for one of the clients. you could submit batch jobs from your clients that runs some simulations in parallel using functions like parfor, you could also run normal Matlab code on it.&lt;br /&gt;
&lt;br /&gt;
==== limitations ====&lt;br /&gt;
submitting a job to Viper has a a lot of overhead. if you are running a small computing task it might take even longer to run on the cluster as there are a lot of time will be lost in communication and transferring your data to Viper then in sometimes your job could be queued and start running in a later time. however in many other cases it will show you a speedup and as a minimum you will be able to free up your client from doing this computation.&lt;br /&gt;
===Run Matlab Job===&lt;br /&gt;
using parallel tool box, you can run your Matlab code on viper using 2 modes:&lt;br /&gt;
===='''Batch job'''====&lt;br /&gt;
*This is the main way to utilize the Matlab-viper-plugin. This submit your job to Viper queuing system (SLURM) and send back the results to your client once everything is done.  &lt;br /&gt;
*Very useful for time consuming job that need hours or even days to finish. you will submit your job and you don't need to keep your Matlab running or even the whole computer could be turned off as all your simulation will be running on Viper.&lt;br /&gt;
* if you want to know more about the job life cycles and different stages https://uk.mathworks.com/help/distcomp/how-parallel-computing-products-run-a-job.html#f3-11033 &lt;br /&gt;
*'''Create Matlab script'''&lt;br /&gt;
*:this can be either a normal serial script or a parallel one that uses functions like parfor. if you have an exisiting script make sure that the following is done before running it:&lt;br /&gt;
** remove any parpool commands if any&lt;br /&gt;
**modify the file paths if any is used in your script. consider that all your files will move to the cluster and run *:there so if your script contains a filepath that exisits only on your client it will not be able to find it there. &lt;br /&gt;
*:example: &lt;br /&gt;
*:use &lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; load  ('INPUT_FILE_NAME') &amp;lt;/pre&amp;gt;&lt;br /&gt;
::instead of&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; load ('/INPUT_DIRECTORY_NAME/INPUT_FILE_NAME')&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*'''Batch command''': This command begins an automated process that connects to the cluster, submits a job to the scheduler, and initializes MDCS. it will ask you to enter your user name and password. you must also make sure that you are using on the campus network or while using VPN&lt;br /&gt;
*For example if you submit a script to Viper with one input file:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; viper = parcluster()&lt;br /&gt;
 job = viper.batch('&amp;lt;your script&amp;gt;', 'pool', 9, 'AttachedFiles', '&amp;lt;name of input file&amp;gt;')&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
:*Specify the name of your script without the “m” prefix. For instance use test, and not test.m&lt;br /&gt;
:*The argument pool specified the number of workers you need for execution of the script. Note that the MATLAB adds one worker to the number of workers you specified in pool. So for instance if you specify 9 workers in the pool, then MATLAB will use 10 workers.&lt;br /&gt;
:*The 4th Argument 'AttachedFiles' highlight that we are going to attache input file/files to this batch job. you can send multiple files by including them in braces. For Example&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; job = viper.batch('test', 'pool', 9, 'AttachedFiles', {input1, input2})&amp;lt;/pre&amp;gt;&lt;br /&gt;
*after you finish working with this job and get all your outputs back. permanently delete its data and remove its reference from the workspace:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; &lt;br /&gt;
delete(job)&lt;br /&gt;
clear job&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Parallel pool====&lt;br /&gt;
* Another mode of operation that is easier if you are testing piece of code or running a small job that you expect to finish in few minutes. &lt;br /&gt;
* This requires a running connection to be in place between your computer and viper. at any point you shutdown your Matlab/Wifi or even your laptop everything will be lost and you will need to rerun your code/simulation.&lt;br /&gt;
&lt;br /&gt;
== Further Information ==&lt;br /&gt;
&lt;br /&gt;
* [https://matlabacademy.mathworks.com/ Matlab online courses]&lt;br /&gt;
* [https://uk.mathworks.com/help/distcomp/batch.html/ Batch command documentation]&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_home.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; | &lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;br /&gt;
* [[Programming|Programming support]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2239</id>
		<title>Training/Matlab-Viper-plugin</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2239"/>
		<updated>2018-02-16T15:26:07Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Parallel pool */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Matlab viper plugin=&lt;br /&gt;
please note this page is still under development. &lt;br /&gt;
==Introduction==&lt;br /&gt;
There is a feature in Matlab that enables you to submit jobs to clusters directly from your Matlab client (normal desktop Matlab). we were able to develop Matlab-Viper plugin that utilise this feature and integrate Matlab with viper to enable all our Matlab users to submit some Matlab jobs to viper easily without the need to know much about HPC or Linux. Everything could be done from the normal desktop Matlab version that many users are already using. &lt;br /&gt;
This guide should explain more on how to use viper through the Matlab viper plugin. In-general the toolbox that could utilise such integration is the Matlab parallel computing toolbox. we will try to explain the main concepts here and point you to some Mathworks tutorial that you could use and try on viper.&lt;br /&gt;
*If you don't have Matlab-Viper plugin installed and tested on your Matlab contact help@hull.ac.uk or viper@hull.ac.uk and we will help you to install it and configure it.&lt;br /&gt;
*This is only available for Matlab 2017a , we will try to support it for all the upcoming versions starting from 2017a. if you have a special use case that requires the usage of older version you could check the possibility of creating this plugin for it by emailing us : viper@hull.ac.uk&lt;br /&gt;
* This link https://uk.mathworks.com/products/ineligible_programs.html  shows a list of Ineligible programs that couldn't run on Matlab distributed computing server through this plugin.&lt;br /&gt;
&lt;br /&gt;
==Matlab to Viper==&lt;br /&gt;
===Main concepts===&lt;br /&gt;
Before we start we would like to introduce to you some basic concepts in order to be able to use this plugin efficiently.&lt;br /&gt;
&lt;br /&gt;
==== This plugin works by connecting 2 components together:====&lt;br /&gt;
#'''Client:'''&lt;br /&gt;
#:The client could run on your laptop or desktop computer. This is where you will run Matlab commands and submit your jobs.&lt;br /&gt;
#'''Worker:'''&lt;br /&gt;
#:The worker is and instance of Matlab distributed computing enviornement that runs on Viper in order to perform a calculation for one of the clients. you could submit batch jobs from your clients that runs some simulations in parallel using functions like parfor, you could also run normal Matlab code on it.&lt;br /&gt;
&lt;br /&gt;
==== limitations ====&lt;br /&gt;
submitting a job to Viper has a a lot of overhead. if you are running a small computing task it might take even longer to run on the cluster as there are a lot of time will be lost in communication and transferring your data to Viper then in sometimes your job could be queued and start running in a later time. however in many other cases it will show you a speedup and as a minimum you will be able to free up your client from doing this computation.&lt;br /&gt;
===Run Matlab Job===&lt;br /&gt;
using parallel tool box, you can run your Matlab code on viper using 2 modes:&lt;br /&gt;
===='''Batch job'''====&lt;br /&gt;
*This is the main way to utilize the Matlab-viper-plugin. This submit your job to Viper queuing system (SLURM) and send back the results to your client once everything is done.  &lt;br /&gt;
*Very useful for time consuming job that need hours or even days to finish. you will submit your job and you don't need to keep your Matlab running or even the whole computer could be turned off as all your simulation will be running on Viper.&lt;br /&gt;
* if you want to know more about the job life cycles and different stages https://uk.mathworks.com/help/distcomp/how-parallel-computing-products-run-a-job.html#f3-11033 &lt;br /&gt;
*'''Create Matlab script'''&lt;br /&gt;
*:this can be either a normal serial script or a parallel one that uses functions like parfor. if you have an exisiting script make sure that the following is done before running it:&lt;br /&gt;
** remove any parpool commands if any&lt;br /&gt;
**modify the file paths if any is used in your script. consider that all your files will move to the cluster and run *:there so if your script contains a filepath that exisits only on your client it will not be able to find it there. &lt;br /&gt;
*:example: &lt;br /&gt;
*:use &lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; load  ('INPUT_FILE_NAME') &amp;lt;/pre&amp;gt;&lt;br /&gt;
::instead of&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; load ('/INPUT_DIRECTORY_NAME/INPUT_FILE_NAME')&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*'''Batch command''': This command begins an automated process that connects to the cluster, submits a job to the scheduler, and initializes MDCS. it will ask you to enter your user name and password. you must also make sure that you are using on the campus network or while using VPN&lt;br /&gt;
*For example if you submit a script to Viper with one input file:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; viper = parcluster()&lt;br /&gt;
 job = viper.batch('&amp;lt;your script&amp;gt;', 'pool', 9, 'AttachedFiles', '&amp;lt;name of input file&amp;gt;')&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
:*Specify the name of your script without the “m” prefix. For instance use test, and not test.m&lt;br /&gt;
:*The argument pool specified the number of workers you need for execution of the script. Note that the MATLAB adds one worker to the number of workers you specified in pool. So for instance if you specify 9 workers in the pool, then MATLAB will use 10 workers.&lt;br /&gt;
:*The 4th Argument 'AttachedFiles' highlight that we are going to attache input file/files to this batch job. you can send multiple files by including them in braces. For Example&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; job = viper.batch('test', 'pool', 9, 'AttachedFiles', {input1, input2})&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Parallel pool====&lt;br /&gt;
* Another mode of operation that is easier if you are testing piece of code or running a small job that you expect to finish in few minutes. &lt;br /&gt;
* This requires a running connection to be in place between your computer and viper. at any point you shutdown your Matlab/Wifi or even your laptop everything will be lost and you will need to rerun your code/simulation.&lt;br /&gt;
&lt;br /&gt;
== Further Information ==&lt;br /&gt;
&lt;br /&gt;
* [https://matlabacademy.mathworks.com/ Matlab online courses]&lt;br /&gt;
* [https://uk.mathworks.com/help/distcomp/batch.html/ Batch command documentation]&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_home.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; | &lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;br /&gt;
* [[Programming|Programming support]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2238</id>
		<title>Training/Matlab-Viper-plugin</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2238"/>
		<updated>2018-02-16T11:45:09Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Batch job */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Matlab viper plugin=&lt;br /&gt;
please note this page is still under development. &lt;br /&gt;
==Introduction==&lt;br /&gt;
There is a feature in Matlab that enables you to submit jobs to clusters directly from your Matlab client (normal desktop Matlab). we were able to develop Matlab-Viper plugin that utilise this feature and integrate Matlab with viper to enable all our Matlab users to submit some Matlab jobs to viper easily without the need to know much about HPC or Linux. Everything could be done from the normal desktop Matlab version that many users are already using. &lt;br /&gt;
This guide should explain more on how to use viper through the Matlab viper plugin. In-general the toolbox that could utilise such integration is the Matlab parallel computing toolbox. we will try to explain the main concepts here and point you to some Mathworks tutorial that you could use and try on viper.&lt;br /&gt;
*If you don't have Matlab-Viper plugin installed and tested on your Matlab contact help@hull.ac.uk or viper@hull.ac.uk and we will help you to install it and configure it.&lt;br /&gt;
*This is only available for Matlab 2017a , we will try to support it for all the upcoming versions starting from 2017a. if you have a special use case that requires the usage of older version you could check the possibility of creating this plugin for it by emailing us : viper@hull.ac.uk&lt;br /&gt;
* This link https://uk.mathworks.com/products/ineligible_programs.html  shows a list of Ineligible programs that couldn't run on Matlab distributed computing server through this plugin.&lt;br /&gt;
&lt;br /&gt;
==Matlab to Viper==&lt;br /&gt;
===Main concepts===&lt;br /&gt;
Before we start we would like to introduce to you some basic concepts in order to be able to use this plugin efficiently.&lt;br /&gt;
&lt;br /&gt;
==== This plugin works by connecting 2 components together:====&lt;br /&gt;
#'''Client:'''&lt;br /&gt;
#:The client could run on your laptop or desktop computer. This is where you will run Matlab commands and submit your jobs.&lt;br /&gt;
#'''Worker:'''&lt;br /&gt;
#:The worker is and instance of Matlab distributed computing enviornement that runs on Viper in order to perform a calculation for one of the clients. you could submit batch jobs from your clients that runs some simulations in parallel using functions like parfor, you could also run normal Matlab code on it.&lt;br /&gt;
&lt;br /&gt;
==== limitations ====&lt;br /&gt;
submitting a job to Viper has a a lot of overhead. if you are running a small computing task it might take even longer to run on the cluster as there are a lot of time will be lost in communication and transferring your data to Viper then in sometimes your job could be queued and start running in a later time. however in many other cases it will show you a speedup and as a minimum you will be able to free up your client from doing this computation.&lt;br /&gt;
===Run Matlab Job===&lt;br /&gt;
using parallel tool box, you can run your Matlab code on viper using 2 modes:&lt;br /&gt;
===='''Batch job'''====&lt;br /&gt;
*This is the main way to utilize the Matlab-viper-plugin. This submit your job to Viper queuing system (SLURM) and send back the results to your client once everything is done.  &lt;br /&gt;
*Very useful for time consuming job that need hours or even days to finish. you will submit your job and you don't need to keep your Matlab running or even the whole computer could be turned off as all your simulation will be running on Viper.&lt;br /&gt;
* if you want to know more about the job life cycles and different stages https://uk.mathworks.com/help/distcomp/how-parallel-computing-products-run-a-job.html#f3-11033 &lt;br /&gt;
*'''Create Matlab script'''&lt;br /&gt;
*:this can be either a normal serial script or a parallel one that uses functions like parfor. if you have an exisiting script make sure that the following is done before running it:&lt;br /&gt;
** remove any parpool commands if any&lt;br /&gt;
**modify the file paths if any is used in your script. consider that all your files will move to the cluster and run *:there so if your script contains a filepath that exisits only on your client it will not be able to find it there. &lt;br /&gt;
*:example: &lt;br /&gt;
*:use &lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; load  ('INPUT_FILE_NAME') &amp;lt;/pre&amp;gt;&lt;br /&gt;
::instead of&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; load ('/INPUT_DIRECTORY_NAME/INPUT_FILE_NAME')&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*'''Batch command''': This command begins an automated process that connects to the cluster, submits a job to the scheduler, and initializes MDCS. it will ask you to enter your user name and password. you must also make sure that you are using on the campus network or while using VPN&lt;br /&gt;
*For example if you submit a script to Viper with one input file:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; viper = parcluster()&lt;br /&gt;
 job = viper.batch('&amp;lt;your script&amp;gt;', 'pool', 9, 'AttachedFiles', '&amp;lt;name of input file&amp;gt;')&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
:*Specify the name of your script without the “m” prefix. For instance use test, and not test.m&lt;br /&gt;
:*The argument pool specified the number of workers you need for execution of the script. Note that the MATLAB adds one worker to the number of workers you specified in pool. So for instance if you specify 9 workers in the pool, then MATLAB will use 10 workers.&lt;br /&gt;
:*The 4th Argument 'AttachedFiles' highlight that we are going to attache input file/files to this batch job. you can send multiple files by including them in braces. For Example&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; job = viper.batch('test', 'pool', 9, 'AttachedFiles', {input1, input2})&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===='''Parallel pool'''====&lt;br /&gt;
* Another mode of operation that is easier if you are testing piece of code or running a small job that you expect to finish in few minutes. &lt;br /&gt;
* This requires a running connection to be in place between your computer and viper. at any point you shutdown your Matlab/Wifi or even your laptop everything will be lost and you will need to rerun your code/simulation.&lt;br /&gt;
&lt;br /&gt;
== Further Information ==&lt;br /&gt;
&lt;br /&gt;
* [https://matlabacademy.mathworks.com/ Matlab online courses]&lt;br /&gt;
* [https://uk.mathworks.com/help/distcomp/batch.html/ Batch command documentation]&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_home.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; | &lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;br /&gt;
* [[Programming|Programming support]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2237</id>
		<title>Training/Matlab-Viper-plugin</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2237"/>
		<updated>2018-02-16T11:39:43Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Parallel pool */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Matlab viper plugin=&lt;br /&gt;
please note this page is still under development. &lt;br /&gt;
==Introduction==&lt;br /&gt;
There is a feature in Matlab that enables you to submit jobs to clusters directly from your Matlab client (normal desktop Matlab). we were able to develop Matlab-Viper plugin that utilise this feature and integrate Matlab with viper to enable all our Matlab users to submit some Matlab jobs to viper easily without the need to know much about HPC or Linux. Everything could be done from the normal desktop Matlab version that many users are already using. &lt;br /&gt;
This guide should explain more on how to use viper through the Matlab viper plugin. In-general the toolbox that could utilise such integration is the Matlab parallel computing toolbox. we will try to explain the main concepts here and point you to some Mathworks tutorial that you could use and try on viper.&lt;br /&gt;
*If you don't have Matlab-Viper plugin installed and tested on your Matlab contact help@hull.ac.uk or viper@hull.ac.uk and we will help you to install it and configure it.&lt;br /&gt;
*This is only available for Matlab 2017a , we will try to support it for all the upcoming versions starting from 2017a. if you have a special use case that requires the usage of older version you could check the possibility of creating this plugin for it by emailing us : viper@hull.ac.uk&lt;br /&gt;
* This link https://uk.mathworks.com/products/ineligible_programs.html  shows a list of Ineligible programs that couldn't run on Matlab distributed computing server through this plugin.&lt;br /&gt;
&lt;br /&gt;
==Matlab to Viper==&lt;br /&gt;
===Main concepts===&lt;br /&gt;
Before we start we would like to introduce to you some basic concepts in order to be able to use this plugin efficiently.&lt;br /&gt;
&lt;br /&gt;
==== This plugin works by connecting 2 components together:====&lt;br /&gt;
#'''Client:'''&lt;br /&gt;
#:The client could run on your laptop or desktop computer. This is where you will run Matlab commands and submit your jobs.&lt;br /&gt;
#'''Worker:'''&lt;br /&gt;
#:The worker is and instance of Matlab distributed computing enviornement that runs on Viper in order to perform a calculation for one of the clients. you could submit batch jobs from your clients that runs some simulations in parallel using functions like parfor, you could also run normal Matlab code on it.&lt;br /&gt;
&lt;br /&gt;
==== limitations ====&lt;br /&gt;
submitting a job to Viper has a a lot of overhead. if you are running a small computing task it might take even longer to run on the cluster as there are a lot of time will be lost in communication and transferring your data to Viper then in sometimes your job could be queued and start running in a later time. however in many other cases it will show you a speedup and as a minimum you will be able to free up your client from doing this computation.&lt;br /&gt;
===Run Matlab Job===&lt;br /&gt;
using parallel tool box, you can run your Matlab code on viper using 2 modes:&lt;br /&gt;
===='''Batch job'''====&lt;br /&gt;
*This is the main way to utilize the Matlab-viper-plugin. This submit your job to Viper queuing system (SLURM) and send back the results to your client once everything is done.  &lt;br /&gt;
*Very useful for time consuming job that need hours or even days to finish. you will submit your job and you don't need to keep your Matlab running or even the whole computer could be turned off as all your simulation will be running on Viper.&lt;br /&gt;
* if you want to know more about the job life cycles and different stages https://uk.mathworks.com/help/distcomp/how-parallel-computing-products-run-a-job.html#f3-11033 &lt;br /&gt;
*'''Create Matlab script'''&lt;br /&gt;
*:this can be either a normal serial script or a parallel one that uses functions like parfor. if you have an exisiting script make sure that the following is done before running it:&lt;br /&gt;
** remove any parpool commands if any&lt;br /&gt;
**modify the file paths if any is used in your script. consider that all your files will move to the cluster and run *:there so if your script contains a filepath that exisits only on your client it will not be able to find it there. &lt;br /&gt;
*:example: &lt;br /&gt;
*:use &lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; &lt;br /&gt;
load  ('INPUT_FILE_NAME') &amp;lt;/pre&amp;gt;&lt;br /&gt;
::instead of&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; &lt;br /&gt;
load ('/INPUT_DIRECTORY_NAME/INPUT_FILE_NAME')&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*'''Batch command''': This command begins an automated process that connects to the cluster, submits a job to the scheduler, and initializes MDCS. it will ask you to enter your user name and password. you must also make sure that you are using on the campus network or while using VPN&lt;br /&gt;
*For example if you submit a script to Viper with one input file:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; &lt;br /&gt;
viper = parcluster()&lt;br /&gt;
job = viper.batch('&amp;lt;your script&amp;gt;', 'pool', 9, 'AttachedFiles', '&amp;lt;name of input file&amp;gt;')&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
:*Specify the name of your script without the “m” prefix. For instance use test, and not test.m&lt;br /&gt;
:*The argument pool specified the number of workers you need for execution of the script. Note that the MATLAB adds one worker to the number of workers you specified in pool. So for instance if you specify 9 workers in the pool, then MATLAB will use 10 workers.&lt;br /&gt;
:*The 4th Argument 'AttachedFiles' highlight that we are going to attache input file/files to this batch job. you can send multiple files by including them in braces. For Example&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; job = viper.batch('test', 'pool', 9, 'AttachedFiles', {input1, input2})&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===='''Parallel pool'''====&lt;br /&gt;
* Another mode of operation that is easier if you are testing piece of code or running a small job that you expect to finish in few minutes. &lt;br /&gt;
* This requires a running connection to be in place between your computer and viper. at any point you shutdown your Matlab/Wifi or even your laptop everything will be lost and you will need to rerun your code/simulation.&lt;br /&gt;
&lt;br /&gt;
== Further Information ==&lt;br /&gt;
&lt;br /&gt;
* [https://matlabacademy.mathworks.com/ Matlab online courses]&lt;br /&gt;
* [https://uk.mathworks.com/help/distcomp/batch.html/ Batch command documentation]&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_home.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; | &lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;br /&gt;
* [[Programming|Programming support]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2236</id>
		<title>Training/Matlab-Viper-plugin</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2236"/>
		<updated>2018-02-16T11:32:04Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Batch job */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Matlab viper plugin=&lt;br /&gt;
please note this page is still under development. &lt;br /&gt;
==Introduction==&lt;br /&gt;
There is a feature in Matlab that enables you to submit jobs to clusters directly from your Matlab client (normal desktop Matlab). we were able to develop Matlab-Viper plugin that utilise this feature and integrate Matlab with viper to enable all our Matlab users to submit some Matlab jobs to viper easily without the need to know much about HPC or Linux. Everything could be done from the normal desktop Matlab version that many users are already using. &lt;br /&gt;
This guide should explain more on how to use viper through the Matlab viper plugin. In-general the toolbox that could utilise such integration is the Matlab parallel computing toolbox. we will try to explain the main concepts here and point you to some Mathworks tutorial that you could use and try on viper.&lt;br /&gt;
*If you don't have Matlab-Viper plugin installed and tested on your Matlab contact help@hull.ac.uk or viper@hull.ac.uk and we will help you to install it and configure it.&lt;br /&gt;
*This is only available for Matlab 2017a , we will try to support it for all the upcoming versions starting from 2017a. if you have a special use case that requires the usage of older version you could check the possibility of creating this plugin for it by emailing us : viper@hull.ac.uk&lt;br /&gt;
* This link https://uk.mathworks.com/products/ineligible_programs.html  shows a list of Ineligible programs that couldn't run on Matlab distributed computing server through this plugin.&lt;br /&gt;
&lt;br /&gt;
==Matlab to Viper==&lt;br /&gt;
===Main concepts===&lt;br /&gt;
Before we start we would like to introduce to you some basic concepts in order to be able to use this plugin efficiently.&lt;br /&gt;
&lt;br /&gt;
==== This plugin works by connecting 2 components together:====&lt;br /&gt;
#'''Client:'''&lt;br /&gt;
#:The client could run on your laptop or desktop computer. This is where you will run Matlab commands and submit your jobs.&lt;br /&gt;
#'''Worker:'''&lt;br /&gt;
#:The worker is and instance of Matlab distributed computing enviornement that runs on Viper in order to perform a calculation for one of the clients. you could submit batch jobs from your clients that runs some simulations in parallel using functions like parfor, you could also run normal Matlab code on it.&lt;br /&gt;
&lt;br /&gt;
==== limitations ====&lt;br /&gt;
submitting a job to Viper has a a lot of overhead. if you are running a small computing task it might take even longer to run on the cluster as there are a lot of time will be lost in communication and transferring your data to Viper then in sometimes your job could be queued and start running in a later time. however in many other cases it will show you a speedup and as a minimum you will be able to free up your client from doing this computation.&lt;br /&gt;
===Run Matlab Job===&lt;br /&gt;
using parallel tool box, you can run your Matlab code on viper using 2 modes:&lt;br /&gt;
===='''Batch job'''====&lt;br /&gt;
*This is the main way to utilize the Matlab-viper-plugin. This submit your job to Viper queuing system (SLURM) and send back the results to your client once everything is done.  &lt;br /&gt;
*Very useful for time consuming job that need hours or even days to finish. you will submit your job and you don't need to keep your Matlab running or even the whole computer could be turned off as all your simulation will be running on Viper.&lt;br /&gt;
* if you want to know more about the job life cycles and different stages https://uk.mathworks.com/help/distcomp/how-parallel-computing-products-run-a-job.html#f3-11033 &lt;br /&gt;
*'''Create Matlab script'''&lt;br /&gt;
*:this can be either a normal serial script or a parallel one that uses functions like parfor. if you have an exisiting script make sure that the following is done before running it:&lt;br /&gt;
** remove any parpool commands if any&lt;br /&gt;
**modify the file paths if any is used in your script. consider that all your files will move to the cluster and run *:there so if your script contains a filepath that exisits only on your client it will not be able to find it there. &lt;br /&gt;
*:example: &lt;br /&gt;
*:use &lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; &lt;br /&gt;
load  ('INPUT_FILE_NAME') &amp;lt;/pre&amp;gt;&lt;br /&gt;
::instead of&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; &lt;br /&gt;
load ('/INPUT_DIRECTORY_NAME/INPUT_FILE_NAME')&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*'''Batch command''': This command begins an automated process that connects to the cluster, submits a job to the scheduler, and initializes MDCS. it will ask you to enter your user name and password. you must also make sure that you are using on the campus network or while using VPN&lt;br /&gt;
*For example if you submit a script to Viper with one input file:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; &lt;br /&gt;
viper = parcluster()&lt;br /&gt;
job = viper.batch('&amp;lt;your script&amp;gt;', 'pool', 9, 'AttachedFiles', '&amp;lt;name of input file&amp;gt;')&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
:*Specify the name of your script without the “m” prefix. For instance use test, and not test.m&lt;br /&gt;
:*The argument pool specified the number of workers you need for execution of the script. Note that the MATLAB adds one worker to the number of workers you specified in pool. So for instance if you specify 9 workers in the pool, then MATLAB will use 10 workers.&lt;br /&gt;
:*The 4th Argument 'AttachedFiles' highlight that we are going to attache input file/files to this batch job. you can send multiple files by including them in braces. For Example&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; job = viper.batch('test', 'pool', 9, 'AttachedFiles', {input1, input2})&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===='''Parallel pool'''====&lt;br /&gt;
** Another mode of operation that is easier if you are testing piece of code or running a small job that you expect to finish in few minutes. &lt;br /&gt;
** This requires a running connection to be in place between your computer and viper. at any point you shutdown your Matlab, Wifi or even your laptop everything will be lost and you will need to rerun your code/simulation.&lt;br /&gt;
&lt;br /&gt;
== Further Information ==&lt;br /&gt;
&lt;br /&gt;
* [https://matlabacademy.mathworks.com/ Matlab online courses]&lt;br /&gt;
* [https://uk.mathworks.com/help/distcomp/batch.html/ Batch command documentation]&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_home.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; | &lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;br /&gt;
* [[Programming|Programming support]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2235</id>
		<title>Training/Matlab-Viper-plugin</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2235"/>
		<updated>2018-02-16T11:30:01Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Run Matlab Job */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Matlab viper plugin=&lt;br /&gt;
please note this page is still under development. &lt;br /&gt;
==Introduction==&lt;br /&gt;
There is a feature in Matlab that enables you to submit jobs to clusters directly from your Matlab client (normal desktop Matlab). we were able to develop Matlab-Viper plugin that utilise this feature and integrate Matlab with viper to enable all our Matlab users to submit some Matlab jobs to viper easily without the need to know much about HPC or Linux. Everything could be done from the normal desktop Matlab version that many users are already using. &lt;br /&gt;
This guide should explain more on how to use viper through the Matlab viper plugin. In-general the toolbox that could utilise such integration is the Matlab parallel computing toolbox. we will try to explain the main concepts here and point you to some Mathworks tutorial that you could use and try on viper.&lt;br /&gt;
*If you don't have Matlab-Viper plugin installed and tested on your Matlab contact help@hull.ac.uk or viper@hull.ac.uk and we will help you to install it and configure it.&lt;br /&gt;
*This is only available for Matlab 2017a , we will try to support it for all the upcoming versions starting from 2017a. if you have a special use case that requires the usage of older version you could check the possibility of creating this plugin for it by emailing us : viper@hull.ac.uk&lt;br /&gt;
* This link https://uk.mathworks.com/products/ineligible_programs.html  shows a list of Ineligible programs that couldn't run on Matlab distributed computing server through this plugin.&lt;br /&gt;
&lt;br /&gt;
==Matlab to Viper==&lt;br /&gt;
===Main concepts===&lt;br /&gt;
Before we start we would like to introduce to you some basic concepts in order to be able to use this plugin efficiently.&lt;br /&gt;
&lt;br /&gt;
==== This plugin works by connecting 2 components together:====&lt;br /&gt;
#'''Client:'''&lt;br /&gt;
#:The client could run on your laptop or desktop computer. This is where you will run Matlab commands and submit your jobs.&lt;br /&gt;
#'''Worker:'''&lt;br /&gt;
#:The worker is and instance of Matlab distributed computing enviornement that runs on Viper in order to perform a calculation for one of the clients. you could submit batch jobs from your clients that runs some simulations in parallel using functions like parfor, you could also run normal Matlab code on it.&lt;br /&gt;
&lt;br /&gt;
==== limitations ====&lt;br /&gt;
submitting a job to Viper has a a lot of overhead. if you are running a small computing task it might take even longer to run on the cluster as there are a lot of time will be lost in communication and transferring your data to Viper then in sometimes your job could be queued and start running in a later time. however in many other cases it will show you a speedup and as a minimum you will be able to free up your client from doing this computation.&lt;br /&gt;
===Run Matlab Job===&lt;br /&gt;
using parallel tool box, you can run your Matlab code on viper using 2 modes:&lt;br /&gt;
===='''Batch job'''====&lt;br /&gt;
**This is the main way to utilize the Matlab-viper-plugin. This submit your job to Viper queuing system (SLURM) and send back the results to your client once everything is done.  &lt;br /&gt;
**Very useful for time consuming job that need hours or even days to finish. you will submit your job and you don't need to keep your Matlab running or even the whole computer could be turned off as all your simulation will be running on Viper.&lt;br /&gt;
** if you want to know more about the job life cycles and different stages https://uk.mathworks.com/help/distcomp/how-parallel-computing-products-run-a-job.html#f3-11033 &lt;br /&gt;
**'''Create Matlab script'''&lt;br /&gt;
**:this can be either a normal serial script or a parallel one that uses functions like parfor. if you have an exisiting script make sure that the following is done before running it:&lt;br /&gt;
*** remove any parpool commands if any&lt;br /&gt;
***modify the file paths if any is used in your script. consider that all your files will move to the cluster and run **:there so if your script contains a filepath that exisits only on your client it will not be able to find it there. &lt;br /&gt;
**:example: &lt;br /&gt;
**:use &lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; &lt;br /&gt;
load  ('INPUT_FILE_NAME') &amp;lt;/pre&amp;gt;&lt;br /&gt;
:::instead of&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; &lt;br /&gt;
load ('/INPUT_DIRECTORY_NAME/INPUT_FILE_NAME')&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*'''Batch command''': This command begins an automated process that connects to the cluster, submits a job to the scheduler, and initializes MDCS. it will ask you to enter your user name and password. you must also make sure that you are using on the campus network or while using VPN&lt;br /&gt;
*For example if you submit a script to Viper with one input file:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; &lt;br /&gt;
viper = parcluster()&lt;br /&gt;
job = viper.batch('&amp;lt;your script&amp;gt;', 'pool', 9, 'AttachedFiles', '&amp;lt;name of input file&amp;gt;')&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
**Specify the name of your script without the “m” prefix. For instance use test, and not test.m&lt;br /&gt;
**The argument pool specified the number of workers you need for execution of the script. Note that the MATLAB adds one worker to the number of workers you specified in pool. So for instance if you specify 9 workers in the pool, then MATLAB will use 10 workers.&lt;br /&gt;
**The 4th Argument 'AttachedFiles' highlight that we are going to attache input file/files to this batch job. you can send multiple files by including them in braces. For Example&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; job = viper.batch('test', 'pool', 9, 'AttachedFiles', {input1, input2})&amp;lt;/pre&amp;gt;&lt;br /&gt;
===='''Parallel pool'''====&lt;br /&gt;
** Another mode of operation that is easier if you are testing piece of code or running a small job that you expect to finish in few minutes. &lt;br /&gt;
** This requires a running connection to be in place between your computer and viper. at any point you shutdown your Matlab, Wifi or even your laptop everything will be lost and you will need to rerun your code/simulation.&lt;br /&gt;
&lt;br /&gt;
== Further Information ==&lt;br /&gt;
&lt;br /&gt;
* [https://matlabacademy.mathworks.com/ Matlab online courses]&lt;br /&gt;
* [https://uk.mathworks.com/help/distcomp/batch.html/ Batch command documentation]&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_home.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; | &lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;br /&gt;
* [[Programming|Programming support]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2234</id>
		<title>Training/Matlab-Viper-plugin</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2234"/>
		<updated>2018-02-16T11:28:36Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Run Matlab Job */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Matlab viper plugin=&lt;br /&gt;
please note this page is still under development. &lt;br /&gt;
==Introduction==&lt;br /&gt;
There is a feature in Matlab that enables you to submit jobs to clusters directly from your Matlab client (normal desktop Matlab). we were able to develop Matlab-Viper plugin that utilise this feature and integrate Matlab with viper to enable all our Matlab users to submit some Matlab jobs to viper easily without the need to know much about HPC or Linux. Everything could be done from the normal desktop Matlab version that many users are already using. &lt;br /&gt;
This guide should explain more on how to use viper through the Matlab viper plugin. In-general the toolbox that could utilise such integration is the Matlab parallel computing toolbox. we will try to explain the main concepts here and point you to some Mathworks tutorial that you could use and try on viper.&lt;br /&gt;
*If you don't have Matlab-Viper plugin installed and tested on your Matlab contact help@hull.ac.uk or viper@hull.ac.uk and we will help you to install it and configure it.&lt;br /&gt;
*This is only available for Matlab 2017a , we will try to support it for all the upcoming versions starting from 2017a. if you have a special use case that requires the usage of older version you could check the possibility of creating this plugin for it by emailing us : viper@hull.ac.uk&lt;br /&gt;
* This link https://uk.mathworks.com/products/ineligible_programs.html  shows a list of Ineligible programs that couldn't run on Matlab distributed computing server through this plugin.&lt;br /&gt;
&lt;br /&gt;
==Matlab to Viper==&lt;br /&gt;
===Main concepts===&lt;br /&gt;
Before we start we would like to introduce to you some basic concepts in order to be able to use this plugin efficiently.&lt;br /&gt;
&lt;br /&gt;
==== This plugin works by connecting 2 components together:====&lt;br /&gt;
#'''Client:'''&lt;br /&gt;
#:The client could run on your laptop or desktop computer. This is where you will run Matlab commands and submit your jobs.&lt;br /&gt;
#'''Worker:'''&lt;br /&gt;
#:The worker is and instance of Matlab distributed computing enviornement that runs on Viper in order to perform a calculation for one of the clients. you could submit batch jobs from your clients that runs some simulations in parallel using functions like parfor, you could also run normal Matlab code on it.&lt;br /&gt;
&lt;br /&gt;
==== limitations ====&lt;br /&gt;
submitting a job to Viper has a a lot of overhead. if you are running a small computing task it might take even longer to run on the cluster as there are a lot of time will be lost in communication and transferring your data to Viper then in sometimes your job could be queued and start running in a later time. however in many other cases it will show you a speedup and as a minimum you will be able to free up your client from doing this computation.&lt;br /&gt;
===Run Matlab Job===&lt;br /&gt;
using parallel tool box, you can run your Matlab code on viper using 2 modes:&lt;br /&gt;
*'''Batch job'''&lt;br /&gt;
**This is the main way to utilize the Matlab-viper-plugin. This submit your job to Viper queuing system (SLURM) and send back the results to your client once everything is done.  &lt;br /&gt;
**Very useful for time consuming job that need hours or even days to finish. you will submit your job and you don't need to keep your Matlab running or even the whole computer could be turned off as all your simulation will be running on Viper.&lt;br /&gt;
** if you want to know more about the job life cycles and different stages https://uk.mathworks.com/help/distcomp/how-parallel-computing-products-run-a-job.html#f3-11033 &lt;br /&gt;
**'''Create Matlab script'''&lt;br /&gt;
**:this can be either a normal serial script or a parallel one that uses functions like parfor. if you have an exisiting script make sure that the following is done before running it:&lt;br /&gt;
*** remove any parpool commands if any&lt;br /&gt;
***modify the file paths if any is used in your script. consider that all your files will move to the cluster and run **:there so if your script contains a filepath that exisits only on your client it will not be able to find it there. &lt;br /&gt;
**:example: &lt;br /&gt;
**:use &lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; &lt;br /&gt;
load  ('INPUT_FILE_NAME') &amp;lt;/pre&amp;gt;&lt;br /&gt;
:::instead of&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; &lt;br /&gt;
load ('/INPUT_DIRECTORY_NAME/INPUT_FILE_NAME')&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*'''Batch command''': This command begins an automated process that connects to the cluster, submits a job to the scheduler, and initializes MDCS. it will ask you to enter your user name and password. you must also make sure that you are using on the campus network or while using VPN&lt;br /&gt;
*For example if you submit a script to Viper with one input file:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; &lt;br /&gt;
viper = parcluster()&lt;br /&gt;
job = viper.batch('&amp;lt;your script&amp;gt;', 'pool', 9, 'AttachedFiles', '&amp;lt;name of input file&amp;gt;')&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
**Specify the name of your script without the “m” prefix. For instance use test, and not test.m&lt;br /&gt;
**The argument pool specified the number of workers you need for execution of the script. Note that the MATLAB adds one worker to the number of workers you specified in pool. So for instance if you specify 9 workers in the pool, then MATLAB will use 10 workers.&lt;br /&gt;
**The 4th Argument 'AttachedFiles' highlight that we are going to attache input file/files to this batch job. you can send multiple files by including them in braces. For Example&amp;lt;pre style=&amp;quot;background-color: #f5f5dc; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt; job = viper.batch('test', 'pool', 9, 'AttachedFiles', {input1, input2})&amp;lt;/pre&amp;gt;&lt;br /&gt;
*'''Parallel pool'''&lt;br /&gt;
** Another mode of operation that is easier if you are testing piece of code or running a small job that you expect to finish in few minutes. &lt;br /&gt;
** This requires a running connection to be in place between your computer and viper. at any point you shutdown your Matlab, Wifi or even your laptop everything will be lost and you will need to rerun your code/simulation.&lt;br /&gt;
&lt;br /&gt;
== Further Information ==&lt;br /&gt;
&lt;br /&gt;
* [https://matlabacademy.mathworks.com/ Matlab online courses]&lt;br /&gt;
* [https://uk.mathworks.com/help/distcomp/batch.html/ Batch command documentation]&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_home.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; | &lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;br /&gt;
* [[Programming|Programming support]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2233</id>
		<title>Training/Matlab-Viper-plugin</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2233"/>
		<updated>2018-02-16T11:07:28Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Run Matlab Job */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Matlab viper plugin=&lt;br /&gt;
please note this page is still under development. &lt;br /&gt;
==Introduction==&lt;br /&gt;
There is a feature in Matlab that enables you to submit jobs to clusters directly from your Matlab client (normal desktop Matlab). we were able to develop Matlab-Viper plugin that utilise this feature and integrate Matlab with viper to enable all our Matlab users to submit some Matlab jobs to viper easily without the need to know much about HPC or Linux. Everything could be done from the normal desktop Matlab version that many users are already using. &lt;br /&gt;
This guide should explain more on how to use viper through the Matlab viper plugin. In-general the toolbox that could utilise such integration is the Matlab parallel computing toolbox. we will try to explain the main concepts here and point you to some Mathworks tutorial that you could use and try on viper.&lt;br /&gt;
*If you don't have Matlab-Viper plugin installed and tested on your Matlab contact help@hull.ac.uk or viper@hull.ac.uk and we will help you to install it and configure it.&lt;br /&gt;
*This is only available for Matlab 2017a , we will try to support it for all the upcoming versions starting from 2017a. if you have a special use case that requires the usage of older version you could check the possibility of creating this plugin for it by emailing us : viper@hull.ac.uk&lt;br /&gt;
* This link https://uk.mathworks.com/products/ineligible_programs.html  shows a list of Ineligible programs that couldn't run on Matlab distributed computing server through this plugin.&lt;br /&gt;
&lt;br /&gt;
==Matlab to Viper==&lt;br /&gt;
===Main concepts===&lt;br /&gt;
Before we start we would like to introduce to you some basic concepts in order to be able to use this plugin efficiently.&lt;br /&gt;
&lt;br /&gt;
==== This plugin works by connecting 2 components together:====&lt;br /&gt;
#'''Client:'''&lt;br /&gt;
#:The client could run on your laptop or desktop computer. This is where you will run Matlab commands and submit your jobs.&lt;br /&gt;
#'''Worker:'''&lt;br /&gt;
#:The worker is and instance of Matlab distributed computing enviornement that runs on Viper in order to perform a calculation for one of the clients. you could submit batch jobs from your clients that runs some simulations in parallel using functions like parfor, you could also run normal Matlab code on it.&lt;br /&gt;
&lt;br /&gt;
==== limitations ====&lt;br /&gt;
submitting a job to Viper has a a lot of overhead. if you are running a small computing task it might take even longer to run on the cluster as there are a lot of time will be lost in communication and transferring your data to Viper then in sometimes your job could be queued and start running in a later time. however in many other cases it will show you a speedup and as a minimum you will be able to free up your client from doing this computation.&lt;br /&gt;
===Run Matlab Job===&lt;br /&gt;
using parallel tool box, you can run your Matlab code on viper using 2 modes:&lt;br /&gt;
*'''Batch job'''&lt;br /&gt;
**This is the main way to utilize the Matlab-viper-plugin. This submit your job to Viper queuing system (SLURM) and send back the results to your client once everything is done.  &lt;br /&gt;
**Very useful for time consuming job that need hours or even days to finish. you will submit your job and you don't need to keep your Matlab running or even the whole computer could be turned off as all your simulation will be running on Viper.&lt;br /&gt;
** if you want to know more about the job life cycles and different stages https://uk.mathworks.com/help/distcomp/how-parallel-computing-products-run-a-job.html#f3-11033 &lt;br /&gt;
**'''Create Matlab script'''&lt;br /&gt;
**:this can be either a normal serial script or a parallel one that uses functions like parfor. if you have an exisiting script make sure that the following is done before running it:&lt;br /&gt;
*** remove any parpool commands if any&lt;br /&gt;
***modify the file paths if any is used in your script. consider that all your files will move to the cluster and run **:there so if your script contains a filepath that exisits only on your client it will not be able to find it there. &lt;br /&gt;
**:example: use load ('INPUT_FILE_NAME') instead of load('/INPUT_DIRECTORY_NAME/INPUT_FILE_NAME')&lt;br /&gt;
&lt;br /&gt;
*'''Parallel pool'''&lt;br /&gt;
** Another mode of operation that is easier if you are testing piece of code or running a small job that you expect to finish in few minutes. &lt;br /&gt;
** This requires a running connection to be in place between your computer and viper. at any point you shutdown your Matlab, Wifi or even your laptop everything will be lost and you will need to rerun your code/simulation.&lt;br /&gt;
&lt;br /&gt;
== Further Information ==&lt;br /&gt;
&lt;br /&gt;
* [https://matlabacademy.mathworks.com/ Matlab online courses]&lt;br /&gt;
* [https://uk.mathworks.com/help/distcomp/batch.html/ Batch command documentation]&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_home.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; | &lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;br /&gt;
* [[Programming|Programming support]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2232</id>
		<title>Training/Matlab-Viper-plugin</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2232"/>
		<updated>2018-02-16T11:06:30Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Run Matlab Job */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Matlab viper plugin=&lt;br /&gt;
please note this page is still under development. &lt;br /&gt;
==Introduction==&lt;br /&gt;
There is a feature in Matlab that enables you to submit jobs to clusters directly from your Matlab client (normal desktop Matlab). we were able to develop Matlab-Viper plugin that utilise this feature and integrate Matlab with viper to enable all our Matlab users to submit some Matlab jobs to viper easily without the need to know much about HPC or Linux. Everything could be done from the normal desktop Matlab version that many users are already using. &lt;br /&gt;
This guide should explain more on how to use viper through the Matlab viper plugin. In-general the toolbox that could utilise such integration is the Matlab parallel computing toolbox. we will try to explain the main concepts here and point you to some Mathworks tutorial that you could use and try on viper.&lt;br /&gt;
*If you don't have Matlab-Viper plugin installed and tested on your Matlab contact help@hull.ac.uk or viper@hull.ac.uk and we will help you to install it and configure it.&lt;br /&gt;
*This is only available for Matlab 2017a , we will try to support it for all the upcoming versions starting from 2017a. if you have a special use case that requires the usage of older version you could check the possibility of creating this plugin for it by emailing us : viper@hull.ac.uk&lt;br /&gt;
* This link https://uk.mathworks.com/products/ineligible_programs.html  shows a list of Ineligible programs that couldn't run on Matlab distributed computing server through this plugin.&lt;br /&gt;
&lt;br /&gt;
==Matlab to Viper==&lt;br /&gt;
===Main concepts===&lt;br /&gt;
Before we start we would like to introduce to you some basic concepts in order to be able to use this plugin efficiently.&lt;br /&gt;
&lt;br /&gt;
==== This plugin works by connecting 2 components together:====&lt;br /&gt;
#'''Client:'''&lt;br /&gt;
#:The client could run on your laptop or desktop computer. This is where you will run Matlab commands and submit your jobs.&lt;br /&gt;
#'''Worker:'''&lt;br /&gt;
#:The worker is and instance of Matlab distributed computing enviornement that runs on Viper in order to perform a calculation for one of the clients. you could submit batch jobs from your clients that runs some simulations in parallel using functions like parfor, you could also run normal Matlab code on it.&lt;br /&gt;
&lt;br /&gt;
==== limitations ====&lt;br /&gt;
submitting a job to Viper has a a lot of overhead. if you are running a small computing task it might take even longer to run on the cluster as there are a lot of time will be lost in communication and transferring your data to Viper then in sometimes your job could be queued and start running in a later time. however in many other cases it will show you a speedup and as a minimum you will be able to free up your client from doing this computation.&lt;br /&gt;
===Run Matlab Job===&lt;br /&gt;
using parallel tool box, you can run your Matlab code on viper using 2 modes:&lt;br /&gt;
*'''Batch job'''&lt;br /&gt;
**This is the main way to utilize the Matlab-viper-plugin. This submit your job to Viper queuing system (SLURM) and send back the results to your client once everything is done.  &lt;br /&gt;
**Very useful for time consuming job that need hours or even days to finish. you will submit your job and you don't need to keep your Matlab running or even the whole computer could be turned off as all your simulation will be running on Viper.&lt;br /&gt;
**'''Create Matlab script'''&lt;br /&gt;
**:this can be either a normal serial script or a parallel one that uses functions like parfor. if you have an exisiting script make sure that the following is done before running it:&lt;br /&gt;
*** remove any parpool commands if any&lt;br /&gt;
***modify the file paths if any is used in your script. consider that all your files will move to the cluster and run **:there so if your script contains a filepath that exisits only on your client it will not be able to find it there. &lt;br /&gt;
**:example: use load ('INPUT_FILE_NAME') instead of load('/INPUT_DIRECTORY_NAME/INPUT_FILE_NAME')&lt;br /&gt;
&lt;br /&gt;
*'''Parallel pool'''&lt;br /&gt;
** Another mode of operation that is easier if you are testing piece of code or running a small job that you expect to finish in few minutes. &lt;br /&gt;
** This requires a running connection to be in place between your computer and viper. at any point you shutdown your Matlab, Wifi or even your laptop everything will be lost and you will need to rerun your code/simulation.&lt;br /&gt;
&lt;br /&gt;
== Further Information ==&lt;br /&gt;
&lt;br /&gt;
* [https://matlabacademy.mathworks.com/ Matlab online courses]&lt;br /&gt;
* [https://uk.mathworks.com/help/distcomp/batch.html/ Batch command documentation]&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_home.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; | &lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;br /&gt;
* [[Programming|Programming support]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2231</id>
		<title>Training/Matlab-Viper-plugin</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2231"/>
		<updated>2018-02-16T10:45:49Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Further Information */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Matlab viper plugin=&lt;br /&gt;
please note this page is still under development. &lt;br /&gt;
==Introduction==&lt;br /&gt;
There is a feature in Matlab that enables you to submit jobs to clusters directly from your Matlab client (normal desktop Matlab). we were able to develop Matlab-Viper plugin that utilise this feature and integrate Matlab with viper to enable all our Matlab users to submit some Matlab jobs to viper easily without the need to know much about HPC or Linux. Everything could be done from the normal desktop Matlab version that many users are already using. &lt;br /&gt;
This guide should explain more on how to use viper through the Matlab viper plugin. In-general the toolbox that could utilise such integration is the Matlab parallel computing toolbox. we will try to explain the main concepts here and point you to some Mathworks tutorial that you could use and try on viper.&lt;br /&gt;
*If you don't have Matlab-Viper plugin installed and tested on your Matlab contact help@hull.ac.uk or viper@hull.ac.uk and we will help you to install it and configure it.&lt;br /&gt;
*This is only available for Matlab 2017a , we will try to support it for all the upcoming versions starting from 2017a. if you have a special use case that requires the usage of older version you could check the possibility of creating this plugin for it by emailing us : viper@hull.ac.uk&lt;br /&gt;
* This link https://uk.mathworks.com/products/ineligible_programs.html  shows a list of Ineligible programs that couldn't run on Matlab distributed computing server through this plugin.&lt;br /&gt;
&lt;br /&gt;
==Matlab to Viper==&lt;br /&gt;
===Main concepts===&lt;br /&gt;
Before we start we would like to introduce to you some basic concepts in order to be able to use this plugin efficiently.&lt;br /&gt;
&lt;br /&gt;
==== This plugin works by connecting 2 components together:====&lt;br /&gt;
#'''Client:'''&lt;br /&gt;
#:The client could run on your laptop or desktop computer. This is where you will run Matlab commands and submit your jobs.&lt;br /&gt;
#'''Worker:'''&lt;br /&gt;
#:The worker is and instance of Matlab distributed computing enviornement that runs on Viper in order to perform a calculation for one of the clients. you could submit batch jobs from your clients that runs some simulations in parallel using functions like parfor, you could also run normal Matlab code on it.&lt;br /&gt;
&lt;br /&gt;
==== limitations ====&lt;br /&gt;
submitting a job to Viper has a a lot of overhead. if you are running a small computing task it might take even longer to run on the cluster as there are a lot of time will be lost in communication and transferring your data to Viper then in sometimes your job could be queued and start running in a later time. however in many other cases it will show you a speedup and as a minimum you will be able to free up your client from doing this computation.&lt;br /&gt;
===Run Matlab Job===&lt;br /&gt;
using parallel tool box, you can run your Matlab code on viper using 2 modes:&lt;br /&gt;
*'''Batch job'''&lt;br /&gt;
**This is the main way to utilize the Matlab-viper-plugin. This submit your job to Viper queuing system (SLURM) and send back the results to your client once everything is done.  &lt;br /&gt;
**Very useful for time consuming job that need hours or even days to finish. you will submit your job and you don't need to keep your Matlab running or even the whole computer could be turned off as all your simulation will be running on Viper.&lt;br /&gt;
**'''Create Matlab script'''&lt;br /&gt;
**:this can be either a normal serial script or a paralle one that uses functions like parfor. if you have an exisiting script make sure that the following is done before running it:&lt;br /&gt;
*** remove any parpool commands if any&lt;br /&gt;
***modify the file paths if any is used in your script. consider that all your files will move to the cluster and run **:there so if your script contains a filepath that exisits only on your client it will not be able to find it there. &lt;br /&gt;
**:example: use load ('INPUT_FILE_NAME') instead of load('/INPUT_DIRECTORY_NAME/INPUT_FILE_NAME')&lt;br /&gt;
&lt;br /&gt;
*'''Parallel pool'''&lt;br /&gt;
** Another mode of operation that is easier if you are testing piece of code or running a small job that you expect to finish in few minutes. &lt;br /&gt;
** This requires a running connection to be in place between your computer and viper. at any point you shutdown your Matlab, Wifi or even your laptop everything will be lost and you will need to rerun your code/simulation.&lt;br /&gt;
&lt;br /&gt;
== Further Information ==&lt;br /&gt;
&lt;br /&gt;
* [https://matlabacademy.mathworks.com/ Matlab online courses]&lt;br /&gt;
* [https://uk.mathworks.com/help/distcomp/batch.html/ Batch command documentation]&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_home.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; | &lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;br /&gt;
* [[Programming|Programming support]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2230</id>
		<title>Training/Matlab-Viper-plugin</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2230"/>
		<updated>2018-02-13T09:17:00Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Main concepts */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Matlab viper plugin=&lt;br /&gt;
please note this page is still under development. &lt;br /&gt;
==Introduction==&lt;br /&gt;
There is a feature in Matlab that enables you to submit jobs to clusters directly from your Matlab client (normal desktop Matlab). we were able to develop Matlab-Viper plugin that utilise this feature and integrate Matlab with viper to enable all our Matlab users to submit some Matlab jobs to viper easily without the need to know much about HPC or Linux. Everything could be done from the normal desktop Matlab version that many users are already using. &lt;br /&gt;
This guide should explain more on how to use viper through the Matlab viper plugin. In-general the toolbox that could utilise such integration is the Matlab parallel computing toolbox. we will try to explain the main concepts here and point you to some Mathworks tutorial that you could use and try on viper.&lt;br /&gt;
*If you don't have Matlab-Viper plugin installed and tested on your Matlab contact help@hull.ac.uk or viper@hull.ac.uk and we will help you to install it and configure it.&lt;br /&gt;
*This is only available for Matlab 2017a , we will try to support it for all the upcoming versions starting from 2017a. if you have a special use case that requires the usage of older version you could check the possibility of creating this plugin for it by emailing us : viper@hull.ac.uk&lt;br /&gt;
* This link https://uk.mathworks.com/products/ineligible_programs.html  shows a list of Ineligible programs that couldn't run on Matlab distributed computing server through this plugin.&lt;br /&gt;
&lt;br /&gt;
==Matlab to Viper==&lt;br /&gt;
===Main concepts===&lt;br /&gt;
Before we start we would like to introduce to you some basic concepts in order to be able to use this plugin efficiently.&lt;br /&gt;
&lt;br /&gt;
==== This plugin works by connecting 2 components together:====&lt;br /&gt;
#'''Client:'''&lt;br /&gt;
#:The client could run on your laptop or desktop computer. This is where you will run Matlab commands and submit your jobs.&lt;br /&gt;
#'''Worker:'''&lt;br /&gt;
#:The worker is and instance of Matlab distributed computing enviornement that runs on Viper in order to perform a calculation for one of the clients. you could submit batch jobs from your clients that runs some simulations in parallel using functions like parfor, you could also run normal Matlab code on it.&lt;br /&gt;
&lt;br /&gt;
==== limitations ====&lt;br /&gt;
submitting a job to Viper has a a lot of overhead. if you are running a small computing task it might take even longer to run on the cluster as there are a lot of time will be lost in communication and transferring your data to Viper then in sometimes your job could be queued and start running in a later time. however in many other cases it will show you a speedup and as a minimum you will be able to free up your client from doing this computation.&lt;br /&gt;
===Run Matlab Job===&lt;br /&gt;
using parallel tool box, you can run your Matlab code on viper using 2 modes:&lt;br /&gt;
*'''Batch job'''&lt;br /&gt;
**This is the main way to utilize the Matlab-viper-plugin. This submit your job to Viper queuing system (SLURM) and send back the results to your client once everything is done.  &lt;br /&gt;
**Very useful for time consuming job that need hours or even days to finish. you will submit your job and you don't need to keep your Matlab running or even the whole computer could be turned off as all your simulation will be running on Viper.&lt;br /&gt;
**'''Create Matlab script'''&lt;br /&gt;
**:this can be either a normal serial script or a paralle one that uses functions like parfor. if you have an exisiting script make sure that the following is done before running it:&lt;br /&gt;
*** remove any parpool commands if any&lt;br /&gt;
***modify the file paths if any is used in your script. consider that all your files will move to the cluster and run **:there so if your script contains a filepath that exisits only on your client it will not be able to find it there. &lt;br /&gt;
**:example: use load ('INPUT_FILE_NAME') instead of load('/INPUT_DIRECTORY_NAME/INPUT_FILE_NAME')&lt;br /&gt;
&lt;br /&gt;
*'''Parallel pool'''&lt;br /&gt;
** Another mode of operation that is easier if you are testing piece of code or running a small job that you expect to finish in few minutes. &lt;br /&gt;
** This requires a running connection to be in place between your computer and viper. at any point you shutdown your Matlab, Wifi or even your laptop everything will be lost and you will need to rerun your code/simulation.&lt;br /&gt;
&lt;br /&gt;
== Further Information ==&lt;br /&gt;
&lt;br /&gt;
* [https://matlabacademy.mathworks.com/ Matlab online courses]&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_home.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; | &lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;br /&gt;
* [[Programming|Programming support]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2229</id>
		<title>Training/Matlab-Viper-plugin</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2229"/>
		<updated>2018-02-12T15:47:09Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* limitations */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Matlab viper plugin=&lt;br /&gt;
please note this page is still under development. &lt;br /&gt;
==Introduction==&lt;br /&gt;
There is a feature in Matlab that enables you to submit jobs to clusters directly from your Matlab client (normal desktop Matlab). we were able to develop Matlab-Viper plugin that utilise this feature and integrate Matlab with viper to enable all our Matlab users to submit some Matlab jobs to viper easily without the need to know much about HPC or Linux. Everything could be done from the normal desktop Matlab version that many users are already using. &lt;br /&gt;
This guide should explain more on how to use viper through the Matlab viper plugin. In-general the toolbox that could utilise such integration is the Matlab parallel computing toolbox. we will try to explain the main concepts here and point you to some Mathworks tutorial that you could use and try on viper.&lt;br /&gt;
*If you don't have Matlab-Viper plugin installed and tested on your Matlab contact help@hull.ac.uk or viper@hull.ac.uk and we will help you to install it and configure it.&lt;br /&gt;
*This is only available for Matlab 2017a , we will try to support it for all the upcoming versions starting from 2017a. if you have a special use case that requires the usage of older version you could check the possibility of creating this plugin for it by emailing us : viper@hull.ac.uk&lt;br /&gt;
* This link https://uk.mathworks.com/products/ineligible_programs.html  shows a list of Ineligible programs that couldn't run on Matlab distributed computing server through this plugin.&lt;br /&gt;
&lt;br /&gt;
==Matlab to Viper==&lt;br /&gt;
===Main concepts===&lt;br /&gt;
Before we start we would like to introduce to you some basic concepts in order to be able to use this plugin efficiently.&lt;br /&gt;
&lt;br /&gt;
==== This plugin works by connecting 2 components together:====&lt;br /&gt;
#'''Client:'''&lt;br /&gt;
#:The client could run on your laptop or desktop computer. This is where you will run Matlab commands and submit your jobs.&lt;br /&gt;
#'''Worker:'''&lt;br /&gt;
#:The worker is and instance of Matlab distributed computing enviornement that runs on Viper in order to perform a calculation for one of the clients. you could submit batch jobs from your clients that runs some simulations in parallel using functions like parfor, you could also run normal Matlab code on it.&lt;br /&gt;
&lt;br /&gt;
==== limitations ====&lt;br /&gt;
submitting a job to Viper has a a lot of overhead. if you are running a small computing task it might take even longer to run on the cluster as there are a lot of time will be lost in communication and transferring your data to Viper then in sometimes your job could be queued and start running in a later time. however in many other cases it will show you a speedup and as a minimum you will be able to free up your client from doing this computation.&lt;br /&gt;
&lt;br /&gt;
using parallel tool box, you can run your Matlab code on viper using 2 modes:&lt;br /&gt;
*'''Batch job'''&lt;br /&gt;
**This is the main way to utilize the Matlab-viper-plugin. This submit your job to Viper queuing system (SLURM) and send back the results to your client once everything is done.  &lt;br /&gt;
**Very useful for time consuming job that need hours or even days to finish. you will submit your job and you don't need to keep your Matlab running or even the whole computer could be turned off as all your simulation will be running on Viper.&lt;br /&gt;
**'''Create Matlab script'''&lt;br /&gt;
**:this can be either a normal serial script or a paralle one that uses functions like parfor. if you have an exisiting script make sure that the following is done before running it:&lt;br /&gt;
*** remove any parpool commands if any&lt;br /&gt;
***modify the file paths if any is used in your script. consider that all your files will move to the cluster and run **:there so if your script contains a filepath that exisits only on your client it will not be able to find it there. &lt;br /&gt;
**:example: use load ('INPUT_FILE_NAME') instead of load('/INPUT_DIRECTORY_NAME/INPUT_FILE_NAME')&lt;br /&gt;
&lt;br /&gt;
*'''Parallel pool'''&lt;br /&gt;
** Another mode of operation that is easier if you are testing piece of code or running a small job that you expect to finish in few minutes. &lt;br /&gt;
** This requires a running connection to be in place between your computer and viper. at any point you shutdown your Matlab, Wifi or even your laptop everything will be lost and you will need to rerun your code/simulation.&lt;br /&gt;
&lt;br /&gt;
== Further Information ==&lt;br /&gt;
&lt;br /&gt;
* [https://matlabacademy.mathworks.com/ Matlab online courses]&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_home.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; | &lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;br /&gt;
* [[Programming|Programming support]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2227</id>
		<title>Training/Matlab-Viper-plugin</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2227"/>
		<updated>2018-02-12T14:34:30Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Further Information */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Matlab viper plugin=&lt;br /&gt;
please note this page is still under development. &lt;br /&gt;
==Introduction==&lt;br /&gt;
There is a feature in Matlab that enables you to submit jobs to clusters directly from your Matlab client (normal desktop Matlab). we were able to develop Matlab-Viper plugin that utilise this feature and integrate Matlab with viper to enable all our Matlab users to submit some Matlab jobs to viper easily without the need to know much about HPC or Linux. Everything could be done from the normal desktop Matlab version that many users are already using. &lt;br /&gt;
This guide should explain more on how to use viper through the Matlab viper plugin. In-general the toolbox that could utilise such integration is the Matlab parallel computing toolbox. we will try to explain the main concepts here and point you to some Mathworks tutorial that you could use and try on viper.&lt;br /&gt;
*If you don't have Matlab-Viper plugin installed and tested on your Matlab contact help@hull.ac.uk or viper@hull.ac.uk and we will help you to install it and configure it.&lt;br /&gt;
*This is only available for Matlab 2017a , we will try to support it for all the upcoming versions starting from 2017a. if you have a special use case that requires the usage of older version you could check the possibility of creating this plugin for it by emailing us : viper@hull.ac.uk&lt;br /&gt;
* This link https://uk.mathworks.com/products/ineligible_programs.html  shows a list of Ineligible programs that couldn't run on Matlab distributed computing server through this plugin.&lt;br /&gt;
&lt;br /&gt;
==Matlab to Viper==&lt;br /&gt;
===Main concepts===&lt;br /&gt;
Before we start we would like to introduce to you some basic concepts in order to be able to use this plugin efficiently.&lt;br /&gt;
&lt;br /&gt;
==== This plugin works by connecting 2 components together:====&lt;br /&gt;
#'''Client:'''&lt;br /&gt;
#:The client could run on your laptop or desktop computer. This is where you will run Matlab commands and submit your jobs.&lt;br /&gt;
#'''Worker:'''&lt;br /&gt;
#:The worker is and instance of Matlab distributed computing enviornement that runs on Viper in order to perform a calculation for one of the clients. you could submit batch jobs from your clients that runs some simulations in parallel using functions like parfor, you could also run normal Matlab code on it.&lt;br /&gt;
&lt;br /&gt;
==== limitations ====&lt;br /&gt;
submitting a job to Viper has a a lot of overhead. if you are running a small computing task it might take even longer to run on the cluster as there are a lot of time will be lost in communication and transferring your data to Viper then in sometimes your job could be queued and start running in a later time. however in many other cases it will show you a speedup and as a minimum you will be able to free up your client from doing this computation.&lt;br /&gt;
&lt;br /&gt;
using parallel tool box, you can run your Matlab code on viper using 2 modes:&lt;br /&gt;
*'''Batch job'''&lt;br /&gt;
**This is the main way to utilize the Matlab-viper-plugin. This submit your job to Viper queuing system (SLURM) and send back the results to your client once everything is done.  &lt;br /&gt;
**This is very useful for time consuming job that need hours or even days to finish. you will submit your job and you don't need to keep your Matlab running or even the whole computer could be turned off as all your simulation will be running on Viper.&lt;br /&gt;
&lt;br /&gt;
*'''Parallel pool'''&lt;br /&gt;
** Another mode of operation that is easier if you are testing piece of code or running a small job that you expect to finish in few minutes. &lt;br /&gt;
** This requires a running connection to be in place between your computer and viper. at any point you shutdown your Matlab, Wifi or even your laptop everything will be lost and you will need to rerun your code/simulation.&lt;br /&gt;
&lt;br /&gt;
== Further Information ==&lt;br /&gt;
&lt;br /&gt;
* [https://matlabacademy.mathworks.com/ Matlab online courses]&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_home.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; | &lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;br /&gt;
* [[Programming|Programming support]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2224</id>
		<title>Training/Matlab-Viper-plugin</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2224"/>
		<updated>2018-02-06T16:35:25Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Matlab viper plugin */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Matlab viper plugin=&lt;br /&gt;
please note this page is still under development. &lt;br /&gt;
==Introduction==&lt;br /&gt;
There is a feature in Matlab that enables you to submit jobs to clusters directly from your Matlab client (normal desktop Matlab). we were able to develop Matlab-Viper plugin that utilise this feature and integrate Matlab with viper to enable all our Matlab users to submit some Matlab jobs to viper easily without the need to know much about HPC or Linux. Everything could be done from the normal desktop Matlab version that many users are already using. &lt;br /&gt;
This guide should explain more on how to use viper through the Matlab viper plugin. In-general the toolbox that could utilise such integration is the Matlab parallel computing toolbox. we will try to explain the main concepts here and point you to some Mathworks tutorial that you could use and try on viper.&lt;br /&gt;
*If you don't have Matlab-Viper plugin installed and tested on your Matlab contact help@hull.ac.uk or viper@hull.ac.uk and we will help you to install it and configure it.&lt;br /&gt;
*This is only available for Matlab 2017a , we will try to support it for all the upcoming versions starting from 2017a. if you have a special use case that requires the usage of older version you could check the possibility of creating this plugin for it by emailing us : viper@hull.ac.uk&lt;br /&gt;
* This link https://uk.mathworks.com/products/ineligible_programs.html  shows a list of Ineligible programs that couldn't run on Matlab distributed computing server through this plugin.&lt;br /&gt;
&lt;br /&gt;
==Matlab to Viper==&lt;br /&gt;
===Main concepts===&lt;br /&gt;
Before we start we would like to introduce to you some basic concepts in order to be able to use this plugin efficiently.&lt;br /&gt;
&lt;br /&gt;
==== This plugin works by connecting 2 components together:====&lt;br /&gt;
#'''Client:'''&lt;br /&gt;
#:The client could run on your laptop or desktop computer. This is where you will run Matlab commands and submit your jobs.&lt;br /&gt;
#'''Worker:'''&lt;br /&gt;
#:The worker is and instance of Matlab distributed computing enviornement that runs on Viper in order to perform a calculation for one of the clients. you could submit batch jobs from your clients that runs some simulations in parallel using functions like parfor, you could also run normal Matlab code on it.&lt;br /&gt;
&lt;br /&gt;
==== limitations ====&lt;br /&gt;
submitting a job to Viper has a a lot of overhead. if you are running a small computing task it might take even longer to run on the cluster as there are a lot of time will be lost in communication and transferring your data to Viper then in sometimes your job could be queued and start running in a later time. however in many other cases it will show you a speedup and as a minimum you will be able to free up your client from doing this computation.&lt;br /&gt;
&lt;br /&gt;
using parallel tool box, you can run your Matlab code on viper using 2 modes:&lt;br /&gt;
*'''Batch job'''&lt;br /&gt;
**This is the main way to utilize the Matlab-viper-plugin. This submit your job to Viper queuing system (SLURM) and send back the results to your client once everything is done.  &lt;br /&gt;
**This is very useful for time consuming job that need hours or even days to finish. you will submit your job and you don't need to keep your Matlab running or even the whole computer could be turned off as all your simulation will be running on Viper.&lt;br /&gt;
&lt;br /&gt;
*'''Parallel pool'''&lt;br /&gt;
** Another mode of operation that is easier if you are testing piece of code or running a small job that you expect to finish in few minutes. &lt;br /&gt;
** This requires a running connection to be in place between your computer and viper. at any point you shutdown your Matlab, Wifi or even your laptop everything will be lost and you will need to rerun your code/simulation.&lt;br /&gt;
&lt;br /&gt;
== Further Information ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.ee.surrey.ac.uk/Teaching/Unix/ http://www.ee.surrey.ac.uk/Teaching/Unix/]&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_home.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; | &lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;br /&gt;
* [[Programming|Programming support]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2223</id>
		<title>Training/Matlab-Viper-plugin</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2223"/>
		<updated>2018-01-30T14:49:13Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* This plugin works by connecting 2 components together: */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Matlab viper plugin=&lt;br /&gt;
==Introduction==&lt;br /&gt;
There is a feature in Matlab that enables you to submit jobs to clusters directly from your Matlab client (normal desktop Matlab). we were able to develop Matlab-Viper plugin that utilise this feature and integrate Matlab with viper to enable all our Matlab users to submit some Matlab jobs to viper easily without the need to know much about HPC or Linux. Everything could be done from the normal desktop Matlab version that many users are already using. &lt;br /&gt;
This guide should explain more on how to use viper through the Matlab viper plugin. In-general the toolbox that could utilise such integration is the Matlab parallel computing toolbox. we will try to explain the main concepts here and point you to some Mathworks tutorial that you could use and try on viper.&lt;br /&gt;
*If you don't have Matlab-Viper plugin installed and tested on your Matlab contact help@hull.ac.uk or viper@hull.ac.uk and we will help you to install it and configure it.&lt;br /&gt;
*This is only available for Matlab 2017a , we will try to support it for all the upcoming versions starting from 2017a. if you have a special use case that requires the usage of older version you could check the possibility of creating this plugin for it by emailing us : viper@hull.ac.uk&lt;br /&gt;
* This link https://uk.mathworks.com/products/ineligible_programs.html  shows a list of Ineligible programs that couldn't run on Matlab distributed computing server through this plugin.&lt;br /&gt;
&lt;br /&gt;
==Matlab to Viper==&lt;br /&gt;
===Main concepts===&lt;br /&gt;
Before we start we would like to introduce to you some basic concepts in order to be able to use this plugin efficiently.&lt;br /&gt;
&lt;br /&gt;
==== This plugin works by connecting 2 components together:====&lt;br /&gt;
#'''Client:'''&lt;br /&gt;
#:The client could run on your laptop or desktop computer. This is where you will run Matlab commands and submit your jobs.&lt;br /&gt;
#'''Worker:'''&lt;br /&gt;
#:The worker is and instance of Matlab distributed computing enviornement that runs on Viper in order to perform a calculation for one of the clients. you could submit batch jobs from your clients that runs some simulations in parallel using functions like parfor, you could also run normal Matlab code on it.&lt;br /&gt;
&lt;br /&gt;
==== limitations ====&lt;br /&gt;
submitting a job to Viper has a a lot of overhead. if you are running a small computing task it might take even longer to run on the cluster as there are a lot of time will be lost in communication and transferring your data to Viper then in sometimes your job could be queued and start running in a later time. however in many other cases it will show you a speedup and as a minimum you will be able to free up your client from doing this computation.&lt;br /&gt;
&lt;br /&gt;
using parallel tool box, you can run your Matlab code on viper using 2 modes:&lt;br /&gt;
*'''Batch job'''&lt;br /&gt;
**This is the main way to utilize the Matlab-viper-plugin. This submit your job to Viper queuing system (SLURM) and send back the results to your client once everything is done.  &lt;br /&gt;
**This is very useful for time consuming job that need hours or even days to finish. you will submit your job and you don't need to keep your Matlab running or even the whole computer could be turned off as all your simulation will be running on Viper.&lt;br /&gt;
&lt;br /&gt;
*'''Parallel pool'''&lt;br /&gt;
** Another mode of operation that is easier if you are testing piece of code or running a small job that you expect to finish in few minutes. &lt;br /&gt;
** This requires a running connection to be in place between your computer and viper. at any point you shutdown your Matlab, Wifi or even your laptop everything will be lost and you will need to rerun your code/simulation.&lt;br /&gt;
&lt;br /&gt;
== Further Information ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.ee.surrey.ac.uk/Teaching/Unix/ http://www.ee.surrey.ac.uk/Teaching/Unix/]&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_home.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; | &lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;br /&gt;
* [[Programming|Programming support]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2222</id>
		<title>Training/Matlab-Viper-plugin</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2222"/>
		<updated>2018-01-30T12:27:19Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Matlab to Viper */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Matlab viper plugin=&lt;br /&gt;
==Introduction==&lt;br /&gt;
There is a feature in Matlab that enables you to submit jobs to clusters directly from your Matlab client (normal desktop Matlab). we were able to develop Matlab-Viper plugin that utilise this feature and integrate Matlab with viper to enable all our Matlab users to submit some Matlab jobs to viper easily without the need to know much about HPC or Linux. Everything could be done from the normal desktop Matlab version that many users are already using. &lt;br /&gt;
This guide should explain more on how to use viper through the Matlab viper plugin. In-general the toolbox that could utilise such integration is the Matlab parallel computing toolbox. we will try to explain the main concepts here and point you to some Mathworks tutorial that you could use and try on viper.&lt;br /&gt;
*If you don't have Matlab-Viper plugin installed and tested on your Matlab contact help@hull.ac.uk or viper@hull.ac.uk and we will help you to install it and configure it.&lt;br /&gt;
*This is only available for Matlab 2017a , we will try to support it for all the upcoming versions starting from 2017a. if you have a special use case that requires the usage of older version you could check the possibility of creating this plugin for it by emailing us : viper@hull.ac.uk&lt;br /&gt;
* This link https://uk.mathworks.com/products/ineligible_programs.html  shows a list of Ineligible programs that couldn't run on Matlab distributed computing server through this plugin.&lt;br /&gt;
&lt;br /&gt;
==Matlab to Viper==&lt;br /&gt;
===Main concepts===&lt;br /&gt;
Before we start we would like to introduce to you some basic concepts in order to be able to use this plugin efficiently.&lt;br /&gt;
&lt;br /&gt;
==== This plugin works by connecting 2 components together:====&lt;br /&gt;
#'''Client:'''&lt;br /&gt;
The client could run on your laptop or desktop computer. This is where you will run Matlab commands and submit your jobs.&lt;br /&gt;
#'''Worker:'''&lt;br /&gt;
The worker is and instance of Matlab distributed computing enviornement that runs on Viper in order to perform a calculation for one of the clients. you could submit batch jobs from your clients that runs some simulations in parallel using functions like parfor, you could also run normal Matlab code on it. &lt;br /&gt;
&lt;br /&gt;
==== limitations ====&lt;br /&gt;
submitting a job to Viper has a a lot of overhead. if you are running a small computing task it might take even longer to run on the cluster as there are a lot of time will be lost in communication and transferring your data to Viper then in sometimes your job could be queued and start running in a later time. however in many other cases it will show you a speedup and as a minimum you will be able to free up your client from doing this computation.&lt;br /&gt;
&lt;br /&gt;
using parallel tool box, you can run your Matlab code on viper using 2 modes:&lt;br /&gt;
*'''Batch job'''&lt;br /&gt;
**This is the main way to utilize the Matlab-viper-plugin. This submit your job to Viper queuing system (SLURM) and send back the results to your client once everything is done.  &lt;br /&gt;
**This is very useful for time consuming job that need hours or even days to finish. you will submit your job and you don't need to keep your Matlab running or even the whole computer could be turned off as all your simulation will be running on Viper.&lt;br /&gt;
&lt;br /&gt;
*'''Parallel pool'''&lt;br /&gt;
** Another mode of operation that is easier if you are testing piece of code or running a small job that you expect to finish in few minutes. &lt;br /&gt;
** This requires a running connection to be in place between your computer and viper. at any point you shutdown your Matlab, Wifi or even your laptop everything will be lost and you will need to rerun your code/simulation.&lt;br /&gt;
&lt;br /&gt;
== Further Information ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.ee.surrey.ac.uk/Teaching/Unix/ http://www.ee.surrey.ac.uk/Teaching/Unix/]&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_home.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; | &lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;br /&gt;
* [[Programming|Programming support]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2221</id>
		<title>Training/Matlab-Viper-plugin</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2221"/>
		<updated>2018-01-30T12:05:48Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Matlab to Viper */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Matlab viper plugin=&lt;br /&gt;
==Introduction==&lt;br /&gt;
There is a feature in Matlab that enables you to submit jobs to clusters directly from your Matlab client (normal desktop Matlab). we were able to develop Matlab-Viper plugin that utilise this feature and integrate Matlab with viper to enable all our Matlab users to submit some Matlab jobs to viper easily without the need to know much about HPC or Linux. Everything could be done from the normal desktop Matlab version that many users are already using. &lt;br /&gt;
This guide should explain more on how to use viper through the Matlab viper plugin. In-general the toolbox that could utilise such integration is the Matlab parallel computing toolbox. we will try to explain the main concepts here and point you to some Mathworks tutorial that you could use and try on viper.&lt;br /&gt;
*If you don't have Matlab-Viper plugin installed and tested on your Matlab contact help@hull.ac.uk or viper@hull.ac.uk and we will help you to install it and configure it.&lt;br /&gt;
*This is only available for Matlab 2017a , we will try to support it for all the upcoming versions starting from 2017a. if you have a special use case that requires the usage of older version you could check the possibility of creating this plugin for it by emailing us : viper@hull.ac.uk&lt;br /&gt;
* This link https://uk.mathworks.com/products/ineligible_programs.html  shows a list of Ineligible programs that couldn't run on Matlab distributed computing server through this plugin.&lt;br /&gt;
&lt;br /&gt;
==Matlab to Viper==&lt;br /&gt;
using parallel tool box, you can run your matlab code on viper using 2 modes.&lt;br /&gt;
#'''Batch job'''&lt;br /&gt;
#*This is the main way to utilize the Matlab-viper-plugin. This submit your job to Viper queuing system (SLURM) and send back the results to your client once everything is done.  &lt;br /&gt;
#*This is very useful for time consuming job that need hours or even days to finish. you will submit your job and you don't need to keep your Matlab running or even the whole computer could be turned off as all your simulation will be running on Viper.&lt;br /&gt;
&lt;br /&gt;
# '''Parallel pool'''&lt;br /&gt;
#* Another mode of operation that is easier if you are testing piece of code or running a small job that you expect to finish in few minutes. &lt;br /&gt;
#* This requires a running connection to be in place between your computer and viper. at any point you shutdown your Matlab, Wifi or even your laptop everything will be lost and you will need to rerun your code/simulation.&lt;br /&gt;
&lt;br /&gt;
== Further Information ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.ee.surrey.ac.uk/Teaching/Unix/ http://www.ee.surrey.ac.uk/Teaching/Unix/]&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_home.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; | &lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;br /&gt;
* [[Programming|Programming support]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2220</id>
		<title>Training/Matlab-Viper-plugin</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2220"/>
		<updated>2018-01-30T12:01:59Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Introduction */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Matlab viper plugin=&lt;br /&gt;
==Introduction==&lt;br /&gt;
There is a feature in Matlab that enables you to submit jobs to clusters directly from your Matlab client (normal desktop Matlab). we were able to develop Matlab-Viper plugin that utilise this feature and integrate Matlab with viper to enable all our Matlab users to submit some Matlab jobs to viper easily without the need to know much about HPC or Linux. Everything could be done from the normal desktop Matlab version that many users are already using. &lt;br /&gt;
This guide should explain more on how to use viper through the Matlab viper plugin. In-general the toolbox that could utilise such integration is the Matlab parallel computing toolbox. we will try to explain the main concepts here and point you to some Mathworks tutorial that you could use and try on viper.&lt;br /&gt;
*If you don't have Matlab-Viper plugin installed and tested on your Matlab contact help@hull.ac.uk or viper@hull.ac.uk and we will help you to install it and configure it.&lt;br /&gt;
*This is only available for Matlab 2017a , we will try to support it for all the upcoming versions starting from 2017a. if you have a special use case that requires the usage of older version you could check the possibility of creating this plugin for it by emailing us : viper@hull.ac.uk&lt;br /&gt;
* This link https://uk.mathworks.com/products/ineligible_programs.html  shows a list of Ineligible programs that couldn't run on Matlab distributed computing server through this plugin.&lt;br /&gt;
&lt;br /&gt;
==Matlab to Viper==&lt;br /&gt;
using parallel tool box, you can run your matlab code on viper using 2 modes.&lt;br /&gt;
#'''Batch job'''&lt;br /&gt;
#*This is the main way to utilize the Matlab-viper -plugin. this submit your job to Viper queening system (SLURM) and send back the results to your client once everything is done.  &lt;br /&gt;
#*This is very useful for time consuming job that need hours or even days to finish. you will submit your job and you don't need to keep your Matlab running or even the whole computer could be shutdown.&lt;br /&gt;
# '''Parallel pool'''&lt;br /&gt;
#* Another mode of operation that is easier if you are testing piece of code or running a small job that you expect to finish in few minutes. &lt;br /&gt;
#* This requires a running connection to be in place between your computer and viper. at any point you shutdown your Matlab, Wifi or even your laptop everything will be lost and you will need to rerun your code/simulation.&lt;br /&gt;
&lt;br /&gt;
== Further Information ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.ee.surrey.ac.uk/Teaching/Unix/ http://www.ee.surrey.ac.uk/Teaching/Unix/]&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_home.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; | &lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;br /&gt;
* [[Programming|Programming support]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2215</id>
		<title>Training/Matlab-Viper-plugin</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2215"/>
		<updated>2018-01-26T11:54:20Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Matlab to Viper */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Matlab viper plugin=&lt;br /&gt;
==Introduction==&lt;br /&gt;
There is a feature in Matlab that enables you to submit jobs to clusters directly from your matlab client (normal desktop matlab). we were able to develop Matlab-Viper plugin that utilise this feature and integrate Matlab with viper to enable all our Matlab users to submit some Matlab jobs to viper easily without the need to know much about hpc. Everything could be done from the normal desktop Matlab version that many users are already using. &lt;br /&gt;
This guide should explain more on how to use viper through the Matlab viper plugin. in-general the toolbox that could utilise such integration is the Matlab parallel computing toolbox. we will try to explain the main concepts here and point you to some Mathworks tutorial that you could use and try on viper.&lt;br /&gt;
*If you don't have Matlab-Viper plugin installed and tested on your Matlab contact help@hull.ac.uk or viper@hull.ac.uk and we will help you to install it and configure it.&lt;br /&gt;
*This is only available for Matlab 2017a , we will try to support all the upcoming versions starting from 2017a. if you have a special use case that requires the usage of older version you could check the possibility of creating a plugin for it by emailing us : viper@hull.ac.uk&lt;br /&gt;
* this link https://uk.mathworks.com/products/ineligible_programs.html  shows a list of Ineligible programs that couldn't run on Matlab distributed computing server.&lt;br /&gt;
&lt;br /&gt;
==Matlab to Viper==&lt;br /&gt;
using parallel tool box, you can run your matlab code on viper using 2 modes.&lt;br /&gt;
#'''Batch job'''&lt;br /&gt;
#*This is the main way to utilize the Matlab-viper -plugin. this submit your job to Viper queening system (SLURM) and send back the results to your client once everything is done.  &lt;br /&gt;
#*This is very useful for time consuming job that need hours or even days to finish. you will submit your job and you don't need to keep your Matlab running or even the whole computer could be shutdown.&lt;br /&gt;
# '''Parallel pool'''&lt;br /&gt;
#* Another mode of operation that is easier if you are testing piece of code or running a small job that you expect to finish in few minutes. &lt;br /&gt;
#* This requires a running connection to be in place between your computer and viper. at any point you shutdown your Matlab, Wifi or even your laptop everything will be lost and you will need to rerun your code/simulation.&lt;br /&gt;
&lt;br /&gt;
== Further Information ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.ee.surrey.ac.uk/Teaching/Unix/ http://www.ee.surrey.ac.uk/Teaching/Unix/]&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_home.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; | &lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;br /&gt;
* [[Programming|Programming support]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Linux_-_command_line&amp;diff=2214</id>
		<title>Training/Linux - command line</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Linux_-_command_line&amp;diff=2214"/>
		<updated>2018-01-26T10:31:32Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Further Information */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
&lt;br /&gt;
This represents a series of teaching pages to allow you to learn more about Viper's Linux command line interface&lt;br /&gt;
&lt;br /&gt;
== Command Line ==&lt;br /&gt;
&lt;br /&gt;
Like other operating systems Linux does have a window’s type environment too called X and hopefully in the future its successor Wayland. (Linux refers to X and Wayland with the term Display Server). However, with VIPER the vast majority of work will be carried out on the command line.&lt;br /&gt;
&lt;br /&gt;
The command line in Linux is referred to as a shell. The shell is a program that allows the user to interact with Linux at the command line. In true Linux style there are a few different ones to choose from, however the one used predominantly is BASH. The name BASH is an acronym for “Bourne Again SHell”, a reference to BASH is an enhanced replacement for sh, the original Unix shell program written by Steve Bourne.&lt;br /&gt;
&lt;br /&gt;
Below is an example of Viper's command line interface using the terminal program [http://mobaxterm.mobatek.net/ MobaXterm].&lt;br /&gt;
&lt;br /&gt;
[[File:commandline.jpg]]&lt;br /&gt;
&lt;br /&gt;
== Man pages ==&lt;br /&gt;
&lt;br /&gt;
This will explain the use of man pages (also called manual pages) on Linux. Most Linux files and commands have pretty good man pages to explain their use.&lt;br /&gt;
Type man followed by a command (for which you want help) and start reading. Press q to quit the man page. See below:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ man whois  (shows manual page for the command whois)&lt;br /&gt;
username@viper:~$ man syslog.config  (shows the manual page for a configuration file)&lt;br /&gt;
username@viper:~$ man syslogd (show the manual for a daemon (background program))&lt;br /&gt;
username@viper:~$ man –k syslog  (an apropos which shows a list of available man pages with this string contained within it)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Working with directories ==&lt;br /&gt;
&lt;br /&gt;
As with other operating systems such as Microsoft Windows the filesystem is based around files and directories. Linux is no exception to this and uses a number of commands for the user to navigate around its own filesystem.&lt;br /&gt;
&lt;br /&gt;
This module is a brief overview of the most common commands to work with directories: '''pwd, cd, ls, mkdir''' and '''rmdir'''. These commands are available on any Linux system.&lt;br /&gt;
&lt;br /&gt;
This section will also discuss absolute and relative paths and path completion in the bash shell.&lt;br /&gt;
&lt;br /&gt;
=== pwd ===&lt;br /&gt;
&lt;br /&gt;
On the command line pwd (or print working directory) basically displays the current directory you are in. This would appear as:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ pwd&lt;br /&gt;
/home/dbird&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== cd ===&lt;br /&gt;
&lt;br /&gt;
On the command line cd (or change directory) changes your current directory to the one specified:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ cd /var&lt;br /&gt;
username@viper:~$ pwd&lt;br /&gt;
/var&lt;br /&gt;
username@viper:~$ cd /home/user&lt;br /&gt;
username@viper:~$ pwd&lt;br /&gt;
/home/user&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There is also a shortcut back to your home directory by typing the character ~ (tilda) which has the same effect as typing (for example) /home/user.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ cd ~&lt;br /&gt;
username@viper:~$ pwd&lt;br /&gt;
/home/user&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To go to the directory above (or parent directory), we use the characters ..&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ pwd&lt;br /&gt;
/home/user&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ cd ..&lt;br /&gt;
username@viper:~$ pwd&lt;br /&gt;
/home&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There is also the character . which means the current directory. This is not useful for the cd command but is very useful for copying files to your current directory.&lt;br /&gt;
&lt;br /&gt;
=== Absolute and relative paths ===&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_pencil.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; | Although an important concept to understand the rule here is very simple. When you type a path starting with a slash (/), then the root of the file tree is assumed. If you don't start your path with a slash, then the current directory is the assumed starting point. &lt;br /&gt;
&lt;br /&gt;
Here are two examples, firstly of absolute path:&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ pwd&lt;br /&gt;
/home/user&lt;br /&gt;
&lt;br /&gt;
user@viper:~$ cd /var&lt;br /&gt;
user@viper:~$ pwd&lt;br /&gt;
/var&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And relative path&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ pwd&lt;br /&gt;
/home/user&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ cd myfiles&lt;br /&gt;
username@viper:~$ pwd&lt;br /&gt;
/home/user/myfiles&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The command line will help you in typing a path without errors. If you type a partial command such as:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ cd /home/user/my&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pressing the '''TAB''' key will fill in the rest of the directory name, if that directory exists and it is unique). So the following would appear&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ cd /home/user/myfiles&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== ls ===&lt;br /&gt;
&lt;br /&gt;
This command lists the contents of a directory:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ ls&lt;br /&gt;
myfile1.txt myfile2.txt mydirectory1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''ls''' has a number of useful different options&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ ls –l  (show a long listing with more information)&lt;br /&gt;
username@viper:~$ ls –a  (show all files including those that are hidden)&lt;br /&gt;
username@viper:~$ ls –la  (combines both of the options above)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== mkdir ===&lt;br /&gt;
&lt;br /&gt;
This commands makes a directory from the specified directory:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ mkdir mydirectory1&lt;br /&gt;
username@viper:~$ cd mydirectory1&lt;br /&gt;
username@viper:~$ pwd&lt;br /&gt;
/home/user/mydirectory1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== rmdir ===&lt;br /&gt;
&lt;br /&gt;
This command removes the specified directory, note the directory must be empty and must not be the directory you are currently in:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ rmdir mydirectory1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Working with files ==&lt;br /&gt;
&lt;br /&gt;
In this section we learn how to recognise, create, remove, copy and move files using commands like '''file''', '''touch''', '''rm''', '''cp''', '''mv''' and '''rename'''.&lt;br /&gt;
&lt;br /&gt;
Just before we start looking at these commands we need to cover two important areas:&lt;br /&gt;
&lt;br /&gt;
* Files on Linux are case sensitive. This means that FILE1 is different from file1, and /etc/hosts is different from /etc/Hosts (the latter one does not exist on a typical Linux computer).&lt;br /&gt;
* Everything on Linux is a file. A directory is a special kind of file, but it is still a (case sensitive!) file. Each terminal window (for example /dev/pts/4), any hard disk or partition (for example /dev/sdb1) and any process are all represented somewhere in the file system as a file.&lt;br /&gt;
&lt;br /&gt;
=== file ===&lt;br /&gt;
&lt;br /&gt;
This command determines the file type. Unlike Windows, Linux does not determine the file type from the extension but from examining the file header/contents itself.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ file mypicture.png&lt;br /&gt;
pic33.png: PNG image data, 3840 x 1200, 8-bit/color RGBA, non-interlaced&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ file parallel.c&lt;br /&gt;
parallel.c: ASCII C program text&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== touch ===&lt;br /&gt;
&lt;br /&gt;
This creates an empty file, which can be useful for various uses.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ touch newfile.c&lt;br /&gt;
username@viper:~$ ls&lt;br /&gt;
newfile.c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== rm ===&lt;br /&gt;
&lt;br /&gt;
Remove a file, as always be very careful with this command and without a backup this file will be lost forever.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ ls&lt;br /&gt;
newfile.c backup.c&lt;br /&gt;
username@viper:~$ rm newfile.c&lt;br /&gt;
username@viper:~$ ls&lt;br /&gt;
backup.c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ rm –i backup.c   (this is interactive delete and will ask you to delete the file before it occurs)&lt;br /&gt;
username@viper:~$ rm –r mydirectory   (works recursively down the specified directory but not removing any non-empty directories)&lt;br /&gt;
username@viper:~$ rm –rf mydirectory   (works recursively down the specified directory however the –f option means force. This option is very powerful but also needs to be used with extreme care!)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As with many Linux commands there are a few options with can be used with '''rm''' (these can be view by typing '''man rm''').&lt;br /&gt;
&lt;br /&gt;
=== cp ===&lt;br /&gt;
&lt;br /&gt;
Copy files or directories from a source to a destination:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ cp parallel.c mybackup.c  (copies parallel.c to mybackup.c)&lt;br /&gt;
username@viper:~$ cp parallel.c mydirectory1   (copies parallel.c to mydirectory1)&lt;br /&gt;
username@viper:~$ cp *c backupdirectory/  (copies all *.c files to backupdirectory)&lt;br /&gt;
username@viper:~$ cp –r mydirectory1 mydirectory2  (copies one directory to another, note the option –r for recursive copying)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As with many Linux commands there are a few options with can be used with '''cp''' (these can be view by typing '''man cp''').&lt;br /&gt;
&lt;br /&gt;
=== mv ===&lt;br /&gt;
&lt;br /&gt;
Move files from a source to a destination. A versatile command that can rename a file too:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ mv file1.c testfile.c  (rename file1.c to testfile.c)&lt;br /&gt;
username@viper:~$ mv directory1 directory2  (rename directory)&lt;br /&gt;
username@viper:~$ mv file1.c /home/user/myrepo  (mv file1.c to /home/user/myrepo/file1.c)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== rename ===&lt;br /&gt;
&lt;br /&gt;
Although preferably to use the '''mv''' command, this command does exist to rename files&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ touch file1.c file2.c file3.c&lt;br /&gt;
username@viper:~$ ls&lt;br /&gt;
file1.c file2.c file3.c&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ rename .c .backup *.c&lt;br /&gt;
username@viper:~$ ls&lt;br /&gt;
file1.backup file2.backup file3.backup&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Working with file contents ==&lt;br /&gt;
&lt;br /&gt;
This section will look at working with file contents themselves, such commands are '''head''', '''tail''', '''cat''', '''tac''', '''more''' and '''less'''.&lt;br /&gt;
&lt;br /&gt;
=== head ===&lt;br /&gt;
&lt;br /&gt;
By default head will show the first ten lines of a file.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ head /etc/passwd&lt;br /&gt;
&lt;br /&gt;
root:x:0:0:root:/root:/bin/bash&lt;br /&gt;
daemon:x:1:1:daemon:/usr/sbin:/bin/sh&lt;br /&gt;
bin:x:2:2:bin:/bin:/bin/sh&lt;br /&gt;
sys:x:3:3:sys:/dev:/bin/sh&lt;br /&gt;
sync:x:4:65534:sync:/bin:/bin/sync&lt;br /&gt;
games:x:5:60:games:/usr/games:/bin/sh&lt;br /&gt;
man:x:6:12:man:/var/cache/man:/bin/sh&lt;br /&gt;
lp:x:7:7:lp:/var/spool/lpd:/bin/sh&lt;br /&gt;
mail:x:8:8:mail:/var/mail:/bin/sh&lt;br /&gt;
news:x:9:9:news:/var/spool/news:/bin/sh&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== tail ===&lt;br /&gt;
&lt;br /&gt;
Similar to '''head''' but this time it will show the last 10 lines of file by default.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ tail /etc/services&lt;br /&gt;
vboxd 20012/udp&lt;br /&gt;
binkp 24554/tcp 		# binkp fidonet protocol&lt;br /&gt;
asp 27374/tcp 		# Address Search Protocol&lt;br /&gt;
asp 27374/udp&lt;br /&gt;
csync2 30865/tcp 		# cluster synchronization tool&lt;br /&gt;
dircproxy 57000/tcp 	# Detachable IRC Proxy&lt;br /&gt;
tfido 60177/tcp 		# fidonet EMSI over telnet&lt;br /&gt;
fido 60179/tcp 		# fidonet EMSI over TCP&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== cat ===&lt;br /&gt;
&lt;br /&gt;
The '''cat''' command (short for concatenate) one of the most universal tools, yet all it does is copy standard input to standard output. In combination with the shell this can be very powerful and diverse. Some examples will give a glimpse into the possibilities.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ cat /etc/resolv.conf&lt;br /&gt;
&lt;br /&gt;
domain example.com&lt;br /&gt;
search example.com&lt;br /&gt;
nameserver 192.168.1.42&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ cat file1.c file2.c &amp;gt;file3.all  (concatenate c files into file3.all)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== tac ===&lt;br /&gt;
&lt;br /&gt;
Works the same as '''cat''' but will show you the file backwards:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ cat numbers&lt;br /&gt;
one&lt;br /&gt;
two&lt;br /&gt;
three&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ tac numbers&lt;br /&gt;
three&lt;br /&gt;
two&lt;br /&gt;
one&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== more ===&lt;br /&gt;
&lt;br /&gt;
The more command is useful for displaying files that take up more than one screen. More will allow you to see the contents of the file page by page. Use the space bar to see the next page, or q to quit. Some people prefer the less command to more.&lt;br /&gt;
&lt;br /&gt;
=== less ===&lt;br /&gt;
&lt;br /&gt;
Very similar to more but with some additional features&lt;br /&gt;
&lt;br /&gt;
== Basic Linux Tools ==&lt;br /&gt;
&lt;br /&gt;
This chapter introduces commands to find or locate files and to compress files, together with other common tools that were not discussed before.&lt;br /&gt;
&lt;br /&gt;
=== find ===&lt;br /&gt;
&lt;br /&gt;
This command is very useful to find files, more options are provided on the command line by typing '''man find'''. Here are some useful examples below:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ find /etc   (find all files in the /etc directory)&lt;br /&gt;
username@viper:~$ find . –name “*.conf”   (find all files that end in .conf from the current directory)&lt;br /&gt;
username@viper:~$ find . –newer file1.c   (find all files newer than file1.c)&lt;br /&gt;
username@viper:~$ find /etc &amp;gt;etcfiles.txt   (find all files but this time put them in (pipe) to the file etcfiles.txt)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== locate ===&lt;br /&gt;
&lt;br /&gt;
The '''locate''' command is very different from find in that it uses an index to locate files. This is a lot faster than traversing all the directories, but it also means that it may be outdated too.&lt;br /&gt;
&lt;br /&gt;
=== date ===&lt;br /&gt;
&lt;br /&gt;
The '''date''' command can display the date, time, time zone and more.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ date&lt;br /&gt;
Sat Feb 23 12:44:30 BST 2017&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== cal ===&lt;br /&gt;
&lt;br /&gt;
The '''cal''' command displays the current month, with the current day highlighted.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ cal&lt;br /&gt;
     April 2016&lt;br /&gt;
Su Mo Tu We Th Fr Sa&lt;br /&gt;
                1  2&lt;br /&gt;
 3  4  5  6  7  8  9&lt;br /&gt;
10 11 12 13 14 15 16&lt;br /&gt;
17 18 19 20 21 22 23&lt;br /&gt;
24 25 26 27 28 29 30&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== sleep ===&lt;br /&gt;
&lt;br /&gt;
The '''sleep''' command is sometimes used in scripts to wait a number of seconds. This example shows a five second sleep.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ sleep 5  (five seconds later)&lt;br /&gt;
username@viper:~$&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== sort ===&lt;br /&gt;
&lt;br /&gt;
The command '''sort''' will sort lines of text files. By default the output is to the screen but this can be piped to a file or another program.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ sort myfile.txt&lt;br /&gt;
apple&lt;br /&gt;
banana&lt;br /&gt;
cherry&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== time ===&lt;br /&gt;
&lt;br /&gt;
The time command can display how long it takes to execute a command. The date command takes only a little time.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ time date&lt;br /&gt;
Sat Feb 23 13:08:27 BST 2016&lt;br /&gt;
real 0m0.014s&lt;br /&gt;
user 0m0.008s&lt;br /&gt;
sys 0m0.006s&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== gzip – gunzip ===&lt;br /&gt;
&lt;br /&gt;
This is a useful compression program (like '''zip''' which also exists in Linux). The '''gzip''' command can make files take up less space.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ gzip myfile.c   (will create myfile.c.gz)&lt;br /&gt;
username@viper:~$ gunzip myfile.c.gz   (will create myfile.c again)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== bzip2 – bunzip2 ===&lt;br /&gt;
&lt;br /&gt;
Files can also be compressed with '''bzip2''' which takes a little more time than '''gzip''', but compresses better.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ bzip2 myfile.c  (will create myfile.c.bz2)&lt;br /&gt;
username@viper:~$ bunzip2 myfile.c.bz2  (will create myfile.c again)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== zip – unzip ===&lt;br /&gt;
&lt;br /&gt;
A compression program which is compatible with other '''zip''' programs found in MS Windows and other OSes.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ zip myfile.c   (will create myfile.c.zip)&lt;br /&gt;
username@viper:~$ unzip myfile.c.zip   (will create myfile.c again)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== grep ===&lt;br /&gt;
&lt;br /&gt;
The '''grep''' filter is famous among Linux (and UNIX) users. The most common use of '''grep''' is to filter lines of text containing (or not containing) a certain string.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ grep “Darren” /etc/passwd &lt;br /&gt;
user:x:1000:1000:Darren Bird,,,:/home/user:/bin/bash&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As with most Linux commands there are also a large amount of useful options that will go with each command and '''grep''' is certainly no exception here&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ grep –i “Darren” /etc/passwd  (search in a case insensitive way)&lt;br /&gt;
username@viper:~$ grep –r “Darren” /etc/passwd  (search recursively down any directories too)&lt;br /&gt;
username@viper:~$ grep –v “Darren” /etc/passwd  (search for everything not containing “Darren”)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== wc ===&lt;br /&gt;
&lt;br /&gt;
Counting words, lines and characters is easy with '''wc'''.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ wc myfile.c  (show number of words, lines and characters)&lt;br /&gt;
5 10 100 tennis.txt&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== File Permissions ==&lt;br /&gt;
&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
&lt;br /&gt;
Similar to many other operating systems Linux uses a method of access rights on files and directories. These can be view by using the ls command&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ ls –l   (option l is for long listing)&lt;br /&gt;
&lt;br /&gt;
-rw-r--r--  1 dbird admin    12211 May 11  2016 template.countries&lt;br /&gt;
-rw-r--r--  1 dbird admin     3097 May 11  2016 template.languages    (1)&lt;br /&gt;
drwxr-x---  2 dbird admin     4096 Dec  1 10:54 Templates       (2)&lt;br /&gt;
-rw-r--r--  1 dbird admin     8087 Feb 12 14:05 temp.txt&lt;br /&gt;
-rwx------  1 dbird admin     1110 Mar  8 10:53 test4pisignage.pl    (3)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Each file and directory has access rights that are associated with each one. When we look at the 10 symbol string above on the left hand side (e.g. '''drwxr-xr-x'''). &lt;br /&gt;
&lt;br /&gt;
* The first letter present whether the file is a directory or not. &lt;br /&gt;
* The next three represents the file permission for the user that owns that file (i.e. dbird in this example).&lt;br /&gt;
* The next three represent the file permission of the group to whom that user belongs to (i.e. group admin).&lt;br /&gt;
* The last three represent the file permissions for everyone else (i.e. all users).&lt;br /&gt;
&lt;br /&gt;
For each of the permission parts the letters mean the following in their groups:&lt;br /&gt;
&lt;br /&gt;
* r indicates read permission to read and copy the file, its absence indicates this is not available.&lt;br /&gt;
* w indicates write permission to write the file, its absence indicates this is not available.&lt;br /&gt;
* x indicates execution permission to allow the file to be executed, its absence indicates this is not available.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using the example above would mean:&lt;br /&gt;
&lt;br /&gt;
* Example '''(1)''' has read/write access for user dbird and read access only for everyone else.&lt;br /&gt;
* Example '''(2)''' is a directory with full access for user dbird and read access for only users in the admin group.&lt;br /&gt;
* Example '''(3)''' is an application which is only accessible by the user dbird, note not only is it read and write but it also has its ‘execution’ permission set for that user also.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Changing access rights ===&lt;br /&gt;
&lt;br /&gt;
This command allows the user to change file (and directory) permissions.&lt;br /&gt;
&lt;br /&gt;
* u	User&lt;br /&gt;
* g	Group&lt;br /&gt;
* o	Other&lt;br /&gt;
* a	All&lt;br /&gt;
* r	Read&lt;br /&gt;
* w	Write (and erase)&lt;br /&gt;
* x	Execution (and access directory&lt;br /&gt;
* +	Add permission&lt;br /&gt;
* -	Remove permission&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
username@viper:~$ chmod go-rwx myfile.c   (remove read, write and execute permissions removed for group and other)&lt;br /&gt;
username@viper:~$ chmod u+x myapp.pl   (make the program myapp.pl executable to user (i.e. the owner of the file))&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Information ==&lt;br /&gt;
&lt;br /&gt;
* [https://uk.mathworks.com/products/parallel-computing.html?s_tid=srchtitle Mathworks parallel computing toolbox home page]&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_home.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; | &lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;br /&gt;
* [[Programming|Programming support]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2213</id>
		<title>Training/Matlab-Viper-plugin</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2213"/>
		<updated>2018-01-23T17:35:12Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Introduction */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Matlab viper plugin=&lt;br /&gt;
==Introduction==&lt;br /&gt;
There is a feature in Matlab that enables you to submit jobs to clusters directly from your matlab client (normal desktop matlab). we were able to develop Matlab-Viper plugin that utilise this feature and integrate Matlab with viper to enable all our Matlab users to submit some Matlab jobs to viper easily without the need to know much about hpc. Everything could be done from the normal desktop Matlab version that many users are already using. &lt;br /&gt;
This guide should explain more on how to use viper through the Matlab viper plugin. in-general the toolbox that could utilise such integration is the Matlab parallel computing toolbox. we will try to explain the main concepts here and point you to some Mathworks tutorial that you could use and try on viper.&lt;br /&gt;
*If you don't have Matlab-Viper plugin installed and tested on your Matlab contact help@hull.ac.uk or viper@hull.ac.uk and we will help you to install it and configure it.&lt;br /&gt;
*This is only available for Matlab 2017a , we will try to support all the upcoming versions starting from 2017a. if you have a special use case that requires the usage of older version you could check the possibility of creating a plugin for it by emailing us : viper@hull.ac.uk&lt;br /&gt;
* this link https://uk.mathworks.com/products/ineligible_programs.html  shows a list of Ineligible programs that couldn't run on Matlab distributed computing server.&lt;br /&gt;
&lt;br /&gt;
==Matlab to Viper==&lt;br /&gt;
using parallel tool box, you can run your matlab code on viper using 2 modes.&lt;br /&gt;
#'''Batch job'''&lt;br /&gt;
#*This is the main way to utilize the Matlab-viper -plugin. this submit your job to Viper queening system (SLURM) and send back the results to your client once everything is done.  &lt;br /&gt;
#*This is very useful for time consuming job that need hours or even days to finish. you will submit your job and you don't need to keep your Matlab running or even the whole computer could be shutdown.&lt;br /&gt;
# '''Parallel pool'''&lt;br /&gt;
#* Another mode of operation that is easier if you are testing piece of code or running a small job that you expect to finish in few minutes. &lt;br /&gt;
#* This requires a running connection to be in place between your computer and viper. at any point you shutdown your Matlab, Wifi or even your laptop everything will be lost and you will need to rerun your code/simulation.&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2212</id>
		<title>Training/Matlab-Viper-plugin</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2212"/>
		<updated>2018-01-22T16:16:56Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Matlab to Viper */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Matlab viper plugin=&lt;br /&gt;
==Introduction==&lt;br /&gt;
There is a feature in Matlab that enables you to submit jobs to clusters directly from your matlab client (normal desktop matlab). we were able to develop Matlab-Viper plugin that utilise this feature and integrate Matlab with viper to enable all our Matlab users to submit some Matlab jobs to viper easily without the need to know much about hpc. Everything could be done from the normal desktop Matlab version that many users are already using. &lt;br /&gt;
This guide should explain more on how to use viper through the Matlab viper plugin. in-general the toolbox that could utilise such integration is the Matlab parallel computing toolbox. we will try to explain the main concepts here and point you to some Mathworks tutorial that you could use and try on viper.&lt;br /&gt;
*If you don't have Matlab-Viper plugin installed and tested on your Matlab contact help@hull.ac.uk or viper@hull.ac.uk and we will help you to install it and configure it.&lt;br /&gt;
*This is only available for Matlab 2017a , we will try to support all the upcoming versions starting from 2017a. if you have a special use case that requires the usage of older version you could check the possibility of creating a plugin for it by emailing us : viper@hull.ac.uk&lt;br /&gt;
==Matlab to Viper==&lt;br /&gt;
using parallel tool box, you can run your matlab code on viper using 2 modes.&lt;br /&gt;
#'''Batch job'''&lt;br /&gt;
#*This is the main way to utilize the Matlab-viper -plugin. this submit your job to Viper queening system (SLURM) and send back the results to your client once everything is done.  &lt;br /&gt;
#*This is very useful for time consuming job that need hours or even days to finish. you will submit your job and you don't need to keep your Matlab running or even the whole computer could be shutdown.&lt;br /&gt;
# '''Parallel pool'''&lt;br /&gt;
#* Another mode of operation that is easier if you are testing piece of code or running a small job that you expect to finish in few minutes. &lt;br /&gt;
#* This requires a running connection to be in place between your computer and viper. at any point you shutdown your Matlab, Wifi or even your laptop everything will be lost and you will need to rerun your code/simulation.&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2211</id>
		<title>Training/Matlab-Viper-plugin</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2211"/>
		<updated>2018-01-22T11:01:41Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Matlab to Viper */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Matlab viper plugin=&lt;br /&gt;
==Introduction==&lt;br /&gt;
There is a feature in Matlab that enables you to submit jobs to clusters directly from your matlab client (normal desktop matlab). we were able to develop Matlab-Viper plugin that utilise this feature and integrate Matlab with viper to enable all our Matlab users to submit some Matlab jobs to viper easily without the need to know much about hpc. Everything could be done from the normal desktop Matlab version that many users are already using. &lt;br /&gt;
This guide should explain more on how to use viper through the Matlab viper plugin. in-general the toolbox that could utilise such integration is the Matlab parallel computing toolbox. we will try to explain the main concepts here and point you to some Mathworks tutorial that you could use and try on viper.&lt;br /&gt;
*If you don't have Matlab-Viper plugin installed and tested on your Matlab contact help@hull.ac.uk or viper@hull.ac.uk and we will help you to install it and configure it.&lt;br /&gt;
*This is only available for Matlab 2017a , we will try to support all the upcoming versions starting from 2017a. if you have a special use case that requires the usage of older version you could check the possibility of creating a plugin for it by emailing us : viper@hull.ac.uk&lt;br /&gt;
==Matlab to Viper==&lt;br /&gt;
using parallel tool box, you can run your matlab code on viper using 2 modes.&lt;br /&gt;
#Batch job.&lt;br /&gt;
#*this is the main way to utilize the Matlab-viper -plugin. this submit your job to Viper queening system (SLURM) and send back the results to your client once everything is done.  &lt;br /&gt;
#*this is very useful for time consuming job that need hours or even days to finish. you will submit your job and you don't need to keep your Matlab running or even the whole computer could be shutdown.&lt;br /&gt;
#Parallel pool.&lt;br /&gt;
#* This is nother ode of operation that is easier if you are testing piece of code or running a small job that you expect to finish in few minutes. &lt;br /&gt;
#* thsi equires a running connection to be in place between your computer and viper. at anypoint you shutdown your Matlab, Wifi or even your laptop everything will be lost and you will need to rerun your code/simulation.&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2210</id>
		<title>Training/Matlab-Viper-plugin</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2210"/>
		<updated>2018-01-19T16:39:03Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Introduction */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Matlab viper plugin=&lt;br /&gt;
==Introduction==&lt;br /&gt;
There is a feature in Matlab that enables you to submit jobs to clusters directly from your matlab client (normal desktop matlab). we were able to develop Matlab-Viper plugin that utilise this feature and integrate Matlab with viper to enable all our Matlab users to submit some Matlab jobs to viper easily without the need to know much about hpc. Everything could be done from the normal desktop Matlab version that many users are already using. &lt;br /&gt;
This guide should explain more on how to use viper through the Matlab viper plugin. in-general the toolbox that could utilise such integration is the Matlab parallel computing toolbox. we will try to explain the main concepts here and point you to some Mathworks tutorial that you could use and try on viper.&lt;br /&gt;
*If you don't have Matlab-Viper plugin installed and tested on your Matlab contact help@hull.ac.uk or viper@hull.ac.uk and we will help you to install it and configure it.&lt;br /&gt;
*This is only available for Matlab 2017a , we will try to support all the upcoming versions starting from 2017a. if you have a special use case that requires the usage of older version you could check the possibility of creating a plugin for it by emailing us : viper@hull.ac.uk&lt;br /&gt;
==Matlab to Viper==&lt;br /&gt;
using parallel tool box, you can run your matlab code on viper using 2 modes.&lt;br /&gt;
#parallel pool.&lt;br /&gt;
#batch job&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2209</id>
		<title>Training/Matlab-Viper-plugin</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2209"/>
		<updated>2018-01-19T16:02:28Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Introduction */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Matlab viper plugin=&lt;br /&gt;
==Introduction==&lt;br /&gt;
There is a feature in Matlab that enables you to submit jobs to clusters directly from your matlab client (normal desktop matlab). we were able to develop Matlab-Viper plugin that utilise this feature and integrate Matlab with viper to enable all our Matlab users to submit some Matlab jobs to viper easily without the need to know much about hpc. Everything could be done from the normal desktop Matlab version that many users are already using. &lt;br /&gt;
This guide should explain more on how to use viper through the Matlab viper plugin. in-general the toolbox that could utilise such integration is the Matlab parallel computing toolbox. we will try to explain the main concepts here and point you to some Mathworks tutorial that you could use and try on viper.&lt;br /&gt;
*If you don't have Matlab-Viper plugin installed and tested on your Matlab contact help@hull.ac.uk or viper@hull.ac.uk and we will help you to install it and configure it.&lt;br /&gt;
*This is only available for Matlab 2017a , we will try to support all the upcoming versions starting from 2017a. if you have a special use case that requires the usage of older version you could check the possibility of creating a plugin for it by emailing us : viper@hull.ac.uk&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2208</id>
		<title>Training/Matlab-Viper-plugin</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2208"/>
		<updated>2018-01-19T14:29:42Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* introduction */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Matlab viper plugin=&lt;br /&gt;
==Introduction==&lt;br /&gt;
There is a feature in Matlab that enables you to submit jobs to clusters directly from your matlab client (normal desktop matlab). we were able to develop Matlab-Viper plugin that utilise this feature and integrate Matlab with viper to enable all our Matlab users to submit some Matlab jobs to viper easily without the need to know much about hpc. Everything could be done from the normal desktop Matlab version that many users are already using. &lt;br /&gt;
This guide should explain more on how to use viper through the Matlab viper plugin. in-general the toolbox that could utilise such integration is the Matlab parallel computing toolbox. we will try to explain the main concepts here and point you to some Mathworks tutorial that you could use and try on viper.&lt;br /&gt;
If you don't have Matlab-Viper plugin installed and tested on your Matlab contact help@hull.ac.uk or viper@hull.ac.uk and we will help you to install it and configure it.&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2207</id>
		<title>Training/Matlab-Viper-plugin</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-Viper-plugin&amp;diff=2207"/>
		<updated>2018-01-19T14:29:29Z</updated>

		<summary type="html">&lt;p&gt;Seif: Created page with &amp;quot;=Matlab viper plugin= ==introduction== There is a feature in Matlab that enables you to submit jobs to clusters directly from your matlab client (normal desktop matlab). we we...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Matlab viper plugin=&lt;br /&gt;
==introduction==&lt;br /&gt;
There is a feature in Matlab that enables you to submit jobs to clusters directly from your matlab client (normal desktop matlab). we were able to develop Matlab-Viper plugin that utilise this feature and integrate Matlab with viper to enable all our Matlab users to submit some Matlab jobs to viper easily without the need to know much about hpc. Everything could be done from the normal desktop Matlab version that many users are already using. &lt;br /&gt;
This guide should explain more on how to use viper through the Matlab viper plugin. in-general the toolbox that could utilise such integration is the Matlab parallel computing toolbox. we will try to explain the main concepts here and point you to some Mathworks tutorial that you could use and try on viper.&lt;br /&gt;
If you don't have Matlab-Viper plugin installed and tested on your Matlab contact help@hull.ac.uk or viper@hull.ac.uk and we will help you to install it and configure it.&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Training&amp;diff=2206</id>
		<title>Training</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Training&amp;diff=2206"/>
		<updated>2018-01-19T14:20:57Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Training */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Training ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
| style=&amp;quot;width:25%&amp;quot; | &amp;lt;Strong&amp;gt;Training Area&amp;lt;/Strong&amp;gt;&lt;br /&gt;
| style=&amp;quot;width:75%&amp;quot; | &amp;lt;Strong&amp;gt;Description&amp;lt;/Strong&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| [[Training/Getting Connected|Getting Connected]]&lt;br /&gt;
| Learn how to connect to Viper&lt;br /&gt;
|-&lt;br /&gt;
| [[Training/XQuartz|XQuartz - macOS X11 ]]&lt;br /&gt;
| Learn how to enable X11 window support on macOS&lt;br /&gt;
|-&lt;br /&gt;
| [[Training/X2Go macOS|X2Go - macOS]]&lt;br /&gt;
| Learn how to install X2Go on macOS for use with Viper's Visualisation Nodes&lt;br /&gt;
|-&lt;br /&gt;
| [[Training/Transferring Data|Transferring Data]]&lt;br /&gt;
| Learn how to download and upload data.&lt;br /&gt;
|-&lt;br /&gt;
| [[Training/Working Remotely on Viper|Working Remotely on Viper]]&lt;br /&gt;
| Learn how to remotely connect to Viper.&lt;br /&gt;
|-&lt;br /&gt;
| [[Training/Linux - command line|Linux command line]]&lt;br /&gt;
| Learn the Linux command line with this extensive guide.&lt;br /&gt;
|-&lt;br /&gt;
| [[Training/Linux_-_vi_editor|Linux vi editor]]&lt;br /&gt;
| Learn the Linux editor vi for editing files&lt;br /&gt;
|-&lt;br /&gt;
| [[Training/Linux - Nano editor|Linux nano editor]]&lt;br /&gt;
| Learn the Linux editor nano for editing files&lt;br /&gt;
|-&lt;br /&gt;
| [[Training/Matlab-Viper-plugin|parallel computing in matlab]]&lt;br /&gt;
| Learn about Matlab parallel toolbox that speed up your calculations on viper.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[Libraries|Library support]]&lt;br /&gt;
* [[Programming|Development support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-add-on&amp;diff=2205</id>
		<title>Training/Matlab-add-on</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Training/Matlab-add-on&amp;diff=2205"/>
		<updated>2018-01-19T12:19:58Z</updated>

		<summary type="html">&lt;p&gt;Seif: Created page with &amp;quot;=Matlab viper plugin= ==introduction== There is a feature in Matlab that enables you to submit jobs to clusters directly from your matlab client (normal desktop matlab). we we...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Matlab viper plugin=&lt;br /&gt;
==introduction==&lt;br /&gt;
There is a feature in Matlab that enables you to submit jobs to clusters directly from your matlab client (normal desktop matlab). we were able to develop Matlab-Viper plugin that utilise this feature and integrate Matlab with viper to enable all our Matlab users to submit some Matlab jobs to viper easily without the need to know much about hpc. Everything could be done from the normal desktop Matlab version that many users are already using. &lt;br /&gt;
This guide should explain more on how to use viper through the Matlab viper plugin. in-general the toolbox that could utilise such integration is the Matlab parallel computing toolbox. we will try to explain the main concepts here and point you to some Mathworks tutorial that you could use and try on viper.&lt;br /&gt;
If you don't have Matlab-Viper plugin installed and tested on your Matlab contact help@hull.ac.uk or viper@hull.ac.uk and we will help you to install it and configure it.&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Training&amp;diff=2204</id>
		<title>Training</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Training&amp;diff=2204"/>
		<updated>2018-01-18T14:49:35Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Training */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Training ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
| style=&amp;quot;width:25%&amp;quot; | &amp;lt;Strong&amp;gt;Training Area&amp;lt;/Strong&amp;gt;&lt;br /&gt;
| style=&amp;quot;width:75%&amp;quot; | &amp;lt;Strong&amp;gt;Description&amp;lt;/Strong&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| [[Training/Getting Connected|Getting Connected]]&lt;br /&gt;
| Learn how to connect to Viper&lt;br /&gt;
|-&lt;br /&gt;
| [[Training/XQuartz|XQuartz - macOS X11 ]]&lt;br /&gt;
| Learn how to enable X11 window support on macOS&lt;br /&gt;
|-&lt;br /&gt;
| [[Training/X2Go macOS|X2Go - macOS]]&lt;br /&gt;
| Learn how to install X2Go on macOS for use with Viper's Visualisation Nodes&lt;br /&gt;
|-&lt;br /&gt;
| [[Training/Transferring Data|Transferring Data]]&lt;br /&gt;
| Learn how to download and upload data.&lt;br /&gt;
|-&lt;br /&gt;
| [[Training/Working Remotely on Viper|Working Remotely on Viper]]&lt;br /&gt;
| Learn how to remotely connect to Viper.&lt;br /&gt;
|-&lt;br /&gt;
| [[Training/Linux - command line|Linux command line]]&lt;br /&gt;
| Learn the Linux command line with this extensive guide.&lt;br /&gt;
|-&lt;br /&gt;
| [[Training/Linux_-_vi_editor|Linux vi editor]]&lt;br /&gt;
| Learn the Linux editor vi for editing files&lt;br /&gt;
|-&lt;br /&gt;
| [[Training/Linux - Nano editor|Linux nano editor]]&lt;br /&gt;
| Learn the Linux editor nano for editing files&lt;br /&gt;
|-&lt;br /&gt;
| [[Training/Matlab-add-on|parallel computing in matlab]]&lt;br /&gt;
| Learn about Matlab parallel toolbox that speed up your calculations on viper.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[Libraries|Library support]]&lt;br /&gt;
* [[Programming|Development support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications/RaXML&amp;diff=2080</id>
		<title>Applications/RaXML</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications/RaXML&amp;diff=2080"/>
		<updated>2017-11-16T17:11:02Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Interactive */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Application Details==&lt;br /&gt;
*A tool for Phylogenetic Analysis and Post-Analysis of Large Phylogenies.&lt;br /&gt;
*Version: MPI AVX 8.2.11&lt;br /&gt;
*Licence:  Open source&lt;br /&gt;
&lt;br /&gt;
==usage==&lt;br /&gt;
===Interactive===&lt;br /&gt;
&lt;br /&gt;
While logged into viper login node:&lt;br /&gt;
you could find the example file used in this path /home/ViperAdmin/software/source/iqtree/iqtree-mpi-1.4.4-Linux/example.phy copy it to the location where you would like to run the below steps&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
[username@login01 ~]$ interactive&lt;br /&gt;
salloc: Granted job allocation 296769&lt;br /&gt;
Job ID 296769 connecting to c170, please wait...&lt;br /&gt;
Last login: Wed Jan 25 09:10:51 2017 from 10.254.5.246&lt;br /&gt;
[username@c170 ~]$ module add openmpi/gcc/1.10.2&lt;br /&gt;
[username@c170 ~]$ /trinity/clustervision/CentOS/7/apps/raxml/8.2.11/openmpi-1.10.2/gcc-4.9.3/bin/raxmlHPC-MPI-AVX -N 10 -m GTRCAT -s myalign.phy -n myalign.phy pause &lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Batch Session====&lt;br /&gt;
&lt;br /&gt;
Below is how to submit the same example using our scheduler slurm.&lt;br /&gt;
please replace /home/USERNAME/PATH/OF/DIR to the path of the directory where you copied the example.phy file or to the file that you want to use.&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #E5E4E2; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
#SBATCH -J raxml_example   # Job name, you can change it to whatever you want&lt;br /&gt;
#SBATCH -o %N.%j.out        # Standard output will be written here&lt;br /&gt;
#SBATCH -e %N.%j.err        # Standard error will be written here&lt;br /&gt;
#SBATCH -n 14               # number of cores&lt;br /&gt;
#SBATCH -N 1                # Number of nodes&lt;br /&gt;
#SBATCH -p highmem          # Slurm partition, where you want the job to be queued&lt;br /&gt;
#SBATCH --exclusive         # Request exclusive access to a node (all 28 cores, 128GB of RAM)&lt;br /&gt;
&lt;br /&gt;
module load openmpi/gcc/1.10.2&lt;br /&gt;
cd /home/USERNAME/PATH/OF/DIR&lt;br /&gt;
/trinity/clustervision/CentOS/7/apps/raxml/8.2.11/openmpi-1.10.2/gcc-4.9.3/bin/raxmlHPC-MPI-AVX -N 10 -m GTRCAT -s myalign.phy -n myalign.phy pause&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then the next step is to submit the above script to slurm&lt;br /&gt;
for example if you name the above text file raxml.sh &lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[user@login01 ~]$ sbatch raxml.sh&lt;br /&gt;
Submitted batch job 409671&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Further Information==&lt;br /&gt;
&lt;br /&gt;
* https://sco.h-its.org/exelixis/web/software/raxml/cluster.html&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_home.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; | &lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;br /&gt;
* [[Programming|Programming support]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications/RaXML&amp;diff=2079</id>
		<title>Applications/RaXML</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications/RaXML&amp;diff=2079"/>
		<updated>2017-11-16T17:10:52Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Batch Session */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Application Details==&lt;br /&gt;
*A tool for Phylogenetic Analysis and Post-Analysis of Large Phylogenies.&lt;br /&gt;
*Version: MPI AVX 8.2.11&lt;br /&gt;
*Licence:  Open source&lt;br /&gt;
&lt;br /&gt;
===Interactive===&lt;br /&gt;
&lt;br /&gt;
While logged into viper login node:&lt;br /&gt;
you could find the example file used in this path /home/ViperAdmin/software/source/iqtree/iqtree-mpi-1.4.4-Linux/example.phy copy it to the location where you would like to run the below steps&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
[username@login01 ~]$ interactive&lt;br /&gt;
salloc: Granted job allocation 296769&lt;br /&gt;
Job ID 296769 connecting to c170, please wait...&lt;br /&gt;
Last login: Wed Jan 25 09:10:51 2017 from 10.254.5.246&lt;br /&gt;
[username@c170 ~]$ module add openmpi/gcc/1.10.2&lt;br /&gt;
[username@c170 ~]$ /trinity/clustervision/CentOS/7/apps/raxml/8.2.11/openmpi-1.10.2/gcc-4.9.3/bin/raxmlHPC-MPI-AVX -N 10 -m GTRCAT -s myalign.phy -n myalign.phy pause &lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Batch Session====&lt;br /&gt;
&lt;br /&gt;
Below is how to submit the same example using our scheduler slurm.&lt;br /&gt;
please replace /home/USERNAME/PATH/OF/DIR to the path of the directory where you copied the example.phy file or to the file that you want to use.&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #E5E4E2; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
#SBATCH -J raxml_example   # Job name, you can change it to whatever you want&lt;br /&gt;
#SBATCH -o %N.%j.out        # Standard output will be written here&lt;br /&gt;
#SBATCH -e %N.%j.err        # Standard error will be written here&lt;br /&gt;
#SBATCH -n 14               # number of cores&lt;br /&gt;
#SBATCH -N 1                # Number of nodes&lt;br /&gt;
#SBATCH -p highmem          # Slurm partition, where you want the job to be queued&lt;br /&gt;
#SBATCH --exclusive         # Request exclusive access to a node (all 28 cores, 128GB of RAM)&lt;br /&gt;
&lt;br /&gt;
module load openmpi/gcc/1.10.2&lt;br /&gt;
cd /home/USERNAME/PATH/OF/DIR&lt;br /&gt;
/trinity/clustervision/CentOS/7/apps/raxml/8.2.11/openmpi-1.10.2/gcc-4.9.3/bin/raxmlHPC-MPI-AVX -N 10 -m GTRCAT -s myalign.phy -n myalign.phy pause&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then the next step is to submit the above script to slurm&lt;br /&gt;
for example if you name the above text file raxml.sh &lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[user@login01 ~]$ sbatch raxml.sh&lt;br /&gt;
Submitted batch job 409671&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
==Further Information==&lt;br /&gt;
&lt;br /&gt;
* https://sco.h-its.org/exelixis/web/software/raxml/cluster.html&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_home.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; | &lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;br /&gt;
* [[Programming|Programming support]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications/iqtree&amp;diff=2078</id>
		<title>Applications/iqtree</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications/iqtree&amp;diff=2078"/>
		<updated>2017-11-16T17:09:11Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Application Details */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Application Details==&lt;br /&gt;
*Description: Allows maximum likelihood analysis of large phylogenetic data. IQ-TREE explores the tree space efficiently and often achieves higher likelihoods than RAxML and PhyML. Other key features of IQ-TREE are (i) very fast model selection procedure including partition scheme finding, (ii) partitioned analysis for phylogenomic data, (iii) ultrafast bootstrap approximation, (iv) implementation of several branch tests and (v) tree topology tests. W-IQ-TREE an intuitive and user-friendly web interface and server for IQ-TREE is also available.&lt;br /&gt;
*Version: MPI 1.4.4&lt;br /&gt;
*Licence: Open source&lt;br /&gt;
&lt;br /&gt;
==usage==&lt;br /&gt;
&lt;br /&gt;
===Interactive===&lt;br /&gt;
&lt;br /&gt;
While logged into viper login node:&lt;br /&gt;
you could find the example file used in this path /home/ViperAdmin/software/source/iqtree/iqtree-mpi-1.4.4-Linux/example.phy copy it to the location where you would like to run the below steps&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
[username@login01 ~]$ interactive&lt;br /&gt;
salloc: Granted job allocation 296769&lt;br /&gt;
Job ID 296769 connecting to c170, please wait...&lt;br /&gt;
Last login: Wed Jan 25 09:10:51 2017 from 10.254.5.246&lt;br /&gt;
[username@c170 ~]$ module add openmpi/gcc/1.10.2&lt;br /&gt;
[username@c170 ~]$ mpirun  /trinity/clustervision/CentOS/7/apps/iqtree/1.4.4/openmpi-1.10.2/gcc-4.9.3/bin/iqtree-mpi -s example.phy&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Batch Session====&lt;br /&gt;
&lt;br /&gt;
Below is how to submit the same example using our scheduler slurm.&lt;br /&gt;
please replace /home/USERNAME/PATH/OF/DIR to the path of the directory where you copied the example.phy file or to the file that you want to use.&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #E5E4E2; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
#SBATCH -J IQtree_example   # Job name, you can change it to whatever you want&lt;br /&gt;
#SBATCH -o %N.%j.out        # Standard output will be written here&lt;br /&gt;
#SBATCH -e %N.%j.err        # Standard error will be written here&lt;br /&gt;
#SBATCH -n 14               # number of cores&lt;br /&gt;
#SBATCH -N 1                # Number of nodes&lt;br /&gt;
#SBATCH -p highmem          # Slurm partition, where you want the job to be queued&lt;br /&gt;
#SBATCH --exclusive         # Request exclusive access to a node (all 28 cores, 128GB of RAM)&lt;br /&gt;
&lt;br /&gt;
module load openmpi/gcc/1.10.2&lt;br /&gt;
cd /home/USERNAME/PATH/OF/DIR&lt;br /&gt;
mpirun  /trinity/clustervision/CentOS/7/apps/iqtree/1.4.4/openmpi-1.10.2/gcc-4.9.3/bin/iqtree-mpi -s example.phy&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then the next step is to submit the above script to slurm&lt;br /&gt;
for example if you name the above text file iqtree.sh &lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[user@login01 ~]$ sbatch iqtree.sh&lt;br /&gt;
Submitted batch job 409671&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Further Information==&lt;br /&gt;
&lt;br /&gt;
* http://www.iqtree.org/doc/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_home.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; | &lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;br /&gt;
* [[Programming|Programming support]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications/RaXML&amp;diff=2077</id>
		<title>Applications/RaXML</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications/RaXML&amp;diff=2077"/>
		<updated>2017-11-16T17:05:52Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Interactive */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Application Details==&lt;br /&gt;
*A tool for Phylogenetic Analysis and Post-Analysis of Large Phylogenies.&lt;br /&gt;
*Version: MPI AVX 8.2.11&lt;br /&gt;
*Licence:  Open source&lt;br /&gt;
&lt;br /&gt;
===Interactive===&lt;br /&gt;
&lt;br /&gt;
While logged into viper login node:&lt;br /&gt;
you could find the example file used in this path /home/ViperAdmin/software/source/iqtree/iqtree-mpi-1.4.4-Linux/example.phy copy it to the location where you would like to run the below steps&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
[username@login01 ~]$ interactive&lt;br /&gt;
salloc: Granted job allocation 296769&lt;br /&gt;
Job ID 296769 connecting to c170, please wait...&lt;br /&gt;
Last login: Wed Jan 25 09:10:51 2017 from 10.254.5.246&lt;br /&gt;
[username@c170 ~]$ module add openmpi/gcc/1.10.2&lt;br /&gt;
[username@c170 ~]$ /trinity/clustervision/CentOS/7/apps/raxml/8.2.11/openmpi-1.10.2/gcc-4.9.3/bin/raxmlHPC-MPI-AVX -N 10 -m GTRCAT -s myalign.phy -n myalign.phy pause &lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Batch Session====&lt;br /&gt;
&lt;br /&gt;
Below is how to submit the same example using our scheduler slurm.&lt;br /&gt;
please replace /home/USERNAME/PATH/OF/DIR to the path of the directory where you copied the example.phy file or to the file that you want to use.&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #E5E4E2; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
#SBATCH -J raxml_example   # Job name, you can change it to whatever you want&lt;br /&gt;
#SBATCH -o %N.%j.out        # Standard output will be written here&lt;br /&gt;
#SBATCH -e %N.%j.err        # Standard error will be written here&lt;br /&gt;
#SBATCH -n 14               # number of cores&lt;br /&gt;
#SBATCH -N 1                # Number of nodes&lt;br /&gt;
#SBATCH -p highmem          # Slurm partition, where you want the job to be queued&lt;br /&gt;
#SBATCH --exclusive         # Request exclusive access to a node (all 28 cores, 128GB of RAM)&lt;br /&gt;
&lt;br /&gt;
module load openmpi/gcc/1.10.2&lt;br /&gt;
cd /home/USERNAME/PATH/OF/DIR&lt;br /&gt;
/trinity/clustervision/CentOS/7/apps/raxml/8.2.11/openmpi-1.10.2/gcc-4.9.3/bin/raxmlHPC-MPI-AVX -N 10 -m GTRCAT -s myalign.phy -n myalign.phy pause&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then the next step is to submit the above script to slurm&lt;br /&gt;
for example if you name the above text file raxml.sh &lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[user@login01 ~]$ sbatch raxml.sh&lt;br /&gt;
Submitted batch job 409671&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications/RaXML&amp;diff=2076</id>
		<title>Applications/RaXML</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications/RaXML&amp;diff=2076"/>
		<updated>2017-11-16T17:05:07Z</updated>

		<summary type="html">&lt;p&gt;Seif: Created page with &amp;quot;===Interactive===  While logged into viper login node: you could find the example file used in this path /home/ViperAdmin/software/source/iqtree/iqtree-mpi-1.4.4-Linux/example...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;===Interactive===&lt;br /&gt;
&lt;br /&gt;
While logged into viper login node:&lt;br /&gt;
you could find the example file used in this path /home/ViperAdmin/software/source/iqtree/iqtree-mpi-1.4.4-Linux/example.phy copy it to the location where you would like to run the below steps&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
[username@login01 ~]$ interactive&lt;br /&gt;
salloc: Granted job allocation 296769&lt;br /&gt;
Job ID 296769 connecting to c170, please wait...&lt;br /&gt;
Last login: Wed Jan 25 09:10:51 2017 from 10.254.5.246&lt;br /&gt;
[username@c170 ~]$ module add openmpi/gcc/1.10.2&lt;br /&gt;
[username@c170 ~]$ /trinity/clustervision/CentOS/7/apps/raxml/8.2.11/openmpi-1.10.2/gcc-4.9.3/bin/raxmlHPC-MPI-AVX -N 10 -m GTRCAT -s myalign.phy -n myalign.phy pause &lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Batch Session====&lt;br /&gt;
&lt;br /&gt;
Below is how to submit the same example using our scheduler slurm.&lt;br /&gt;
please replace /home/USERNAME/PATH/OF/DIR to the path of the directory where you copied the example.phy file or to the file that you want to use.&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #E5E4E2; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
#SBATCH -J raxml_example   # Job name, you can change it to whatever you want&lt;br /&gt;
#SBATCH -o %N.%j.out        # Standard output will be written here&lt;br /&gt;
#SBATCH -e %N.%j.err        # Standard error will be written here&lt;br /&gt;
#SBATCH -n 14               # number of cores&lt;br /&gt;
#SBATCH -N 1                # Number of nodes&lt;br /&gt;
#SBATCH -p highmem          # Slurm partition, where you want the job to be queued&lt;br /&gt;
#SBATCH --exclusive         # Request exclusive access to a node (all 28 cores, 128GB of RAM)&lt;br /&gt;
&lt;br /&gt;
module load openmpi/gcc/1.10.2&lt;br /&gt;
cd /home/USERNAME/PATH/OF/DIR&lt;br /&gt;
/trinity/clustervision/CentOS/7/apps/raxml/8.2.11/openmpi-1.10.2/gcc-4.9.3/bin/raxmlHPC-MPI-AVX -N 10 -m GTRCAT -s myalign.phy -n myalign.phy pause&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then the next step is to submit the above script to slurm&lt;br /&gt;
for example if you name the above text file raxml.sh &lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[user@login01 ~]$ sbatch raxml.sh&lt;br /&gt;
Submitted batch job 409671&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications/iqtree&amp;diff=2075</id>
		<title>Applications/iqtree</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications/iqtree&amp;diff=2075"/>
		<updated>2017-11-16T17:04:12Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Interactive */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Application Details==&lt;br /&gt;
*A tool for Phylogenetic Analysis and Post-Analysis of Large Phylogenies.&lt;br /&gt;
*Version: MPI AVX 8.2.11&lt;br /&gt;
*Licence:  Open source&lt;br /&gt;
&lt;br /&gt;
==usage==&lt;br /&gt;
&lt;br /&gt;
===Interactive===&lt;br /&gt;
&lt;br /&gt;
While logged into viper login node:&lt;br /&gt;
you could find the example file used in this path /home/ViperAdmin/software/source/iqtree/iqtree-mpi-1.4.4-Linux/example.phy copy it to the location where you would like to run the below steps&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
[username@login01 ~]$ interactive&lt;br /&gt;
salloc: Granted job allocation 296769&lt;br /&gt;
Job ID 296769 connecting to c170, please wait...&lt;br /&gt;
Last login: Wed Jan 25 09:10:51 2017 from 10.254.5.246&lt;br /&gt;
[username@c170 ~]$ module add openmpi/gcc/1.10.2&lt;br /&gt;
[username@c170 ~]$ mpirun  /trinity/clustervision/CentOS/7/apps/iqtree/1.4.4/openmpi-1.10.2/gcc-4.9.3/bin/iqtree-mpi -s example.phy&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Batch Session====&lt;br /&gt;
&lt;br /&gt;
Below is how to submit the same example using our scheduler slurm.&lt;br /&gt;
please replace /home/USERNAME/PATH/OF/DIR to the path of the directory where you copied the example.phy file or to the file that you want to use.&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #E5E4E2; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
#SBATCH -J IQtree_example   # Job name, you can change it to whatever you want&lt;br /&gt;
#SBATCH -o %N.%j.out        # Standard output will be written here&lt;br /&gt;
#SBATCH -e %N.%j.err        # Standard error will be written here&lt;br /&gt;
#SBATCH -n 14               # number of cores&lt;br /&gt;
#SBATCH -N 1                # Number of nodes&lt;br /&gt;
#SBATCH -p highmem          # Slurm partition, where you want the job to be queued&lt;br /&gt;
#SBATCH --exclusive         # Request exclusive access to a node (all 28 cores, 128GB of RAM)&lt;br /&gt;
&lt;br /&gt;
module load openmpi/gcc/1.10.2&lt;br /&gt;
cd /home/USERNAME/PATH/OF/DIR&lt;br /&gt;
mpirun  /trinity/clustervision/CentOS/7/apps/iqtree/1.4.4/openmpi-1.10.2/gcc-4.9.3/bin/iqtree-mpi -s example.phy&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then the next step is to submit the above script to slurm&lt;br /&gt;
for example if you name the above text file iqtree.sh &lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[user@login01 ~]$ sbatch iqtree.sh&lt;br /&gt;
Submitted batch job 409671&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Further Information==&lt;br /&gt;
&lt;br /&gt;
* http://www.iqtree.org/doc/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_home.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; | &lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;br /&gt;
* [[Programming|Programming support]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications/iqtree&amp;diff=2074</id>
		<title>Applications/iqtree</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications/iqtree&amp;diff=2074"/>
		<updated>2017-11-16T17:00:28Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Batch Session */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Application Details==&lt;br /&gt;
*A tool for Phylogenetic Analysis and Post-Analysis of Large Phylogenies.&lt;br /&gt;
*Version: MPI AVX 8.2.11&lt;br /&gt;
*Licence:  Open source&lt;br /&gt;
&lt;br /&gt;
==usage==&lt;br /&gt;
&lt;br /&gt;
===Interactive===&lt;br /&gt;
&lt;br /&gt;
While logged into viper login node:&lt;br /&gt;
you could find the example file used in this path /home/ViperAdmin/software/source/iqtree/iqtree-mpi-1.4.4-Linux/example.phy copy it to the location where you would like to run the below steps&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
[username@login01 ~]$ interactive&lt;br /&gt;
salloc: Granted job allocation 296769&lt;br /&gt;
Job ID 296769 connecting to c170, please wait...&lt;br /&gt;
Last login: Wed Jan 25 09:10:51 2017 from 10.254.5.246&lt;br /&gt;
[username@c170 ~]$ module add openmpi/gcc/1.10.2&lt;br /&gt;
[username@c170 ~]$ /trinity/clustervision/CentOS/7/apps/raxml/8.2.11/openmpi-1.10.2/gcc-4.9.3/bin/raxmlHPC-MPI-AVX -N 10 -m GTRCAT -s myalign.phy -n myalign.phy pause &lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Batch Session====&lt;br /&gt;
&lt;br /&gt;
Below is how to submit the same example using our scheduler slurm.&lt;br /&gt;
please replace /home/USERNAME/PATH/OF/DIR to the path of the directory where you copied the example.phy file or to the file that you want to use.&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #E5E4E2; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
#SBATCH -J IQtree_example   # Job name, you can change it to whatever you want&lt;br /&gt;
#SBATCH -o %N.%j.out        # Standard output will be written here&lt;br /&gt;
#SBATCH -e %N.%j.err        # Standard error will be written here&lt;br /&gt;
#SBATCH -n 14               # number of cores&lt;br /&gt;
#SBATCH -N 1                # Number of nodes&lt;br /&gt;
#SBATCH -p highmem          # Slurm partition, where you want the job to be queued&lt;br /&gt;
#SBATCH --exclusive         # Request exclusive access to a node (all 28 cores, 128GB of RAM)&lt;br /&gt;
&lt;br /&gt;
module load openmpi/gcc/1.10.2&lt;br /&gt;
cd /home/USERNAME/PATH/OF/DIR&lt;br /&gt;
/trinity/clustervision/CentOS/7/apps/raxml/8.2.11/openmpi-1.10.2/gcc-4.9.3/bin/raxmlHPC-MPI-AVX -N 10 -m GTRCAT -s myalign.phy -n myalign.phy pause&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then the next step is to submit the above script to slurm&lt;br /&gt;
for example if you name the above text file raxml.sh &lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[user@login01 ~]$ sbatch raxml.sh&lt;br /&gt;
Submitted batch job 409671&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Further Information==&lt;br /&gt;
&lt;br /&gt;
* http://www.iqtree.org/doc/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_home.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; | &lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;br /&gt;
* [[Programming|Programming support]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications/iqtree&amp;diff=2073</id>
		<title>Applications/iqtree</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications/iqtree&amp;diff=2073"/>
		<updated>2017-11-16T16:59:53Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* usage */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Application Details==&lt;br /&gt;
*A tool for Phylogenetic Analysis and Post-Analysis of Large Phylogenies.&lt;br /&gt;
*Version: MPI AVX 8.2.11&lt;br /&gt;
*Licence:  Open source&lt;br /&gt;
&lt;br /&gt;
==usage==&lt;br /&gt;
&lt;br /&gt;
===Interactive===&lt;br /&gt;
&lt;br /&gt;
While logged into viper login node:&lt;br /&gt;
you could find the example file used in this path /home/ViperAdmin/software/source/iqtree/iqtree-mpi-1.4.4-Linux/example.phy copy it to the location where you would like to run the below steps&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
[username@login01 ~]$ interactive&lt;br /&gt;
salloc: Granted job allocation 296769&lt;br /&gt;
Job ID 296769 connecting to c170, please wait...&lt;br /&gt;
Last login: Wed Jan 25 09:10:51 2017 from 10.254.5.246&lt;br /&gt;
[username@c170 ~]$ module add openmpi/gcc/1.10.2&lt;br /&gt;
[username@c170 ~]$ /trinity/clustervision/CentOS/7/apps/raxml/8.2.11/openmpi-1.10.2/gcc-4.9.3/bin/raxmlHPC-MPI-AVX -N 10 -m GTRCAT -s myalign.phy -n myalign.phy pause &lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Batch Session====&lt;br /&gt;
&lt;br /&gt;
Below is how to submit the same example using our scheduler slurm.&lt;br /&gt;
please replace /home/USERNAME/PATH/OF/DIR to the path of the directory where you copied the example.phy file or to the file that you want to use.&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #E5E4E2; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
#SBATCH -J IQtree_example   # Job name, you can change it to whatever you want&lt;br /&gt;
#SBATCH -o %N.%j.out        # Standard output will be written here&lt;br /&gt;
#SBATCH -e %N.%j.err        # Standard error will be written here&lt;br /&gt;
#SBATCH -n 14               # number of cores&lt;br /&gt;
#SBATCH -N 1                # Number of nodes&lt;br /&gt;
#SBATCH -p highmem          # Slurm partition, where you want the job to be queued&lt;br /&gt;
#SBATCH --exclusive         # Request exclusive access to a node (all 28 cores, 128GB of RAM)&lt;br /&gt;
&lt;br /&gt;
module load openmpi/gcc/1.10.2&lt;br /&gt;
cd /home/USERNAME/PATH/OF/DIR&lt;br /&gt;
/trinity/clustervision/CentOS/7/apps/raxml/8.2.11/openmpi-1.10.2/gcc-4.9.3/bin/raxmlHPC-MPI-AVX -N 10 -m GTRCAT -s myalign.phy -n myalign.phy pause&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then the next step is to submit the above script to slurm&lt;br /&gt;
for example if you name the above text file iqtree.sh &lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[user@login01 ~]$ sbatch iqtree.sh&lt;br /&gt;
Submitted batch job 409671&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Further Information==&lt;br /&gt;
&lt;br /&gt;
* http://www.iqtree.org/doc/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_home.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; | &lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;br /&gt;
* [[Programming|Programming support]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications/iqtree&amp;diff=2072</id>
		<title>Applications/iqtree</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications/iqtree&amp;diff=2072"/>
		<updated>2017-11-16T16:55:22Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Application Details */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Application Details==&lt;br /&gt;
*A tool for Phylogenetic Analysis and Post-Analysis of Large Phylogenies.&lt;br /&gt;
*Version: MPI AVX 8.2.11&lt;br /&gt;
*Licence:  Open source&lt;br /&gt;
&lt;br /&gt;
==usage==&lt;br /&gt;
&lt;br /&gt;
===Interactive===&lt;br /&gt;
&lt;br /&gt;
While logged into viper login node:&lt;br /&gt;
you could find the example file used in this path /home/ViperAdmin/software/source/iqtree/iqtree-mpi-1.4.4-Linux/example.phy copy it to the location where you would like to run the below steps&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
[username@login01 ~]$ interactive&lt;br /&gt;
salloc: Granted job allocation 296769&lt;br /&gt;
Job ID 296769 connecting to c170, please wait...&lt;br /&gt;
Last login: Wed Jan 25 09:10:51 2017 from 10.254.5.246&lt;br /&gt;
[username@c170 ~]$ module add openmpi/gcc/1.10.2&lt;br /&gt;
[username@c170 ~]$ mpirun   -n 14 /trinity/clustervision/CentOS/7/apps/iqtree/1.4.4/open^Ci-1.10.2/gcc-4.9.3/bin/iqtree-mpi -s example.phy&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Batch Session====&lt;br /&gt;
&lt;br /&gt;
Below is how to submit the same example using our scheduler slurm.&lt;br /&gt;
please replace /home/USERNAME/PATH/OF/DIR to the path of the directory where you copied the example.phy file or to the file that you want to use.&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #E5E4E2; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
#SBATCH -J IQtree_example   # Job name, you can change it to whatever you want&lt;br /&gt;
#SBATCH -o %N.%j.out        # Standard output will be written here&lt;br /&gt;
#SBATCH -e %N.%j.err        # Standard error will be written here&lt;br /&gt;
#SBATCH -n 14               # number of cores&lt;br /&gt;
#SBATCH -N 1                # Number of nodes&lt;br /&gt;
#SBATCH -p highmem          # Slurm partition, where you want the job to be queued&lt;br /&gt;
#SBATCH --exclusive         # Request exclusive access to a node (all 28 cores, 128GB of RAM)&lt;br /&gt;
&lt;br /&gt;
module load openmpi/gcc/1.10.2&lt;br /&gt;
cd /home/USERNAME/PATH/OF/DIR&lt;br /&gt;
mpirun  /trinity/clustervision/CentOS/7/apps/iqtree/1.4.4/openmpi-1.10.2/gcc-4.9.3/bin/iqtree-mpi -s example.phy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then the next step is to submit the above script to slurm&lt;br /&gt;
for example if you name the above text file iqtree.sh &lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[user@login01 ~]$ sbatch iqtree.sh&lt;br /&gt;
Submitted batch job 409671&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Further Information==&lt;br /&gt;
&lt;br /&gt;
* http://www.iqtree.org/doc/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_home.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; | &lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;br /&gt;
* [[Programming|Programming support]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications&amp;diff=2071</id>
		<title>Applications</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications&amp;diff=2071"/>
		<updated>2017-11-16T16:53:58Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Application Support */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Application Support==&lt;br /&gt;
&lt;br /&gt;
* Applications listed here refer to those list in the '''apps''' section of typing  ''[[General/Modules|module avail]]''..&lt;br /&gt;
* Jump to [[Programming|Development]], [[Libraries|Libraries]], [[Libraries#Test Modules|Test Modules]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Click on the links below for support on the individual applications:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
| style=&amp;quot;width:25%&amp;quot; | &amp;lt;Strong&amp;gt;Package&amp;lt;/Strong&amp;gt;&lt;br /&gt;
| style=&amp;quot;width:75%&amp;quot; | &amp;lt;Strong&amp;gt;Description&amp;lt;/Strong&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| [[applications/ABySS|ABySS]]&lt;br /&gt;
| Assembly By Short Sequences - a de novo, parallel, paired-end sequence assembler.&lt;br /&gt;
|- &lt;br /&gt;
| [[applications/Albacore|Albacore]]&lt;br /&gt;
| Albacore is a software project that provides an entry point to the Oxford Nanopore basecalling algorithms&lt;br /&gt;
|-&lt;br /&gt;
| [[applications/Anaconda|Anaconda]]&lt;br /&gt;
| Anaconda is the leading open data science platform powered by Python.&lt;br /&gt;
|-&lt;br /&gt;
| [[applications/Ansys|Ansys]]&lt;br /&gt;
| ANSYS Fluent software includes broad physical modelling capabilities to model flow, turbulence, heat transfer, and reactions for industrial applications.&lt;br /&gt;
|-&lt;br /&gt;
| [[applications/Avizo|Avizo]]&lt;br /&gt;
| Avizo data visualisation and analysis tool&lt;br /&gt;
|-&lt;br /&gt;
| [[applications/BayesTraits|BayesTraits]]&lt;br /&gt;
| BayesTraits is a computer package for performing analyses of trait evolution among groups of species for which a phylogeny or sample of phylogenies is available.&lt;br /&gt;
|-&lt;br /&gt;
| [[applications/Beast|Beast]]&lt;br /&gt;
| BEAST is a cross-platform program for Bayesian analysis of molecular sequences using MCMC.&lt;br /&gt;
|-&lt;br /&gt;
| [[applications/Bison|Bison]]&lt;br /&gt;
|  Bison, is a parser generator that is part of the GNU Project.&lt;br /&gt;
|-&lt;br /&gt;
| [[applications/Bowtie1|Bowtie1]]&lt;br /&gt;
| The aligner is typically used with short reads and a large reference genome, or for whole genome analysis. Bowtie is promoted as an ultrafast, memory-efficient short aligner for short DNA sequences.&lt;br /&gt;
|-&lt;br /&gt;
| [[applications/Bowtie2|Bowtie2]]&lt;br /&gt;
| Bowtie 2 is more suited to finding longer, gapped alignments in comparison with the original Bowtie1 method. &lt;br /&gt;
|-&lt;br /&gt;
| [[applications/Bridger|Bridger]]&lt;br /&gt;
| Bridger is an efficient ''de novo'' trascriptome assembler for RNA-Seq data. It can assemble all transcripts from short reads (single or paired) without using a reference.  &lt;br /&gt;
|-&lt;br /&gt;
| [[applications/Cegma|Cegma]]&lt;br /&gt;
| CEGMA (Core Eukaryotic Genes Mapping Approach) is a pipeline for building a set of high reliable set of gene annotations in virtually any eukaryotic genome.&lt;br /&gt;
|-&lt;br /&gt;
| [[applications/Cmake|CMake]]&lt;br /&gt;
| CMake is cross-platform free and open-source software for managing the build process of software using a compiler-independent method. &lt;br /&gt;
|-&lt;br /&gt;
| [[applications/COMSOL|COMSOL]]&lt;br /&gt;
| COMSOL Multiphysics is a general-purpose software platform, based on advanced numerical methods, for modeling and simulating physics-based problems&lt;br /&gt;
|-&lt;br /&gt;
| [[applications/CP2K|CP2K]]&lt;br /&gt;
| CP2K is a quantum chemistry and solid state physics software package that can perform atomistic simulations of solid state, liquid, molecular, periodic, material, crystal, and biological systems.&lt;br /&gt;
|-&lt;br /&gt;
| [[applications/Crop|Crop]]&lt;br /&gt;
| CROP is an unsupervised nucleic acid sequence clustering algorithm. &lt;br /&gt;
|-&lt;br /&gt;
| [[applications/Cuda|CUDA]]&lt;br /&gt;
| CUDA is NVIDIA’s parallel computing architecture that enables dramatic increases in computing performance by harnessing the power of the GPU nodes.&lt;br /&gt;
|-&lt;br /&gt;
| [[applications/Cufflinks|Cufflinks]]&lt;br /&gt;
| Cufflinks assembles transcripts, estimates their abundances, and tests for differential expression and regulation in RNA-Seq samples.&lt;br /&gt;
|-&lt;br /&gt;
| [[applications/Delft3D|Delft3D]]&lt;br /&gt;
| Delft3D is a world leading 3D modeling suite to investigate hydrodynamics, sediment transport and morphology and water quality for fluvial, estuarine and coastal environments.&lt;br /&gt;
|- &lt;br /&gt;
| [[applications/Discovardenovo|Discovardenovo]]&lt;br /&gt;
| DISCOVAR de novo can generate de novo assemblies for both large and small genomes.&lt;br /&gt;
|-&lt;br /&gt;
| [[applications/FDS-SMV|FDS-SMV]]&lt;br /&gt;
| Fire Dynamics Simulator ('''FDS''') is a large-eddy simulation ('''LES''') code for low-speed flows, with an emphasis on smoke and heat transport from fires. Smokeview ('''SMV''') is a visualization program used to display the output of FDS and CFAST simulations.&lt;br /&gt;
|- &lt;br /&gt;
| [[Applications/ffmpeg|Ffmpeg]]&lt;br /&gt;
| ffmpeg is a very fast video and audio converter that can also grab from a live audio/video source.&lt;br /&gt;
|- &lt;br /&gt;
| [[Applications/Flex|Flex]]&lt;br /&gt;
| Flex (Fast lexical analyser), Flex is a tool for generating scanners: programs which recognize lexical patterns in text.&lt;br /&gt;
|- &lt;br /&gt;
| [[Applications/FreeIPMI|FreeIPMI]]&lt;br /&gt;
| FreeIPMI provides in-band and out-of-band IPMI software based on the IPMI v1.5/2.0 specification.&lt;br /&gt;
|- &lt;br /&gt;
| [[Applications/Fiji|Fiji]]&lt;br /&gt;
| Fiji Is Just ImageJ—a &amp;quot;batteries-included&amp;quot; distribution of ImageJ which includes many useful plugins contributed by the community. &lt;br /&gt;
|- &lt;br /&gt;
| [[applications/Gcc|Gcc]]&lt;br /&gt;
| gcc (GNU Compiler Collection) is a collection of compilers consisting of C, C++, Fortran and more.&lt;br /&gt;
|- &lt;br /&gt;
| [[applications/Gnuplot|GNUplot]]&lt;br /&gt;
| Gnuplot is a portable command-line driven graphing utility for Linux, OS/2, MS Windows, OSX, VMS, and many other platforms.&lt;br /&gt;
|- &lt;br /&gt;
| [[applications/Hwloc|Hwloc]]&lt;br /&gt;
| hwloc provides command line tools and a C API to obtain the hierarchical map of key computing elements&lt;br /&gt;
|- &lt;br /&gt;
|[[applications/Java|Java]]&lt;br /&gt;
| Java is a general-purpose computer programming language that is concurrent, class-based, object-oriented.&lt;br /&gt;
|-&lt;br /&gt;
|[[applications/Hpl|HPL]]&lt;br /&gt;
| HPL is a software package that solves a (random) dense linear system in double precision (64 bits) arithmetic on distributed-memory computers as well as freely available implementation of the High Performance Computing Linpack Benchmark.&lt;br /&gt;
|-&lt;br /&gt;
|[[applications/HyPhy|HyPhy]]&lt;br /&gt;
| HyPhy (Hypothesis Testing using Phylogenies) is an open-source software package for the analysis of genetic sequences (in particular the inference of natural selection) using techniques in phylogenetics, molecular evolution, and machine learning.&lt;br /&gt;
|-&lt;br /&gt;
|[[applications/IDL|IDL]]&lt;br /&gt;
|  IDL, short for Interactive Data Language, is a programming language used for data analysis. It is popular in particular areas of science, such as astronomy, atmospheric physics and medical imaging.&lt;br /&gt;
|-&lt;br /&gt;
|[[applications/Insighttoolkit|Insighttoolkit]]&lt;br /&gt;
| ITK is an open-source software toolkit for performing registration and segmentation.&lt;br /&gt;
|-&lt;br /&gt;
|[[applications/Intel|Intel Parallel Studio]]&lt;br /&gt;
|  Intel Parallel Studio is a software development product that facilitates native code development on Viper in C, C++ and Fortran for parallel computing. &lt;br /&gt;
|-&lt;br /&gt;
|[[applications/iqtree|IQtree]]&lt;br /&gt;
|  stochastic algorithm to reconstruct phylogenetic trees using maximum likelihood. &lt;br /&gt;
|-&lt;br /&gt;
| [[applications/Likwid|Libwid]]&lt;br /&gt;
|  Likwid is a simple to install and use toolsuite of command line applications for performance oriented programmers.&lt;br /&gt;
|-&lt;br /&gt;
|[[applications/LS-DYNA|LS-DYNA]]&lt;br /&gt;
|  General-purpose finite element program capable of simulating complex real world problems.&lt;br /&gt;
|-&lt;br /&gt;
| [[Applications/Maker|Maker]]&lt;br /&gt;
|  MAKER is a portable and easily configurable genome annotation pipeline. Its purpose is to allow smaller eukaryotic and prokaryotic genome projects to independently annotate their genomes and to create genome databases.&lt;br /&gt;
|-&lt;br /&gt;
| [[Applications/Matlab|Matlab]]&lt;br /&gt;
|  Numerical Computing Environment.&lt;br /&gt;
|-&lt;br /&gt;
| [[Applications/Mercurial|Mercurial]]&lt;br /&gt;
|  Mercurial is truly distributed, giving each developer a local copy of the entire development history. This way it works independent of network access or a central server. Committing, branching and merging are fast and cheap.&lt;br /&gt;
|-&lt;br /&gt;
| [[applications/Mpich|Mpich]]&lt;br /&gt;
| MPICH is a high performance and widely portable implementation of the Message Passing Interface (MPI) standard.&lt;br /&gt;
|- &lt;br /&gt;
| [[Applications/Mono|Mono]]&lt;br /&gt;
|  .NET Framework-compatible set of tools including, among others, a C# compiler and a Common Language Runtime.&lt;br /&gt;
|-&lt;br /&gt;
| [[Applications/MrBayes|MrBayes]]&lt;br /&gt;
| MrBayes: Bayesian Inference of Phylogeny &lt;br /&gt;
|-&lt;br /&gt;
| [[Applications/Munge|Munge]]&lt;br /&gt;
| It is an authentication service that creates and validates user credentials. &lt;br /&gt;
|-&lt;br /&gt;
| [[applications/Mvapich2|Mvapich2]]&lt;br /&gt;
| MVAPICH2 is a BSD-licensed implementation of the MPI standard  with support for Intel Omni-Path is a high performance.&lt;br /&gt;
|- &lt;br /&gt;
| [[Applications/Ncbi-blast|Ncbi blast]]&lt;br /&gt;
| It finds regions of similarity between biological sequences. The program compares nucleotide or protein sequences to sequence databases and calculates the statistical significance. &lt;br /&gt;
|-&lt;br /&gt;
| [[Applications/Ncurses|Ncurses]]&lt;br /&gt;
| ncurses (new curses) is a programming library providing an application programming interface (API) that allows the programmer to write text-based user interfaces in a terminal-independent manner.&lt;br /&gt;
|-&lt;br /&gt;
| [[Applications/Netloc|Netloc]]&lt;br /&gt;
| Netloc software package provides network topology discovery tools, and an abstract representation of those networks topologies for a range of network types and configurations.&lt;br /&gt;
|-&lt;br /&gt;
| [[Applications/Ngspice|NgSpice]]&lt;br /&gt;
| Ngspice is a mixed-level/mixed-signal circuit simulator. Its code is based on three open source software packages: Spice3f5, Cider1b1 and Xspice.&lt;br /&gt;
|- &lt;br /&gt;
| [[applications/Nwchem|Nwchem]]&lt;br /&gt;
| NWChem provides computational chemistry tools  and particularly large scientific computational chemistry problems.&lt;br /&gt;
|- &lt;br /&gt;
| [[applications/Open64|Open64]]&lt;br /&gt;
| Open64 is a discontinued, free, open source, optimizing compiler for the Itanium and x86-64 microprocessor architectures.&lt;br /&gt;
|- &lt;br /&gt;
| [[applications/Openuh|Openuh]]&lt;br /&gt;
| Openuh is an open version of the openACC compiler suite.&lt;br /&gt;
|- &lt;br /&gt;
| [[applications/Obitools|Obitools]]&lt;br /&gt;
| The OBITools package is a set of programs specifically designed for analysing NGS data in a DNA meta-barcoding context, taking into account taxonomic information.&lt;br /&gt;
|- &lt;br /&gt;
| [[applications/Openfoam|Openfoam]]&lt;br /&gt;
| OpenFOAM has an extensive range of features to solve anything from complex fluid flows involving chemical reactions, turbulence and heat transfer, to acoustics, solid mechanics and electromagnetics.&lt;br /&gt;
|-&lt;br /&gt;
| [[applications/OpenMPI|OpenMPI]]&lt;br /&gt;
| Open MPI is a Message Passing Interface (MPI) library used for communicating between HPC nodes.&lt;br /&gt;
|- &lt;br /&gt;
|[[applications/Orca|Orca]]&lt;br /&gt;
| 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.&lt;br /&gt;
|-&lt;br /&gt;
|[[applications/Paraview|Paraview]]&lt;br /&gt;
| ParaView is an open-source, multi-platform data analysis and visualization application. ParaView users can quickly build visualizations to analyse their data using qualitative and quantitative techniques.&lt;br /&gt;
|-&lt;br /&gt;
|[[applications/Petsc|Petsc]]&lt;br /&gt;
| PETSc is a suite of data structures and routines for the scalable (parallel) solution of scientific applications modelled by partial differential equations. It supports MPI, and GPUs through CUDA or OpenCL, as well as hybrid MPI-GPU parallelism. &lt;br /&gt;
|- &lt;br /&gt;
|[[applications/Perl|Perl]]&lt;br /&gt;
| Perl is a flexible high-level, general-purpose, interpreted, dynamic programming languages with a large amount of libraries.&lt;br /&gt;
|- &lt;br /&gt;
|[[applications/Pgi|PGI]]&lt;br /&gt;
| PGI Community Edition is a no-cost license to a recent release of the PGI Fortran, C and C++ compilers and tools for multicore CPUs and NVIDIA GPUs, including all OpenACC, OpenMP and CUDA Fortran .&lt;br /&gt;
|- &lt;br /&gt;
|[[applications/Planatus|Planatus]]&lt;br /&gt;
| Platanus is a novel ''de novo'' sequence assembler that can reconstruct genomic sequences of highly heterozygous diploids from massively parallel shotgun sequencing data.&lt;br /&gt;
|- &lt;br /&gt;
|[[applications/Python|Python]]&lt;br /&gt;
| Python is a family of high-level, general-purpose, interpreted, dynamic programming languages and includes IPython.&lt;br /&gt;
|- &lt;br /&gt;
|[[applications/R|R]]&lt;br /&gt;
| R is an open source programming language and software environment for statistical computing and graphics.&lt;br /&gt;
|-&lt;br /&gt;
|[[applications/RaXML|RaXML]]&lt;br /&gt;
| RaXML is an open source tool for Phylogenetic Analysis and Post-Analysis of Large Phylogenies.&lt;br /&gt;
|-&lt;br /&gt;
|[[applications/Readline|Readline]]&lt;br /&gt;
| GNU Readline is a software library that provides line-editing and history capabilities for interactive programs with a command-line interface, such as Bash.&lt;br /&gt;
|-&lt;br /&gt;
|[[applications/Rsem|Rsem]]&lt;br /&gt;
| RSEM is an RNA-Seq transcript quantification program.&lt;br /&gt;
|-&lt;br /&gt;
| [[applications/Samtools|Samtools]]&lt;br /&gt;
|  Tools (written in C using htslib) for manipulating next-generation sequencing data&lt;br /&gt;
|-&lt;br /&gt;
| [[applications/SAS|SAS]]&lt;br /&gt;
|  Statistical Analysis System.&lt;br /&gt;
|-&lt;br /&gt;
| [[applications/Savu|Savu]]&lt;br /&gt;
|  Python package to assist with the processing and reconstruction of parallel-beam tomography data.&lt;br /&gt;
|-&lt;br /&gt;
| [[applications/Scalapack|Scalapack]]&lt;br /&gt;
|  The ScaLAPACK (or Scalable LAPACK) library includes a subset of LAPACK routines redesigned for distributed memory MIMD parallel computers&lt;br /&gt;
|-&lt;br /&gt;
| [[applications/Siesta|Siesta]]&lt;br /&gt;
| 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.&lt;br /&gt;
|-&lt;br /&gt;
| [[applications/ssw|SSW]]&lt;br /&gt;
|  Integrated software libraries, data bases, and system utilities which provide a common programming and data analysis environment for Solar Physics&lt;br /&gt;
|-&lt;br /&gt;
|  [[applications/STAR|STAR]]&lt;br /&gt;
|  Ultrafast universal RNA-seq aligner.&lt;br /&gt;
|-&lt;br /&gt;
|  [[applications/Star-ccm+|Star-ccm+]]&lt;br /&gt;
|  Computational Fluid Package.&lt;br /&gt;
|-&lt;br /&gt;
| [[applications/Stata|Stata]]&lt;br /&gt;
| Stata is a commercial statistical package, which provides a complete solution for data analysis, data management, and graphics.&lt;br /&gt;
|- &lt;br /&gt;
| [[applications/Tophat|Tophat]]&lt;br /&gt;
|  It is a fast splice junction mapper for RNA-Seq reads. It aligns RNA-Seq reads to mammalian-sized genomes using the ultra high-throughput short read aligner Bowtie, and then analyses the mapping results to identify splice junctions between exons. &lt;br /&gt;
|-&lt;br /&gt;
| [[applications/transabyss|Transabyss]]&lt;br /&gt;
| Software pipeline for analyzing ABySS-assembled transcriptome contigs&lt;br /&gt;
|- &lt;br /&gt;
| [[applications/Transrate|Transrate]]&lt;br /&gt;
| Transrate is software for de-novo transcriptome assembly quality analysis&lt;br /&gt;
|-&lt;br /&gt;
| [[applications/Trinityrnaseq|Trinityrnaseq]]&lt;br /&gt;
| Trinity assembles transcript sequences from Illumina RNA-Seq data.&lt;br /&gt;
|-&lt;br /&gt;
|  [[applications/Utilities|Utilities]]&lt;br /&gt;
|  General utilities module including zip, wget and git utilities.&lt;br /&gt;
|-&lt;br /&gt;
|  [[applications/Voxfe|Voxfe]]&lt;br /&gt;
| VOX-FE is voxel-based FE software with a sophisticated graphical user interface that allows the complex loading regimes that are inevitably present in biomechanical analyses to be readily applied to the model geometry, and the resultant 3D stress and strain patterns to be visualized easily.&lt;br /&gt;
|-&lt;br /&gt;
|  [[applications/Xyce|Xyce]]&lt;br /&gt;
| An open source, SPICE-compatible, high-performance analog circuit simulator, capable of solving extremely large circuit problems by supporting large-scale parallel computing platforms.&lt;br /&gt;
|-&lt;br /&gt;
|  [[applications/Wgs|Wgs]]&lt;br /&gt;
| Celera Assembler is a de novo whole-genome shotgun ('''WGS''') DNA sequence assembler.&lt;br /&gt;
|-&lt;br /&gt;
|  [[applications/Yt|Yt]]&lt;br /&gt;
|  yt supports structured, variable-resolution meshes, unstructured meshes, and discrete or sampled data such as particles. Focused on driving physically-meaningful inquiry, yt has been applied in domains such as astrophysics, seismology, nuclear engineering, molecular dynamics, and oceanography. &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_up.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; |  [[#Application Support|Top]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[Libraries|Library support]]&lt;br /&gt;
* [[Programming|Development support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications/iqtree&amp;diff=2070</id>
		<title>Applications/iqtree</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications/iqtree&amp;diff=2070"/>
		<updated>2017-11-10T15:42:24Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Batch Session */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Application Details==&lt;br /&gt;
*Description: Allows maximum likelihood analysis of large phylogenetic data. IQ-TREE explores the tree space efficiently and often achieves higher likelihoods than RAxML and PhyML. Other key features of IQ-TREE are (i) very fast model selection procedure including partition scheme finding, (ii) partitioned analysis for phylogenomic data, (iii) ultrafast bootstrap approximation, (iv) implementation of several branch tests and (v) tree topology tests. W-IQ-TREE an intuitive and user-friendly web interface and server for IQ-TREE is also available.&lt;br /&gt;
*Version: MPI 1.4.4&lt;br /&gt;
*Licence:  Open source&lt;br /&gt;
==usage==&lt;br /&gt;
&lt;br /&gt;
===Interactive===&lt;br /&gt;
&lt;br /&gt;
While logged into viper login node:&lt;br /&gt;
you could find the example file used in this path /home/ViperAdmin/software/source/iqtree/iqtree-mpi-1.4.4-Linux/example.phy copy it to the location where you would like to run the below steps&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
[username@login01 ~]$ interactive&lt;br /&gt;
salloc: Granted job allocation 296769&lt;br /&gt;
Job ID 296769 connecting to c170, please wait...&lt;br /&gt;
Last login: Wed Jan 25 09:10:51 2017 from 10.254.5.246&lt;br /&gt;
[username@c170 ~]$ module add openmpi/gcc/1.10.2&lt;br /&gt;
[username@c170 ~]$ mpirun   -n 14 /trinity/clustervision/CentOS/7/apps/iqtree/1.4.4/open^Ci-1.10.2/gcc-4.9.3/bin/iqtree-mpi -s example.phy&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Batch Session====&lt;br /&gt;
&lt;br /&gt;
Below is how to submit the same example using our scheduler slurm.&lt;br /&gt;
please replace /home/USERNAME/PATH/OF/DIR to the path of the directory where you copied the example.phy file or to the file that you want to use.&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #E5E4E2; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
#SBATCH -J IQtree_example   # Job name, you can change it to whatever you want&lt;br /&gt;
#SBATCH -o %N.%j.out        # Standard output will be written here&lt;br /&gt;
#SBATCH -e %N.%j.err        # Standard error will be written here&lt;br /&gt;
#SBATCH -n 14               # number of cores&lt;br /&gt;
#SBATCH -N 1                # Number of nodes&lt;br /&gt;
#SBATCH -p highmem          # Slurm partition, where you want the job to be queued&lt;br /&gt;
#SBATCH --exclusive         # Request exclusive access to a node (all 28 cores, 128GB of RAM)&lt;br /&gt;
&lt;br /&gt;
module load openmpi/gcc/1.10.2&lt;br /&gt;
cd /home/USERNAME/PATH/OF/DIR&lt;br /&gt;
mpirun  /trinity/clustervision/CentOS/7/apps/iqtree/1.4.4/openmpi-1.10.2/gcc-4.9.3/bin/iqtree-mpi -s example.phy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then the next step is to submit the above script to slurm&lt;br /&gt;
for example if you name the above text file iqtree.sh &lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[user@login01 ~]$ sbatch iqtree.sh&lt;br /&gt;
Submitted batch job 409671&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Further Information==&lt;br /&gt;
&lt;br /&gt;
* http://www.iqtree.org/doc/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_home.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; | &lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;br /&gt;
* [[Programming|Programming support]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications/iqtree&amp;diff=2069</id>
		<title>Applications/iqtree</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications/iqtree&amp;diff=2069"/>
		<updated>2017-11-10T15:42:15Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Batch Session */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Application Details==&lt;br /&gt;
*Description: Allows maximum likelihood analysis of large phylogenetic data. IQ-TREE explores the tree space efficiently and often achieves higher likelihoods than RAxML and PhyML. Other key features of IQ-TREE are (i) very fast model selection procedure including partition scheme finding, (ii) partitioned analysis for phylogenomic data, (iii) ultrafast bootstrap approximation, (iv) implementation of several branch tests and (v) tree topology tests. W-IQ-TREE an intuitive and user-friendly web interface and server for IQ-TREE is also available.&lt;br /&gt;
*Version: MPI 1.4.4&lt;br /&gt;
*Licence:  Open source&lt;br /&gt;
==usage==&lt;br /&gt;
&lt;br /&gt;
===Interactive===&lt;br /&gt;
&lt;br /&gt;
While logged into viper login node:&lt;br /&gt;
you could find the example file used in this path /home/ViperAdmin/software/source/iqtree/iqtree-mpi-1.4.4-Linux/example.phy copy it to the location where you would like to run the below steps&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
[username@login01 ~]$ interactive&lt;br /&gt;
salloc: Granted job allocation 296769&lt;br /&gt;
Job ID 296769 connecting to c170, please wait...&lt;br /&gt;
Last login: Wed Jan 25 09:10:51 2017 from 10.254.5.246&lt;br /&gt;
[username@c170 ~]$ module add openmpi/gcc/1.10.2&lt;br /&gt;
[username@c170 ~]$ mpirun   -n 14 /trinity/clustervision/CentOS/7/apps/iqtree/1.4.4/open^Ci-1.10.2/gcc-4.9.3/bin/iqtree-mpi -s example.phy&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Batch Session====&lt;br /&gt;
&lt;br /&gt;
Below is how to submit the same example using our scheduler slurm.&lt;br /&gt;
please replace /home/USERNAME/PATH/OF/DIR to the path of the directory where you copied the example.phy file or to the file that you want to use.&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #E5E4E2; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
#SBATCH -J IQtree_example    # Job name, you can change it to whatever you want&lt;br /&gt;
#SBATCH -o %N.%j.out        # Standard output will be written here&lt;br /&gt;
#SBATCH -e %N.%j.err        # Standard error will be written here&lt;br /&gt;
#SBATCH -n 14               # number of cores&lt;br /&gt;
#SBATCH -N 1                # Number of nodes&lt;br /&gt;
#SBATCH -p highmem          # Slurm partition, where you want the job to be queued&lt;br /&gt;
#SBATCH --exclusive         # Request exclusive access to a node (all 28 cores, 128GB of RAM)&lt;br /&gt;
&lt;br /&gt;
module load openmpi/gcc/1.10.2&lt;br /&gt;
cd /home/USERNAME/PATH/OF/DIR&lt;br /&gt;
mpirun  /trinity/clustervision/CentOS/7/apps/iqtree/1.4.4/openmpi-1.10.2/gcc-4.9.3/bin/iqtree-mpi -s example.phy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then the next step is to submit the above script to slurm&lt;br /&gt;
for example if you name the above text file iqtree.sh &lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[user@login01 ~]$ sbatch iqtree.sh&lt;br /&gt;
Submitted batch job 409671&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Further Information==&lt;br /&gt;
&lt;br /&gt;
* http://www.iqtree.org/doc/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_home.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; | &lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;br /&gt;
* [[Programming|Programming support]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications/iqtree&amp;diff=2068</id>
		<title>Applications/iqtree</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications/iqtree&amp;diff=2068"/>
		<updated>2017-11-10T15:42:02Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Batch Session */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Application Details==&lt;br /&gt;
*Description: Allows maximum likelihood analysis of large phylogenetic data. IQ-TREE explores the tree space efficiently and often achieves higher likelihoods than RAxML and PhyML. Other key features of IQ-TREE are (i) very fast model selection procedure including partition scheme finding, (ii) partitioned analysis for phylogenomic data, (iii) ultrafast bootstrap approximation, (iv) implementation of several branch tests and (v) tree topology tests. W-IQ-TREE an intuitive and user-friendly web interface and server for IQ-TREE is also available.&lt;br /&gt;
*Version: MPI 1.4.4&lt;br /&gt;
*Licence:  Open source&lt;br /&gt;
==usage==&lt;br /&gt;
&lt;br /&gt;
===Interactive===&lt;br /&gt;
&lt;br /&gt;
While logged into viper login node:&lt;br /&gt;
you could find the example file used in this path /home/ViperAdmin/software/source/iqtree/iqtree-mpi-1.4.4-Linux/example.phy copy it to the location where you would like to run the below steps&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
[username@login01 ~]$ interactive&lt;br /&gt;
salloc: Granted job allocation 296769&lt;br /&gt;
Job ID 296769 connecting to c170, please wait...&lt;br /&gt;
Last login: Wed Jan 25 09:10:51 2017 from 10.254.5.246&lt;br /&gt;
[username@c170 ~]$ module add openmpi/gcc/1.10.2&lt;br /&gt;
[username@c170 ~]$ mpirun   -n 14 /trinity/clustervision/CentOS/7/apps/iqtree/1.4.4/open^Ci-1.10.2/gcc-4.9.3/bin/iqtree-mpi -s example.phy&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Batch Session====&lt;br /&gt;
&lt;br /&gt;
Below is how to submit the same example using our scheduler slurm.&lt;br /&gt;
please replace /home/USERNAME/PATH/OF/DIR to the path of the directory where you copied the example.phy file or to the file that you want to use.&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #E5E4E2; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
#SBATCH -J IQtree_example          # Job name, you can change it to whatever you want&lt;br /&gt;
#SBATCH -o %N.%j.out        # Standard output will be written here&lt;br /&gt;
#SBATCH -e %N.%j.err        # Standard error will be written here&lt;br /&gt;
#SBATCH -n 14               # number of cores&lt;br /&gt;
#SBATCH -N 1                # Number of nodes&lt;br /&gt;
#SBATCH -p highmem          # Slurm partition, where you want the job to be queued&lt;br /&gt;
#SBATCH --exclusive         # Request exclusive access to a node (all 28 cores, 128GB of RAM)&lt;br /&gt;
&lt;br /&gt;
module load openmpi/gcc/1.10.2&lt;br /&gt;
cd /home/USERNAME/PATH/OF/DIR&lt;br /&gt;
mpirun  /trinity/clustervision/CentOS/7/apps/iqtree/1.4.4/openmpi-1.10.2/gcc-4.9.3/bin/iqtree-mpi -s example.phy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then the next step is to submit the above script to slurm&lt;br /&gt;
for example if you name the above text file iqtree.sh &lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[user@login01 ~]$ sbatch iqtree.sh&lt;br /&gt;
Submitted batch job 409671&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Further Information==&lt;br /&gt;
&lt;br /&gt;
* http://www.iqtree.org/doc/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_home.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; | &lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;br /&gt;
* [[Programming|Programming support]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
	<entry>
		<id>https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications/iqtree&amp;diff=2067</id>
		<title>Applications/iqtree</title>
		<link rel="alternate" type="text/html" href="https://hpc.mediawiki.hull.ac.uk/index.php?title=Applications/iqtree&amp;diff=2067"/>
		<updated>2017-11-10T15:41:36Z</updated>

		<summary type="html">&lt;p&gt;Seif: /* Further Information */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Application Details==&lt;br /&gt;
*Description: Allows maximum likelihood analysis of large phylogenetic data. IQ-TREE explores the tree space efficiently and often achieves higher likelihoods than RAxML and PhyML. Other key features of IQ-TREE are (i) very fast model selection procedure including partition scheme finding, (ii) partitioned analysis for phylogenomic data, (iii) ultrafast bootstrap approximation, (iv) implementation of several branch tests and (v) tree topology tests. W-IQ-TREE an intuitive and user-friendly web interface and server for IQ-TREE is also available.&lt;br /&gt;
*Version: MPI 1.4.4&lt;br /&gt;
*Licence:  Open source&lt;br /&gt;
==usage==&lt;br /&gt;
&lt;br /&gt;
===Interactive===&lt;br /&gt;
&lt;br /&gt;
While logged into viper login node:&lt;br /&gt;
you could find the example file used in this path /home/ViperAdmin/software/source/iqtree/iqtree-mpi-1.4.4-Linux/example.phy copy it to the location where you would like to run the below steps&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
[username@login01 ~]$ interactive&lt;br /&gt;
salloc: Granted job allocation 296769&lt;br /&gt;
Job ID 296769 connecting to c170, please wait...&lt;br /&gt;
Last login: Wed Jan 25 09:10:51 2017 from 10.254.5.246&lt;br /&gt;
[username@c170 ~]$ module add openmpi/gcc/1.10.2&lt;br /&gt;
[username@c170 ~]$ mpirun   -n 14 /trinity/clustervision/CentOS/7/apps/iqtree/1.4.4/open^Ci-1.10.2/gcc-4.9.3/bin/iqtree-mpi -s example.phy&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Batch Session====&lt;br /&gt;
&lt;br /&gt;
Below is how to submit the same example using our scheduler slurm.&lt;br /&gt;
please replace /home/USERNAME/PATH/OF/DIR to the path of the directory where you copied the example.phy file or to the file that you want to use.&lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: #E5E4E2; color: black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
#SBATCH -J IQtree_example          # Job name, you can change it to whatever you want&lt;br /&gt;
#SBATCH -o %N.%j.out        # Standard output will be written here&lt;br /&gt;
#SBATCH -e %N.%j.err        # Standard error will be written here&lt;br /&gt;
#SBATCH -n 14               # number of cores&lt;br /&gt;
#SBATCH -N 1                # Number of nodes&lt;br /&gt;
#SBATCH -p highmem          # Slurm partition, where you want the job to be queued&lt;br /&gt;
#SBATCH --exclusive         # Request exclusive access to a node (all 28 cores, 128GB of RAM)&lt;br /&gt;
module load openmpi/gcc/1.10.2&lt;br /&gt;
cd /home/USERNAME/PATH/OF/DIR&lt;br /&gt;
mpirun  /trinity/clustervision/CentOS/7/apps/iqtree/1.4.4/openmpi-1.10.2/gcc-4.9.3/bin/iqtree-mpi -s example.phy&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then the next step is to submit the above script to slurm&lt;br /&gt;
for example if you name the above text file iqtree.sh &lt;br /&gt;
&amp;lt;pre style=&amp;quot;background-color: black; color: white; border: 2px solid black; font-family: monospace, sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[user@login01 ~]$ sbatch iqtree.sh&lt;br /&gt;
Submitted batch job 409671&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Further Information==&lt;br /&gt;
&lt;br /&gt;
* http://www.iqtree.org/doc/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|style=&amp;quot;width:5%; border-width: 0&amp;quot; | [[File:icon_home.png]]&lt;br /&gt;
|style=&amp;quot;width:95%; border-width: 0&amp;quot; | &lt;br /&gt;
* [[Main_Page|Home]]&lt;br /&gt;
* [[Applications|Application support]]&lt;br /&gt;
* [[General|General]]&lt;br /&gt;
* [[Training|Training]]&lt;br /&gt;
* [[Programming|Programming support]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seif</name></author>
		
	</entry>
</feed>