<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://mrcdata.dide.ic.ac.uk/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Admin</id>
	<title>MRC Centre for Outbreak Analysis and Modelling - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://mrcdata.dide.ic.ac.uk/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Admin"/>
	<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php/Special:Contributions/Admin"/>
	<updated>2026-05-24T08:08:24Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Resources_for_Public_Events&amp;diff=14291</id>
		<title>Resources for Public Events</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Resources_for_Public_Events&amp;diff=14291"/>
		<updated>2026-03-23T15:19:37Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;On occasion, we are involved in running educational events for the public. Here, you will find details of some of the events we&#039;ve done in the past, and the software and hardware we have available for future events. If you&#039;re planning a new event, you are really welcome to talk to Wes and see if there are any tools that can help. Everything listed below is designed to be re-used. Also on occasion, being involved in these events has led to some paper-writing, as well as being a lot of fun, so if you get the chance in the future, jump on board if you can.&lt;br /&gt;
&lt;br /&gt;
== Previous Events ==&lt;br /&gt;
* Sep 2019-2025 - Short Course Social. [https://github.com/mrc-ide/public-events-microbit-epidemic/ Microbit Epidemic].&lt;br /&gt;
* Mar 2019 - VIMC Annual Meeting. [https://github.com/mrc-ide/public-events-microbit-epidemic/ Microbit Epidemic].&lt;br /&gt;
* Sep 2018 - Short Course Social. [https://github.com/mrc-ide/public-events-microbit-epidemic/ Microbit Epidemic].&lt;br /&gt;
* Sep 2017 - Short Course Social. [[Barcode Epidemic]].&lt;br /&gt;
* May 2017 - Imperial Festival. [[Barcode Epidemic]], [[Herd Immunity]], Epidemic Top Trumps.&lt;br /&gt;
* Feb 2017 - Teaching in France. [[Barcode Epidemic]] - French language version!&lt;br /&gt;
* September 2016 - Short Course Social. [[Barcode Epidemic]].&lt;br /&gt;
* August 2016 - Sutton Trust Summer School. [[Barcode Epidemic]] - thanks Izzy Routledge.&lt;br /&gt;
* May 2016 - Imperial Festival. [[Barcode Epidemic]], [[Zombie Sim II]], Epidemic Top Trumps.&lt;br /&gt;
* September 2015 - Short Course Social. [[Barcode Epidemic]].&lt;br /&gt;
* May 2015 - Imperial Festival. [[Barcode Epidemic]], [[Zombie Sim II]].&lt;br /&gt;
* March 2015 - HPRU Open Day. [[Barcode Epidemic]], [[Zombie Sim II]], [[Herd Immunity]].&lt;br /&gt;
* September 2014 - Short Course Social. [[Barcode Epidemic]].&lt;br /&gt;
* [http://www3.imperial.ac.uk/newsandeventspggrp/imperialcollege/administration/outreach/eventssummary/event_18-12-2012-13-51-41 July 2014 - Imperial Y10 Summer School Workshop]. [[Zombie Sim II]], [[Herd Immunity]] - Harriet Mills and Rafal Mostowy.&lt;br /&gt;
* [[May 2014 - Imperial Festival]]. DIDE STI groups, using the tablets for Google Docs surveys.&lt;br /&gt;
* September 2013 - Short Course Social. [[Barcode Epidemic]].&lt;br /&gt;
* [[June 2013 - MRC Centenary, Science Museum]]. [[Herd Immunity]]. [[Barcode Epidemic]].&lt;br /&gt;
* [[March 2013 - Big Bang Fair]]. [[Zombie Sim I]]. [[Live Epidemic]].&lt;br /&gt;
* [[October 2012 - Imperial Fringe]]. [[Zombie Sim I]]. [[Live Epidemic]].&lt;br /&gt;
&lt;br /&gt;
== Hardware ==&lt;br /&gt;
&lt;br /&gt;
* [[HP Slate 7 2801]] x10 - Android Tablet with various issues that can be worked around.&lt;br /&gt;
* [[HP Elitebook 8760w]] - A large heavy 17&amp;quot; quad-core beast of a laptop. Portable in a fairly loose sense.&lt;br /&gt;
* [[Lenovo Thinkpad E540]] - A lighter 15.6&amp;quot; quad-core laptop, with only a horrid touchpad to complain about.&lt;br /&gt;
* [[Viewsonic VS14935]] (aka PJD8633WS) short-throw projector. Really good bit of kit for massive projections at short range.&lt;br /&gt;
* [[Belkin N750DB]] - A supposedly top of the range wireless router with some serious limitations. (Retired)&lt;br /&gt;
* [[D-Link Router]] - A new kettle-shaped router that overcame some of the horrors of the Belkin one.&lt;br /&gt;
* [[Logitech K750]] - Wireless solar-powered keyboard.&lt;br /&gt;
* [[Logitech M185]] - Wireless mouse. (Use single Logitech USB Unified dongle for both)&lt;br /&gt;
* 101 micro:bits with lanyards. See the [https://github.com/mrc-ide/public-events-microbit-epidemic/ Microbit Epidemic].&lt;br /&gt;
&lt;br /&gt;
== Software ==&lt;br /&gt;
&lt;br /&gt;
* [[Barcode Epidemic]] - A suite of tools for printing unique QR codes, an Android app to scan and send them to a web server running live display tools.&lt;br /&gt;
* [[Herd Immunity]] - A snooker-table like analogy where different coloured balls represent sickness, susceptibility, recovery and immunity. R0 and vaccination can be varied. Can be controlled by Android.&lt;br /&gt;
* [[Live Epidemic]] - The predecessor to the Barcode Epidemic, with entries typed into Excel, for analysis by R.&lt;br /&gt;
* [https://www.github.com/mrc-ide/public-events-barcode-epidemic Microbit Epidemic] - sort-of derived from the [[Barcode Epidemic]] - infections are broadcast by bluetooth radio between micro:bit computers.&lt;br /&gt;
* [[Zombie Sim I]] - An interactive UK spatial individual-based gravity-model simulator allowing side-by-side comparison of different parameters. This version has quite a few parameters you can change, so good for a technical, or epi-familiar crowd.&lt;br /&gt;
* [[Zombie Sim II]] - This is a cut-down version of [[Zombie Sim I]] with fewer parameters to edit, and a larger map. It&#039;s better for a less technical, or younger crowd, or when you have a bit less time.&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Cluster_Documentation&amp;diff=14290</id>
		<title>Cluster Documentation</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Cluster_Documentation&amp;diff=14290"/>
		<updated>2025-07-14T13:31:17Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* Python */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* We have two high performance clusters for general use, both running Microsoft HPC 2012 R2, Update 3. The smaller, older cluster is [[fi--dideclusthn]] and the larger is [[fi--didemrchnb]]. &lt;br /&gt;
&lt;br /&gt;
* Many users in the department write code and packages in R. We have in-house packages that can allow an almost-interactive experience of running jobs on our high performance clusters, so if that sounds like what you&#039;d like, you might as well stop reading here, and go straight to [https://github.com/mrc-ide/didehpc The DIDEHPC package] - or if you need to join the mrc-ide github org first, go to [https://github.com/mrc-ide/welcome The welcome page].&lt;br /&gt;
&lt;br /&gt;
If you&#039;re not using R, or you are interested in other ways, then continue...&lt;br /&gt;
&lt;br /&gt;
== Windows Users ==&lt;br /&gt;
&lt;br /&gt;
The cluster nodes are Windows 2012-R2 based. This is good news if you&#039;re a Windows user, and especially easy for PCs within the departmental DIDE domain. You have the option of using the MS client for launching jobs (see below), or you can use try the new [[HPC Web Portal]]. If you&#039;re preparing to use the cluster, and have doubts about whether it can run what you want - and whether it will be straightforward to develop and run on it, best talk to me and/or the IT guys first!&lt;br /&gt;
&lt;br /&gt;
== Linux and MAC Users ==&lt;br /&gt;
&lt;br /&gt;
There are two problems, but both can be at least partially overcome. The first is that there is no client for linux. The second is that it can only run windows binaries.&lt;br /&gt;
&lt;br /&gt;
=== Launching jobs on Linux/Mac ===&lt;br /&gt;
&lt;br /&gt;
* The best way might be the [[HPC Web Portal]], which lets you submit jobs through a webpage. Give it a try, and feedback to me any issues! &lt;br /&gt;
&lt;br /&gt;
* Alternatively, you can either (1) go down the VM route, installing a windows virtual machine, eg VMWare or Parallels, and follow the instructions below. (2) Remote Desktop to your friend&#039;s Windows machine. These tend not to be very convenient, but some users have submitted thousands of jobs this way.&lt;br /&gt;
&lt;br /&gt;
=== What Linux/Mac jobs can I run? ===&lt;br /&gt;
&lt;br /&gt;
* Many jobs may be platform indepedent. Where compiled code is involved though, you&#039;ll have some extra work to make sure the binary parts can be run in windows. For R, [https://github.com/mrc-ide/didehpc the tools] help you sort that out. For others, you may need to run a job on the cluster to do your builds. Also, for many linux applications, there is a windows port. Mileage can vary, but it&#039;s worth a try searching for that before you give up hope. Some of these might be installed on the cluster already - see below. Or some you may be able to download and call them from your run script.&lt;br /&gt;
&lt;br /&gt;
* For C code, again, we can run scripts on the cluster to build the binaries for you, if your code can be compiled with (say) the MinGW port of gcc. Cygwin can also be used (although seems less common these days) with accompanying dlls. Get in touch if you need further ideas; most things can be solved. &lt;br /&gt;
&lt;br /&gt;
* Matlab is a little more tricky - we have a range of colossal matlab runtimes on the cluster, but you&#039;d need to compile a windows binary to use them, since the matlab platforms are distinct in every way. For this, probably find a friend, or get in touch, and we&#039;ll work out how you can compile for it.&lt;br /&gt;
&lt;br /&gt;
* There is also the option of running a Windows VM, which might solve all of the above problems.&lt;br /&gt;
&lt;br /&gt;
=== But I really want a unix cluster. ===&lt;br /&gt;
&lt;br /&gt;
* We have run linux clusters in the past ([[fi--didelxhn]]), but there was very low demand, whereas the other clusters are consistently well used. Accessing DIDE network shares from linux was a little harder in some aspects, but we did not implement the more traditional linux approach of having dedicated separate cluster storage that inputs and outputs would have to be staged on to, in order for the cluster to see them. Generally, the flexibility of the other clusters makes such things quite straightforward, and may even feel a pleasure if your background is with the less domain-integrated style of cluster architecture.&lt;br /&gt;
&lt;br /&gt;
* It has also become far easier to write software that builds on multiple platforms with good practice. Tools that only run on one platform are rare, and in some circumstances have raised questions about the quality of those packages. Alternatives are often available.&lt;br /&gt;
&lt;br /&gt;
* Where compilation is the issue - for example if you want to run binaries on the cluster, but your compilation machine runs linux, or is a mac, (Matlab via MCC, or C++ code for example), then get in touch, and there are a few ways we can think of solving that, either by getting someone else, or the cluster itself, to build your code.&lt;br /&gt;
&lt;br /&gt;
* There are also resources in [https://www.imperial.ac.uk/admin-services/ict/self-service/research-support/rcs/computing/high-throughput-computing/ ICT) who run a linux cluster, with the file-staging approach, and also (being shared between a much larger pool of users) have rather stricter rules on job durations and resources than we provide locally in DIDE.&lt;br /&gt;
&lt;br /&gt;
== Getting Started ==&lt;br /&gt;
&lt;br /&gt;
=== Getting access to the cluster ===&lt;br /&gt;
&lt;br /&gt;
Send a mail to Wes (w.hinsley@imperial.ac.uk) requesting access to the cluster. He will add you to the necessary groups, and work out what cluster you should be running on. Unless you are told otherwise, this will be fi--dideclusthn. But if you have been told otherwise, then whenever you see fi--dideclusthn, replace it with the cluster name you’ve been given, either mentally or (less effectively) on your screen with tip-ex.&lt;br /&gt;
&lt;br /&gt;
=== Windows: Install the HPC client software ===&lt;br /&gt;
&lt;br /&gt;
* Run \\fi--dideclusthn.dide.ic.ac.uk\REMINST\setup.exe. &lt;br /&gt;
* Confirm &#039;&#039;&#039;Yes, I really want to run this&#039;&#039;&#039;.&lt;br /&gt;
* There&#039;s an introductory screen, and you click &#039;&#039;&#039;Next&#039;&#039;&#039;&lt;br /&gt;
* You have to tick the &#039;&#039;&#039;Accept&#039;&#039;&#039;, then click &#039;&#039;&#039;Next&#039;&#039;&#039;&lt;br /&gt;
* If it gives you any choice, select &#039;&#039;&#039;Install only the client utilities&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;Next&#039;&#039;&#039;, &#039;&#039;&#039;Next&#039;&#039;&#039;, &#039;&#039;&#039;Next&#039;&#039;&#039;&lt;br /&gt;
* Select &#039;&#039;&#039;Use Microsoft Update&#039;&#039;&#039; and then &#039;&#039;&#039;Next&#039;&#039;&#039;&lt;br /&gt;
* And then &#039;&#039;&#039;Install&#039;&#039;&#039;&lt;br /&gt;
* And possibly &#039;&#039;&#039;Install&#039;&#039;&#039; again – if it had to install any pre-requisites first.&lt;br /&gt;
* And &#039;&#039;&#039;Finish&#039;&#039;&#039;, and the client installation is done.&lt;br /&gt;
* To check everything is alright so far, open a &#039;&#039;&#039;NEW command prompt window&#039;&#039;&#039;.&lt;br /&gt;
* (Because the installer adds things to the path, which only take effect on &#039;&#039;&#039;NEW comamnd windows&#039;&#039;&#039;! :-)&lt;br /&gt;
* (Find it under Accessories, or you can use Start, Run, &#039;&#039;&#039;cmd&#039;&#039;&#039;).&lt;br /&gt;
* Type &amp;lt;code&amp;gt;job list /scheduler:fi--dideclusthn.dide.ic.ac.uk&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And it will list the jobs you have running, which will be none so far!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Id         Owner         Name              State        Priority    Resource Request&lt;br /&gt;
---------- ------------- ----------------- ------------ ----------- -------- -------&lt;br /&gt;
&lt;br /&gt;
0 matching jobs for DIDE\user&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Windows: Using a non-domain machine ===&lt;br /&gt;
&lt;br /&gt;
If you&#039;re using a machine that isn&#039;t actually logged into DIDE, then the client software will have a problem working out who you are. In this case, there are two things you need to do.&lt;br /&gt;
* Check you&#039;ve really got a DIDE username. If you don&#039;t know what it is, talk to your lovely IT team.&lt;br /&gt;
* Connect to the DIDE VPN using ZScaler from https://uafiles.cc.ic.ac.uk/, and login to that with your IC account - but you&#039;ll still need your DIDE account to access DIDE servers after the ZScaler connection is up and running.&lt;br /&gt;
* Now we&#039;ll open a command window using &amp;quot;runas&amp;quot; - which lets you choose which identity the system thinks you are within that command window:-&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
runas /netonly /user:DIDE\user cmd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* (Change user to your own login obviously). It will ask for your password, then open a new command window. In that window, you&#039;ll be able to do cluster-related things as your DIDE username.&lt;br /&gt;
&lt;br /&gt;
=== Windows: Launching and cancelling jobs ===&lt;br /&gt;
==== Windows: Command Line ====&lt;br /&gt;
&lt;br /&gt;
Suppose you have a file called &amp;quot;run.bat&amp;quot; in your home directory, which does what you want to run on the cluster. Let&#039;s say it&#039;s a single-core, very simple job. We’ll discuss what should be inside &amp;quot;run.bat&amp;quot; later. To submit your job on the cluster, at the command prompt, type this (all on one line) - or put it in a file called &amp;quot;launch.bat&amp;quot;, and run it:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /jobtemplate:GeneralNodes /numcores:1 \\qdrive.dide.ic.ac.uk\homes\user\run.bat&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If it&#039;s the first time you’ve run a job - or if you&#039;ve recently changed your password, then it might ask you for your DIDE password and offer to remember it. Otherwise, it will just tell you the ID number of your job.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;Enter the password for ‘DIDE\user’ to connect to ‘FI—DIDECLUSTHN’:&lt;br /&gt;
Remember this password? (Y/N)&lt;br /&gt;
job has been submitted. ID: 123&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you want to remove the job, then:-	&amp;lt;code&amp;gt;job cancel 123 /scheduler:fi--dideclusthn.dide.ic.ac.uk&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Or view its details with &amp;lt;code&amp;gt;job view 123 /scheduler:fi--dideclusthn.dide.ic.ac.uk&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Windows: Job Manager GUI ====&lt;br /&gt;
&lt;br /&gt;
Alternatively to the command-line, you can use the job management software, rather than the command-line. The advantage is that it’s a GUI. The disadvantage is, as in all GUIs, you may not feel totally sure you know what it’s up to – where most of the time the things you want to do might not be very complex, as above.&lt;br /&gt;
&lt;br /&gt;
The job management software will be on your start menu, as above. All the features are under the “Actions” menu, and hopefully it will be self explanatory. Read the details below about launching, and you&#039;ll find the interface bits that do it in the Job Manager. However, you may find over time, especially if you run lots of jobs, that learning to do it the scripted way with the command-line can be quicker.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Information for running any job ==&lt;br /&gt;
&lt;br /&gt;
=== Visibility ===&lt;br /&gt;
&lt;br /&gt;
Any executable/batch file that the cluster will run must be somewhere on the network that the cluster has access to, when it logs in as you. This amounts to any network accessible drive that you have access to when you login – including network shares, such as the temp drive, your home directory, and any specific network space set up for your project.&lt;br /&gt;
&lt;br /&gt;
After a job is launched, all paths are relative to the &#039;&#039;&#039;/workdir:&#039;&#039;&#039; specified on the job submit command-line. Windows does not usually allow a network path to be the current directory, and MS-HPC somehow gets around this. But if in doubt, use fully-qualified paths to specify where files should be read from, or written to. You may want to write code that takes the paths from a parameter file, or as a command-line parameter, to give as much flexibility as possible. &lt;br /&gt;
&lt;br /&gt;
Your home directory, and the temp drive are on departmental servers that don&#039;t have an especially fast connection to the cluster. So avoid having thousands of jobs all reading/writing to those places at once. Additionally, the temp drive is shared between all users, and your home drive has a limited quota. It is also backed up every day, so avoid using it as scratch storage for results you don’t actually want to keep. Generally, the shares you&#039;ll want to use from the clusters will be ones containing the word &amp;quot;NAS&amp;quot;, which the big cluster has fast access to.&lt;br /&gt;
&lt;br /&gt;
=== Interactivity ===&lt;br /&gt;
&lt;br /&gt;
The job must run in an entirely scripted, unattended way. It must not require any key presses or mouse clicks, or other live interactivity while it runs. So jobs generally will read some sort of input (from a file, or from the way you run the job), do some processing, and write the results somewhere for you - all without intervention.&lt;br /&gt;
&lt;br /&gt;
== Launching jobs ==&lt;br /&gt;
&lt;br /&gt;
Jobs can be launched either through the Job Manager interface, or through the command line tools, which offer greater flexibility. We&#039;ll describe the command line method here; if you want to use the GUI, then it&#039;ll be a case of finding the matching boxes... Below are the specifics for our clusters. For more information, simply type &amp;lt;code&amp;gt;job&amp;lt;/code&amp;gt; on the commandline, or &amp;lt;code&amp;gt;job submit&amp;lt;/code&amp;gt; for the list of submission-related commands.&lt;br /&gt;
&lt;br /&gt;
=== FI--DIDECLUSTHN vs FI--DIDEMRCHNB ===&lt;br /&gt;
&lt;br /&gt;
Job submissions, as shown below, must specify a &amp;quot;job template&amp;quot;, which sets up a load of default things to make the job work. On fi--dideclusthn, the job templates are called 4Core, 8Core and GeneralNodes, which will respectively force jobs to run on the 4-core nodes, the 8-core nodes, or on any machine available.&lt;br /&gt;
&lt;br /&gt;
On fi--didemrchnb, you can set the job template to be... 8Core, 12Core, 16Core, 12and16Core, and GeneralNodes - which hopefully are fairly self-explanatory. There are a couple of other job templates, (24Core and Phi), but those are a bit special purpose for now, so don&#039;t use them!&lt;br /&gt;
&lt;br /&gt;
=== Job Submission ===&lt;br /&gt;
&lt;br /&gt;
Job submissions from the command line can take the following form (all on one line):-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /stdout:\\path\to\stdout.txt&lt;br /&gt;
   /stderr:\\path\to\stderr.txt /numcores:1-1 /jobtemplate:4Core \\path\to\run.bat&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== The /singlenode argument ===&lt;br /&gt;
&lt;br /&gt;
In MS HPC (2012), Microsoft finally added a tag to allow you to say that the &#039;n&#039; cores you requested must be on the same computer. Therefore, if you know precisely how many cores you want, then use the following (on one line):-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /singlenode:true &lt;br /&gt;
   /jobtemplate:8Core \\path\to\run.bat&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
However, there is one bug with this, for the specific case where you request a whole node, regardless of how many cores it has. In this case, oddly, you have to disable single node:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /singlenode:false &lt;br /&gt;
   /numnodes:1 /jobtemplate:8Core \\path\to\run.bat&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Languages and libraries supported ==&lt;br /&gt;
&lt;br /&gt;
A number of languages, and different versions of languages are available on the cluster. The sections below refer to your &amp;quot;run.bat&amp;quot; file - a batch file that you will create which will get run by a cluster node when a suitable one is available. The commands described below are to be put in this &amp;quot;run.bat&amp;quot; file, and they add various directories to the path, so that the software you want will be added to the path. &lt;br /&gt;
&lt;br /&gt;
=== C/C++ === &lt;br /&gt;
&lt;br /&gt;
A number of Microsoft C++ and Intel C++ runtimes are installed, but it&#039;s usually better to try and avoid using them, and make your executable as stand-alone as possible. If it requires any external libraries that you&#039;ve had to download, then put the .dll file in the same directory as the .exe file. If you use Microsoft Visual Studio, in Project Preferences, C/C++, Code Generation, make sure the Runtime Library is Multi-threaded (/MT) – the ones with DLL files won’t work. Even so, on recent versions of the Intel and Microsoft C compilers, &amp;quot;static linking&amp;quot; doesn’t really mean static when it comes to OpenMP, and you’ll have to copy some DLLs and put them next to your EXE file. See the OpenMP section below.&lt;br /&gt;
&lt;br /&gt;
The cluster nodes are all 64-bit, but they will run 32-bit compiled code. Just make sure you provide the right DLLs!&lt;br /&gt;
&lt;br /&gt;
Here is a document about [[Using the Xeon Phi]]&lt;br /&gt;
&lt;br /&gt;
Here is a document about [[Using MPI]]&lt;br /&gt;
&lt;br /&gt;
And if you want to use libraries such as GSL, then try [[C/C++ Libraries for Windows]]&lt;br /&gt;
&lt;br /&gt;
=== Java ===&lt;br /&gt;
&lt;br /&gt;
Java doesn&#039;t strictly need installing; you can setup any Java Runtime Environment you like, from Oracle, or anywhere. If you want to do this, then, (if you were to use the Server JRE from Oracle), something similar to the following will add java.exe and jvm.dll to the path, and set the JAVA_HOME environment variable, which most Java-using software will appreciate.&lt;br /&gt;
&lt;br /&gt;
    set JAVA_HOME=\\my\path\to\jre1.8.0&lt;br /&gt;
    set path=%JAVA_HOME%\bin;%JAVA_HOME%\bin\server;%path%&lt;br /&gt;
&lt;br /&gt;
For convenience, if you&#039;re happy with Azul&#039;s OpenJDK Java 1.8.0 update 308 (September 2021), then &amp;lt;code&amp;gt;call setJava64&amp;lt;/code&amp;gt; in your run script will set this up for you. Incidentally the above will also add what&#039;s needed for using the rJava package in R - in which case you&#039;ll perhaps also want something like &amp;lt;code&amp;gt;call setR64_4_1_0&amp;lt;/code&amp;gt; in your run script.&lt;br /&gt;
&lt;br /&gt;
=== Perl ===&lt;br /&gt;
&lt;br /&gt;
Strawberry Perl 64-bit portable, v5.30.1.1. Put &amp;lt;code&amp;gt;call setPerl&amp;lt;/code&amp;gt; at the top of your script.&lt;br /&gt;
&lt;br /&gt;
=== R ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;New tools are coming&#039;&#039;&#039;: [http://dide-tools.github.io/didehpc/vignettes/quickstart.html see here].  The instructions below are still valid if you want to do this manually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You can R jobs on all the clusters. This is the latest wisdom on how to do so – thanks to James, Jeff, Hannah and others. &lt;br /&gt;
&lt;br /&gt;
First, if you are wanting to use packages, then set up a package repository on your home directory by running this in R.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;install.packages(&amp;quot;&amp;lt;package&amp;gt;&amp;quot;,lib=&amp;quot;Q:/R&amp;quot;)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now, write your run script. Suppose you have an R script in your home directory: Q:\R-scripts\test.R. And suppose you’ve set up your repository as above. Your run.bat should then be:-&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
	call &amp;lt;script for the R version you want – see below&amp;gt;&lt;br /&gt;
	net use Q: \\qdrive.dide.ic.ac.uk\homes\user&lt;br /&gt;
	set R_LIBS=Q:\R&lt;br /&gt;
	set R_LIBS_USER=Q:\R&lt;br /&gt;
	Rscript Q:\R-scripts\test.R&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Various packages require various R versions, and the cluster supports a few versions. To choose which one, change the first line of the script above to one of these – 32-bit or 64-bit versions of R releases. Purely for amusement, R&#039;s codenames are shown here too. &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setr32_2_13_1.bat		call setr64_2_13_1.bat    (anyone know the codename?)&lt;br /&gt;
call setr32_2_14_2.bat		call setr64_2_14_2.bat    (Gift-getting season)&lt;br /&gt;
call setr32_2_15_2.bat		call setr64_2_15_2.bat    (Trick or treat)&lt;br /&gt;
call setr32_3_0_1.bat           call setr64_3_0_1.bat     (Good Sport)&lt;br /&gt;
call setr32_3_0_2.bat           call setr64_3_0_2.bat     (Frisbee Sailing)&lt;br /&gt;
call setr32_3_1_0.bat           call setr64_3_1_0.bat     (Spring Dance)&lt;br /&gt;
call setr32_3_1_2.bat           call setr64_3_1_2.bat     (Pumpkin Helmet)&lt;br /&gt;
call setr32_3_2_2.bat           call setr64_3_2_2.bat     (Fire Safety)&lt;br /&gt;
call setr32_3_2_3.bat           call setr64_3_2_3.bat     (Wooden Christmas Tree)&lt;br /&gt;
call setr32_3_2_4.bat           call setr64_3_2_4.bat     (Very Secure Dishes - Revised Version - R later renamed this to 3.2.5)&lt;br /&gt;
call setr32_3_3_1.bat           call setr64_3_3_1.bat     (Bug in your hair)&lt;br /&gt;
call setr32_3_3_2.bat           call setr64_3_3_2.bat     (Sincere Pumpkin Patch)&lt;br /&gt;
call setr32_3_4_0.bat           call setr64_3_4_0.bat     (You Stupid Darkness)&lt;br /&gt;
call setr32_3_4_2.bat           call setr64_3_4_2.bat     (Short Summer)&lt;br /&gt;
call setr32_3_4_4.bat           call setr64_3_4_4.bat     (Someone to lean on)&lt;br /&gt;
call setr32_3_5_0.bat           call setr64_3_5_0.bat     (Joy in Playing)&lt;br /&gt;
call setr32_3_5_1.bat           call setr64_3_5_1.bat     (Feather Spray)&lt;br /&gt;
call setr32_3_5_3.bat           call setr64_3_5_3.bat     (Great Truth)&lt;br /&gt;
call setr32_3_6_0.bat           call setr64_3_6_0.bat     (Planting of a Tree)&lt;br /&gt;
call setr32_3_6_1.bat           call setr64_3_6_1.bat     (Action of the Toes)&lt;br /&gt;
call setr32_3_6_3.bat           call setr64_3_6_3.bat     (Holding the Windsock)&lt;br /&gt;
call setr32_4_0_2.bat           call setr64_4_0_2.bat     (Taking Off Again)&lt;br /&gt;
call setr32_4_0_3.bat           call setr64_4_0_3.bat     (Bunny-Wunnies Freak Out)&lt;br /&gt;
call setr32_4_0_5.bat           call setr64_4_0_5.bat     (Shake and Throw)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following versions are *not* available on the cluster at the moment - but here are their names anyway, as it seemed a shame to miss them out. Let me know if you desperately need one of these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
2.14.0    Great Pumpkin                   &lt;br /&gt;
2.14.1    December Snowflakes&lt;br /&gt;
2.15.0    Easter Beagle&lt;br /&gt;
2.15.1    Roasted Marshmallow&lt;br /&gt;
2.15.3    Security Blanket&lt;br /&gt;
3.0.0     Masked Marvel&lt;br /&gt;
3.0.3     Warm Puppy&lt;br /&gt;
3.1.1     Sock it to me&lt;br /&gt;
3.1.3     Smooth Sidewalk&lt;br /&gt;
3.2.0     Full of Ingredients&lt;br /&gt;
3.2.1     World famous astronaut&lt;br /&gt;
3.2.4     Very Secure Dishes (the non-revised version)&lt;br /&gt;
3.3.0     Supposedly Educational&lt;br /&gt;
3.3.3     Another Canoe&lt;br /&gt;
3.4.1     Single Candle&lt;br /&gt;
3.4.3     Kite-Eating Tree&lt;br /&gt;
3.5.2     Eggshell Igloo&lt;br /&gt;
3.6.2     Dark and Stormy Night&lt;br /&gt;
4.0.0     Arbor Day&lt;br /&gt;
4.0.1     See Things Now&lt;br /&gt;
4.0.4     Lost Library Book&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It also seems that different R versions put their packages in different structures – sometimes adding &amp;quot;win-library&amp;quot; into there for fun. Basically, R_LIBS and R_LIBS_USER should be paths to a folder that contains a list of other folders, one for each package you&#039;ve installed.&lt;br /&gt;
&lt;br /&gt;
IMPORTANT:  R_LIBS and R_LIBS_USER paths must NOT contain quotes, nor spaces. If the path to your library contains spaces, you need to use old-fashioned 8-character names. If in your command window, you type &amp;lt;code&amp;gt;dir /x&amp;lt;/code&amp;gt;, you’ll see the names – Program Files tends to become PROGRA~1 for instance. &lt;br /&gt;
&lt;br /&gt;
==== Passing parameters to R scripts ====&lt;br /&gt;
Passing parameters to R scripts means you can have fewer versions of your R and bat files and easily run whole sets of jobs. You can get parameters into R using Rscript (but not Rcmd BATCH, I think) as follows. In the run.bat example above, the Rscript statement becomes:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Rscript Q:\R-scripts\test.R arg1 arg2 arg3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Within the R code, the arguments can be recovered using &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
args &amp;lt;- commandArgs(trailingOnly = TRUE)&lt;br /&gt;
&lt;br /&gt;
outFileName &amp;lt;- args[1]     ## name of output file.&lt;br /&gt;
dataFileName &amp;lt;- args[2]    ## name of local data file. &lt;br /&gt;
currentR0 &amp;lt;- as.numeric(args[3]) ## convert this explicitly to number. &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
If you want your arguments to have a particular type, best to explicitly convert (see R0 above). Better still, you can pass parameters directly into the batch file that runs the R script. Command line arguments can be referenced within the batch file using %1, %2, etc. For example, if you have a batch file, runArgs.bat:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call &amp;lt;script for the R version you want – see below&amp;gt;&lt;br /&gt;
net use Q: \\qdrive.dide.ic.ac.uk\homes\user&lt;br /&gt;
set R_LIBS=Q:\R&lt;br /&gt;
set R_LIBS_USER=Q:\R&lt;br /&gt;
Rscript Q:\R-scripts\%1.R %2 %3 %4&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
then&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
runArgs.bat myRScript arg1 arg2 arg3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
will run the R script myRScript.R and pass it the parameters arg1, arg2 and arg3. The batch file runArgs.bat is now almost a &#039;&#039;&#039;generic R script runner&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== OpenMP ===&lt;br /&gt;
&lt;br /&gt;
This has been tested with C/C++ - but the same should apply to other languages such as fortran, that achieve multi-threading with a DLL file.&lt;br /&gt;
&lt;br /&gt;
==== Microsoft&#039;s C/C++ Compiler ====&lt;br /&gt;
You will need to copy vcomp100.dll (for Visual Studio 2010 – it maybe vcomp90.dll for 2008), into the same directory as your executable. You can usually find the dll file in a directory similar to:- C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\redist\x64\Microsoft.VC100.OpenMP. Extrapolate for future versions! Also make sure that you&#039;ve enabled OpenMP in the Properties (C++/Language).&lt;br /&gt;
&lt;br /&gt;
==== GCC or MinGW ====&lt;br /&gt;
Usually, this applies to Eclipse use. In project properties, the C++ command “g++ -fopenmp”, the C command “gcc –fopenmp”, and in the Linker options, under Miscellaneous, Linker flags, put “-fopenmp” too. Copy the OpenMP DLLs from MinGW into the same directory as your final executable. You may find the dlls are in C:\MinGW\Bin\libgomp-1.dll and in the same place, libpthread-2.dll,  libstdc++-6.dll and libgcc_s_dw2-1.dll.&lt;br /&gt;
&lt;br /&gt;
==== Intel C++ Compiler ====&lt;br /&gt;
Copy the libiomp5md.dll file from somewhere like C:\Program Files (x86)\Intel\ComposerXE-2011\redist\intel64\compiler\libiomp5md.dll to the same place as your executable. And in Visual Studio, make sure you&#039;ve enabled OpenMP in the project properties.&lt;br /&gt;
&lt;br /&gt;
==== How many threads? ====&lt;br /&gt;
The OpenMP function omp_max_threads() returns the number of &#039;&#039;physical&#039;&#039; cores on a machine, not the number of cores &#039;&#039;allocated&#039;&#039; to your job. To determine how many cores the scheduler actually allocated to you, use the following code to dig up the environment variable CCP_NUMCPUS, which will be set by the cluster management software:- &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
		int set_NCores() {&lt;br /&gt;
		   char * val;&lt;br /&gt;
		   char * endchar;&lt;br /&gt;
		   val = getenv(&amp;quot;CCP_NUMCPUS&amp;quot;);&lt;br /&gt;
		   int cores = omp_get_max_threads();&lt;br /&gt;
		   if (val!=NULL) cores = strtol (val,&amp;amp;endchar,10);&lt;br /&gt;
                   omp_set_num_threads(cores);&lt;br /&gt;
		   return cores;&lt;br /&gt;
		}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== WinBugs (or OpenBugs) ===&lt;br /&gt;
&lt;br /&gt;
They are similar, but OpenBugs 3.2.2 is the one we&#039;ve gone for. Something like this as your run.bat script will work:-&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setOpenBugs&lt;br /&gt;
openbugs \\path\to\script.txt /HEADLESS&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== MatLab ===&lt;br /&gt;
&lt;br /&gt;
There are various ways of producing a non-interactive executable from Matlab. Perhaps the simplest (not necessarily the best performance) way is to use “mcc.exe” – supplied with most full versions of Matlab, including the Imperial site licence version that you&#039;ve probably got.&lt;br /&gt;
&lt;br /&gt;
==== Use mcc.exe to compile your code ====&lt;br /&gt;
&lt;br /&gt;
Use windows explorer to navigate to the folder where the “.m” files are for the project you want to compile. Now use a good text editor to create a file called “compile.bat” in that folder. It should contain something similar to the following:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mcc -m file1.m file2.m file3.m -o myexe&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Don’t copy/paste the text from this document by the way – Word has a different idea of what a dash is to most other software, and will probably replace the two dashes with funny characters. so you have to list every single .m file that your project needs, after the’-m’. If you save this file, then double-click on it, then it will think for some while, and produce “myexe.exe” in this example. Copy your .exe file into a network accessible place as usual.&lt;br /&gt;
&lt;br /&gt;
==== Launch on the cluster. ====&lt;br /&gt;
&lt;br /&gt;
The launch.bat file will be exactly the same as before – see page 2. The run script will then start with a line that tells the cluster which version of Matlab you used to compile the cluster. Below is the table of different versions. The runtimes are huge and cumbersome to install on the cluster, so as a result I haven’t installed every single one. If you need one that’s not listed, get in touch.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Matlab Version&lt;br /&gt;
! First line of run script&lt;br /&gt;
|- &lt;br /&gt;
| R2009b&lt;br /&gt;
| call useMatLab79&lt;br /&gt;
|- &lt;br /&gt;
| R2010a&lt;br /&gt;
| call useMatLab713&lt;br /&gt;
|- &lt;br /&gt;
| R2011a&lt;br /&gt;
| call useMatLab715&lt;br /&gt;
|- &lt;br /&gt;
| R2011b&lt;br /&gt;
| call useMatLab716&lt;br /&gt;
|- &lt;br /&gt;
| R2012a (64-bit)&lt;br /&gt;
| call useMatLab717_64&lt;br /&gt;
|- &lt;br /&gt;
| R2012b (64-bit)&lt;br /&gt;
| call useMatLab80_64&lt;br /&gt;
|- &lt;br /&gt;
| R2013a (64-bit)&lt;br /&gt;
| call useMatLab81_64&lt;br /&gt;
|- &lt;br /&gt;
| R2014a (64-bit)&lt;br /&gt;
| call useMatLab83_64&lt;br /&gt;
|- &lt;br /&gt;
| R2014b (64-bit)&lt;br /&gt;
| call useMatLab84_64&lt;br /&gt;
|- &lt;br /&gt;
| R2015a (64-bit)&lt;br /&gt;
| call useMatLab85_64&lt;br /&gt;
|- &lt;br /&gt;
| R2015b (64-bit)&lt;br /&gt;
| call useMatLab90_64&lt;br /&gt;
|- &lt;br /&gt;
| R2016b (64-bit)&lt;br /&gt;
| call useMatLab91_64&lt;br /&gt;
|- &lt;br /&gt;
| R2017a (64-bit)&lt;br /&gt;
| call useMatLab92_64&lt;br /&gt;
|- &lt;br /&gt;
| R2019a (64-bit)&lt;br /&gt;
| call useMatLab96_64&lt;br /&gt;
|- &lt;br /&gt;
| R2021a (64-bit)&lt;br /&gt;
| call useMatLab910_64&lt;br /&gt;
|- &lt;br /&gt;
| R2022a (64-bit)&lt;br /&gt;
| call useMatLab912_64&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Python ===&lt;br /&gt;
&lt;br /&gt;
* The most recent version of each major release is on the cluster. Different python versions within the same release (e.g., 3.5.1 and 3.5.2) do not behave nicely together in automated installation, so if you have a desperate need for a previous minor version, get in touch. While 2.7.18 is available, we &#039;&#039;&#039;strongly&#039;&#039;&#039; recommend migrating away from Python 2.7, as it has been officially discontinued on 1st January 2020. Experiences may vary, and future success is not guaranteed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
2.7.18  64-bit   call set_python_27_64.bat&lt;br /&gt;
3.5.10  64-bit   call set_python_35_64.bat&lt;br /&gt;
3.6.15  64-bit   call set python_36_64.bat&lt;br /&gt;
3.7.17  64-bit   call set_python_37_64.bat&lt;br /&gt;
3.8.20  64-bit   call set python_38_64.bat&lt;br /&gt;
3.9.21  64-bit   call set_python_39_64.bat&lt;br /&gt;
3.10.16 64-bit   call set python_310_64.bat&lt;br /&gt;
3.11.11 64-bit   call set_python_311_64.bat&lt;br /&gt;
3.12.11 64-bit   call set_python_312_64.bat&lt;br /&gt;
3.13.5  64-bit   call set_python_313_64.bat&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* You&#039;ll most likely want to use some packages, so you&#039;ll need to have a network-accessible location to put your packages in. If you&#039;re running a version of Windows with Python that matches one installed on the cluster, then you&#039;ll be able to share that package repository between the two. But if you&#039;re running a different version, or a different operating system, or a different Python version, then you&#039;ll need to keep your local package repository separate from the one the cluster uses.&lt;br /&gt;
* Here comes the basic script to run some python. Suppose I decide to put my Python packages for the cluster in &#039;&#039;&#039;\\qdrive.dide.ic.ac.uk\homes\username\PythonCluster37_64&#039;&#039;&#039; (which is Q:\PythonCluster37_64 on a DIDE Windows PC). To run some python, something like the following:-&lt;br /&gt;
&lt;br /&gt;
 call set_python_37_64&lt;br /&gt;
 set PYTHONPATH=\\qdrive\homes\username\PythonCluster37_64&lt;br /&gt;
 python \\qdrive\homes\username\Python\MyScript.py&lt;br /&gt;
&lt;br /&gt;
or if you want to do this in a programmatic way...&lt;br /&gt;
&lt;br /&gt;
 import sys&lt;br /&gt;
 sys.path = [&#039;\\\\qdrive\\homes\\username\\PythonCluster37_64&#039;] + sys.path&lt;br /&gt;
&lt;br /&gt;
==== Packages ====&lt;br /&gt;
&lt;br /&gt;
* If you want to install a package like numpy, that&#039;s readily available through pip, then you can launch a batch file like this:-&lt;br /&gt;
 call set_python_36_64&lt;br /&gt;
 pip install numpy --target \\qdrive\homes\username\PythonCluster36_64&lt;br /&gt;
* or alternatively, you could write a python script that looks like this, and launch it as normal:-&lt;br /&gt;
 import pip&lt;br /&gt;
 pip.main([&#039;install&#039;,&#039;numpy&#039;,&#039;--target&#039;,&#039;\\\\qdrive\\homes\\username\\PythonCluster36_64&#039;])&lt;br /&gt;
&lt;br /&gt;
* And if you&#039;re running the same Python version on a Windows machine, then you can do these two locally, without submitting a cluster job to do them for you.&lt;br /&gt;
&lt;br /&gt;
* And next time you submit a python job on the cluster, python will look in the place set by PYTHONPATH, and will find the packages you&#039;ve just installed when you import them.&lt;br /&gt;
&lt;br /&gt;
=== Beast and Beagle ===&lt;br /&gt;
&lt;br /&gt;
We&#039;ve got a couple of versions available. For BEAST 1.75 with BEAGLE 1.0:  (the x y z represents all the command-line arguments you&#039;ll want to pass to beast)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setbeast&lt;br /&gt;
call beast-beagle x y z&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you want BEAST 1.82 or 1.83 with BEAGLE 2.1:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setbeast_182                        call setbeast_183&lt;br /&gt;
call beast-beagle_182 x y z              call beast-beagle_183 x y z&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And if you want BEAST 2.3.2 with BEAGLE 2.1 (note that BEAST 2 is a different, er, beast to BEAST 1, regarding packages and compatibilities, so only use BEAST 2 if you know that&#039;s what you want to use).&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setbeast_232&lt;br /&gt;
call beast-beagle_232 x y z&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
OpenCL is installed on all the nodes, which means Beagle will pick up the Intel Xeon processors and use what it can on them. It will also detect the Xeon Phis where they&#039;re available. If that&#039;s something you&#039;d be particularly interested in using, drop me a line.&lt;br /&gt;
&lt;br /&gt;
=== Blast ===&lt;br /&gt;
&lt;br /&gt;
Drop me a line to join the party testing this, and to get added to the (large) BlastDB network share.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setblast&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
will set the `BLASTDB` environment variable to point to what we current have of the `v5` database, and the Blast tools (2.9.0, 64-bit) will be added to the path. So you can &lt;br /&gt;
then call `blastp`, `blastn`, `blastx` setc.&lt;br /&gt;
&lt;br /&gt;
=== BOW (BioInformatics on Windows) ===&lt;br /&gt;
&lt;br /&gt;
A number of Bio-informatics tools are ready to go. These used to be provided together on codeplex, but that has since been retired. Ugene is one project that&lt;br /&gt;
maintains windows builds of them. Start your run.bat file with &amp;lt;code&amp;gt;call setBOW&amp;lt;/code&amp;gt; to add these to the path:-&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! EXE File&lt;br /&gt;
! Version&lt;br /&gt;
|- &lt;br /&gt;
| SamTools.exe&lt;br /&gt;
| 0.1.19-44429cd&lt;br /&gt;
|- &lt;br /&gt;
| BCFTools.exe&lt;br /&gt;
| 0.1.19-44428cd&lt;br /&gt;
|- &lt;br /&gt;
| bgzip&lt;br /&gt;
| ?&lt;br /&gt;
|- &lt;br /&gt;
| razip&lt;br /&gt;
| ?&lt;br /&gt;
|- &lt;br /&gt;
| bwa&lt;br /&gt;
| 0.7.17-r1188&lt;br /&gt;
|-&lt;br /&gt;
| tabix&lt;br /&gt;
| 0.2.5 (r1005)&lt;br /&gt;
|-&lt;br /&gt;
| minimap2&lt;br /&gt;
| 2.24 (r1122)&lt;br /&gt;
|-&lt;br /&gt;
| raxml&lt;br /&gt;
| 8.2.12 (best for each node)&lt;br /&gt;
|-&lt;br /&gt;
| raxml_sse3&lt;br /&gt;
| 8.2.12 (pthreads+sse3)&lt;br /&gt;
|-&lt;br /&gt;
| raxml_avx&lt;br /&gt;
| 8.2.12 (pthreads+avx)&lt;br /&gt;
|-&lt;br /&gt;
| raxml_avx2&lt;br /&gt;
| 8.2.12 (pthreads+avx2)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Note that BWA-MEM is hardwired to use a linux-only feature, so will produce an odd message and not do what you want if you use that mode on Windows. However, it seems that minimap2 may be a faster and more accurate way&lt;br /&gt;
of doing what bwa does in any case, and that seems to have no such limitation.&lt;br /&gt;
&lt;br /&gt;
Also, note that raxml.exe is a copy of the most optimised build for the particular cluster node the job is running on. fi--dideclusthn only supports SSE3;&lt;br /&gt;
fi--didemrchnb varies a little; the 32-cores support AVX2, the 24, 20 and 16 core machines support AVX, and only the oldest 12-core nodes only support SSE3. You don&#039;t have to worry about, except to expect performance to vary between them.&lt;br /&gt;
&lt;br /&gt;
=== GATK and Picard ===&lt;br /&gt;
&lt;br /&gt;
These both rely on Java, so put this in your run script:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setJava64&lt;br /&gt;
call setgatk&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and then &amp;lt;code&amp;gt;gatk&amp;lt;/code&amp;gt; in your scripts will use Python 3.7 to call the argument handling wrapper for GATK 4.2.2.0, and &amp;lt;code&amp;gt;picard&amp;lt;/code&amp;gt; maps to the picard (2.26.2) jar file.&lt;br /&gt;
&lt;br /&gt;
=== FastQC ===&lt;br /&gt;
&lt;br /&gt;
This one has a slight eccentricity that instead of passing normal command-line args, it uses java&#039;s -D command-line options to buffer them out of an environment variable&lt;br /&gt;
called _JAVA_OPTIONS. Strange but true. The ZIP comes with a bash script, which I&#039;ll reimplement if anyone actually wants me to. But in the meantime, it&#039;s easy to work &lt;br /&gt;
out the arguments by inspection. For example, most likely usage:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setFastQC&lt;br /&gt;
&lt;br /&gt;
set _JAVA_OPTIONS=&#039;-Dfastqc.output_dir=%OUT%&#039;&lt;br /&gt;
call fastqc thing.fq&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== MAFFT ===&lt;br /&gt;
&lt;br /&gt;
For version 7.212 (Win64), write &amp;lt;code&amp;gt;call setMAFFT.bat&amp;lt;/code&amp;gt; at the top of your run script.&lt;br /&gt;
&lt;br /&gt;
=== Applied-Maths Open Source ===&lt;br /&gt;
&lt;br /&gt;
Write &amp;lt;code&amp;gt;call setAppliedMaths.bat&amp;lt;/code&amp;gt; at the top of your run script, to add these to the path:&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! EXE File(s)&lt;br /&gt;
! Description&lt;br /&gt;
! Version&lt;br /&gt;
|- &lt;br /&gt;
| velvetg_mt_x86.exe&lt;br /&gt;
| Graph Construction Multi-threaded, 32-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velvetg_mt_x64.exe&lt;br /&gt;
| Graph Construction Multi-threaded, 64-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velvetg_st_x86.exe&lt;br /&gt;
| Graph Construction Multi-threaded, 32-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velvetg_st_x64.exe&lt;br /&gt;
| Graph Construction Multi-threaded, 64-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velveth_mt_x86.exe&lt;br /&gt;
| Hashing Multi-threaded, 32-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velveth_mt_x64.exe&lt;br /&gt;
| Hashing Multi-threaded, 64-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velveth_st_x86.exe&lt;br /&gt;
| Hashing Multi-threaded, 32-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velveth_st_x64.exe&lt;br /&gt;
| Hashing Multi-threaded, 64-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| ray_x64.exe&lt;br /&gt;
| Ray 64-bit (for MPI)&lt;br /&gt;
| 1.6&lt;br /&gt;
|-&lt;br /&gt;
| ray_x86.exe&lt;br /&gt;
| Ray 32-bit (for MPI)&lt;br /&gt;
| 1.6&lt;br /&gt;
|-&lt;br /&gt;
| Mothur_x64.exe&lt;br /&gt;
| Mothur 64-bit (for MPI)&lt;br /&gt;
| 1.25.1&lt;br /&gt;
|-&lt;br /&gt;
| Mothur_x86.exe&lt;br /&gt;
| Mothur 32-bit (for MPI)&lt;br /&gt;
| 1.25.1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Tensorflow ===&lt;br /&gt;
&lt;br /&gt;
Here is an example of getting Tensorflow (as a python package) available from an R script, using the cluster to install everything for you. It only works for Tensorflow 2.0 - older versions and newer versions seem to want combinations of DLLs that I can&#039;t satisfy. The following are I think minimal steps to get Tensorflow running from Python and R.&lt;br /&gt;
&lt;br /&gt;
* Create a folder for your python packages in your home directory (so the cluster can see it. I&#039;m calling mine &amp;lt;code&amp;gt;Q:/python_37_repo&amp;lt;/code&amp;gt; - and the cluster will call it \\fi--san03.dide.ic.ac.uk\homes\wrh1\python_37_repo - change wrh1 to your DIDE username of course.&lt;br /&gt;
* Create a similar folder for R packages, which for me is &amp;lt;code&amp;gt;Q:/R4&amp;lt;/code&amp;gt;&lt;br /&gt;
* And a third folder, Q:/Tensorflow to do this work in.&lt;br /&gt;
* Download these DLLs and put them in the Q:/Tensorflow folder - at present they seem to be the ones Python/Tensorflow wants. Let&#039;s hope for the best... Download [https://mrcdata.dide.ic.ac.uk/resources/msvcp140.dll msvcp140.dll] and [https://mrcdata.dide.ic.ac.uk/resources/msvcp140_1.dll msvcp140_1.dll] into your &amp;lt;code&amp;gt;Q:/Tensorflow&amp;lt;/code&amp;gt; folder.&lt;br /&gt;
&lt;br /&gt;
* Now, create a script &amp;lt;code&amp;gt;Q:/Tensorflow/prepare.bat&amp;lt;/code&amp;gt;. We&#039;re going to launch this on the cluster, and get it to wire up the packages we want. Replace USER with your username...&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  net delete Q: /y&lt;br /&gt;
  net use Q: \\qdrive.dide.ic.ac.uk\homes\USER&lt;br /&gt;
  set TMPDIR=%TEMP%&lt;br /&gt;
  set PYTHONPATH=\\qdrive.dide.ic.ac.uk\homes\USER\python_37_repo&lt;br /&gt;
  set R_LIBS=Q:\R4&lt;br /&gt;
  set R_LIBS_USER=Q:\R4&lt;br /&gt;
  call set_python_37_64.bat&lt;br /&gt;
  call setr64_4_0_3.bat&lt;br /&gt;
  pip install --no-cache-dir tensorflow==2.00 --target Q:\python_37_repo&lt;br /&gt;
  RScript Q:\Tensorflow\install_tensorflow.R&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Create also &amp;lt;code&amp;gt;Q:/Tensorflow/install_tensorflow.R&amp;lt;/code&amp;gt; contains:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  install.packages(c(&amp;quot;reticulate&amp;quot;, &amp;quot;tensorflow&amp;quot;),lib=&amp;quot;Q:/R4&amp;quot;,repos=&amp;quot;https://cran.ma.imperial.ac.uk/&amp;quot;)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Now submit the prepare job to the cluster with &amp;lt;code&amp;gt;job submit /scheduler:fi--dideclusthn /jobtemplate:GeneralNodes \\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\prepare.bat&amp;lt;/code&amp;gt; - or if you use the portal, just &amp;lt;code&amp;gt;\\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\prepare.bat&amp;lt;/code&amp;gt; in the big window will do it. That will take a while, but you should notice lots of new files in your Q:/python_37_repo folder. You&#039;ll only need to do this once (unless you delete your Python repo folder, or it randomly breaks and you start again...)&lt;br /&gt;
&lt;br /&gt;
* Next, create a file &amp;lt;code&amp;gt;Q:/Tensorflow/run.bat&amp;lt;/code&amp;gt; containing the following the two &amp;quot;call&amp;quot; lines near the end are the ones that do some &amp;quot;work&amp;quot; in python or R, so this script basically a template for running your future jobs. Just change those two calls to set off the python or R code you want to run that uses Tensorflow.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call set_python_37_64.bat&lt;br /&gt;
call setr64_4_0_3.bat&lt;br /&gt;
net use Q: /delete /y&lt;br /&gt;
net use Q: \\qdrive.dide.ic.ac.uk\homes\USER&lt;br /&gt;
set PYTHONPATH=Q:/python_37_repo&lt;br /&gt;
set R_LIBS=Q:\R4&lt;br /&gt;
set R_LIBS_USER=Q:\R4&lt;br /&gt;
call python Q:\tensorflow\test_tensorflow.py&lt;br /&gt;
call RScript Q:\tensorflow\test_tensorflow.R&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* And finally, you&#039;ll need &amp;lt;code&amp;gt;Q:\tensorflow\test_tensorflow.py&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;Q:\tensorflow\test_tensorflow.R&amp;lt;/code&amp;gt; to exist. Here are minimal tests that everything is wired up. &amp;lt;code.test_tensorflow.py&amp;lt;/code&amp;gt; first:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import tensorflow as tf;&lt;br /&gt;
print(tf.reduce_sum(tf.random.normal([1000, 1000])));&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and &amp;lt;code&amp;gt;Q:\Tensorflow\test_tensorflow.R&amp;lt;/code&amp;gt; contains:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
library(reticulate)&lt;br /&gt;
reticulate::py_config()&lt;br /&gt;
library(tensorflow)&lt;br /&gt;
tf$constant(&#039;Hello, TensorFlow!&#039;)&lt;br /&gt;
tf$Variable(tf$zeros(shape(1L)))&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Now submit the run job to the cluster with &amp;lt;code&amp;gt;job submit /scheduler:fi--dideclusthn /jobtemplate:GeneralNodes \\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\run.bat&amp;lt;/code&amp;gt; - or if you use the portal, just &amp;lt;code&amp;gt;\\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\run.bat&amp;lt;/code&amp;gt; in the big window will do it - and perhaps paste &amp;lt;code&amp;gt;\\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\output.txt&amp;lt;/code&amp;gt; in the stdout box to collect the input and see how it gets on. You should see sensible output from both tests.&lt;br /&gt;
&lt;br /&gt;
== Launching a job ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Submitting many jobs ==&lt;br /&gt;
&lt;br /&gt;
Suppose you write an exe that you might run with… Mysim.exe init.txt 1 2 3, and you want to run it many times with a range of parameters. One way of many, is to write a launch.bat file that will run “job submit” separately, for example (thanks Tini/James!):-&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
@echo off&lt;br /&gt;
set SubDetails=job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /jobtemplate:GeneralNodes /numcores:1&lt;br /&gt;
set initFile=\\networkshare\job\init.txt&lt;br /&gt;
set exeFile=\\networkshare\job\mysim.exe&lt;br /&gt;
&lt;br /&gt;
%SubDetails% %exeFile% %initfile% 1 2 3&lt;br /&gt;
%SubDetails% %exeFile% %initfile% 4 5 6&lt;br /&gt;
%SubDetails% %exeFile% %initfile% 7 8 9&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suppose the job you want to run is an R script? To specify arguments to an R script, you have to add ′--args a=1 b=2′ - so… you might make launch.bat like this:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
@echo off&lt;br /&gt;
set SubDetails=job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /jobtemplate:GeneralNodes /numcores:1&lt;br /&gt;
set rbatFile=\\networkshare\R-scripts\run.bat&lt;br /&gt;
&lt;br /&gt;
%SubDetails% %rbatFile% 1 2&lt;br /&gt;
%SubDetails% %rbatFile% 3 4&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
And make the significant line of your run.bat:-&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
Rcmd BATCH ′--args a=%1 b=%2′ U:\R-scripts\test.R&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
%1 and %2 will map to the first and second thing after the batch file. You can go all the way up to %9.&lt;br /&gt;
&lt;br /&gt;
		IMPORTANT NOTE&lt;br /&gt;
&lt;br /&gt;
Make sure you get the apostrophe character right in the above example – NEVER copy and paste from a word document into a script. It will go hideously wrong. Type the apostrophes (and dashes for that matter) in a good text editor – you want just the standard old-fashioned characters.&lt;br /&gt;
&lt;br /&gt;
== Requesting resources ==&lt;br /&gt;
&lt;br /&gt;
The following modifiers next to the “/scheduler:” part of the job submit line (before your app.exe 1 2 3 part), will request things you might want…&lt;br /&gt;
&lt;br /&gt;
/numcores:8				- number of cores you want&lt;br /&gt;
&lt;br /&gt;
/numcores:8-12				- minimum and maximum cores appropriate for your job&lt;br /&gt;
&lt;br /&gt;
/memorypernode:1024			- amount of mem in MegaBytes needed.&lt;br /&gt;
&lt;br /&gt;
/workdir:\\networkshare\work		- set working directory&lt;br /&gt;
&lt;br /&gt;
/stdout:\\networkshare\out.txt		- divert stdout to a file&lt;br /&gt;
&lt;br /&gt;
/stderr:    or    /stdin:			- similar for stderr and stdin&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting / Miscellany / Q &amp;amp; A ==&lt;br /&gt;
&lt;br /&gt;
*	My job doesn’t work.&lt;br /&gt;
**	Run the HPC Job Manager application. Find your job id, possible under “My Jobs, Failed”. Double click on it, then on “View All Tasks”. Perhaps something in the output section will help.&lt;br /&gt;
&lt;br /&gt;
* Check that the path to your job is visible everywhere.&lt;br /&gt;
** Avoid spaces in your paths - “job submit” doesn’t like them very much. If you must have them, they’ll be ok in the “run.bat” batch file that the cluster will run – in which case, put the path in standard double-quotes (&amp;quot;). But avoid them in your “launch.bat” file – you may have to relocate your run.bat to a simple non-space-containing directory.&lt;br /&gt;
** Rather than putting the full application and parameters on the job submit line, you might want to write a batch-file to do all that, and submit the batch file to the cluster. (See section 6 about R for example). But make sure the batch file is somewhere visible to the cluster.&lt;br /&gt;
	&lt;br /&gt;
*	My job seems to work, but reports as having failed.&lt;br /&gt;
**	The success/failure depends on the error code returned. If you’re running C code, end with “return 0;” for success.&lt;br /&gt;
&lt;br /&gt;
*  job submit ..blah blah.. app.exe &amp;gt;out.txt doesn’t work!&lt;br /&gt;
** The contents of out.txt will be the result of “job submit”, not the result of “app.exe”. You meant to say this job submit ..blah blah.. /stdout:out.txt app.exe correcting out.txt and app.exe to network paths of course.&lt;br /&gt;
&lt;br /&gt;
* My C/C++ Executable works perfectly on my desktop, but doesn&#039;t work on the cluster. What&#039;s wrong with the cluster?&lt;br /&gt;
** Your EXE file probably relies on some DLL files that the cluster doesn&#039;t have. If you use Visual Studio, check that in Code Generation, you have &amp;quot;Multi-Threaded (/MT)&amp;quot; as your target - with no mention of DLLs. If your code uses OpenMP, check you&#039;ve copied the right OpenMP DLL(s) (go back to the C section above). As a last resort, give your EXE to someone who doesn&#039;t have Visual Studio installed, and get them to run it, and see what DLL files it seems to ask for.&lt;br /&gt;
&lt;br /&gt;
== Contributing Authors ==&lt;br /&gt;
&lt;br /&gt;
Wes Hinsley, James Truscott, Tini Garske, Jeff Eaton, Hannah Clapham&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Fi--didemrchnb&amp;diff=14289</id>
		<title>Fi--didemrchnb</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Fi--didemrchnb&amp;diff=14289"/>
		<updated>2025-03-17T15:30:34Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The fi--didemrchnb cluster is the larger cluster, suited to very high performance, multi-core or high memory applications.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Head Node&lt;br /&gt;
! Model&lt;br /&gt;
! Processor (Intel Xeon)&lt;br /&gt;
! Cores&lt;br /&gt;
! Mem (Gb)&lt;br /&gt;
! Mem Type&lt;br /&gt;
! Infiniband&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRCHNB&lt;br /&gt;
| Dell R320&lt;br /&gt;
| E5-2430 2.20GHz&lt;br /&gt;
| 6 (HT-&amp;gt;12)&lt;br /&gt;
| 16&lt;br /&gt;
| 1333&lt;br /&gt;
| MT_1090110018&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Node&lt;br /&gt;
! Model&lt;br /&gt;
! Processor (Intel Xeon)&lt;br /&gt;
! Cores&lt;br /&gt;
! Mem (Gb)&lt;br /&gt;
! Mem Type&lt;br /&gt;
! Mem slots&lt;br /&gt;
! Mem part&lt;br /&gt;
! Infiniband &lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC09&lt;br /&gt;
| Dell C1100&lt;br /&gt;
| 2 x X5670 2.93GHz&lt;br /&gt;
| 12&lt;br /&gt;
| 144&lt;br /&gt;
| 1333&lt;br /&gt;
| 18/18&lt;br /&gt;
| HMT31GR7BFR4C-H9&lt;br /&gt;
| MT_0BB0120003&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC10&lt;br /&gt;
| Dell C1100&lt;br /&gt;
| 2 x X5670 2.93GHz&lt;br /&gt;
| 12&lt;br /&gt;
| 144&lt;br /&gt;
| 1333&lt;br /&gt;
| 18/18&lt;br /&gt;
| HMT31GR7BFR4C-H9&lt;br /&gt;
| MT_0BB0120003&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC11&lt;br /&gt;
| Dell C1100&lt;br /&gt;
| 2 x X5670 2.93GHz&lt;br /&gt;
| 12&lt;br /&gt;
| 144&lt;br /&gt;
| 1333&lt;br /&gt;
| 18/18&lt;br /&gt;
| HMT31GR7BFR4C-H9&lt;br /&gt;
| MT_0BB0120003&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC12&lt;br /&gt;
| Dell C1100&lt;br /&gt;
| 2 x X5670 2.93GHz&lt;br /&gt;
| 12&lt;br /&gt;
| 144&lt;br /&gt;
| 1333&lt;br /&gt;
| 18/18&lt;br /&gt;
| HMT31GR7BFR4C-H9&lt;br /&gt;
| MT_0BB0120003&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC17&lt;br /&gt;
| Dell C6100&lt;br /&gt;
| 2 x X5675 3.07GHz&lt;br /&gt;
| 12&lt;br /&gt;
| 96&lt;br /&gt;
| 1333&lt;br /&gt;
| 12/12&lt;br /&gt;
| M393B1K70CHD-YH9&lt;br /&gt;
| DEL09A0000009&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC18&lt;br /&gt;
| Dell C6100&lt;br /&gt;
| 2 x X5675 3.07GHz&lt;br /&gt;
| 12&lt;br /&gt;
| 96&lt;br /&gt;
| 1333&lt;br /&gt;
| 12/12&lt;br /&gt;
| M393B1K70CHD-YH9&lt;br /&gt;
| DEL09A0000009&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC19&lt;br /&gt;
| Dell C6100&lt;br /&gt;
| 2 x X5675 3.07GHz&lt;br /&gt;
| 12&lt;br /&gt;
| 96&lt;br /&gt;
| 1333&lt;br /&gt;
| 12/12&lt;br /&gt;
| M393B1K70CHD-YH9&lt;br /&gt;
| DEL09A0000009&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC20&lt;br /&gt;
| Dell C6100&lt;br /&gt;
| 2 x X5675 3.07GHz&lt;br /&gt;
| 12&lt;br /&gt;
| 96&lt;br /&gt;
| 1333&lt;br /&gt;
| 12/12&lt;br /&gt;
| M393B1K70CHD-YH9&lt;br /&gt;
| DEL09A0000009&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC21&lt;br /&gt;
| Dell C6100&lt;br /&gt;
| 2 x X5675 3.07GHz&lt;br /&gt;
| 12&lt;br /&gt;
| 96&lt;br /&gt;
| 1333&lt;br /&gt;
| 12/12&lt;br /&gt;
| M393B1K70CHD-YH9&lt;br /&gt;
| DEL09A0000009&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC22&lt;br /&gt;
| Dell C6100&lt;br /&gt;
| 2 x X5675 3.07GHz&lt;br /&gt;
| 12&lt;br /&gt;
| 96&lt;br /&gt;
| 1333&lt;br /&gt;
| 12/12&lt;br /&gt;
| M393B1K70CHD-YH9&lt;br /&gt;
| DEL09A0000009&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC23&lt;br /&gt;
| Dell C6100&lt;br /&gt;
| 2 x X5675 3.07GHz&lt;br /&gt;
| 12&lt;br /&gt;
| 96&lt;br /&gt;
| 1333&lt;br /&gt;
| 12/12&lt;br /&gt;
| M393B1K70CHD-YH9&lt;br /&gt;
| DEL09A0000009&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC24&lt;br /&gt;
| Dell C6100&lt;br /&gt;
| 2 x X5675 3.07GHz&lt;br /&gt;
| 12&lt;br /&gt;
| 96&lt;br /&gt;
| 1333&lt;br /&gt;
| 12/12&lt;br /&gt;
| M393B1K70CHD-YH9&lt;br /&gt;
| DEL09A0000009&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC25&lt;br /&gt;
| Dell C6100&lt;br /&gt;
| 2 x X5675 3.07GHz&lt;br /&gt;
| 12&lt;br /&gt;
| 96&lt;br /&gt;
| 1333&lt;br /&gt;
| 12/12&lt;br /&gt;
| M393B1K70CHD-YH9&lt;br /&gt;
| DEL09A0000009&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC26&lt;br /&gt;
| Dell C6100&lt;br /&gt;
| 2 x X5675 3.07GHz&lt;br /&gt;
| 12&lt;br /&gt;
| 96&lt;br /&gt;
| 1333&lt;br /&gt;
| 12/12&lt;br /&gt;
| M393B1K70CHD-YH9&lt;br /&gt;
| DEL09A0000009&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC27&lt;br /&gt;
| Dell C6100&lt;br /&gt;
| 2 x X5675 3.07GHz&lt;br /&gt;
| 12&lt;br /&gt;
| 96&lt;br /&gt;
| 1333&lt;br /&gt;
| 12/12&lt;br /&gt;
| M393B1K70CHD-YH9&lt;br /&gt;
| DEL09A0000009&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC28&lt;br /&gt;
| Dell C6100&lt;br /&gt;
| 2 x X5675 3.07GHz&lt;br /&gt;
| 12&lt;br /&gt;
| 96&lt;br /&gt;
| 1333&lt;br /&gt;
| 12/12&lt;br /&gt;
| M393B1K70CHD-YH9&lt;br /&gt;
| DEL09A0000009&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC38&lt;br /&gt;
| Dell R620&lt;br /&gt;
| 2 x E5-2690 0 2.90GHz&lt;br /&gt;
| 16&lt;br /&gt;
| 128&lt;br /&gt;
| 1600&lt;br /&gt;
| 8/24&lt;br /&gt;
| HMT42GR7MFR4C-PB&lt;br /&gt;
| MT_1090110018&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC39&lt;br /&gt;
| Dell R620&lt;br /&gt;
| 2 x E5-2690 0 2.90GHz&lt;br /&gt;
| 16&lt;br /&gt;
| 128&lt;br /&gt;
| 1600&lt;br /&gt;
| 8/24&lt;br /&gt;
| HMT42GR7MFR4C-PB&lt;br /&gt;
| MT_1090110018&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC40&lt;br /&gt;
| Dell R620&lt;br /&gt;
| 2 x E5-2690 0 2.90GHz&lt;br /&gt;
| 16&lt;br /&gt;
| 128&lt;br /&gt;
| 1600&lt;br /&gt;
| 8/24&lt;br /&gt;
| HMT42GR7MFR4C-PB&lt;br /&gt;
| MT_1090110018&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC41&lt;br /&gt;
| Dell R620&lt;br /&gt;
| 2 x E5-2690 0 2.90GHz&lt;br /&gt;
| 16&lt;br /&gt;
| 128&lt;br /&gt;
| 1600&lt;br /&gt;
| 8/24&lt;br /&gt;
| HMT42GR7MFR4C-PB&lt;br /&gt;
| MT_1090110018&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC42&lt;br /&gt;
| Dell R620&lt;br /&gt;
| 2 x E5-2690 0 2.90GHz&lt;br /&gt;
| 16&lt;br /&gt;
| 128&lt;br /&gt;
| 1600&lt;br /&gt;
| 8/24&lt;br /&gt;
| HMT42GR7MFR4C-PB&lt;br /&gt;
| MT_1090110018&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC43&lt;br /&gt;
| Dell R620&lt;br /&gt;
| 2 x E5-2690 0 2.90GHz&lt;br /&gt;
| 16&lt;br /&gt;
| 128&lt;br /&gt;
| 1600&lt;br /&gt;
| 8/24&lt;br /&gt;
| HMT42GR7MFR4C-PB&lt;br /&gt;
| MT_1090110018&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC44&lt;br /&gt;
| Dell R620&lt;br /&gt;
| 2 x E5-2690 0 2.90GHz&lt;br /&gt;
| 16&lt;br /&gt;
| 128&lt;br /&gt;
| 1600&lt;br /&gt;
| 8/24&lt;br /&gt;
| HMT42GR7MFR4C-PB&lt;br /&gt;
| MT_0BB0120003&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC45&lt;br /&gt;
| Dell R620&lt;br /&gt;
| 2 x E5-2690 0 2.90GHz&lt;br /&gt;
| 16&lt;br /&gt;
| 128&lt;br /&gt;
| 1600&lt;br /&gt;
| 8/24&lt;br /&gt;
| HMT42GR7MFR4C-PB&lt;br /&gt;
| MT_1090110018&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC46&lt;br /&gt;
| Dell R620&lt;br /&gt;
| 2 x E5-2690 0 2.90GHz&lt;br /&gt;
| 16&lt;br /&gt;
| 128&lt;br /&gt;
| 1600&lt;br /&gt;
| 8/24&lt;br /&gt;
| HMT42GR7MFR4C-PB&lt;br /&gt;
| MT_1090110018&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC47&lt;br /&gt;
| Dell R620&lt;br /&gt;
| 2 x E5-2690 0 2.90GHz&lt;br /&gt;
| 16&lt;br /&gt;
| 128&lt;br /&gt;
| 1600&lt;br /&gt;
| 8/24&lt;br /&gt;
| HMT42GR7MFR4C-PB&lt;br /&gt;
| MT_1090110018&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC48&lt;br /&gt;
| Dell R620&lt;br /&gt;
| 2 x E5-2690 0 2.90GHz&lt;br /&gt;
| 16&lt;br /&gt;
| 128&lt;br /&gt;
| 1600&lt;br /&gt;
| 8/24&lt;br /&gt;
| HMT42GR7MFR4C-PB&lt;br /&gt;
| MT_0BB0120003&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC49&lt;br /&gt;
| Dell R620&lt;br /&gt;
| 2 x E5-2690 0 2.90GHz&lt;br /&gt;
| 16&lt;br /&gt;
| 128&lt;br /&gt;
| 1600&lt;br /&gt;
| 8/24&lt;br /&gt;
| HMT42GR7MFR4C-PB&lt;br /&gt;
| MT_1090110018&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC50&lt;br /&gt;
| Dell R720&lt;br /&gt;
| 2 x E5-2690 0 2.90GHz+PHI&lt;br /&gt;
| 16&lt;br /&gt;
| 128&lt;br /&gt;
| 1333&lt;br /&gt;
| 8/24&lt;br /&gt;
| 36KSF2G72PZ-1G4E1 / 002C04B3002C&lt;br /&gt;
| MT_1090110018&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC67&lt;br /&gt;
| Dell C8220X&lt;br /&gt;
| 2 x E5-2695 v2 2.40GHz + PHI &lt;br /&gt;
| 24&lt;br /&gt;
| 256&lt;br /&gt;
| 1866&lt;br /&gt;
| 8/16&lt;br /&gt;
| M386B4G70DM0-CMA3&lt;br /&gt;
| DEL0A30000019&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC68&lt;br /&gt;
| Dell C8220X&lt;br /&gt;
| 2 x E5-2695 v2 2.40GHz + PHI &lt;br /&gt;
| 24&lt;br /&gt;
| 256&lt;br /&gt;
| 1866&lt;br /&gt;
| 8/16&lt;br /&gt;
| M386B4G70DM0-CMA3&lt;br /&gt;
| DEL0A30000019&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC69&lt;br /&gt;
| Dell C8220X&lt;br /&gt;
| 2 x E5-2695 v2 2.40GHz + PHI &lt;br /&gt;
| 24&lt;br /&gt;
| 256&lt;br /&gt;
| 1866&lt;br /&gt;
| 8/16&lt;br /&gt;
| M386B4G70DM0-CMA3&lt;br /&gt;
| DEL0A30000019&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC70&lt;br /&gt;
| Dell C8220X&lt;br /&gt;
| 2 x E5-2695 v2 2.40GHz + PHI &lt;br /&gt;
| 24&lt;br /&gt;
| 256&lt;br /&gt;
| 1866&lt;br /&gt;
| 8/16&lt;br /&gt;
| M386B4G70DM0-CMA3&lt;br /&gt;
| DEL0A30000019&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC71&lt;br /&gt;
| Dell C8220X&lt;br /&gt;
| 2 x E5-2695 v2 2.40GHz + PHI &lt;br /&gt;
| 24&lt;br /&gt;
| 256&lt;br /&gt;
| 1866&lt;br /&gt;
| 8/16&lt;br /&gt;
| M386B4G70DM0-CMA3&lt;br /&gt;
| DEL0A30000019&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC72&lt;br /&gt;
| Dell C8220X&lt;br /&gt;
| 2 x E5-2695 v2 2.40GHz + PHI &lt;br /&gt;
| 24&lt;br /&gt;
| 256&lt;br /&gt;
| 1866&lt;br /&gt;
| 8/16&lt;br /&gt;
| M386B4G70DM0-CMA3&lt;br /&gt;
| DEL0A30000019&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC73&lt;br /&gt;
| Dell C8220X&lt;br /&gt;
| 2 x E5-2695 v2 2.40GHz + PHI &lt;br /&gt;
| 24&lt;br /&gt;
| 256&lt;br /&gt;
| 1866&lt;br /&gt;
| 8/16&lt;br /&gt;
| M386B4G70DM0-CMA3&lt;br /&gt;
| DEL0A30000019&lt;br /&gt;
|-&lt;br /&gt;
| FI--DIDEMRC74&lt;br /&gt;
| Dell C8220X&lt;br /&gt;
| 2 x E5-2695 v2 2.40GHz + PHI &lt;br /&gt;
| 24&lt;br /&gt;
| 256&lt;br /&gt;
| 1866&lt;br /&gt;
| 8/16&lt;br /&gt;
| M386B4G70DM0-CMA3&lt;br /&gt;
| DEL0A30000019&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Cluster_Documentation&amp;diff=14288</id>
		<title>Cluster Documentation</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Cluster_Documentation&amp;diff=14288"/>
		<updated>2025-03-06T22:00:19Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* Python */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* We have two high performance clusters for general use, both running Microsoft HPC 2012 R2, Update 3. The smaller, older cluster is [[fi--dideclusthn]] and the larger is [[fi--didemrchnb]]. &lt;br /&gt;
&lt;br /&gt;
* Many users in the department write code and packages in R. We have in-house packages that can allow an almost-interactive experience of running jobs on our high performance clusters, so if that sounds like what you&#039;d like, you might as well stop reading here, and go straight to [https://github.com/mrc-ide/didehpc The DIDEHPC package] - or if you need to join the mrc-ide github org first, go to [https://github.com/mrc-ide/welcome The welcome page].&lt;br /&gt;
&lt;br /&gt;
If you&#039;re not using R, or you are interested in other ways, then continue...&lt;br /&gt;
&lt;br /&gt;
== Windows Users ==&lt;br /&gt;
&lt;br /&gt;
The cluster nodes are Windows 2012-R2 based. This is good news if you&#039;re a Windows user, and especially easy for PCs within the departmental DIDE domain. You have the option of using the MS client for launching jobs (see below), or you can use try the new [[HPC Web Portal]]. If you&#039;re preparing to use the cluster, and have doubts about whether it can run what you want - and whether it will be straightforward to develop and run on it, best talk to me and/or the IT guys first!&lt;br /&gt;
&lt;br /&gt;
== Linux and MAC Users ==&lt;br /&gt;
&lt;br /&gt;
There are two problems, but both can be at least partially overcome. The first is that there is no client for linux. The second is that it can only run windows binaries.&lt;br /&gt;
&lt;br /&gt;
=== Launching jobs on Linux/Mac ===&lt;br /&gt;
&lt;br /&gt;
* The best way might be the [[HPC Web Portal]], which lets you submit jobs through a webpage. Give it a try, and feedback to me any issues! &lt;br /&gt;
&lt;br /&gt;
* Alternatively, you can either (1) go down the VM route, installing a windows virtual machine, eg VMWare or Parallels, and follow the instructions below. (2) Remote Desktop to your friend&#039;s Windows machine. These tend not to be very convenient, but some users have submitted thousands of jobs this way.&lt;br /&gt;
&lt;br /&gt;
=== What Linux/Mac jobs can I run? ===&lt;br /&gt;
&lt;br /&gt;
* Many jobs may be platform indepedent. Where compiled code is involved though, you&#039;ll have some extra work to make sure the binary parts can be run in windows. For R, [https://github.com/mrc-ide/didehpc the tools] help you sort that out. For others, you may need to run a job on the cluster to do your builds. Also, for many linux applications, there is a windows port. Mileage can vary, but it&#039;s worth a try searching for that before you give up hope. Some of these might be installed on the cluster already - see below. Or some you may be able to download and call them from your run script.&lt;br /&gt;
&lt;br /&gt;
* For C code, again, we can run scripts on the cluster to build the binaries for you, if your code can be compiled with (say) the MinGW port of gcc. Cygwin can also be used (although seems less common these days) with accompanying dlls. Get in touch if you need further ideas; most things can be solved. &lt;br /&gt;
&lt;br /&gt;
* Matlab is a little more tricky - we have a range of colossal matlab runtimes on the cluster, but you&#039;d need to compile a windows binary to use them, since the matlab platforms are distinct in every way. For this, probably find a friend, or get in touch, and we&#039;ll work out how you can compile for it.&lt;br /&gt;
&lt;br /&gt;
* There is also the option of running a Windows VM, which might solve all of the above problems.&lt;br /&gt;
&lt;br /&gt;
=== But I really want a unix cluster. ===&lt;br /&gt;
&lt;br /&gt;
* We have run linux clusters in the past ([[fi--didelxhn]]), but there was very low demand, whereas the other clusters are consistently well used. Accessing DIDE network shares from linux was a little harder in some aspects, but we did not implement the more traditional linux approach of having dedicated separate cluster storage that inputs and outputs would have to be staged on to, in order for the cluster to see them. Generally, the flexibility of the other clusters makes such things quite straightforward, and may even feel a pleasure if your background is with the less domain-integrated style of cluster architecture.&lt;br /&gt;
&lt;br /&gt;
* It has also become far easier to write software that builds on multiple platforms with good practice. Tools that only run on one platform are rare, and in some circumstances have raised questions about the quality of those packages. Alternatives are often available.&lt;br /&gt;
&lt;br /&gt;
* Where compilation is the issue - for example if you want to run binaries on the cluster, but your compilation machine runs linux, or is a mac, (Matlab via MCC, or C++ code for example), then get in touch, and there are a few ways we can think of solving that, either by getting someone else, or the cluster itself, to build your code.&lt;br /&gt;
&lt;br /&gt;
* There are also resources in [https://www.imperial.ac.uk/admin-services/ict/self-service/research-support/rcs/computing/high-throughput-computing/ ICT) who run a linux cluster, with the file-staging approach, and also (being shared between a much larger pool of users) have rather stricter rules on job durations and resources than we provide locally in DIDE.&lt;br /&gt;
&lt;br /&gt;
== Getting Started ==&lt;br /&gt;
&lt;br /&gt;
=== Getting access to the cluster ===&lt;br /&gt;
&lt;br /&gt;
Send a mail to Wes (w.hinsley@imperial.ac.uk) requesting access to the cluster. He will add you to the necessary groups, and work out what cluster you should be running on. Unless you are told otherwise, this will be fi--dideclusthn. But if you have been told otherwise, then whenever you see fi--dideclusthn, replace it with the cluster name you’ve been given, either mentally or (less effectively) on your screen with tip-ex.&lt;br /&gt;
&lt;br /&gt;
=== Windows: Install the HPC client software ===&lt;br /&gt;
&lt;br /&gt;
* Run \\fi--dideclusthn.dide.ic.ac.uk\REMINST\setup.exe. &lt;br /&gt;
* Confirm &#039;&#039;&#039;Yes, I really want to run this&#039;&#039;&#039;.&lt;br /&gt;
* There&#039;s an introductory screen, and you click &#039;&#039;&#039;Next&#039;&#039;&#039;&lt;br /&gt;
* You have to tick the &#039;&#039;&#039;Accept&#039;&#039;&#039;, then click &#039;&#039;&#039;Next&#039;&#039;&#039;&lt;br /&gt;
* If it gives you any choice, select &#039;&#039;&#039;Install only the client utilities&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;Next&#039;&#039;&#039;, &#039;&#039;&#039;Next&#039;&#039;&#039;, &#039;&#039;&#039;Next&#039;&#039;&#039;&lt;br /&gt;
* Select &#039;&#039;&#039;Use Microsoft Update&#039;&#039;&#039; and then &#039;&#039;&#039;Next&#039;&#039;&#039;&lt;br /&gt;
* And then &#039;&#039;&#039;Install&#039;&#039;&#039;&lt;br /&gt;
* And possibly &#039;&#039;&#039;Install&#039;&#039;&#039; again – if it had to install any pre-requisites first.&lt;br /&gt;
* And &#039;&#039;&#039;Finish&#039;&#039;&#039;, and the client installation is done.&lt;br /&gt;
* To check everything is alright so far, open a &#039;&#039;&#039;NEW command prompt window&#039;&#039;&#039;.&lt;br /&gt;
* (Because the installer adds things to the path, which only take effect on &#039;&#039;&#039;NEW comamnd windows&#039;&#039;&#039;! :-)&lt;br /&gt;
* (Find it under Accessories, or you can use Start, Run, &#039;&#039;&#039;cmd&#039;&#039;&#039;).&lt;br /&gt;
* Type &amp;lt;code&amp;gt;job list /scheduler:fi--dideclusthn.dide.ic.ac.uk&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And it will list the jobs you have running, which will be none so far!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Id         Owner         Name              State        Priority    Resource Request&lt;br /&gt;
---------- ------------- ----------------- ------------ ----------- -------- -------&lt;br /&gt;
&lt;br /&gt;
0 matching jobs for DIDE\user&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Windows: Using a non-domain machine ===&lt;br /&gt;
&lt;br /&gt;
If you&#039;re using a machine that isn&#039;t actually logged into DIDE, then the client software will have a problem working out who you are. In this case, there are two things you need to do.&lt;br /&gt;
* Check you&#039;ve really got a DIDE username. If you don&#039;t know what it is, talk to your lovely IT team.&lt;br /&gt;
* Connect to the DIDE VPN using ZScaler from https://uafiles.cc.ic.ac.uk/, and login to that with your IC account - but you&#039;ll still need your DIDE account to access DIDE servers after the ZScaler connection is up and running.&lt;br /&gt;
* Now we&#039;ll open a command window using &amp;quot;runas&amp;quot; - which lets you choose which identity the system thinks you are within that command window:-&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
runas /netonly /user:DIDE\user cmd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* (Change user to your own login obviously). It will ask for your password, then open a new command window. In that window, you&#039;ll be able to do cluster-related things as your DIDE username.&lt;br /&gt;
&lt;br /&gt;
=== Windows: Launching and cancelling jobs ===&lt;br /&gt;
==== Windows: Command Line ====&lt;br /&gt;
&lt;br /&gt;
Suppose you have a file called &amp;quot;run.bat&amp;quot; in your home directory, which does what you want to run on the cluster. Let&#039;s say it&#039;s a single-core, very simple job. We’ll discuss what should be inside &amp;quot;run.bat&amp;quot; later. To submit your job on the cluster, at the command prompt, type this (all on one line) - or put it in a file called &amp;quot;launch.bat&amp;quot;, and run it:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /jobtemplate:GeneralNodes /numcores:1 \\qdrive.dide.ic.ac.uk\homes\user\run.bat&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If it&#039;s the first time you’ve run a job - or if you&#039;ve recently changed your password, then it might ask you for your DIDE password and offer to remember it. Otherwise, it will just tell you the ID number of your job.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;Enter the password for ‘DIDE\user’ to connect to ‘FI—DIDECLUSTHN’:&lt;br /&gt;
Remember this password? (Y/N)&lt;br /&gt;
job has been submitted. ID: 123&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you want to remove the job, then:-	&amp;lt;code&amp;gt;job cancel 123 /scheduler:fi--dideclusthn.dide.ic.ac.uk&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Or view its details with &amp;lt;code&amp;gt;job view 123 /scheduler:fi--dideclusthn.dide.ic.ac.uk&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Windows: Job Manager GUI ====&lt;br /&gt;
&lt;br /&gt;
Alternatively to the command-line, you can use the job management software, rather than the command-line. The advantage is that it’s a GUI. The disadvantage is, as in all GUIs, you may not feel totally sure you know what it’s up to – where most of the time the things you want to do might not be very complex, as above.&lt;br /&gt;
&lt;br /&gt;
The job management software will be on your start menu, as above. All the features are under the “Actions” menu, and hopefully it will be self explanatory. Read the details below about launching, and you&#039;ll find the interface bits that do it in the Job Manager. However, you may find over time, especially if you run lots of jobs, that learning to do it the scripted way with the command-line can be quicker.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Information for running any job ==&lt;br /&gt;
&lt;br /&gt;
=== Visibility ===&lt;br /&gt;
&lt;br /&gt;
Any executable/batch file that the cluster will run must be somewhere on the network that the cluster has access to, when it logs in as you. This amounts to any network accessible drive that you have access to when you login – including network shares, such as the temp drive, your home directory, and any specific network space set up for your project.&lt;br /&gt;
&lt;br /&gt;
After a job is launched, all paths are relative to the &#039;&#039;&#039;/workdir:&#039;&#039;&#039; specified on the job submit command-line. Windows does not usually allow a network path to be the current directory, and MS-HPC somehow gets around this. But if in doubt, use fully-qualified paths to specify where files should be read from, or written to. You may want to write code that takes the paths from a parameter file, or as a command-line parameter, to give as much flexibility as possible. &lt;br /&gt;
&lt;br /&gt;
Your home directory, and the temp drive are on departmental servers that don&#039;t have an especially fast connection to the cluster. So avoid having thousands of jobs all reading/writing to those places at once. Additionally, the temp drive is shared between all users, and your home drive has a limited quota. It is also backed up every day, so avoid using it as scratch storage for results you don’t actually want to keep. Generally, the shares you&#039;ll want to use from the clusters will be ones containing the word &amp;quot;NAS&amp;quot;, which the big cluster has fast access to.&lt;br /&gt;
&lt;br /&gt;
=== Interactivity ===&lt;br /&gt;
&lt;br /&gt;
The job must run in an entirely scripted, unattended way. It must not require any key presses or mouse clicks, or other live interactivity while it runs. So jobs generally will read some sort of input (from a file, or from the way you run the job), do some processing, and write the results somewhere for you - all without intervention.&lt;br /&gt;
&lt;br /&gt;
== Launching jobs ==&lt;br /&gt;
&lt;br /&gt;
Jobs can be launched either through the Job Manager interface, or through the command line tools, which offer greater flexibility. We&#039;ll describe the command line method here; if you want to use the GUI, then it&#039;ll be a case of finding the matching boxes... Below are the specifics for our clusters. For more information, simply type &amp;lt;code&amp;gt;job&amp;lt;/code&amp;gt; on the commandline, or &amp;lt;code&amp;gt;job submit&amp;lt;/code&amp;gt; for the list of submission-related commands.&lt;br /&gt;
&lt;br /&gt;
=== FI--DIDECLUSTHN vs FI--DIDEMRCHNB ===&lt;br /&gt;
&lt;br /&gt;
Job submissions, as shown below, must specify a &amp;quot;job template&amp;quot;, which sets up a load of default things to make the job work. On fi--dideclusthn, the job templates are called 4Core, 8Core and GeneralNodes, which will respectively force jobs to run on the 4-core nodes, the 8-core nodes, or on any machine available.&lt;br /&gt;
&lt;br /&gt;
On fi--didemrchnb, you can set the job template to be... 8Core, 12Core, 16Core, 12and16Core, and GeneralNodes - which hopefully are fairly self-explanatory. There are a couple of other job templates, (24Core and Phi), but those are a bit special purpose for now, so don&#039;t use them!&lt;br /&gt;
&lt;br /&gt;
=== Job Submission ===&lt;br /&gt;
&lt;br /&gt;
Job submissions from the command line can take the following form (all on one line):-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /stdout:\\path\to\stdout.txt&lt;br /&gt;
   /stderr:\\path\to\stderr.txt /numcores:1-1 /jobtemplate:4Core \\path\to\run.bat&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== The /singlenode argument ===&lt;br /&gt;
&lt;br /&gt;
In MS HPC (2012), Microsoft finally added a tag to allow you to say that the &#039;n&#039; cores you requested must be on the same computer. Therefore, if you know precisely how many cores you want, then use the following (on one line):-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /singlenode:true &lt;br /&gt;
   /jobtemplate:8Core \\path\to\run.bat&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
However, there is one bug with this, for the specific case where you request a whole node, regardless of how many cores it has. In this case, oddly, you have to disable single node:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /singlenode:false &lt;br /&gt;
   /numnodes:1 /jobtemplate:8Core \\path\to\run.bat&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Languages and libraries supported ==&lt;br /&gt;
&lt;br /&gt;
A number of languages, and different versions of languages are available on the cluster. The sections below refer to your &amp;quot;run.bat&amp;quot; file - a batch file that you will create which will get run by a cluster node when a suitable one is available. The commands described below are to be put in this &amp;quot;run.bat&amp;quot; file, and they add various directories to the path, so that the software you want will be added to the path. &lt;br /&gt;
&lt;br /&gt;
=== C/C++ === &lt;br /&gt;
&lt;br /&gt;
A number of Microsoft C++ and Intel C++ runtimes are installed, but it&#039;s usually better to try and avoid using them, and make your executable as stand-alone as possible. If it requires any external libraries that you&#039;ve had to download, then put the .dll file in the same directory as the .exe file. If you use Microsoft Visual Studio, in Project Preferences, C/C++, Code Generation, make sure the Runtime Library is Multi-threaded (/MT) – the ones with DLL files won’t work. Even so, on recent versions of the Intel and Microsoft C compilers, &amp;quot;static linking&amp;quot; doesn’t really mean static when it comes to OpenMP, and you’ll have to copy some DLLs and put them next to your EXE file. See the OpenMP section below.&lt;br /&gt;
&lt;br /&gt;
The cluster nodes are all 64-bit, but they will run 32-bit compiled code. Just make sure you provide the right DLLs!&lt;br /&gt;
&lt;br /&gt;
Here is a document about [[Using the Xeon Phi]]&lt;br /&gt;
&lt;br /&gt;
Here is a document about [[Using MPI]]&lt;br /&gt;
&lt;br /&gt;
And if you want to use libraries such as GSL, then try [[C/C++ Libraries for Windows]]&lt;br /&gt;
&lt;br /&gt;
=== Java ===&lt;br /&gt;
&lt;br /&gt;
Java doesn&#039;t strictly need installing; you can setup any Java Runtime Environment you like, from Oracle, or anywhere. If you want to do this, then, (if you were to use the Server JRE from Oracle), something similar to the following will add java.exe and jvm.dll to the path, and set the JAVA_HOME environment variable, which most Java-using software will appreciate.&lt;br /&gt;
&lt;br /&gt;
    set JAVA_HOME=\\my\path\to\jre1.8.0&lt;br /&gt;
    set path=%JAVA_HOME%\bin;%JAVA_HOME%\bin\server;%path%&lt;br /&gt;
&lt;br /&gt;
For convenience, if you&#039;re happy with Azul&#039;s OpenJDK Java 1.8.0 update 308 (September 2021), then &amp;lt;code&amp;gt;call setJava64&amp;lt;/code&amp;gt; in your run script will set this up for you. Incidentally the above will also add what&#039;s needed for using the rJava package in R - in which case you&#039;ll perhaps also want something like &amp;lt;code&amp;gt;call setR64_4_1_0&amp;lt;/code&amp;gt; in your run script.&lt;br /&gt;
&lt;br /&gt;
=== Perl ===&lt;br /&gt;
&lt;br /&gt;
Strawberry Perl 64-bit portable, v5.30.1.1. Put &amp;lt;code&amp;gt;call setPerl&amp;lt;/code&amp;gt; at the top of your script.&lt;br /&gt;
&lt;br /&gt;
=== R ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;New tools are coming&#039;&#039;&#039;: [http://dide-tools.github.io/didehpc/vignettes/quickstart.html see here].  The instructions below are still valid if you want to do this manually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You can R jobs on all the clusters. This is the latest wisdom on how to do so – thanks to James, Jeff, Hannah and others. &lt;br /&gt;
&lt;br /&gt;
First, if you are wanting to use packages, then set up a package repository on your home directory by running this in R.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;install.packages(&amp;quot;&amp;lt;package&amp;gt;&amp;quot;,lib=&amp;quot;Q:/R&amp;quot;)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now, write your run script. Suppose you have an R script in your home directory: Q:\R-scripts\test.R. And suppose you’ve set up your repository as above. Your run.bat should then be:-&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
	call &amp;lt;script for the R version you want – see below&amp;gt;&lt;br /&gt;
	net use Q: \\qdrive.dide.ic.ac.uk\homes\user&lt;br /&gt;
	set R_LIBS=Q:\R&lt;br /&gt;
	set R_LIBS_USER=Q:\R&lt;br /&gt;
	Rscript Q:\R-scripts\test.R&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Various packages require various R versions, and the cluster supports a few versions. To choose which one, change the first line of the script above to one of these – 32-bit or 64-bit versions of R releases. Purely for amusement, R&#039;s codenames are shown here too. &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setr32_2_13_1.bat		call setr64_2_13_1.bat    (anyone know the codename?)&lt;br /&gt;
call setr32_2_14_2.bat		call setr64_2_14_2.bat    (Gift-getting season)&lt;br /&gt;
call setr32_2_15_2.bat		call setr64_2_15_2.bat    (Trick or treat)&lt;br /&gt;
call setr32_3_0_1.bat           call setr64_3_0_1.bat     (Good Sport)&lt;br /&gt;
call setr32_3_0_2.bat           call setr64_3_0_2.bat     (Frisbee Sailing)&lt;br /&gt;
call setr32_3_1_0.bat           call setr64_3_1_0.bat     (Spring Dance)&lt;br /&gt;
call setr32_3_1_2.bat           call setr64_3_1_2.bat     (Pumpkin Helmet)&lt;br /&gt;
call setr32_3_2_2.bat           call setr64_3_2_2.bat     (Fire Safety)&lt;br /&gt;
call setr32_3_2_3.bat           call setr64_3_2_3.bat     (Wooden Christmas Tree)&lt;br /&gt;
call setr32_3_2_4.bat           call setr64_3_2_4.bat     (Very Secure Dishes - Revised Version - R later renamed this to 3.2.5)&lt;br /&gt;
call setr32_3_3_1.bat           call setr64_3_3_1.bat     (Bug in your hair)&lt;br /&gt;
call setr32_3_3_2.bat           call setr64_3_3_2.bat     (Sincere Pumpkin Patch)&lt;br /&gt;
call setr32_3_4_0.bat           call setr64_3_4_0.bat     (You Stupid Darkness)&lt;br /&gt;
call setr32_3_4_2.bat           call setr64_3_4_2.bat     (Short Summer)&lt;br /&gt;
call setr32_3_4_4.bat           call setr64_3_4_4.bat     (Someone to lean on)&lt;br /&gt;
call setr32_3_5_0.bat           call setr64_3_5_0.bat     (Joy in Playing)&lt;br /&gt;
call setr32_3_5_1.bat           call setr64_3_5_1.bat     (Feather Spray)&lt;br /&gt;
call setr32_3_5_3.bat           call setr64_3_5_3.bat     (Great Truth)&lt;br /&gt;
call setr32_3_6_0.bat           call setr64_3_6_0.bat     (Planting of a Tree)&lt;br /&gt;
call setr32_3_6_1.bat           call setr64_3_6_1.bat     (Action of the Toes)&lt;br /&gt;
call setr32_3_6_3.bat           call setr64_3_6_3.bat     (Holding the Windsock)&lt;br /&gt;
call setr32_4_0_2.bat           call setr64_4_0_2.bat     (Taking Off Again)&lt;br /&gt;
call setr32_4_0_3.bat           call setr64_4_0_3.bat     (Bunny-Wunnies Freak Out)&lt;br /&gt;
call setr32_4_0_5.bat           call setr64_4_0_5.bat     (Shake and Throw)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following versions are *not* available on the cluster at the moment - but here are their names anyway, as it seemed a shame to miss them out. Let me know if you desperately need one of these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
2.14.0    Great Pumpkin                   &lt;br /&gt;
2.14.1    December Snowflakes&lt;br /&gt;
2.15.0    Easter Beagle&lt;br /&gt;
2.15.1    Roasted Marshmallow&lt;br /&gt;
2.15.3    Security Blanket&lt;br /&gt;
3.0.0     Masked Marvel&lt;br /&gt;
3.0.3     Warm Puppy&lt;br /&gt;
3.1.1     Sock it to me&lt;br /&gt;
3.1.3     Smooth Sidewalk&lt;br /&gt;
3.2.0     Full of Ingredients&lt;br /&gt;
3.2.1     World famous astronaut&lt;br /&gt;
3.2.4     Very Secure Dishes (the non-revised version)&lt;br /&gt;
3.3.0     Supposedly Educational&lt;br /&gt;
3.3.3     Another Canoe&lt;br /&gt;
3.4.1     Single Candle&lt;br /&gt;
3.4.3     Kite-Eating Tree&lt;br /&gt;
3.5.2     Eggshell Igloo&lt;br /&gt;
3.6.2     Dark and Stormy Night&lt;br /&gt;
4.0.0     Arbor Day&lt;br /&gt;
4.0.1     See Things Now&lt;br /&gt;
4.0.4     Lost Library Book&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It also seems that different R versions put their packages in different structures – sometimes adding &amp;quot;win-library&amp;quot; into there for fun. Basically, R_LIBS and R_LIBS_USER should be paths to a folder that contains a list of other folders, one for each package you&#039;ve installed.&lt;br /&gt;
&lt;br /&gt;
IMPORTANT:  R_LIBS and R_LIBS_USER paths must NOT contain quotes, nor spaces. If the path to your library contains spaces, you need to use old-fashioned 8-character names. If in your command window, you type &amp;lt;code&amp;gt;dir /x&amp;lt;/code&amp;gt;, you’ll see the names – Program Files tends to become PROGRA~1 for instance. &lt;br /&gt;
&lt;br /&gt;
==== Passing parameters to R scripts ====&lt;br /&gt;
Passing parameters to R scripts means you can have fewer versions of your R and bat files and easily run whole sets of jobs. You can get parameters into R using Rscript (but not Rcmd BATCH, I think) as follows. In the run.bat example above, the Rscript statement becomes:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Rscript Q:\R-scripts\test.R arg1 arg2 arg3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Within the R code, the arguments can be recovered using &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
args &amp;lt;- commandArgs(trailingOnly = TRUE)&lt;br /&gt;
&lt;br /&gt;
outFileName &amp;lt;- args[1]     ## name of output file.&lt;br /&gt;
dataFileName &amp;lt;- args[2]    ## name of local data file. &lt;br /&gt;
currentR0 &amp;lt;- as.numeric(args[3]) ## convert this explicitly to number. &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
If you want your arguments to have a particular type, best to explicitly convert (see R0 above). Better still, you can pass parameters directly into the batch file that runs the R script. Command line arguments can be referenced within the batch file using %1, %2, etc. For example, if you have a batch file, runArgs.bat:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call &amp;lt;script for the R version you want – see below&amp;gt;&lt;br /&gt;
net use Q: \\qdrive.dide.ic.ac.uk\homes\user&lt;br /&gt;
set R_LIBS=Q:\R&lt;br /&gt;
set R_LIBS_USER=Q:\R&lt;br /&gt;
Rscript Q:\R-scripts\%1.R %2 %3 %4&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
then&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
runArgs.bat myRScript arg1 arg2 arg3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
will run the R script myRScript.R and pass it the parameters arg1, arg2 and arg3. The batch file runArgs.bat is now almost a &#039;&#039;&#039;generic R script runner&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== OpenMP ===&lt;br /&gt;
&lt;br /&gt;
This has been tested with C/C++ - but the same should apply to other languages such as fortran, that achieve multi-threading with a DLL file.&lt;br /&gt;
&lt;br /&gt;
==== Microsoft&#039;s C/C++ Compiler ====&lt;br /&gt;
You will need to copy vcomp100.dll (for Visual Studio 2010 – it maybe vcomp90.dll for 2008), into the same directory as your executable. You can usually find the dll file in a directory similar to:- C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\redist\x64\Microsoft.VC100.OpenMP. Extrapolate for future versions! Also make sure that you&#039;ve enabled OpenMP in the Properties (C++/Language).&lt;br /&gt;
&lt;br /&gt;
==== GCC or MinGW ====&lt;br /&gt;
Usually, this applies to Eclipse use. In project properties, the C++ command “g++ -fopenmp”, the C command “gcc –fopenmp”, and in the Linker options, under Miscellaneous, Linker flags, put “-fopenmp” too. Copy the OpenMP DLLs from MinGW into the same directory as your final executable. You may find the dlls are in C:\MinGW\Bin\libgomp-1.dll and in the same place, libpthread-2.dll,  libstdc++-6.dll and libgcc_s_dw2-1.dll.&lt;br /&gt;
&lt;br /&gt;
==== Intel C++ Compiler ====&lt;br /&gt;
Copy the libiomp5md.dll file from somewhere like C:\Program Files (x86)\Intel\ComposerXE-2011\redist\intel64\compiler\libiomp5md.dll to the same place as your executable. And in Visual Studio, make sure you&#039;ve enabled OpenMP in the project properties.&lt;br /&gt;
&lt;br /&gt;
==== How many threads? ====&lt;br /&gt;
The OpenMP function omp_max_threads() returns the number of &#039;&#039;physical&#039;&#039; cores on a machine, not the number of cores &#039;&#039;allocated&#039;&#039; to your job. To determine how many cores the scheduler actually allocated to you, use the following code to dig up the environment variable CCP_NUMCPUS, which will be set by the cluster management software:- &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
		int set_NCores() {&lt;br /&gt;
		   char * val;&lt;br /&gt;
		   char * endchar;&lt;br /&gt;
		   val = getenv(&amp;quot;CCP_NUMCPUS&amp;quot;);&lt;br /&gt;
		   int cores = omp_get_max_threads();&lt;br /&gt;
		   if (val!=NULL) cores = strtol (val,&amp;amp;endchar,10);&lt;br /&gt;
                   omp_set_num_threads(cores);&lt;br /&gt;
		   return cores;&lt;br /&gt;
		}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== WinBugs (or OpenBugs) ===&lt;br /&gt;
&lt;br /&gt;
They are similar, but OpenBugs 3.2.2 is the one we&#039;ve gone for. Something like this as your run.bat script will work:-&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setOpenBugs&lt;br /&gt;
openbugs \\path\to\script.txt /HEADLESS&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== MatLab ===&lt;br /&gt;
&lt;br /&gt;
There are various ways of producing a non-interactive executable from Matlab. Perhaps the simplest (not necessarily the best performance) way is to use “mcc.exe” – supplied with most full versions of Matlab, including the Imperial site licence version that you&#039;ve probably got.&lt;br /&gt;
&lt;br /&gt;
==== Use mcc.exe to compile your code ====&lt;br /&gt;
&lt;br /&gt;
Use windows explorer to navigate to the folder where the “.m” files are for the project you want to compile. Now use a good text editor to create a file called “compile.bat” in that folder. It should contain something similar to the following:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mcc -m file1.m file2.m file3.m -o myexe&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Don’t copy/paste the text from this document by the way – Word has a different idea of what a dash is to most other software, and will probably replace the two dashes with funny characters. so you have to list every single .m file that your project needs, after the’-m’. If you save this file, then double-click on it, then it will think for some while, and produce “myexe.exe” in this example. Copy your .exe file into a network accessible place as usual.&lt;br /&gt;
&lt;br /&gt;
==== Launch on the cluster. ====&lt;br /&gt;
&lt;br /&gt;
The launch.bat file will be exactly the same as before – see page 2. The run script will then start with a line that tells the cluster which version of Matlab you used to compile the cluster. Below is the table of different versions. The runtimes are huge and cumbersome to install on the cluster, so as a result I haven’t installed every single one. If you need one that’s not listed, get in touch.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Matlab Version&lt;br /&gt;
! First line of run script&lt;br /&gt;
|- &lt;br /&gt;
| R2009b&lt;br /&gt;
| call useMatLab79&lt;br /&gt;
|- &lt;br /&gt;
| R2010a&lt;br /&gt;
| call useMatLab713&lt;br /&gt;
|- &lt;br /&gt;
| R2011a&lt;br /&gt;
| call useMatLab715&lt;br /&gt;
|- &lt;br /&gt;
| R2011b&lt;br /&gt;
| call useMatLab716&lt;br /&gt;
|- &lt;br /&gt;
| R2012a (64-bit)&lt;br /&gt;
| call useMatLab717_64&lt;br /&gt;
|- &lt;br /&gt;
| R2012b (64-bit)&lt;br /&gt;
| call useMatLab80_64&lt;br /&gt;
|- &lt;br /&gt;
| R2013a (64-bit)&lt;br /&gt;
| call useMatLab81_64&lt;br /&gt;
|- &lt;br /&gt;
| R2014a (64-bit)&lt;br /&gt;
| call useMatLab83_64&lt;br /&gt;
|- &lt;br /&gt;
| R2014b (64-bit)&lt;br /&gt;
| call useMatLab84_64&lt;br /&gt;
|- &lt;br /&gt;
| R2015a (64-bit)&lt;br /&gt;
| call useMatLab85_64&lt;br /&gt;
|- &lt;br /&gt;
| R2015b (64-bit)&lt;br /&gt;
| call useMatLab90_64&lt;br /&gt;
|- &lt;br /&gt;
| R2016b (64-bit)&lt;br /&gt;
| call useMatLab91_64&lt;br /&gt;
|- &lt;br /&gt;
| R2017a (64-bit)&lt;br /&gt;
| call useMatLab92_64&lt;br /&gt;
|- &lt;br /&gt;
| R2019a (64-bit)&lt;br /&gt;
| call useMatLab96_64&lt;br /&gt;
|- &lt;br /&gt;
| R2021a (64-bit)&lt;br /&gt;
| call useMatLab910_64&lt;br /&gt;
|- &lt;br /&gt;
| R2022a (64-bit)&lt;br /&gt;
| call useMatLab912_64&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Python ===&lt;br /&gt;
&lt;br /&gt;
* The most recent version of each major release is on the cluster. Different python versions within the same release (e.g., 3.5.1 and 3.5.2) do not behave nicely together in automated installation, so if you have a desperate need for a previous minor version, get in touch. While 2.7.18 is available, we &#039;&#039;&#039;strongly&#039;&#039;&#039; recommend migrating away from Python 2.7, as it has been officially discontinued on 1st January 2020. Experiences may vary, and future success is not guaranteed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
2.7.18  64-bit   call set_python_27_64.bat&lt;br /&gt;
3.5.10  64-bit   call set_python_35_64.bat&lt;br /&gt;
3.6.15  64-bit   call set python_36_64.bat&lt;br /&gt;
3.7.17  64-bit   call set_python_37_64.bat&lt;br /&gt;
3.8.20  64-bit   call set python_38_64.bat&lt;br /&gt;
3.9.21  64-bit   call set_python_39_64.bat&lt;br /&gt;
3.10.16 64-bit   call set python_310_64.bat&lt;br /&gt;
3.11.11 64-bit   call set_python_311_64.bat&lt;br /&gt;
3.12.8  64-bit   call set_python_312_64.bat&lt;br /&gt;
3.13.2  64-bit   call set_python_313_64.bat&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* You&#039;ll most likely want to use some packages, so you&#039;ll need to have a network-accessible location to put your packages in. If you&#039;re running a version of Windows with Python that matches one installed on the cluster, then you&#039;ll be able to share that package repository between the two. But if you&#039;re running a different version, or a different operating system, or a different Python version, then you&#039;ll need to keep your local package repository separate from the one the cluster uses.&lt;br /&gt;
* Here comes the basic script to run some python. Suppose I decide to put my Python packages for the cluster in &#039;&#039;&#039;\\qdrive.dide.ic.ac.uk\homes\username\PythonCluster37_64&#039;&#039;&#039; (which is Q:\PythonCluster37_64 on a DIDE Windows PC). To run some python, something like the following:-&lt;br /&gt;
&lt;br /&gt;
 call set_python_37_64&lt;br /&gt;
 set PYTHONPATH=\\qdrive\homes\username\PythonCluster37_64&lt;br /&gt;
 python \\qdrive\homes\username\Python\MyScript.py&lt;br /&gt;
&lt;br /&gt;
or if you want to do this in a programmatic way...&lt;br /&gt;
&lt;br /&gt;
 import sys&lt;br /&gt;
 sys.path = [&#039;\\\\qdrive\\homes\\username\\PythonCluster37_64&#039;] + sys.path&lt;br /&gt;
&lt;br /&gt;
==== Packages ====&lt;br /&gt;
&lt;br /&gt;
* If you want to install a package like numpy, that&#039;s readily available through pip, then you can launch a batch file like this:-&lt;br /&gt;
 call set_python_36_64&lt;br /&gt;
 pip install numpy --target \\qdrive\homes\username\PythonCluster36_64&lt;br /&gt;
* or alternatively, you could write a python script that looks like this, and launch it as normal:-&lt;br /&gt;
 import pip&lt;br /&gt;
 pip.main([&#039;install&#039;,&#039;numpy&#039;,&#039;--target&#039;,&#039;\\\\qdrive\\homes\\username\\PythonCluster36_64&#039;])&lt;br /&gt;
&lt;br /&gt;
* And if you&#039;re running the same Python version on a Windows machine, then you can do these two locally, without submitting a cluster job to do them for you.&lt;br /&gt;
&lt;br /&gt;
* And next time you submit a python job on the cluster, python will look in the place set by PYTHONPATH, and will find the packages you&#039;ve just installed when you import them.&lt;br /&gt;
&lt;br /&gt;
=== Beast and Beagle ===&lt;br /&gt;
&lt;br /&gt;
We&#039;ve got a couple of versions available. For BEAST 1.75 with BEAGLE 1.0:  (the x y z represents all the command-line arguments you&#039;ll want to pass to beast)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setbeast&lt;br /&gt;
call beast-beagle x y z&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you want BEAST 1.82 or 1.83 with BEAGLE 2.1:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setbeast_182                        call setbeast_183&lt;br /&gt;
call beast-beagle_182 x y z              call beast-beagle_183 x y z&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And if you want BEAST 2.3.2 with BEAGLE 2.1 (note that BEAST 2 is a different, er, beast to BEAST 1, regarding packages and compatibilities, so only use BEAST 2 if you know that&#039;s what you want to use).&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setbeast_232&lt;br /&gt;
call beast-beagle_232 x y z&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
OpenCL is installed on all the nodes, which means Beagle will pick up the Intel Xeon processors and use what it can on them. It will also detect the Xeon Phis where they&#039;re available. If that&#039;s something you&#039;d be particularly interested in using, drop me a line.&lt;br /&gt;
&lt;br /&gt;
=== Blast ===&lt;br /&gt;
&lt;br /&gt;
Drop me a line to join the party testing this, and to get added to the (large) BlastDB network share.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setblast&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
will set the `BLASTDB` environment variable to point to what we current have of the `v5` database, and the Blast tools (2.9.0, 64-bit) will be added to the path. So you can &lt;br /&gt;
then call `blastp`, `blastn`, `blastx` setc.&lt;br /&gt;
&lt;br /&gt;
=== BOW (BioInformatics on Windows) ===&lt;br /&gt;
&lt;br /&gt;
A number of Bio-informatics tools are ready to go. These used to be provided together on codeplex, but that has since been retired. Ugene is one project that&lt;br /&gt;
maintains windows builds of them. Start your run.bat file with &amp;lt;code&amp;gt;call setBOW&amp;lt;/code&amp;gt; to add these to the path:-&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! EXE File&lt;br /&gt;
! Version&lt;br /&gt;
|- &lt;br /&gt;
| SamTools.exe&lt;br /&gt;
| 0.1.19-44429cd&lt;br /&gt;
|- &lt;br /&gt;
| BCFTools.exe&lt;br /&gt;
| 0.1.19-44428cd&lt;br /&gt;
|- &lt;br /&gt;
| bgzip&lt;br /&gt;
| ?&lt;br /&gt;
|- &lt;br /&gt;
| razip&lt;br /&gt;
| ?&lt;br /&gt;
|- &lt;br /&gt;
| bwa&lt;br /&gt;
| 0.7.17-r1188&lt;br /&gt;
|-&lt;br /&gt;
| tabix&lt;br /&gt;
| 0.2.5 (r1005)&lt;br /&gt;
|-&lt;br /&gt;
| minimap2&lt;br /&gt;
| 2.24 (r1122)&lt;br /&gt;
|-&lt;br /&gt;
| raxml&lt;br /&gt;
| 8.2.12 (best for each node)&lt;br /&gt;
|-&lt;br /&gt;
| raxml_sse3&lt;br /&gt;
| 8.2.12 (pthreads+sse3)&lt;br /&gt;
|-&lt;br /&gt;
| raxml_avx&lt;br /&gt;
| 8.2.12 (pthreads+avx)&lt;br /&gt;
|-&lt;br /&gt;
| raxml_avx2&lt;br /&gt;
| 8.2.12 (pthreads+avx2)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Note that BWA-MEM is hardwired to use a linux-only feature, so will produce an odd message and not do what you want if you use that mode on Windows. However, it seems that minimap2 may be a faster and more accurate way&lt;br /&gt;
of doing what bwa does in any case, and that seems to have no such limitation.&lt;br /&gt;
&lt;br /&gt;
Also, note that raxml.exe is a copy of the most optimised build for the particular cluster node the job is running on. fi--dideclusthn only supports SSE3;&lt;br /&gt;
fi--didemrchnb varies a little; the 32-cores support AVX2, the 24, 20 and 16 core machines support AVX, and only the oldest 12-core nodes only support SSE3. You don&#039;t have to worry about, except to expect performance to vary between them.&lt;br /&gt;
&lt;br /&gt;
=== GATK and Picard ===&lt;br /&gt;
&lt;br /&gt;
These both rely on Java, so put this in your run script:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setJava64&lt;br /&gt;
call setgatk&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and then &amp;lt;code&amp;gt;gatk&amp;lt;/code&amp;gt; in your scripts will use Python 3.7 to call the argument handling wrapper for GATK 4.2.2.0, and &amp;lt;code&amp;gt;picard&amp;lt;/code&amp;gt; maps to the picard (2.26.2) jar file.&lt;br /&gt;
&lt;br /&gt;
=== FastQC ===&lt;br /&gt;
&lt;br /&gt;
This one has a slight eccentricity that instead of passing normal command-line args, it uses java&#039;s -D command-line options to buffer them out of an environment variable&lt;br /&gt;
called _JAVA_OPTIONS. Strange but true. The ZIP comes with a bash script, which I&#039;ll reimplement if anyone actually wants me to. But in the meantime, it&#039;s easy to work &lt;br /&gt;
out the arguments by inspection. For example, most likely usage:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setFastQC&lt;br /&gt;
&lt;br /&gt;
set _JAVA_OPTIONS=&#039;-Dfastqc.output_dir=%OUT%&#039;&lt;br /&gt;
call fastqc thing.fq&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== MAFFT ===&lt;br /&gt;
&lt;br /&gt;
For version 7.212 (Win64), write &amp;lt;code&amp;gt;call setMAFFT.bat&amp;lt;/code&amp;gt; at the top of your run script.&lt;br /&gt;
&lt;br /&gt;
=== Applied-Maths Open Source ===&lt;br /&gt;
&lt;br /&gt;
Write &amp;lt;code&amp;gt;call setAppliedMaths.bat&amp;lt;/code&amp;gt; at the top of your run script, to add these to the path:&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! EXE File(s)&lt;br /&gt;
! Description&lt;br /&gt;
! Version&lt;br /&gt;
|- &lt;br /&gt;
| velvetg_mt_x86.exe&lt;br /&gt;
| Graph Construction Multi-threaded, 32-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velvetg_mt_x64.exe&lt;br /&gt;
| Graph Construction Multi-threaded, 64-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velvetg_st_x86.exe&lt;br /&gt;
| Graph Construction Multi-threaded, 32-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velvetg_st_x64.exe&lt;br /&gt;
| Graph Construction Multi-threaded, 64-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velveth_mt_x86.exe&lt;br /&gt;
| Hashing Multi-threaded, 32-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velveth_mt_x64.exe&lt;br /&gt;
| Hashing Multi-threaded, 64-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velveth_st_x86.exe&lt;br /&gt;
| Hashing Multi-threaded, 32-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velveth_st_x64.exe&lt;br /&gt;
| Hashing Multi-threaded, 64-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| ray_x64.exe&lt;br /&gt;
| Ray 64-bit (for MPI)&lt;br /&gt;
| 1.6&lt;br /&gt;
|-&lt;br /&gt;
| ray_x86.exe&lt;br /&gt;
| Ray 32-bit (for MPI)&lt;br /&gt;
| 1.6&lt;br /&gt;
|-&lt;br /&gt;
| Mothur_x64.exe&lt;br /&gt;
| Mothur 64-bit (for MPI)&lt;br /&gt;
| 1.25.1&lt;br /&gt;
|-&lt;br /&gt;
| Mothur_x86.exe&lt;br /&gt;
| Mothur 32-bit (for MPI)&lt;br /&gt;
| 1.25.1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Tensorflow ===&lt;br /&gt;
&lt;br /&gt;
Here is an example of getting Tensorflow (as a python package) available from an R script, using the cluster to install everything for you. It only works for Tensorflow 2.0 - older versions and newer versions seem to want combinations of DLLs that I can&#039;t satisfy. The following are I think minimal steps to get Tensorflow running from Python and R.&lt;br /&gt;
&lt;br /&gt;
* Create a folder for your python packages in your home directory (so the cluster can see it. I&#039;m calling mine &amp;lt;code&amp;gt;Q:/python_37_repo&amp;lt;/code&amp;gt; - and the cluster will call it \\fi--san03.dide.ic.ac.uk\homes\wrh1\python_37_repo - change wrh1 to your DIDE username of course.&lt;br /&gt;
* Create a similar folder for R packages, which for me is &amp;lt;code&amp;gt;Q:/R4&amp;lt;/code&amp;gt;&lt;br /&gt;
* And a third folder, Q:/Tensorflow to do this work in.&lt;br /&gt;
* Download these DLLs and put them in the Q:/Tensorflow folder - at present they seem to be the ones Python/Tensorflow wants. Let&#039;s hope for the best... Download [https://mrcdata.dide.ic.ac.uk/resources/msvcp140.dll msvcp140.dll] and [https://mrcdata.dide.ic.ac.uk/resources/msvcp140_1.dll msvcp140_1.dll] into your &amp;lt;code&amp;gt;Q:/Tensorflow&amp;lt;/code&amp;gt; folder.&lt;br /&gt;
&lt;br /&gt;
* Now, create a script &amp;lt;code&amp;gt;Q:/Tensorflow/prepare.bat&amp;lt;/code&amp;gt;. We&#039;re going to launch this on the cluster, and get it to wire up the packages we want. Replace USER with your username...&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  net delete Q: /y&lt;br /&gt;
  net use Q: \\qdrive.dide.ic.ac.uk\homes\USER&lt;br /&gt;
  set TMPDIR=%TEMP%&lt;br /&gt;
  set PYTHONPATH=\\qdrive.dide.ic.ac.uk\homes\USER\python_37_repo&lt;br /&gt;
  set R_LIBS=Q:\R4&lt;br /&gt;
  set R_LIBS_USER=Q:\R4&lt;br /&gt;
  call set_python_37_64.bat&lt;br /&gt;
  call setr64_4_0_3.bat&lt;br /&gt;
  pip install --no-cache-dir tensorflow==2.00 --target Q:\python_37_repo&lt;br /&gt;
  RScript Q:\Tensorflow\install_tensorflow.R&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Create also &amp;lt;code&amp;gt;Q:/Tensorflow/install_tensorflow.R&amp;lt;/code&amp;gt; contains:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  install.packages(c(&amp;quot;reticulate&amp;quot;, &amp;quot;tensorflow&amp;quot;),lib=&amp;quot;Q:/R4&amp;quot;,repos=&amp;quot;https://cran.ma.imperial.ac.uk/&amp;quot;)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Now submit the prepare job to the cluster with &amp;lt;code&amp;gt;job submit /scheduler:fi--dideclusthn /jobtemplate:GeneralNodes \\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\prepare.bat&amp;lt;/code&amp;gt; - or if you use the portal, just &amp;lt;code&amp;gt;\\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\prepare.bat&amp;lt;/code&amp;gt; in the big window will do it. That will take a while, but you should notice lots of new files in your Q:/python_37_repo folder. You&#039;ll only need to do this once (unless you delete your Python repo folder, or it randomly breaks and you start again...)&lt;br /&gt;
&lt;br /&gt;
* Next, create a file &amp;lt;code&amp;gt;Q:/Tensorflow/run.bat&amp;lt;/code&amp;gt; containing the following the two &amp;quot;call&amp;quot; lines near the end are the ones that do some &amp;quot;work&amp;quot; in python or R, so this script basically a template for running your future jobs. Just change those two calls to set off the python or R code you want to run that uses Tensorflow.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call set_python_37_64.bat&lt;br /&gt;
call setr64_4_0_3.bat&lt;br /&gt;
net use Q: /delete /y&lt;br /&gt;
net use Q: \\qdrive.dide.ic.ac.uk\homes\USER&lt;br /&gt;
set PYTHONPATH=Q:/python_37_repo&lt;br /&gt;
set R_LIBS=Q:\R4&lt;br /&gt;
set R_LIBS_USER=Q:\R4&lt;br /&gt;
call python Q:\tensorflow\test_tensorflow.py&lt;br /&gt;
call RScript Q:\tensorflow\test_tensorflow.R&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* And finally, you&#039;ll need &amp;lt;code&amp;gt;Q:\tensorflow\test_tensorflow.py&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;Q:\tensorflow\test_tensorflow.R&amp;lt;/code&amp;gt; to exist. Here are minimal tests that everything is wired up. &amp;lt;code.test_tensorflow.py&amp;lt;/code&amp;gt; first:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import tensorflow as tf;&lt;br /&gt;
print(tf.reduce_sum(tf.random.normal([1000, 1000])));&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and &amp;lt;code&amp;gt;Q:\Tensorflow\test_tensorflow.R&amp;lt;/code&amp;gt; contains:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
library(reticulate)&lt;br /&gt;
reticulate::py_config()&lt;br /&gt;
library(tensorflow)&lt;br /&gt;
tf$constant(&#039;Hello, TensorFlow!&#039;)&lt;br /&gt;
tf$Variable(tf$zeros(shape(1L)))&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Now submit the run job to the cluster with &amp;lt;code&amp;gt;job submit /scheduler:fi--dideclusthn /jobtemplate:GeneralNodes \\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\run.bat&amp;lt;/code&amp;gt; - or if you use the portal, just &amp;lt;code&amp;gt;\\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\run.bat&amp;lt;/code&amp;gt; in the big window will do it - and perhaps paste &amp;lt;code&amp;gt;\\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\output.txt&amp;lt;/code&amp;gt; in the stdout box to collect the input and see how it gets on. You should see sensible output from both tests.&lt;br /&gt;
&lt;br /&gt;
== Launching a job ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Submitting many jobs ==&lt;br /&gt;
&lt;br /&gt;
Suppose you write an exe that you might run with… Mysim.exe init.txt 1 2 3, and you want to run it many times with a range of parameters. One way of many, is to write a launch.bat file that will run “job submit” separately, for example (thanks Tini/James!):-&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
@echo off&lt;br /&gt;
set SubDetails=job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /jobtemplate:GeneralNodes /numcores:1&lt;br /&gt;
set initFile=\\networkshare\job\init.txt&lt;br /&gt;
set exeFile=\\networkshare\job\mysim.exe&lt;br /&gt;
&lt;br /&gt;
%SubDetails% %exeFile% %initfile% 1 2 3&lt;br /&gt;
%SubDetails% %exeFile% %initfile% 4 5 6&lt;br /&gt;
%SubDetails% %exeFile% %initfile% 7 8 9&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suppose the job you want to run is an R script? To specify arguments to an R script, you have to add ′--args a=1 b=2′ - so… you might make launch.bat like this:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
@echo off&lt;br /&gt;
set SubDetails=job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /jobtemplate:GeneralNodes /numcores:1&lt;br /&gt;
set rbatFile=\\networkshare\R-scripts\run.bat&lt;br /&gt;
&lt;br /&gt;
%SubDetails% %rbatFile% 1 2&lt;br /&gt;
%SubDetails% %rbatFile% 3 4&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
And make the significant line of your run.bat:-&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
Rcmd BATCH ′--args a=%1 b=%2′ U:\R-scripts\test.R&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
%1 and %2 will map to the first and second thing after the batch file. You can go all the way up to %9.&lt;br /&gt;
&lt;br /&gt;
		IMPORTANT NOTE&lt;br /&gt;
&lt;br /&gt;
Make sure you get the apostrophe character right in the above example – NEVER copy and paste from a word document into a script. It will go hideously wrong. Type the apostrophes (and dashes for that matter) in a good text editor – you want just the standard old-fashioned characters.&lt;br /&gt;
&lt;br /&gt;
== Requesting resources ==&lt;br /&gt;
&lt;br /&gt;
The following modifiers next to the “/scheduler:” part of the job submit line (before your app.exe 1 2 3 part), will request things you might want…&lt;br /&gt;
&lt;br /&gt;
/numcores:8				- number of cores you want&lt;br /&gt;
&lt;br /&gt;
/numcores:8-12				- minimum and maximum cores appropriate for your job&lt;br /&gt;
&lt;br /&gt;
/memorypernode:1024			- amount of mem in MegaBytes needed.&lt;br /&gt;
&lt;br /&gt;
/workdir:\\networkshare\work		- set working directory&lt;br /&gt;
&lt;br /&gt;
/stdout:\\networkshare\out.txt		- divert stdout to a file&lt;br /&gt;
&lt;br /&gt;
/stderr:    or    /stdin:			- similar for stderr and stdin&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting / Miscellany / Q &amp;amp; A ==&lt;br /&gt;
&lt;br /&gt;
*	My job doesn’t work.&lt;br /&gt;
**	Run the HPC Job Manager application. Find your job id, possible under “My Jobs, Failed”. Double click on it, then on “View All Tasks”. Perhaps something in the output section will help.&lt;br /&gt;
&lt;br /&gt;
* Check that the path to your job is visible everywhere.&lt;br /&gt;
** Avoid spaces in your paths - “job submit” doesn’t like them very much. If you must have them, they’ll be ok in the “run.bat” batch file that the cluster will run – in which case, put the path in standard double-quotes (&amp;quot;). But avoid them in your “launch.bat” file – you may have to relocate your run.bat to a simple non-space-containing directory.&lt;br /&gt;
** Rather than putting the full application and parameters on the job submit line, you might want to write a batch-file to do all that, and submit the batch file to the cluster. (See section 6 about R for example). But make sure the batch file is somewhere visible to the cluster.&lt;br /&gt;
	&lt;br /&gt;
*	My job seems to work, but reports as having failed.&lt;br /&gt;
**	The success/failure depends on the error code returned. If you’re running C code, end with “return 0;” for success.&lt;br /&gt;
&lt;br /&gt;
*  job submit ..blah blah.. app.exe &amp;gt;out.txt doesn’t work!&lt;br /&gt;
** The contents of out.txt will be the result of “job submit”, not the result of “app.exe”. You meant to say this job submit ..blah blah.. /stdout:out.txt app.exe correcting out.txt and app.exe to network paths of course.&lt;br /&gt;
&lt;br /&gt;
* My C/C++ Executable works perfectly on my desktop, but doesn&#039;t work on the cluster. What&#039;s wrong with the cluster?&lt;br /&gt;
** Your EXE file probably relies on some DLL files that the cluster doesn&#039;t have. If you use Visual Studio, check that in Code Generation, you have &amp;quot;Multi-Threaded (/MT)&amp;quot; as your target - with no mention of DLLs. If your code uses OpenMP, check you&#039;ve copied the right OpenMP DLL(s) (go back to the C section above). As a last resort, give your EXE to someone who doesn&#039;t have Visual Studio installed, and get them to run it, and see what DLL files it seems to ask for.&lt;br /&gt;
&lt;br /&gt;
== Contributing Authors ==&lt;br /&gt;
&lt;br /&gt;
Wes Hinsley, James Truscott, Tini Garske, Jeff Eaton, Hannah Clapham&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Printing&amp;diff=14287</id>
		<title>Printing</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Printing&amp;diff=14287"/>
		<updated>2025-01-27T14:36:14Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Printing at Imperial College =&lt;br /&gt;
The print system is handled by HP themselves on behalf of the college. You should follow [https://www.imperial.ac.uk/admin-services/ict/self-service/computers-printing/printing-photocopying-and-scanning/install-print-drivers/ Imperial&#039;s Mobile Print instructions]. This page is a guide to follow while you&#039;re working through the ICT Mobile Print page.&lt;br /&gt;
&lt;br /&gt;
== Advice for when following the Mobile Print instrucions ==&lt;br /&gt;
Most of you are Windows users so I&#039;ll go over the key steps here. The main ICT instructions are quite good if you pay close attention, but they are from an old version of Windows 10. My page here is a supplement in case you get stuck.&lt;br /&gt;
&lt;br /&gt;
Log in to the [https://www.imperial.ac.uk/admin-services/ict/self-service/computers-printing/printing-photocopying-and-scanning/install-print-drivers/ Mobile Print site] with your Imperial credentials and then select &#039;&#039;&#039;Driver Print&#039;&#039;&#039;. Note that this page will only work on campus.&lt;br /&gt;
&lt;br /&gt;
[[file:mobileprint1.jpeg|border]]&lt;br /&gt;
&lt;br /&gt;
Now select your operating system with the large icons at the bottom (you are most likely Windows):&lt;br /&gt;
&lt;br /&gt;
[[file:mobileprint2os.jpeg|border]]&lt;br /&gt;
&lt;br /&gt;
After this you get a couple of pages with only one option each (there used to be more). Go through these formalities and select the only option you have:&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint3option.jpeg|border]]&lt;br /&gt;
&lt;br /&gt;
We now get to a mildly tricky bit as we have to download the actual HP software for talking to the printers. There is a handy link on the Mobile Print page to the [https://ftp.hp.com/pub/softlib/software13/COL40842/ds-99374-24/upd-pcl6-x64-7.0.1.24923.exe HP FTP site] so click on that to download it.&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint4drivers.jpeg|border]]&lt;br /&gt;
&lt;br /&gt;
Once downloaded, double click on it to run it and press the &#039;&#039;&#039;Unzip&#039;&#039;&#039; button. Go through the installer as normal but make sure you select &#039;&#039;&#039;USB Mode - Plug and Play&#039;&#039;&#039; as your printer type. Leave the two text boxes at the bottom ticked.&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint5usb.png|border]]&lt;br /&gt;
&lt;br /&gt;
Now we get to add the actual print queue to your computer. From your start menu type &#039;&#039;&#039;printers&#039;&#039;&#039; and you&#039;ll see a menu item to add printers. Click on that and then select &#039;&#039;&#039;add a printer&#039;&#039;&#039;. It will have a think for a while and then show you some completely incorrect printers. As soon as you see the option &#039;&#039;&#039;my printer is not listed here&#039;&#039;&#039; click on that.&lt;br /&gt;
&lt;br /&gt;
[[File:Printernotlisted.png|border]]&lt;br /&gt;
&lt;br /&gt;
Now you can copy and paste the name of your print queue, which is listed in Step 4 of the Mobile Print page guide (below is a screenshot for your reference - you can&#039;t copy and paste this):&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint6queue.jpeg|border]]&lt;br /&gt;
&lt;br /&gt;
You do need to copy and paste the whole address line, including the bit I&#039;ve blurred out (I&#039;ve blurred my exact address out or you would be printing as me with my print credit!). Remember that you&#039;re not copying and pasting this line, you&#039;re using the line from the Mobile Print web page!&lt;br /&gt;
&lt;br /&gt;
The rest of the ICT instructions should work ok, you merely have to select that you&#039;re adding an &#039;&#039;&#039;HP&#039;&#039;&#039; printer and you want to use &#039;&#039;&#039;HP Universal Printing PCL 6&#039;&#039;&#039;. There is no need to print a test page.&lt;br /&gt;
&lt;br /&gt;
== I don&#039;t have time for this and just want to print something! ==&lt;br /&gt;
If you&#039;re in a rush and have to print right now, then email your document to [mailto:print@imperial.ac.uk print@imperial.ac.uk] from your Imperial email address. You may then go to any swipe printer and collect your document. Remember to delete the email from your Sent Items folder afterwards or you may be wasting mailbox space.&lt;br /&gt;
&lt;br /&gt;
== It won&#039;t print in colour! ==&lt;br /&gt;
This is because the printers always autodetect as mono. Go in Printer properties -&amp;gt; Device Settings tab -&amp;gt; scroll down to Device Type and change it to say &#039;&#039;&#039;color&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Gotchas ==&lt;br /&gt;
If you are in the habit of using Remote Desktop and the VPN to connect to your DIDE PC, then there is a setting which you should &#039;&#039;&#039;untick&#039;&#039;&#039; in your Remote Desktop connection settings screen:&lt;br /&gt;
&lt;br /&gt;
[[File:Printer3.jpg]]&lt;br /&gt;
&lt;br /&gt;
Otherwise you&#039;ll end up with your office printers connected to your home computer and it has been known to mess things up.&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Cluster_Documentation&amp;diff=14286</id>
		<title>Cluster Documentation</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Cluster_Documentation&amp;diff=14286"/>
		<updated>2025-01-20T21:33:00Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* Python */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* We have two high performance clusters for general use, both running Microsoft HPC 2012 R2, Update 3. The smaller, older cluster is [[fi--dideclusthn]] and the larger is [[fi--didemrchnb]]. &lt;br /&gt;
&lt;br /&gt;
* Many users in the department write code and packages in R. We have in-house packages that can allow an almost-interactive experience of running jobs on our high performance clusters, so if that sounds like what you&#039;d like, you might as well stop reading here, and go straight to [https://github.com/mrc-ide/didehpc The DIDEHPC package] - or if you need to join the mrc-ide github org first, go to [https://github.com/mrc-ide/welcome The welcome page].&lt;br /&gt;
&lt;br /&gt;
If you&#039;re not using R, or you are interested in other ways, then continue...&lt;br /&gt;
&lt;br /&gt;
== Windows Users ==&lt;br /&gt;
&lt;br /&gt;
The cluster nodes are Windows 2012-R2 based. This is good news if you&#039;re a Windows user, and especially easy for PCs within the departmental DIDE domain. You have the option of using the MS client for launching jobs (see below), or you can use try the new [[HPC Web Portal]]. If you&#039;re preparing to use the cluster, and have doubts about whether it can run what you want - and whether it will be straightforward to develop and run on it, best talk to me and/or the IT guys first!&lt;br /&gt;
&lt;br /&gt;
== Linux and MAC Users ==&lt;br /&gt;
&lt;br /&gt;
There are two problems, but both can be at least partially overcome. The first is that there is no client for linux. The second is that it can only run windows binaries.&lt;br /&gt;
&lt;br /&gt;
=== Launching jobs on Linux/Mac ===&lt;br /&gt;
&lt;br /&gt;
* The best way might be the [[HPC Web Portal]], which lets you submit jobs through a webpage. Give it a try, and feedback to me any issues! &lt;br /&gt;
&lt;br /&gt;
* Alternatively, you can either (1) go down the VM route, installing a windows virtual machine, eg VMWare or Parallels, and follow the instructions below. (2) Remote Desktop to your friend&#039;s Windows machine. These tend not to be very convenient, but some users have submitted thousands of jobs this way.&lt;br /&gt;
&lt;br /&gt;
=== What Linux/Mac jobs can I run? ===&lt;br /&gt;
&lt;br /&gt;
* Many jobs may be platform indepedent. Where compiled code is involved though, you&#039;ll have some extra work to make sure the binary parts can be run in windows. For R, [https://github.com/mrc-ide/didehpc the tools] help you sort that out. For others, you may need to run a job on the cluster to do your builds. Also, for many linux applications, there is a windows port. Mileage can vary, but it&#039;s worth a try searching for that before you give up hope. Some of these might be installed on the cluster already - see below. Or some you may be able to download and call them from your run script.&lt;br /&gt;
&lt;br /&gt;
* For C code, again, we can run scripts on the cluster to build the binaries for you, if your code can be compiled with (say) the MinGW port of gcc. Cygwin can also be used (although seems less common these days) with accompanying dlls. Get in touch if you need further ideas; most things can be solved. &lt;br /&gt;
&lt;br /&gt;
* Matlab is a little more tricky - we have a range of colossal matlab runtimes on the cluster, but you&#039;d need to compile a windows binary to use them, since the matlab platforms are distinct in every way. For this, probably find a friend, or get in touch, and we&#039;ll work out how you can compile for it.&lt;br /&gt;
&lt;br /&gt;
* There is also the option of running a Windows VM, which might solve all of the above problems.&lt;br /&gt;
&lt;br /&gt;
=== But I really want a unix cluster. ===&lt;br /&gt;
&lt;br /&gt;
* We have run linux clusters in the past ([[fi--didelxhn]]), but there was very low demand, whereas the other clusters are consistently well used. Accessing DIDE network shares from linux was a little harder in some aspects, but we did not implement the more traditional linux approach of having dedicated separate cluster storage that inputs and outputs would have to be staged on to, in order for the cluster to see them. Generally, the flexibility of the other clusters makes such things quite straightforward, and may even feel a pleasure if your background is with the less domain-integrated style of cluster architecture.&lt;br /&gt;
&lt;br /&gt;
* It has also become far easier to write software that builds on multiple platforms with good practice. Tools that only run on one platform are rare, and in some circumstances have raised questions about the quality of those packages. Alternatives are often available.&lt;br /&gt;
&lt;br /&gt;
* Where compilation is the issue - for example if you want to run binaries on the cluster, but your compilation machine runs linux, or is a mac, (Matlab via MCC, or C++ code for example), then get in touch, and there are a few ways we can think of solving that, either by getting someone else, or the cluster itself, to build your code.&lt;br /&gt;
&lt;br /&gt;
* There are also resources in [https://www.imperial.ac.uk/admin-services/ict/self-service/research-support/rcs/computing/high-throughput-computing/ ICT) who run a linux cluster, with the file-staging approach, and also (being shared between a much larger pool of users) have rather stricter rules on job durations and resources than we provide locally in DIDE.&lt;br /&gt;
&lt;br /&gt;
== Getting Started ==&lt;br /&gt;
&lt;br /&gt;
=== Getting access to the cluster ===&lt;br /&gt;
&lt;br /&gt;
Send a mail to Wes (w.hinsley@imperial.ac.uk) requesting access to the cluster. He will add you to the necessary groups, and work out what cluster you should be running on. Unless you are told otherwise, this will be fi--dideclusthn. But if you have been told otherwise, then whenever you see fi--dideclusthn, replace it with the cluster name you’ve been given, either mentally or (less effectively) on your screen with tip-ex.&lt;br /&gt;
&lt;br /&gt;
=== Windows: Install the HPC client software ===&lt;br /&gt;
&lt;br /&gt;
* Run \\fi--dideclusthn.dide.ic.ac.uk\REMINST\setup.exe. &lt;br /&gt;
* Confirm &#039;&#039;&#039;Yes, I really want to run this&#039;&#039;&#039;.&lt;br /&gt;
* There&#039;s an introductory screen, and you click &#039;&#039;&#039;Next&#039;&#039;&#039;&lt;br /&gt;
* You have to tick the &#039;&#039;&#039;Accept&#039;&#039;&#039;, then click &#039;&#039;&#039;Next&#039;&#039;&#039;&lt;br /&gt;
* If it gives you any choice, select &#039;&#039;&#039;Install only the client utilities&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;Next&#039;&#039;&#039;, &#039;&#039;&#039;Next&#039;&#039;&#039;, &#039;&#039;&#039;Next&#039;&#039;&#039;&lt;br /&gt;
* Select &#039;&#039;&#039;Use Microsoft Update&#039;&#039;&#039; and then &#039;&#039;&#039;Next&#039;&#039;&#039;&lt;br /&gt;
* And then &#039;&#039;&#039;Install&#039;&#039;&#039;&lt;br /&gt;
* And possibly &#039;&#039;&#039;Install&#039;&#039;&#039; again – if it had to install any pre-requisites first.&lt;br /&gt;
* And &#039;&#039;&#039;Finish&#039;&#039;&#039;, and the client installation is done.&lt;br /&gt;
* To check everything is alright so far, open a &#039;&#039;&#039;NEW command prompt window&#039;&#039;&#039;.&lt;br /&gt;
* (Because the installer adds things to the path, which only take effect on &#039;&#039;&#039;NEW comamnd windows&#039;&#039;&#039;! :-)&lt;br /&gt;
* (Find it under Accessories, or you can use Start, Run, &#039;&#039;&#039;cmd&#039;&#039;&#039;).&lt;br /&gt;
* Type &amp;lt;code&amp;gt;job list /scheduler:fi--dideclusthn.dide.ic.ac.uk&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And it will list the jobs you have running, which will be none so far!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Id         Owner         Name              State        Priority    Resource Request&lt;br /&gt;
---------- ------------- ----------------- ------------ ----------- -------- -------&lt;br /&gt;
&lt;br /&gt;
0 matching jobs for DIDE\user&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Windows: Using a non-domain machine ===&lt;br /&gt;
&lt;br /&gt;
If you&#039;re using a machine that isn&#039;t actually logged into DIDE, then the client software will have a problem working out who you are. In this case, there are two things you need to do.&lt;br /&gt;
* Check you&#039;ve really got a DIDE username. If you don&#039;t know what it is, talk to your lovely IT team.&lt;br /&gt;
* Connect to the DIDE VPN using ZScaler from https://uafiles.cc.ic.ac.uk/, and login to that with your IC account - but you&#039;ll still need your DIDE account to access DIDE servers after the ZScaler connection is up and running.&lt;br /&gt;
* Now we&#039;ll open a command window using &amp;quot;runas&amp;quot; - which lets you choose which identity the system thinks you are within that command window:-&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
runas /netonly /user:DIDE\user cmd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* (Change user to your own login obviously). It will ask for your password, then open a new command window. In that window, you&#039;ll be able to do cluster-related things as your DIDE username.&lt;br /&gt;
&lt;br /&gt;
=== Windows: Launching and cancelling jobs ===&lt;br /&gt;
==== Windows: Command Line ====&lt;br /&gt;
&lt;br /&gt;
Suppose you have a file called &amp;quot;run.bat&amp;quot; in your home directory, which does what you want to run on the cluster. Let&#039;s say it&#039;s a single-core, very simple job. We’ll discuss what should be inside &amp;quot;run.bat&amp;quot; later. To submit your job on the cluster, at the command prompt, type this (all on one line) - or put it in a file called &amp;quot;launch.bat&amp;quot;, and run it:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /jobtemplate:GeneralNodes /numcores:1 \\qdrive.dide.ic.ac.uk\homes\user\run.bat&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If it&#039;s the first time you’ve run a job - or if you&#039;ve recently changed your password, then it might ask you for your DIDE password and offer to remember it. Otherwise, it will just tell you the ID number of your job.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;Enter the password for ‘DIDE\user’ to connect to ‘FI—DIDECLUSTHN’:&lt;br /&gt;
Remember this password? (Y/N)&lt;br /&gt;
job has been submitted. ID: 123&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you want to remove the job, then:-	&amp;lt;code&amp;gt;job cancel 123 /scheduler:fi--dideclusthn.dide.ic.ac.uk&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Or view its details with &amp;lt;code&amp;gt;job view 123 /scheduler:fi--dideclusthn.dide.ic.ac.uk&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Windows: Job Manager GUI ====&lt;br /&gt;
&lt;br /&gt;
Alternatively to the command-line, you can use the job management software, rather than the command-line. The advantage is that it’s a GUI. The disadvantage is, as in all GUIs, you may not feel totally sure you know what it’s up to – where most of the time the things you want to do might not be very complex, as above.&lt;br /&gt;
&lt;br /&gt;
The job management software will be on your start menu, as above. All the features are under the “Actions” menu, and hopefully it will be self explanatory. Read the details below about launching, and you&#039;ll find the interface bits that do it in the Job Manager. However, you may find over time, especially if you run lots of jobs, that learning to do it the scripted way with the command-line can be quicker.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Information for running any job ==&lt;br /&gt;
&lt;br /&gt;
=== Visibility ===&lt;br /&gt;
&lt;br /&gt;
Any executable/batch file that the cluster will run must be somewhere on the network that the cluster has access to, when it logs in as you. This amounts to any network accessible drive that you have access to when you login – including network shares, such as the temp drive, your home directory, and any specific network space set up for your project.&lt;br /&gt;
&lt;br /&gt;
After a job is launched, all paths are relative to the &#039;&#039;&#039;/workdir:&#039;&#039;&#039; specified on the job submit command-line. Windows does not usually allow a network path to be the current directory, and MS-HPC somehow gets around this. But if in doubt, use fully-qualified paths to specify where files should be read from, or written to. You may want to write code that takes the paths from a parameter file, or as a command-line parameter, to give as much flexibility as possible. &lt;br /&gt;
&lt;br /&gt;
Your home directory, and the temp drive are on departmental servers that don&#039;t have an especially fast connection to the cluster. So avoid having thousands of jobs all reading/writing to those places at once. Additionally, the temp drive is shared between all users, and your home drive has a limited quota. It is also backed up every day, so avoid using it as scratch storage for results you don’t actually want to keep. Generally, the shares you&#039;ll want to use from the clusters will be ones containing the word &amp;quot;NAS&amp;quot;, which the big cluster has fast access to.&lt;br /&gt;
&lt;br /&gt;
=== Interactivity ===&lt;br /&gt;
&lt;br /&gt;
The job must run in an entirely scripted, unattended way. It must not require any key presses or mouse clicks, or other live interactivity while it runs. So jobs generally will read some sort of input (from a file, or from the way you run the job), do some processing, and write the results somewhere for you - all without intervention.&lt;br /&gt;
&lt;br /&gt;
== Launching jobs ==&lt;br /&gt;
&lt;br /&gt;
Jobs can be launched either through the Job Manager interface, or through the command line tools, which offer greater flexibility. We&#039;ll describe the command line method here; if you want to use the GUI, then it&#039;ll be a case of finding the matching boxes... Below are the specifics for our clusters. For more information, simply type &amp;lt;code&amp;gt;job&amp;lt;/code&amp;gt; on the commandline, or &amp;lt;code&amp;gt;job submit&amp;lt;/code&amp;gt; for the list of submission-related commands.&lt;br /&gt;
&lt;br /&gt;
=== FI--DIDECLUSTHN vs FI--DIDEMRCHNB ===&lt;br /&gt;
&lt;br /&gt;
Job submissions, as shown below, must specify a &amp;quot;job template&amp;quot;, which sets up a load of default things to make the job work. On fi--dideclusthn, the job templates are called 4Core, 8Core and GeneralNodes, which will respectively force jobs to run on the 4-core nodes, the 8-core nodes, or on any machine available.&lt;br /&gt;
&lt;br /&gt;
On fi--didemrchnb, you can set the job template to be... 8Core, 12Core, 16Core, 12and16Core, and GeneralNodes - which hopefully are fairly self-explanatory. There are a couple of other job templates, (24Core and Phi), but those are a bit special purpose for now, so don&#039;t use them!&lt;br /&gt;
&lt;br /&gt;
=== Job Submission ===&lt;br /&gt;
&lt;br /&gt;
Job submissions from the command line can take the following form (all on one line):-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /stdout:\\path\to\stdout.txt&lt;br /&gt;
   /stderr:\\path\to\stderr.txt /numcores:1-1 /jobtemplate:4Core \\path\to\run.bat&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== The /singlenode argument ===&lt;br /&gt;
&lt;br /&gt;
In MS HPC (2012), Microsoft finally added a tag to allow you to say that the &#039;n&#039; cores you requested must be on the same computer. Therefore, if you know precisely how many cores you want, then use the following (on one line):-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /singlenode:true &lt;br /&gt;
   /jobtemplate:8Core \\path\to\run.bat&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
However, there is one bug with this, for the specific case where you request a whole node, regardless of how many cores it has. In this case, oddly, you have to disable single node:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /singlenode:false &lt;br /&gt;
   /numnodes:1 /jobtemplate:8Core \\path\to\run.bat&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Languages and libraries supported ==&lt;br /&gt;
&lt;br /&gt;
A number of languages, and different versions of languages are available on the cluster. The sections below refer to your &amp;quot;run.bat&amp;quot; file - a batch file that you will create which will get run by a cluster node when a suitable one is available. The commands described below are to be put in this &amp;quot;run.bat&amp;quot; file, and they add various directories to the path, so that the software you want will be added to the path. &lt;br /&gt;
&lt;br /&gt;
=== C/C++ === &lt;br /&gt;
&lt;br /&gt;
A number of Microsoft C++ and Intel C++ runtimes are installed, but it&#039;s usually better to try and avoid using them, and make your executable as stand-alone as possible. If it requires any external libraries that you&#039;ve had to download, then put the .dll file in the same directory as the .exe file. If you use Microsoft Visual Studio, in Project Preferences, C/C++, Code Generation, make sure the Runtime Library is Multi-threaded (/MT) – the ones with DLL files won’t work. Even so, on recent versions of the Intel and Microsoft C compilers, &amp;quot;static linking&amp;quot; doesn’t really mean static when it comes to OpenMP, and you’ll have to copy some DLLs and put them next to your EXE file. See the OpenMP section below.&lt;br /&gt;
&lt;br /&gt;
The cluster nodes are all 64-bit, but they will run 32-bit compiled code. Just make sure you provide the right DLLs!&lt;br /&gt;
&lt;br /&gt;
Here is a document about [[Using the Xeon Phi]]&lt;br /&gt;
&lt;br /&gt;
Here is a document about [[Using MPI]]&lt;br /&gt;
&lt;br /&gt;
And if you want to use libraries such as GSL, then try [[C/C++ Libraries for Windows]]&lt;br /&gt;
&lt;br /&gt;
=== Java ===&lt;br /&gt;
&lt;br /&gt;
Java doesn&#039;t strictly need installing; you can setup any Java Runtime Environment you like, from Oracle, or anywhere. If you want to do this, then, (if you were to use the Server JRE from Oracle), something similar to the following will add java.exe and jvm.dll to the path, and set the JAVA_HOME environment variable, which most Java-using software will appreciate.&lt;br /&gt;
&lt;br /&gt;
    set JAVA_HOME=\\my\path\to\jre1.8.0&lt;br /&gt;
    set path=%JAVA_HOME%\bin;%JAVA_HOME%\bin\server;%path%&lt;br /&gt;
&lt;br /&gt;
For convenience, if you&#039;re happy with Azul&#039;s OpenJDK Java 1.8.0 update 308 (September 2021), then &amp;lt;code&amp;gt;call setJava64&amp;lt;/code&amp;gt; in your run script will set this up for you. Incidentally the above will also add what&#039;s needed for using the rJava package in R - in which case you&#039;ll perhaps also want something like &amp;lt;code&amp;gt;call setR64_4_1_0&amp;lt;/code&amp;gt; in your run script.&lt;br /&gt;
&lt;br /&gt;
=== Perl ===&lt;br /&gt;
&lt;br /&gt;
Strawberry Perl 64-bit portable, v5.30.1.1. Put &amp;lt;code&amp;gt;call setPerl&amp;lt;/code&amp;gt; at the top of your script.&lt;br /&gt;
&lt;br /&gt;
=== R ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;New tools are coming&#039;&#039;&#039;: [http://dide-tools.github.io/didehpc/vignettes/quickstart.html see here].  The instructions below are still valid if you want to do this manually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You can R jobs on all the clusters. This is the latest wisdom on how to do so – thanks to James, Jeff, Hannah and others. &lt;br /&gt;
&lt;br /&gt;
First, if you are wanting to use packages, then set up a package repository on your home directory by running this in R.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;install.packages(&amp;quot;&amp;lt;package&amp;gt;&amp;quot;,lib=&amp;quot;Q:/R&amp;quot;)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now, write your run script. Suppose you have an R script in your home directory: Q:\R-scripts\test.R. And suppose you’ve set up your repository as above. Your run.bat should then be:-&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
	call &amp;lt;script for the R version you want – see below&amp;gt;&lt;br /&gt;
	net use Q: \\qdrive.dide.ic.ac.uk\homes\user&lt;br /&gt;
	set R_LIBS=Q:\R&lt;br /&gt;
	set R_LIBS_USER=Q:\R&lt;br /&gt;
	Rscript Q:\R-scripts\test.R&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Various packages require various R versions, and the cluster supports a few versions. To choose which one, change the first line of the script above to one of these – 32-bit or 64-bit versions of R releases. Purely for amusement, R&#039;s codenames are shown here too. &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setr32_2_13_1.bat		call setr64_2_13_1.bat    (anyone know the codename?)&lt;br /&gt;
call setr32_2_14_2.bat		call setr64_2_14_2.bat    (Gift-getting season)&lt;br /&gt;
call setr32_2_15_2.bat		call setr64_2_15_2.bat    (Trick or treat)&lt;br /&gt;
call setr32_3_0_1.bat           call setr64_3_0_1.bat     (Good Sport)&lt;br /&gt;
call setr32_3_0_2.bat           call setr64_3_0_2.bat     (Frisbee Sailing)&lt;br /&gt;
call setr32_3_1_0.bat           call setr64_3_1_0.bat     (Spring Dance)&lt;br /&gt;
call setr32_3_1_2.bat           call setr64_3_1_2.bat     (Pumpkin Helmet)&lt;br /&gt;
call setr32_3_2_2.bat           call setr64_3_2_2.bat     (Fire Safety)&lt;br /&gt;
call setr32_3_2_3.bat           call setr64_3_2_3.bat     (Wooden Christmas Tree)&lt;br /&gt;
call setr32_3_2_4.bat           call setr64_3_2_4.bat     (Very Secure Dishes - Revised Version - R later renamed this to 3.2.5)&lt;br /&gt;
call setr32_3_3_1.bat           call setr64_3_3_1.bat     (Bug in your hair)&lt;br /&gt;
call setr32_3_3_2.bat           call setr64_3_3_2.bat     (Sincere Pumpkin Patch)&lt;br /&gt;
call setr32_3_4_0.bat           call setr64_3_4_0.bat     (You Stupid Darkness)&lt;br /&gt;
call setr32_3_4_2.bat           call setr64_3_4_2.bat     (Short Summer)&lt;br /&gt;
call setr32_3_4_4.bat           call setr64_3_4_4.bat     (Someone to lean on)&lt;br /&gt;
call setr32_3_5_0.bat           call setr64_3_5_0.bat     (Joy in Playing)&lt;br /&gt;
call setr32_3_5_1.bat           call setr64_3_5_1.bat     (Feather Spray)&lt;br /&gt;
call setr32_3_5_3.bat           call setr64_3_5_3.bat     (Great Truth)&lt;br /&gt;
call setr32_3_6_0.bat           call setr64_3_6_0.bat     (Planting of a Tree)&lt;br /&gt;
call setr32_3_6_1.bat           call setr64_3_6_1.bat     (Action of the Toes)&lt;br /&gt;
call setr32_3_6_3.bat           call setr64_3_6_3.bat     (Holding the Windsock)&lt;br /&gt;
call setr32_4_0_2.bat           call setr64_4_0_2.bat     (Taking Off Again)&lt;br /&gt;
call setr32_4_0_3.bat           call setr64_4_0_3.bat     (Bunny-Wunnies Freak Out)&lt;br /&gt;
call setr32_4_0_5.bat           call setr64_4_0_5.bat     (Shake and Throw)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following versions are *not* available on the cluster at the moment - but here are their names anyway, as it seemed a shame to miss them out. Let me know if you desperately need one of these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
2.14.0    Great Pumpkin                   &lt;br /&gt;
2.14.1    December Snowflakes&lt;br /&gt;
2.15.0    Easter Beagle&lt;br /&gt;
2.15.1    Roasted Marshmallow&lt;br /&gt;
2.15.3    Security Blanket&lt;br /&gt;
3.0.0     Masked Marvel&lt;br /&gt;
3.0.3     Warm Puppy&lt;br /&gt;
3.1.1     Sock it to me&lt;br /&gt;
3.1.3     Smooth Sidewalk&lt;br /&gt;
3.2.0     Full of Ingredients&lt;br /&gt;
3.2.1     World famous astronaut&lt;br /&gt;
3.2.4     Very Secure Dishes (the non-revised version)&lt;br /&gt;
3.3.0     Supposedly Educational&lt;br /&gt;
3.3.3     Another Canoe&lt;br /&gt;
3.4.1     Single Candle&lt;br /&gt;
3.4.3     Kite-Eating Tree&lt;br /&gt;
3.5.2     Eggshell Igloo&lt;br /&gt;
3.6.2     Dark and Stormy Night&lt;br /&gt;
4.0.0     Arbor Day&lt;br /&gt;
4.0.1     See Things Now&lt;br /&gt;
4.0.4     Lost Library Book&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It also seems that different R versions put their packages in different structures – sometimes adding &amp;quot;win-library&amp;quot; into there for fun. Basically, R_LIBS and R_LIBS_USER should be paths to a folder that contains a list of other folders, one for each package you&#039;ve installed.&lt;br /&gt;
&lt;br /&gt;
IMPORTANT:  R_LIBS and R_LIBS_USER paths must NOT contain quotes, nor spaces. If the path to your library contains spaces, you need to use old-fashioned 8-character names. If in your command window, you type &amp;lt;code&amp;gt;dir /x&amp;lt;/code&amp;gt;, you’ll see the names – Program Files tends to become PROGRA~1 for instance. &lt;br /&gt;
&lt;br /&gt;
==== Passing parameters to R scripts ====&lt;br /&gt;
Passing parameters to R scripts means you can have fewer versions of your R and bat files and easily run whole sets of jobs. You can get parameters into R using Rscript (but not Rcmd BATCH, I think) as follows. In the run.bat example above, the Rscript statement becomes:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Rscript Q:\R-scripts\test.R arg1 arg2 arg3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Within the R code, the arguments can be recovered using &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
args &amp;lt;- commandArgs(trailingOnly = TRUE)&lt;br /&gt;
&lt;br /&gt;
outFileName &amp;lt;- args[1]     ## name of output file.&lt;br /&gt;
dataFileName &amp;lt;- args[2]    ## name of local data file. &lt;br /&gt;
currentR0 &amp;lt;- as.numeric(args[3]) ## convert this explicitly to number. &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
If you want your arguments to have a particular type, best to explicitly convert (see R0 above). Better still, you can pass parameters directly into the batch file that runs the R script. Command line arguments can be referenced within the batch file using %1, %2, etc. For example, if you have a batch file, runArgs.bat:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call &amp;lt;script for the R version you want – see below&amp;gt;&lt;br /&gt;
net use Q: \\qdrive.dide.ic.ac.uk\homes\user&lt;br /&gt;
set R_LIBS=Q:\R&lt;br /&gt;
set R_LIBS_USER=Q:\R&lt;br /&gt;
Rscript Q:\R-scripts\%1.R %2 %3 %4&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
then&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
runArgs.bat myRScript arg1 arg2 arg3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
will run the R script myRScript.R and pass it the parameters arg1, arg2 and arg3. The batch file runArgs.bat is now almost a &#039;&#039;&#039;generic R script runner&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== OpenMP ===&lt;br /&gt;
&lt;br /&gt;
This has been tested with C/C++ - but the same should apply to other languages such as fortran, that achieve multi-threading with a DLL file.&lt;br /&gt;
&lt;br /&gt;
==== Microsoft&#039;s C/C++ Compiler ====&lt;br /&gt;
You will need to copy vcomp100.dll (for Visual Studio 2010 – it maybe vcomp90.dll for 2008), into the same directory as your executable. You can usually find the dll file in a directory similar to:- C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\redist\x64\Microsoft.VC100.OpenMP. Extrapolate for future versions! Also make sure that you&#039;ve enabled OpenMP in the Properties (C++/Language).&lt;br /&gt;
&lt;br /&gt;
==== GCC or MinGW ====&lt;br /&gt;
Usually, this applies to Eclipse use. In project properties, the C++ command “g++ -fopenmp”, the C command “gcc –fopenmp”, and in the Linker options, under Miscellaneous, Linker flags, put “-fopenmp” too. Copy the OpenMP DLLs from MinGW into the same directory as your final executable. You may find the dlls are in C:\MinGW\Bin\libgomp-1.dll and in the same place, libpthread-2.dll,  libstdc++-6.dll and libgcc_s_dw2-1.dll.&lt;br /&gt;
&lt;br /&gt;
==== Intel C++ Compiler ====&lt;br /&gt;
Copy the libiomp5md.dll file from somewhere like C:\Program Files (x86)\Intel\ComposerXE-2011\redist\intel64\compiler\libiomp5md.dll to the same place as your executable. And in Visual Studio, make sure you&#039;ve enabled OpenMP in the project properties.&lt;br /&gt;
&lt;br /&gt;
==== How many threads? ====&lt;br /&gt;
The OpenMP function omp_max_threads() returns the number of &#039;&#039;physical&#039;&#039; cores on a machine, not the number of cores &#039;&#039;allocated&#039;&#039; to your job. To determine how many cores the scheduler actually allocated to you, use the following code to dig up the environment variable CCP_NUMCPUS, which will be set by the cluster management software:- &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
		int set_NCores() {&lt;br /&gt;
		   char * val;&lt;br /&gt;
		   char * endchar;&lt;br /&gt;
		   val = getenv(&amp;quot;CCP_NUMCPUS&amp;quot;);&lt;br /&gt;
		   int cores = omp_get_max_threads();&lt;br /&gt;
		   if (val!=NULL) cores = strtol (val,&amp;amp;endchar,10);&lt;br /&gt;
                   omp_set_num_threads(cores);&lt;br /&gt;
		   return cores;&lt;br /&gt;
		}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== WinBugs (or OpenBugs) ===&lt;br /&gt;
&lt;br /&gt;
They are similar, but OpenBugs 3.2.2 is the one we&#039;ve gone for. Something like this as your run.bat script will work:-&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setOpenBugs&lt;br /&gt;
openbugs \\path\to\script.txt /HEADLESS&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== MatLab ===&lt;br /&gt;
&lt;br /&gt;
There are various ways of producing a non-interactive executable from Matlab. Perhaps the simplest (not necessarily the best performance) way is to use “mcc.exe” – supplied with most full versions of Matlab, including the Imperial site licence version that you&#039;ve probably got.&lt;br /&gt;
&lt;br /&gt;
==== Use mcc.exe to compile your code ====&lt;br /&gt;
&lt;br /&gt;
Use windows explorer to navigate to the folder where the “.m” files are for the project you want to compile. Now use a good text editor to create a file called “compile.bat” in that folder. It should contain something similar to the following:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mcc -m file1.m file2.m file3.m -o myexe&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Don’t copy/paste the text from this document by the way – Word has a different idea of what a dash is to most other software, and will probably replace the two dashes with funny characters. so you have to list every single .m file that your project needs, after the’-m’. If you save this file, then double-click on it, then it will think for some while, and produce “myexe.exe” in this example. Copy your .exe file into a network accessible place as usual.&lt;br /&gt;
&lt;br /&gt;
==== Launch on the cluster. ====&lt;br /&gt;
&lt;br /&gt;
The launch.bat file will be exactly the same as before – see page 2. The run script will then start with a line that tells the cluster which version of Matlab you used to compile the cluster. Below is the table of different versions. The runtimes are huge and cumbersome to install on the cluster, so as a result I haven’t installed every single one. If you need one that’s not listed, get in touch.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Matlab Version&lt;br /&gt;
! First line of run script&lt;br /&gt;
|- &lt;br /&gt;
| R2009b&lt;br /&gt;
| call useMatLab79&lt;br /&gt;
|- &lt;br /&gt;
| R2010a&lt;br /&gt;
| call useMatLab713&lt;br /&gt;
|- &lt;br /&gt;
| R2011a&lt;br /&gt;
| call useMatLab715&lt;br /&gt;
|- &lt;br /&gt;
| R2011b&lt;br /&gt;
| call useMatLab716&lt;br /&gt;
|- &lt;br /&gt;
| R2012a (64-bit)&lt;br /&gt;
| call useMatLab717_64&lt;br /&gt;
|- &lt;br /&gt;
| R2012b (64-bit)&lt;br /&gt;
| call useMatLab80_64&lt;br /&gt;
|- &lt;br /&gt;
| R2013a (64-bit)&lt;br /&gt;
| call useMatLab81_64&lt;br /&gt;
|- &lt;br /&gt;
| R2014a (64-bit)&lt;br /&gt;
| call useMatLab83_64&lt;br /&gt;
|- &lt;br /&gt;
| R2014b (64-bit)&lt;br /&gt;
| call useMatLab84_64&lt;br /&gt;
|- &lt;br /&gt;
| R2015a (64-bit)&lt;br /&gt;
| call useMatLab85_64&lt;br /&gt;
|- &lt;br /&gt;
| R2015b (64-bit)&lt;br /&gt;
| call useMatLab90_64&lt;br /&gt;
|- &lt;br /&gt;
| R2016b (64-bit)&lt;br /&gt;
| call useMatLab91_64&lt;br /&gt;
|- &lt;br /&gt;
| R2017a (64-bit)&lt;br /&gt;
| call useMatLab92_64&lt;br /&gt;
|- &lt;br /&gt;
| R2019a (64-bit)&lt;br /&gt;
| call useMatLab96_64&lt;br /&gt;
|- &lt;br /&gt;
| R2021a (64-bit)&lt;br /&gt;
| call useMatLab910_64&lt;br /&gt;
|- &lt;br /&gt;
| R2022a (64-bit)&lt;br /&gt;
| call useMatLab912_64&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Python ===&lt;br /&gt;
&lt;br /&gt;
* The most recent version of each major release is on the cluster. Different python versions within the same release (e.g., 3.5.1 and 3.5.2) do not behave nicely together in automated installation, so if you have a desperate need for a previous minor version, get in touch. While 2.7.18 is available, we &#039;&#039;&#039;strongly&#039;&#039;&#039; recommend migrating away from Python 2.7, as it has been officially discontinued on 1st January 2020. Experiences may vary, and future success is not guaranteed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
2.7.18  64-bit   call set_python_27_64.bat&lt;br /&gt;
3.5.10  64-bit   call set_python_35_64.bat&lt;br /&gt;
3.6.15  64-bit   call set python_36_64.bat&lt;br /&gt;
3.7.17  64-bit   call set_python_37_64.bat&lt;br /&gt;
3.8.20  64-bit   call set python_38_64.bat&lt;br /&gt;
3.9.21  64-bit   call set_python_39_64.bat&lt;br /&gt;
3.10.16 64-bit   call set python_310_64.bat&lt;br /&gt;
3.11.11 64-bit   call set_python_311_64.bat&lt;br /&gt;
3.12.8  64-bit   call set_python_312_64.bat&lt;br /&gt;
3.13.1  64-bit   call set_python_313_64.bat&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* You&#039;ll most likely want to use some packages, so you&#039;ll need to have a network-accessible location to put your packages in. If you&#039;re running a version of Windows with Python that matches one installed on the cluster, then you&#039;ll be able to share that package repository between the two. But if you&#039;re running a different version, or a different operating system, or a different Python version, then you&#039;ll need to keep your local package repository separate from the one the cluster uses.&lt;br /&gt;
* Here comes the basic script to run some python. Suppose I decide to put my Python packages for the cluster in &#039;&#039;&#039;\\qdrive.dide.ic.ac.uk\homes\username\PythonCluster37_64&#039;&#039;&#039; (which is Q:\PythonCluster37_64 on a DIDE Windows PC). To run some python, something like the following:-&lt;br /&gt;
&lt;br /&gt;
 call set_python_37_64&lt;br /&gt;
 set PYTHONPATH=\\qdrive\homes\username\PythonCluster37_64&lt;br /&gt;
 python \\qdrive\homes\username\Python\MyScript.py&lt;br /&gt;
&lt;br /&gt;
or if you want to do this in a programmatic way...&lt;br /&gt;
&lt;br /&gt;
 import sys&lt;br /&gt;
 sys.path = [&#039;\\\\qdrive\\homes\\username\\PythonCluster37_64&#039;] + sys.path&lt;br /&gt;
&lt;br /&gt;
==== Packages ====&lt;br /&gt;
&lt;br /&gt;
* If you want to install a package like numpy, that&#039;s readily available through pip, then you can launch a batch file like this:-&lt;br /&gt;
 call set_python_36_64&lt;br /&gt;
 pip install numpy --target \\qdrive\homes\username\PythonCluster36_64&lt;br /&gt;
* or alternatively, you could write a python script that looks like this, and launch it as normal:-&lt;br /&gt;
 import pip&lt;br /&gt;
 pip.main([&#039;install&#039;,&#039;numpy&#039;,&#039;--target&#039;,&#039;\\\\qdrive\\homes\\username\\PythonCluster36_64&#039;])&lt;br /&gt;
&lt;br /&gt;
* And if you&#039;re running the same Python version on a Windows machine, then you can do these two locally, without submitting a cluster job to do them for you.&lt;br /&gt;
&lt;br /&gt;
* And next time you submit a python job on the cluster, python will look in the place set by PYTHONPATH, and will find the packages you&#039;ve just installed when you import them.&lt;br /&gt;
&lt;br /&gt;
=== Beast and Beagle ===&lt;br /&gt;
&lt;br /&gt;
We&#039;ve got a couple of versions available. For BEAST 1.75 with BEAGLE 1.0:  (the x y z represents all the command-line arguments you&#039;ll want to pass to beast)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setbeast&lt;br /&gt;
call beast-beagle x y z&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you want BEAST 1.82 or 1.83 with BEAGLE 2.1:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setbeast_182                        call setbeast_183&lt;br /&gt;
call beast-beagle_182 x y z              call beast-beagle_183 x y z&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And if you want BEAST 2.3.2 with BEAGLE 2.1 (note that BEAST 2 is a different, er, beast to BEAST 1, regarding packages and compatibilities, so only use BEAST 2 if you know that&#039;s what you want to use).&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setbeast_232&lt;br /&gt;
call beast-beagle_232 x y z&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
OpenCL is installed on all the nodes, which means Beagle will pick up the Intel Xeon processors and use what it can on them. It will also detect the Xeon Phis where they&#039;re available. If that&#039;s something you&#039;d be particularly interested in using, drop me a line.&lt;br /&gt;
&lt;br /&gt;
=== Blast ===&lt;br /&gt;
&lt;br /&gt;
Drop me a line to join the party testing this, and to get added to the (large) BlastDB network share.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setblast&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
will set the `BLASTDB` environment variable to point to what we current have of the `v5` database, and the Blast tools (2.9.0, 64-bit) will be added to the path. So you can &lt;br /&gt;
then call `blastp`, `blastn`, `blastx` setc.&lt;br /&gt;
&lt;br /&gt;
=== BOW (BioInformatics on Windows) ===&lt;br /&gt;
&lt;br /&gt;
A number of Bio-informatics tools are ready to go. These used to be provided together on codeplex, but that has since been retired. Ugene is one project that&lt;br /&gt;
maintains windows builds of them. Start your run.bat file with &amp;lt;code&amp;gt;call setBOW&amp;lt;/code&amp;gt; to add these to the path:-&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! EXE File&lt;br /&gt;
! Version&lt;br /&gt;
|- &lt;br /&gt;
| SamTools.exe&lt;br /&gt;
| 0.1.19-44429cd&lt;br /&gt;
|- &lt;br /&gt;
| BCFTools.exe&lt;br /&gt;
| 0.1.19-44428cd&lt;br /&gt;
|- &lt;br /&gt;
| bgzip&lt;br /&gt;
| ?&lt;br /&gt;
|- &lt;br /&gt;
| razip&lt;br /&gt;
| ?&lt;br /&gt;
|- &lt;br /&gt;
| bwa&lt;br /&gt;
| 0.7.17-r1188&lt;br /&gt;
|-&lt;br /&gt;
| tabix&lt;br /&gt;
| 0.2.5 (r1005)&lt;br /&gt;
|-&lt;br /&gt;
| minimap2&lt;br /&gt;
| 2.24 (r1122)&lt;br /&gt;
|-&lt;br /&gt;
| raxml&lt;br /&gt;
| 8.2.12 (best for each node)&lt;br /&gt;
|-&lt;br /&gt;
| raxml_sse3&lt;br /&gt;
| 8.2.12 (pthreads+sse3)&lt;br /&gt;
|-&lt;br /&gt;
| raxml_avx&lt;br /&gt;
| 8.2.12 (pthreads+avx)&lt;br /&gt;
|-&lt;br /&gt;
| raxml_avx2&lt;br /&gt;
| 8.2.12 (pthreads+avx2)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Note that BWA-MEM is hardwired to use a linux-only feature, so will produce an odd message and not do what you want if you use that mode on Windows. However, it seems that minimap2 may be a faster and more accurate way&lt;br /&gt;
of doing what bwa does in any case, and that seems to have no such limitation.&lt;br /&gt;
&lt;br /&gt;
Also, note that raxml.exe is a copy of the most optimised build for the particular cluster node the job is running on. fi--dideclusthn only supports SSE3;&lt;br /&gt;
fi--didemrchnb varies a little; the 32-cores support AVX2, the 24, 20 and 16 core machines support AVX, and only the oldest 12-core nodes only support SSE3. You don&#039;t have to worry about, except to expect performance to vary between them.&lt;br /&gt;
&lt;br /&gt;
=== GATK and Picard ===&lt;br /&gt;
&lt;br /&gt;
These both rely on Java, so put this in your run script:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setJava64&lt;br /&gt;
call setgatk&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and then &amp;lt;code&amp;gt;gatk&amp;lt;/code&amp;gt; in your scripts will use Python 3.7 to call the argument handling wrapper for GATK 4.2.2.0, and &amp;lt;code&amp;gt;picard&amp;lt;/code&amp;gt; maps to the picard (2.26.2) jar file.&lt;br /&gt;
&lt;br /&gt;
=== FastQC ===&lt;br /&gt;
&lt;br /&gt;
This one has a slight eccentricity that instead of passing normal command-line args, it uses java&#039;s -D command-line options to buffer them out of an environment variable&lt;br /&gt;
called _JAVA_OPTIONS. Strange but true. The ZIP comes with a bash script, which I&#039;ll reimplement if anyone actually wants me to. But in the meantime, it&#039;s easy to work &lt;br /&gt;
out the arguments by inspection. For example, most likely usage:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setFastQC&lt;br /&gt;
&lt;br /&gt;
set _JAVA_OPTIONS=&#039;-Dfastqc.output_dir=%OUT%&#039;&lt;br /&gt;
call fastqc thing.fq&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== MAFFT ===&lt;br /&gt;
&lt;br /&gt;
For version 7.212 (Win64), write &amp;lt;code&amp;gt;call setMAFFT.bat&amp;lt;/code&amp;gt; at the top of your run script.&lt;br /&gt;
&lt;br /&gt;
=== Applied-Maths Open Source ===&lt;br /&gt;
&lt;br /&gt;
Write &amp;lt;code&amp;gt;call setAppliedMaths.bat&amp;lt;/code&amp;gt; at the top of your run script, to add these to the path:&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! EXE File(s)&lt;br /&gt;
! Description&lt;br /&gt;
! Version&lt;br /&gt;
|- &lt;br /&gt;
| velvetg_mt_x86.exe&lt;br /&gt;
| Graph Construction Multi-threaded, 32-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velvetg_mt_x64.exe&lt;br /&gt;
| Graph Construction Multi-threaded, 64-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velvetg_st_x86.exe&lt;br /&gt;
| Graph Construction Multi-threaded, 32-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velvetg_st_x64.exe&lt;br /&gt;
| Graph Construction Multi-threaded, 64-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velveth_mt_x86.exe&lt;br /&gt;
| Hashing Multi-threaded, 32-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velveth_mt_x64.exe&lt;br /&gt;
| Hashing Multi-threaded, 64-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velveth_st_x86.exe&lt;br /&gt;
| Hashing Multi-threaded, 32-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velveth_st_x64.exe&lt;br /&gt;
| Hashing Multi-threaded, 64-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| ray_x64.exe&lt;br /&gt;
| Ray 64-bit (for MPI)&lt;br /&gt;
| 1.6&lt;br /&gt;
|-&lt;br /&gt;
| ray_x86.exe&lt;br /&gt;
| Ray 32-bit (for MPI)&lt;br /&gt;
| 1.6&lt;br /&gt;
|-&lt;br /&gt;
| Mothur_x64.exe&lt;br /&gt;
| Mothur 64-bit (for MPI)&lt;br /&gt;
| 1.25.1&lt;br /&gt;
|-&lt;br /&gt;
| Mothur_x86.exe&lt;br /&gt;
| Mothur 32-bit (for MPI)&lt;br /&gt;
| 1.25.1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Tensorflow ===&lt;br /&gt;
&lt;br /&gt;
Here is an example of getting Tensorflow (as a python package) available from an R script, using the cluster to install everything for you. It only works for Tensorflow 2.0 - older versions and newer versions seem to want combinations of DLLs that I can&#039;t satisfy. The following are I think minimal steps to get Tensorflow running from Python and R.&lt;br /&gt;
&lt;br /&gt;
* Create a folder for your python packages in your home directory (so the cluster can see it. I&#039;m calling mine &amp;lt;code&amp;gt;Q:/python_37_repo&amp;lt;/code&amp;gt; - and the cluster will call it \\fi--san03.dide.ic.ac.uk\homes\wrh1\python_37_repo - change wrh1 to your DIDE username of course.&lt;br /&gt;
* Create a similar folder for R packages, which for me is &amp;lt;code&amp;gt;Q:/R4&amp;lt;/code&amp;gt;&lt;br /&gt;
* And a third folder, Q:/Tensorflow to do this work in.&lt;br /&gt;
* Download these DLLs and put them in the Q:/Tensorflow folder - at present they seem to be the ones Python/Tensorflow wants. Let&#039;s hope for the best... Download [https://mrcdata.dide.ic.ac.uk/resources/msvcp140.dll msvcp140.dll] and [https://mrcdata.dide.ic.ac.uk/resources/msvcp140_1.dll msvcp140_1.dll] into your &amp;lt;code&amp;gt;Q:/Tensorflow&amp;lt;/code&amp;gt; folder.&lt;br /&gt;
&lt;br /&gt;
* Now, create a script &amp;lt;code&amp;gt;Q:/Tensorflow/prepare.bat&amp;lt;/code&amp;gt;. We&#039;re going to launch this on the cluster, and get it to wire up the packages we want. Replace USER with your username...&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  net delete Q: /y&lt;br /&gt;
  net use Q: \\qdrive.dide.ic.ac.uk\homes\USER&lt;br /&gt;
  set TMPDIR=%TEMP%&lt;br /&gt;
  set PYTHONPATH=\\qdrive.dide.ic.ac.uk\homes\USER\python_37_repo&lt;br /&gt;
  set R_LIBS=Q:\R4&lt;br /&gt;
  set R_LIBS_USER=Q:\R4&lt;br /&gt;
  call set_python_37_64.bat&lt;br /&gt;
  call setr64_4_0_3.bat&lt;br /&gt;
  pip install --no-cache-dir tensorflow==2.00 --target Q:\python_37_repo&lt;br /&gt;
  RScript Q:\Tensorflow\install_tensorflow.R&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Create also &amp;lt;code&amp;gt;Q:/Tensorflow/install_tensorflow.R&amp;lt;/code&amp;gt; contains:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  install.packages(c(&amp;quot;reticulate&amp;quot;, &amp;quot;tensorflow&amp;quot;),lib=&amp;quot;Q:/R4&amp;quot;,repos=&amp;quot;https://cran.ma.imperial.ac.uk/&amp;quot;)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Now submit the prepare job to the cluster with &amp;lt;code&amp;gt;job submit /scheduler:fi--dideclusthn /jobtemplate:GeneralNodes \\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\prepare.bat&amp;lt;/code&amp;gt; - or if you use the portal, just &amp;lt;code&amp;gt;\\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\prepare.bat&amp;lt;/code&amp;gt; in the big window will do it. That will take a while, but you should notice lots of new files in your Q:/python_37_repo folder. You&#039;ll only need to do this once (unless you delete your Python repo folder, or it randomly breaks and you start again...)&lt;br /&gt;
&lt;br /&gt;
* Next, create a file &amp;lt;code&amp;gt;Q:/Tensorflow/run.bat&amp;lt;/code&amp;gt; containing the following the two &amp;quot;call&amp;quot; lines near the end are the ones that do some &amp;quot;work&amp;quot; in python or R, so this script basically a template for running your future jobs. Just change those two calls to set off the python or R code you want to run that uses Tensorflow.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call set_python_37_64.bat&lt;br /&gt;
call setr64_4_0_3.bat&lt;br /&gt;
net use Q: /delete /y&lt;br /&gt;
net use Q: \\qdrive.dide.ic.ac.uk\homes\USER&lt;br /&gt;
set PYTHONPATH=Q:/python_37_repo&lt;br /&gt;
set R_LIBS=Q:\R4&lt;br /&gt;
set R_LIBS_USER=Q:\R4&lt;br /&gt;
call python Q:\tensorflow\test_tensorflow.py&lt;br /&gt;
call RScript Q:\tensorflow\test_tensorflow.R&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* And finally, you&#039;ll need &amp;lt;code&amp;gt;Q:\tensorflow\test_tensorflow.py&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;Q:\tensorflow\test_tensorflow.R&amp;lt;/code&amp;gt; to exist. Here are minimal tests that everything is wired up. &amp;lt;code.test_tensorflow.py&amp;lt;/code&amp;gt; first:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import tensorflow as tf;&lt;br /&gt;
print(tf.reduce_sum(tf.random.normal([1000, 1000])));&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and &amp;lt;code&amp;gt;Q:\Tensorflow\test_tensorflow.R&amp;lt;/code&amp;gt; contains:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
library(reticulate)&lt;br /&gt;
reticulate::py_config()&lt;br /&gt;
library(tensorflow)&lt;br /&gt;
tf$constant(&#039;Hello, TensorFlow!&#039;)&lt;br /&gt;
tf$Variable(tf$zeros(shape(1L)))&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Now submit the run job to the cluster with &amp;lt;code&amp;gt;job submit /scheduler:fi--dideclusthn /jobtemplate:GeneralNodes \\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\run.bat&amp;lt;/code&amp;gt; - or if you use the portal, just &amp;lt;code&amp;gt;\\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\run.bat&amp;lt;/code&amp;gt; in the big window will do it - and perhaps paste &amp;lt;code&amp;gt;\\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\output.txt&amp;lt;/code&amp;gt; in the stdout box to collect the input and see how it gets on. You should see sensible output from both tests.&lt;br /&gt;
&lt;br /&gt;
== Launching a job ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Submitting many jobs ==&lt;br /&gt;
&lt;br /&gt;
Suppose you write an exe that you might run with… Mysim.exe init.txt 1 2 3, and you want to run it many times with a range of parameters. One way of many, is to write a launch.bat file that will run “job submit” separately, for example (thanks Tini/James!):-&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
@echo off&lt;br /&gt;
set SubDetails=job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /jobtemplate:GeneralNodes /numcores:1&lt;br /&gt;
set initFile=\\networkshare\job\init.txt&lt;br /&gt;
set exeFile=\\networkshare\job\mysim.exe&lt;br /&gt;
&lt;br /&gt;
%SubDetails% %exeFile% %initfile% 1 2 3&lt;br /&gt;
%SubDetails% %exeFile% %initfile% 4 5 6&lt;br /&gt;
%SubDetails% %exeFile% %initfile% 7 8 9&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suppose the job you want to run is an R script? To specify arguments to an R script, you have to add ′--args a=1 b=2′ - so… you might make launch.bat like this:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
@echo off&lt;br /&gt;
set SubDetails=job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /jobtemplate:GeneralNodes /numcores:1&lt;br /&gt;
set rbatFile=\\networkshare\R-scripts\run.bat&lt;br /&gt;
&lt;br /&gt;
%SubDetails% %rbatFile% 1 2&lt;br /&gt;
%SubDetails% %rbatFile% 3 4&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
And make the significant line of your run.bat:-&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
Rcmd BATCH ′--args a=%1 b=%2′ U:\R-scripts\test.R&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
%1 and %2 will map to the first and second thing after the batch file. You can go all the way up to %9.&lt;br /&gt;
&lt;br /&gt;
		IMPORTANT NOTE&lt;br /&gt;
&lt;br /&gt;
Make sure you get the apostrophe character right in the above example – NEVER copy and paste from a word document into a script. It will go hideously wrong. Type the apostrophes (and dashes for that matter) in a good text editor – you want just the standard old-fashioned characters.&lt;br /&gt;
&lt;br /&gt;
== Requesting resources ==&lt;br /&gt;
&lt;br /&gt;
The following modifiers next to the “/scheduler:” part of the job submit line (before your app.exe 1 2 3 part), will request things you might want…&lt;br /&gt;
&lt;br /&gt;
/numcores:8				- number of cores you want&lt;br /&gt;
&lt;br /&gt;
/numcores:8-12				- minimum and maximum cores appropriate for your job&lt;br /&gt;
&lt;br /&gt;
/memorypernode:1024			- amount of mem in MegaBytes needed.&lt;br /&gt;
&lt;br /&gt;
/workdir:\\networkshare\work		- set working directory&lt;br /&gt;
&lt;br /&gt;
/stdout:\\networkshare\out.txt		- divert stdout to a file&lt;br /&gt;
&lt;br /&gt;
/stderr:    or    /stdin:			- similar for stderr and stdin&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting / Miscellany / Q &amp;amp; A ==&lt;br /&gt;
&lt;br /&gt;
*	My job doesn’t work.&lt;br /&gt;
**	Run the HPC Job Manager application. Find your job id, possible under “My Jobs, Failed”. Double click on it, then on “View All Tasks”. Perhaps something in the output section will help.&lt;br /&gt;
&lt;br /&gt;
* Check that the path to your job is visible everywhere.&lt;br /&gt;
** Avoid spaces in your paths - “job submit” doesn’t like them very much. If you must have them, they’ll be ok in the “run.bat” batch file that the cluster will run – in which case, put the path in standard double-quotes (&amp;quot;). But avoid them in your “launch.bat” file – you may have to relocate your run.bat to a simple non-space-containing directory.&lt;br /&gt;
** Rather than putting the full application and parameters on the job submit line, you might want to write a batch-file to do all that, and submit the batch file to the cluster. (See section 6 about R for example). But make sure the batch file is somewhere visible to the cluster.&lt;br /&gt;
	&lt;br /&gt;
*	My job seems to work, but reports as having failed.&lt;br /&gt;
**	The success/failure depends on the error code returned. If you’re running C code, end with “return 0;” for success.&lt;br /&gt;
&lt;br /&gt;
*  job submit ..blah blah.. app.exe &amp;gt;out.txt doesn’t work!&lt;br /&gt;
** The contents of out.txt will be the result of “job submit”, not the result of “app.exe”. You meant to say this job submit ..blah blah.. /stdout:out.txt app.exe correcting out.txt and app.exe to network paths of course.&lt;br /&gt;
&lt;br /&gt;
* My C/C++ Executable works perfectly on my desktop, but doesn&#039;t work on the cluster. What&#039;s wrong with the cluster?&lt;br /&gt;
** Your EXE file probably relies on some DLL files that the cluster doesn&#039;t have. If you use Visual Studio, check that in Code Generation, you have &amp;quot;Multi-Threaded (/MT)&amp;quot; as your target - with no mention of DLLs. If your code uses OpenMP, check you&#039;ve copied the right OpenMP DLL(s) (go back to the C section above). As a last resort, give your EXE to someone who doesn&#039;t have Visual Studio installed, and get them to run it, and see what DLL files it seems to ask for.&lt;br /&gt;
&lt;br /&gt;
== Contributing Authors ==&lt;br /&gt;
&lt;br /&gt;
Wes Hinsley, James Truscott, Tini Garske, Jeff Eaton, Hannah Clapham&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14285</id>
		<title>Working in the new School of Public Health building</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14285"/>
		<updated>2024-07-05T10:25:05Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* My laptop is so old that I don’t have any USB-C ports. */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
In the new building, desks in the common areas are set up to allow any member of the SPH to work from any desk with their departmental laptop.&lt;br /&gt;
&lt;br /&gt;
Some desks have PCs on them. These are to allow remote users a fast wired presence to our DIDE HPC cluster, or else they are powerful workstations for GPU work. Do not interfere with these PCs unless you are the registered owner.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Do not disconnect any cables. If you are unsure of how things work, speak directly to your local IT staff. &#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= How to work (laptop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link [https://imperial.officespacesoftware.com/visual-directory/floors/75 is here]. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, connect your laptop using the supplied USB-C cable. This single cable handles the following functions:&lt;br /&gt;
&lt;br /&gt;
# &#039;&#039;&#039;Power&#039;&#039;&#039;. Your laptop does not need its charger if it’s a USB-C type. Obviously if it’s the old barrel type you need to connect your charger to the white sockets on the desk.&lt;br /&gt;
# &#039;&#039;&#039;Screens&#039;&#039;&#039;. The cable connects you to the two screens. If it does not, check that the main Dell screen which the cable connects to is set to have the input source as USB-C.&lt;br /&gt;
# &#039;&#039;&#039;Keyboard and mouse&#039;&#039;&#039;. These accessories are connected to the screen and are used by both the desktop PC (if any) and the laptop. Do not disconnect these to connect them directly to your laptop.&lt;br /&gt;
# &#039;&#039;&#039;(Optional): Network&#039;&#039;&#039;. In some cases, such as the private offices used exclusively by one staff member, the cable also handles their network connection.&lt;br /&gt;
&lt;br /&gt;
= How to work (desktop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link [https://imperial.officespacesoftware.com/visual-directory/floors/75 is here]. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, you may sit at the keyboard and mouse and use the PC exactly as you have always done.&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting =&lt;br /&gt;
Sometimes, especially with older laptops, things might not go exactly to plan. Read on.&lt;br /&gt;
&lt;br /&gt;
== I plugged into my USB-C port and nothing happens. ==&lt;br /&gt;
First of all, try another port. Usually one of them is designated as a port supporting external displays (often indicated by a lightning symbol, which curiously denotes it as a Thunderbolt port - not to be confused with a Lightning port, which you would expect from the logo).&lt;br /&gt;
&lt;br /&gt;
If that fails, especially with HP laptops, then you’ll need to install the software to talk to the dock in the main Dell screen. [https://www.dell.com/support/home/en-uk/product-support/product/u2424he-monitor/drivers Go here and install the software.] Once these packages are installed (installed by default on Dell laptops), restart your laptop and try again.&lt;br /&gt;
&lt;br /&gt;
== What’s a USB-C port and what does it do? ==&lt;br /&gt;
It’s a little socket in the side of your laptop, about the size of the charging socket on your phone.&lt;br /&gt;
The role of a USB-C port is mostly for data transfer, &#039;&#039;e.g.&#039;&#039; to memory sticks, but these days is also capable of charging and carrying video, audio and network traffic.&lt;br /&gt;
&lt;br /&gt;
== I’ve an Apple laptop and I don’t have USB-C ports. ==&lt;br /&gt;
Yes you do, but Apple calls them Thunderbolt ports. You can identify the ports on your Apple laptop [https://support.apple.com/en-gb/109523 on this page]. If you want to read about the subtle differences between USB-C and Thunderbolt, [https://www.intel.com/content/www/us/en/architecture-and-technology/thunderbolt/thunderbolt-4-vs-usb-c.html read here].&lt;br /&gt;
&lt;br /&gt;
== Nothing’s working. I’ve tried different ports and I’ve installed the software. ==&lt;br /&gt;
The most likely explanation is that the USB-C cable has come out of the back of the monitor. Carefully push it back in, or see your local IT staff (DIDE IT are in 512; EBS IT are in 714).&lt;br /&gt;
&lt;br /&gt;
The next most likely explanation is that the main Dell screen (the one with the USB-C cable connected) is set to not display from the USB-C cable. Change the monitor source to be USB-C (it will be labelled as ‘USB-C (PD)’ - the PD means Power Delivery, meaning it will also charge your laptop).&lt;br /&gt;
&lt;br /&gt;
== I want to use the keyboard and mouse with my laptop, but they’re connected to the screen. ==&lt;br /&gt;
This is correct and by design. The keyboard and mouse are shared between the PC on the desk (if present) and the laptop connected by the USB-C cable. Control of the keyboard and mouse is passed through the USB-C cable to the laptop. Do not disconnect the keyboard and mouse to connect it to your laptop.&lt;br /&gt;
&lt;br /&gt;
== My laptop is so old that I don’t have any USB-C ports. ==&lt;br /&gt;
This has been a standard port for 8-9 years. If your laptop is older than this then it’s really time to upgrade. You also won’t be able to upgrade to Windows 11 in 2025 when all support for Windows 10 ends. ICT will be blocking all access from Windows 10 computers once support expires.&lt;br /&gt;
&lt;br /&gt;
== My screens work fine but they&#039;re in the wrong arrangement ==&lt;br /&gt;
This is normal and depends on the order in which your PC detects the screens. Your laptop will always be Screen 1 but the other two displays could be 2 and 3, or 3 and 2.&lt;br /&gt;
&lt;br /&gt;
[https://support.microsoft.com/en-us/windows/how-to-use-multiple-monitors-in-windows-329c6962-5a4d-b481-7baa-bec9671f728a#Category=Windows_10 See this page for how to rearrange your screens. ]&lt;br /&gt;
&lt;br /&gt;
== My Apple laptop will only disply to one screen ==&lt;br /&gt;
This is by design on Apple M1 and M2-based systems. They will only output to one display. If you want an Apple laptop which displays to two screens, you need an M3, or an old Intel one. Or buy a USB-C dongle.&lt;br /&gt;
&lt;br /&gt;
[https://support.apple.com/en-us/117373 See here for details.]&lt;br /&gt;
&lt;br /&gt;
== I have a question not listed here. ==&lt;br /&gt;
Either visit your local IT staff, or if not on site email [mailto:dide-it@imperial.ac.uk DIDE-IT], or send them a message on Teams.&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14284</id>
		<title>Working in the new School of Public Health building</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14284"/>
		<updated>2024-04-05T19:15:27Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
In the new building, desks in the common areas are set up to allow any member of the SPH to work from any desk with their departmental laptop.&lt;br /&gt;
&lt;br /&gt;
Some desks have PCs on them. These are to allow remote users a fast wired presence to our DIDE HPC cluster, or else they are powerful workstations for GPU work. Do not interfere with these PCs unless you are the registered owner.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Do not disconnect any cables. If you are unsure of how things work, speak directly to your local IT staff. &#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= How to work (laptop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link [https://imperial.officespacesoftware.com/visual-directory/floors/75 is here]. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, connect your laptop using the supplied USB-C cable. This single cable handles the following functions:&lt;br /&gt;
&lt;br /&gt;
# &#039;&#039;&#039;Power&#039;&#039;&#039;. Your laptop does not need its charger if it’s a USB-C type. Obviously if it’s the old barrel type you need to connect your charger to the white sockets on the desk.&lt;br /&gt;
# &#039;&#039;&#039;Screens&#039;&#039;&#039;. The cable connects you to the two screens. If it does not, check that the main Dell screen which the cable connects to is set to have the input source as USB-C.&lt;br /&gt;
# &#039;&#039;&#039;Keyboard and mouse&#039;&#039;&#039;. These accessories are connected to the screen and are used by both the desktop PC (if any) and the laptop. Do not disconnect these to connect them directly to your laptop.&lt;br /&gt;
# &#039;&#039;&#039;(Optional): Network&#039;&#039;&#039;. In some cases, such as the private offices used exclusively by one staff member, the cable also handles their network connection.&lt;br /&gt;
&lt;br /&gt;
= How to work (desktop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link [https://imperial.officespacesoftware.com/visual-directory/floors/75 is here]. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, you may sit at the keyboard and mouse and use the PC exactly as you have always done.&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting =&lt;br /&gt;
Sometimes, especially with older laptops, things might not go exactly to plan. Read on.&lt;br /&gt;
&lt;br /&gt;
== I plugged into my USB-C port and nothing happens. ==&lt;br /&gt;
First of all, try another port. Usually one of them is designated as a port supporting external displays (often indicated by a lightning symbol, which curiously denotes it as a Thunderbolt port - not to be confused with a Lightning port, which you would expect from the logo).&lt;br /&gt;
&lt;br /&gt;
If that fails, especially with HP laptops, then you’ll need to install the software to talk to the dock in the main Dell screen. [https://www.dell.com/support/home/en-uk/product-support/product/u2424he-monitor/drivers Go here and install the software.] Once these packages are installed (installed by default on Dell laptops), restart your laptop and try again.&lt;br /&gt;
&lt;br /&gt;
== What’s a USB-C port and what does it do? ==&lt;br /&gt;
It’s a little socket in the side of your laptop, about the size of the charging socket on your phone.&lt;br /&gt;
The role of a USB-C port is mostly for data transfer, &#039;&#039;e.g.&#039;&#039; to memory sticks, but these days is also capable of charging and carrying video, audio and network traffic.&lt;br /&gt;
&lt;br /&gt;
== I’ve an Apple laptop and I don’t have USB-C ports. ==&lt;br /&gt;
Yes you do, but Apple calls them Thunderbolt ports. You can identify the ports on your Apple laptop [https://support.apple.com/en-gb/109523 on this page]. If you want to read about the subtle differences between USB-C and Thunderbolt, [https://www.intel.com/content/www/us/en/architecture-and-technology/thunderbolt/thunderbolt-4-vs-usb-c.html read here].&lt;br /&gt;
&lt;br /&gt;
== Nothing’s working. I’ve tried different ports and I’ve installed the software. ==&lt;br /&gt;
The most likely explanation is that the USB-C cable has come out of the back of the monitor. Carefully push it back in, or see your local IT staff (DIDE IT are in 512; EBS IT are in 714).&lt;br /&gt;
&lt;br /&gt;
The next most likely explanation is that the main Dell screen (the one with the USB-C cable connected) is set to not display from the USB-C cable. Change the monitor source to be USB-C (it will be labelled as ‘USB-C (PD)’ - the PD means Power Delivery, meaning it will also charge your laptop).&lt;br /&gt;
&lt;br /&gt;
== I want to use the keyboard and mouse with my laptop, but they’re connected to the screen. ==&lt;br /&gt;
This is correct and by design. The keyboard and mouse are shared between the PC on the desk (if present) and the laptop connected by the USB-C cable. Control of the keyboard and mouse is passed through the USB-C cable to the laptop. Do not disconnect the keyboard and mouse to connect it to your laptop.&lt;br /&gt;
&lt;br /&gt;
== My laptop is so old that I don’t have any USB-C ports. ==&lt;br /&gt;
This has been a standard port for 8-9 years. If your laptop is older than this then it’s really time to upgrade. You also won’t be able to upgrade to Windows 11 in 2024 when all support for Windows 10 ends. ICT will be blocking all access from Windows 10 computers once support expires.&lt;br /&gt;
&lt;br /&gt;
== My screens work fine but they&#039;re in the wrong arrangement ==&lt;br /&gt;
This is normal and depends on the order in which your PC detects the screens. Your laptop will always be Screen 1 but the other two displays could be 2 and 3, or 3 and 2.&lt;br /&gt;
&lt;br /&gt;
[https://support.microsoft.com/en-us/windows/how-to-use-multiple-monitors-in-windows-329c6962-5a4d-b481-7baa-bec9671f728a#Category=Windows_10 See this page for how to rearrange your screens. ]&lt;br /&gt;
&lt;br /&gt;
== My Apple laptop will only disply to one screen ==&lt;br /&gt;
This is by design on Apple M1 and M2-based systems. They will only output to one display. If you want an Apple laptop which displays to two screens, you need an M3, or an old Intel one. Or buy a USB-C dongle.&lt;br /&gt;
&lt;br /&gt;
[https://support.apple.com/en-us/117373 See here for details.]&lt;br /&gt;
&lt;br /&gt;
== I have a question not listed here. ==&lt;br /&gt;
Either visit your local IT staff, or if not on site email [mailto:dide-it@imperial.ac.uk DIDE-IT], or send them a message on Teams.&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14283</id>
		<title>Working in the new School of Public Health building</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14283"/>
		<updated>2024-04-05T19:12:55Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
In the new building, desks in the common areas are set up to allow any member of the SPH to work from any desk with their departmental laptop.&lt;br /&gt;
&lt;br /&gt;
Some desks have PCs on them. These are to allow remote users a fast wired presence to our DIDE HPC cluster, or else they are powerful workstations for GPU work. Do not interfere with these PCs unless you are the registered owner.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Do not disconnect any cables. If you are unsure of how things work, speak directly to your local IT staff. &#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= How to work (laptop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link [https://imperial.officespacesoftware.com/visual-directory/floors/75 is here]. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, connect your laptop using the supplied USB-C cable. This single cable handles the following functions:&lt;br /&gt;
&lt;br /&gt;
# &#039;&#039;&#039;Power&#039;&#039;&#039;. Your laptop does not need its charger if it’s a USB-C type. Obviously if it’s the old barrel type you need to connect your charger to the white sockets on the desk.&lt;br /&gt;
# &#039;&#039;&#039;Screens&#039;&#039;&#039;. The cable connects you to the two screens. If it does not, check that the main Dell screen which the cable connects to is set to have the input source as USB-C.&lt;br /&gt;
# &#039;&#039;&#039;Keyboard and mouse&#039;&#039;&#039;. These accessories are connected to the screen and are used by both the desktop PC (if any) and the laptop. Do not disconnect these to connect them directly to your laptop.&lt;br /&gt;
# &#039;&#039;&#039;(Optional): Network&#039;&#039;&#039;. In some cases, such as the private offices used exclusively by one staff member, the cable also handles their network connection.&lt;br /&gt;
&lt;br /&gt;
= How to work (desktop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link [https://imperial.officespacesoftware.com/visual-directory/floors/75 is here]. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, you may sit at the keyboard and mouse and use the PC exactly as you have always done.&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting =&lt;br /&gt;
Sometimes, especially with older laptops, things might not go exactly to plan. Read on.&lt;br /&gt;
&lt;br /&gt;
== I plugged into my USB-C port and nothing happens. ==&lt;br /&gt;
First of all, try another port. Usually one of them is designated as a port supporting external displays (often indicated by a lightning symbol, which curiously denotes it as a Thunderbolt port - not to be confused with a Lightning port, which you would expect from the logo).&lt;br /&gt;
&lt;br /&gt;
If that fails, especially with HP laptops, then you’ll need to install the software to talk to the dock in the main Dell screen. [https://www.dell.com/support/home/en-uk/product-support/product/u2424he-monitor/drivers Go here and install the software.] Once these packages are installed (installed by default on Dell laptops), restart your laptop and try again.&lt;br /&gt;
&lt;br /&gt;
== What’s a USB-C port and what does it do? ==&lt;br /&gt;
It’s a little socket in the side of your laptop, about the size of the charging socket on your phone.&lt;br /&gt;
The role of a USB-C port is mostly for data transfer, &#039;&#039;e.g.&#039;&#039; to memory sticks, but these days is also capable of charging and carrying video, audio and network traffic.&lt;br /&gt;
&lt;br /&gt;
== I’ve an Apple laptop and I don’t have USB-C ports. ==&lt;br /&gt;
Yes you do, but Apple calls them Thunderbolt ports. You can identify the ports on your Apple laptop [https://support.apple.com/en-gb/109523 on this page]. If you want to read about the subtle differences between USB-C and Thunderbolt, [https://www.intel.com/content/www/us/en/architecture-and-technology/thunderbolt/thunderbolt-4-vs-usb-c.html read here].&lt;br /&gt;
&lt;br /&gt;
== Nothing’s working. I’ve tried different ports and I’ve installed the software. ==&lt;br /&gt;
The most likely explanation is that the USB-C cable has come out of the back of the monitor. Carefully push it back in, or see your local IT staff (DIDE IT are in 512; EBS IT are in 714).&lt;br /&gt;
&lt;br /&gt;
The next most likely explanation is that the main Dell screen (the one with the USB-C cable connected) is set to not display from the USB-C cable. Change the monitor source to be USB-C (it will be labelled as ‘USB-C (PD)’ - the PD means Power Delivery, meaning it will also charge your laptop).&lt;br /&gt;
&lt;br /&gt;
== I want to use the keyboard and mouse with my laptop, but they’re connected to the screen. ==&lt;br /&gt;
This is correct and by design. The keyboard and mouse are shared between the PC on the desk (if present) and the laptop connected by the USB-C cable. Control of the keyboard and mouse is passed through the USB-C cable to the laptop. Do not disconnect the keyboard and mouse to connect it to your laptop.&lt;br /&gt;
&lt;br /&gt;
== My laptop is so old that I don’t have any USB-C ports. ==&lt;br /&gt;
This has been a standard port for 8-9 years. If your laptop is older than this then it’s really time to upgrade. You also won’t be able to upgrade to Windows 11 in 2024 when all support for Windows 10 ends. ICT will be blocking all access from Windows 10 computers once support expires.&lt;br /&gt;
&lt;br /&gt;
== My screens work fine but they&#039;re in the wrong arrangement ==&lt;br /&gt;
This is normal and depends on the order in which your PC detects the screens. Your laptop will always be Screen 1 but the other two displays could be 2 and 3, or 3 and 2.&lt;br /&gt;
&lt;br /&gt;
[https://support.microsoft.com/en-us/windows/how-to-use-multiple-monitors-in-windows-329c6962-5a4d-b481-7baa-bec9671f728a#Category=Windows_10 See this page for how to rearrange your screens. ]&lt;br /&gt;
&lt;br /&gt;
== My Apple laptop will only disply to one screen ==&lt;br /&gt;
This is by design on Apple M1 and M2-based systems. They will only output to one display. If you want an Apple laptop which displays to two screens, you need an M3, or an old Intel one. Or buy a USB-C dongle.&lt;br /&gt;
&lt;br /&gt;
[https://support.apple.com/en-us/117373 See here for details.]&lt;br /&gt;
&lt;br /&gt;
== I have a question not listed here. ==&lt;br /&gt;
Either visit your local IT staff, or if not on site email [mailto:dide-it@imperial.ac.uk DIDE-IT].&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14282</id>
		<title>Working in the new School of Public Health building</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14282"/>
		<updated>2024-04-05T19:11:26Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
In the new building, desks in the common areas are set up to allow any member of the SPH to work from any desk with their departmental laptop.&lt;br /&gt;
&lt;br /&gt;
Some desks have PCs on them. These are to allow remote users a fast wired presence to our DIDE HPC cluster, or else they are powerful workstations for GPU work. Do not interfere with these PCs unless you are the registered owner.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Do not disconnect any cables. If you are unsure of how things work, speak directly to your local IT staff. &#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= How to work (laptop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link [https://imperial.officespacesoftware.com/visual-directory/floors/75 is here]. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, connect your laptop using the supplied USB-C cable. This single cable handles the following functions:&lt;br /&gt;
&lt;br /&gt;
# &#039;&#039;&#039;Power&#039;&#039;&#039;. Your laptop does not need its charger if it’s a USB-C type. Obviously if it’s the old barrel type you need to connect your charger to the white sockets on the desk.&lt;br /&gt;
# &#039;&#039;&#039;Screens&#039;&#039;&#039;. The cable connects you to the two screens. If it does not, check that the main Dell screen which the cable connects to is set to have the input source as USB-C.&lt;br /&gt;
# &#039;&#039;&#039;Keyboard and mouse&#039;&#039;&#039;. These accessories are connected to the screen and are used by both the desktop PC (if any) and the laptop. Do not disconnect these to connect them directly to your laptop.&lt;br /&gt;
# &#039;&#039;&#039;(Optional): Network&#039;&#039;&#039;. In some cases, such as the private offices used exclusively by one staff member, the cable also handles their network connection.&lt;br /&gt;
&lt;br /&gt;
= How to work (desktop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link [https://imperial.officespacesoftware.com/visual-directory/floors/75 is here]. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, you may sit at the keyboard and mouse and use the PC exactly as you have always done.&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting =&lt;br /&gt;
Sometimes, especially with older laptops, things might not go exactly to plan. Read on.&lt;br /&gt;
&lt;br /&gt;
== I plugged into my USB-C port and nothing happens. ==&lt;br /&gt;
First of all, try another port. Usually one of them is designated as a port supporting external displays (often indicated by a lightning symbol, which curiously denotes it as a Thunderbolt port - not to be confused with a Lightning port, which you would expect from the logo).&lt;br /&gt;
&lt;br /&gt;
If that fails, especially with HP laptops, then you’ll need to install the software to talk to the dock in the main Dell screen. [https://www.dell.com/support/home/en-uk/product-support/product/u2424he-monitor/drivers Go here and install the software.] Once these packages are installed (installed by default on Dell laptops), restart your laptop and try again.&lt;br /&gt;
&lt;br /&gt;
== What’s a USB-C port and what does it do? ==&lt;br /&gt;
It’s a little socket in the side of your laptop, about the size of the charging socket on your phone.&lt;br /&gt;
The role of a USB-C port is mostly for data transfer, &#039;&#039;e.g.&#039;&#039; to memory sticks, but these days is also capable of charging and carrying video, audio and network traffic.&lt;br /&gt;
&lt;br /&gt;
== I’ve an Apple laptop and I don’t have USB-C ports. ==&lt;br /&gt;
Yes you do, but Apple calls them Thunderbolt ports. You can identify the ports on your Apple laptop [https://support.apple.com/en-gb/109523 on this page]. If you want to read about the subtle differences between USB-C and Thunderbolt, [https://www.intel.com/content/www/us/en/architecture-and-technology/thunderbolt/thunderbolt-4-vs-usb-c.html read here].&lt;br /&gt;
&lt;br /&gt;
== Nothing’s working. I’ve tried different ports and I’ve installed the software. ==&lt;br /&gt;
The most likely explanation is that the USB-C cable has come out of the back of the monitor. Carefully push it back in, or see your local IT staff (DIDE IT are in 512; EBS IT are in 714).&lt;br /&gt;
&lt;br /&gt;
The next most likely explanation is that the main Dell screen (the one with the USB-C cable connected) is set to not display from the USB-C cable. Change the monitor source to be USB-C (it will be labelled as ‘USB-C (PD)’ - the PD means Power Delivery, meaning it will also charge your laptop).&lt;br /&gt;
&lt;br /&gt;
== I want to use the keyboard and mouse with my laptop, but they’re connected to the screen. ==&lt;br /&gt;
This is correct and by design. The keyboard and mouse are shared between the PC on the desk (if present) and the laptop connected by the USB-C cable. Control of the keyboard and mouse is passed through the USB-C cable to the laptop. Do not disconnect the keyboard and mouse to connect it to your laptop.&lt;br /&gt;
&lt;br /&gt;
== My laptop is so old that I don’t have any USB-C ports. ==&lt;br /&gt;
This has been a standard port for 8-9 years. If your laptop is older than this then it’s really time to upgrade. You also won’t be able to upgrade to Windows 11 in 2024 when all support for Windows 10 ends. ICT will be blocking all access from Windows 10 computers once support expires.&lt;br /&gt;
&lt;br /&gt;
== My screens work fine but they&#039;re in the wrong arrangement ==&lt;br /&gt;
This is normal and depends on the order in which your PC detects the screens. Your laptop will always be Screen 1 but the other two displays could be 2 and 3, or 3 and 2.&lt;br /&gt;
&lt;br /&gt;
[https://support.microsoft.com/en-us/windows/how-to-use-multiple-monitors-in-windows-329c6962-5a4d-b481-7baa-bec9671f728a#Category=Windows_10 See this page for how to rearrange your screens. ]&lt;br /&gt;
&lt;br /&gt;
== My Apple laptop will only disply to one screen ==&lt;br /&gt;
This is by design on Apple M1 and M2-based systems. They will only output to one display. If you want an Apple laptop which displays to two screens, you need an M3, or an old Intel one. Or buy a USB-C dongle.&lt;br /&gt;
&lt;br /&gt;
== I have a question not listed here. ==&lt;br /&gt;
Either visit your local IT staff, or if not on site email [mailto:dide-it@imperial.ac.uk DIDE-IT].&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14281</id>
		<title>Working in the new School of Public Health building</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14281"/>
		<updated>2024-03-25T10:29:40Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
In the new building, desks in the common areas are set up to allow any member of the SPH to work from any desk with their departmental laptop.&lt;br /&gt;
&lt;br /&gt;
Some desks have PCs on them. These are to allow remote users a fast wired presence to our DIDE HPC cluster, or else they are powerful workstations for GPU work. Do not interfere with these PCs unless you are the registered owner.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Do not disconnect any cables. If you are unsure of how things work, speak directly to your local IT staff. &#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= How to work (laptop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link [https://imperial.officespacesoftware.com/visual-directory/floors/75 is here]. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, connect your laptop using the supplied USB-C cable. This single cable handles the following functions:&lt;br /&gt;
&lt;br /&gt;
# &#039;&#039;&#039;Power&#039;&#039;&#039;. Your laptop does not need its charger if it’s a USB-C type. Obviously if it’s the old barrel type you need to connect your charger to the white sockets on the desk.&lt;br /&gt;
# &#039;&#039;&#039;Screens&#039;&#039;&#039;. The cable connects you to the two screens. If it does not, check that the main Dell screen which the cable connects to is set to have the input source as USB-C.&lt;br /&gt;
# &#039;&#039;&#039;Keyboard and mouse&#039;&#039;&#039;. These accessories are connected to the screen and are used by both the desktop PC (if any) and the laptop. Do not disconnect these to connect them directly to your laptop.&lt;br /&gt;
# &#039;&#039;&#039;(Optional): Network&#039;&#039;&#039;. In some cases, such as the private offices used exclusively by one staff member, the cable also handles their network connection.&lt;br /&gt;
&lt;br /&gt;
= How to work (desktop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link [https://imperial.officespacesoftware.com/visual-directory/floors/75 is here]. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, you may sit at the keyboard and mouse and use the PC exactly as you have always done.&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting =&lt;br /&gt;
Sometimes, especially with older laptops, things might not go exactly to plan. Read on.&lt;br /&gt;
&lt;br /&gt;
== I plugged into my USB-C port and nothing happens. ==&lt;br /&gt;
First of all, try another port. Usually one of them is designated as a port supporting external displays (often indicated by a lightning symbol, which curiously denotes it as a Thunderbolt port - not to be confused with a Lightning port, which you would expect from the logo).&lt;br /&gt;
&lt;br /&gt;
If that fails, especially with HP laptops, then you’ll need to install the software to talk to the dock in the main Dell screen. [https://www.dell.com/support/home/en-uk/product-support/product/u2424he-monitor/drivers Go here and install the software.] Once these packages are installed (installed by default on Dell laptops), restart your laptop and try again.&lt;br /&gt;
&lt;br /&gt;
== What’s a USB-C port and what does it do? ==&lt;br /&gt;
It’s a little socket in the side of your laptop, about the size of the charging socket on your phone.&lt;br /&gt;
The role of a USB-C port is mostly for data transfer, &#039;&#039;e.g.&#039;&#039; to memory sticks, but these days is also capable of charging and carrying video, audio and network traffic.&lt;br /&gt;
&lt;br /&gt;
== I’ve an Apple laptop and I don’t have USB-C ports. ==&lt;br /&gt;
Yes you do, but Apple calls them Thunderbolt ports. You can identify the ports on your Apple laptop [https://support.apple.com/en-gb/109523 on this page]. If you want to read about the subtle differences between USB-C and Thunderbolt, [https://www.intel.com/content/www/us/en/architecture-and-technology/thunderbolt/thunderbolt-4-vs-usb-c.html read here].&lt;br /&gt;
&lt;br /&gt;
== Nothing’s working. I’ve tried different ports and I’ve installed the software. ==&lt;br /&gt;
The most likely explanation is that the USB-C cable has come out of the back of the monitor. Carefully push it back in, or see your local IT staff (DIDE IT are in 512; EBS IT are in 714).&lt;br /&gt;
&lt;br /&gt;
The next most likely explanation is that the main Dell screen (the one with the USB-C cable connected) is set to not display from the USB-C cable. Change the monitor source to be USB-C (it will be labelled as ‘USB-C (PD)’ - the PD means Power Delivery, meaning it will also charge your laptop).&lt;br /&gt;
&lt;br /&gt;
== I want to use the keyboard and mouse with my laptop, but they’re connected to the screen. ==&lt;br /&gt;
This is correct and by design. The keyboard and mouse are shared between the PC on the desk (if present) and the laptop connected by the USB-C cable. Control of the keyboard and mouse is passed through the USB-C cable to the laptop. Do not disconnect the keyboard and mouse to connect it to your laptop.&lt;br /&gt;
&lt;br /&gt;
== My laptop is so old that I don’t have any USB-C ports. ==&lt;br /&gt;
This has been a standard port for 8-9 years. If your laptop is older than this then it’s really time to upgrade. You also won’t be able to upgrade to Windows 11 in 2024 when all support for Windows 10 ends. ICT will be blocking all access from Windows 10 computers once support expires.&lt;br /&gt;
&lt;br /&gt;
== My screens work fine but they&#039;re in the wrong arrangement ==&lt;br /&gt;
This is normal and depends on the order in which your PC detects the screens. Your laptop will always be Screen 1 but the other two displays could be 2 and 3, or 3 and 2.&lt;br /&gt;
&lt;br /&gt;
[https://support.microsoft.com/en-us/windows/how-to-use-multiple-monitors-in-windows-329c6962-5a4d-b481-7baa-bec9671f728a#Category=Windows_10 See this page for how to rearrange your screens. ]&lt;br /&gt;
&lt;br /&gt;
== I have a question not listed here. ==&lt;br /&gt;
Either visit your local IT staff, or if not on site email [mailto:dide-it@imperial.ac.uk DIDE-IT].&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14280</id>
		<title>Working in the new School of Public Health building</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14280"/>
		<updated>2024-03-25T10:29:07Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
In the new building, desks in the common areas are set up to allow any member of the SPH to work from any desk with their departmental laptop.&lt;br /&gt;
&lt;br /&gt;
Some desks have PCs on them. These are to allow remote users a fast wired presence to our DIDE HPC cluster, or else they are powerful workstations for GPU work. Do not interfere with these PCs unless you are the registered owner.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Do not disconnect any cables. If you are unsure of how things work, speak directly to your local IT staff. &#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= How to work (laptop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link [https://imperial.officespacesoftware.com/visual-directory/floors/75 is here]. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, connect your laptop using the supplied USB-C cable. This single cable handles the following functions:&lt;br /&gt;
&lt;br /&gt;
# &#039;&#039;&#039;Power&#039;&#039;&#039;. Your laptop does not need its charger if it’s a USB-C type. Obviously if it’s the old barrel type you need to connect your charger to the white sockets on the desk.&lt;br /&gt;
# &#039;&#039;&#039;Screens&#039;&#039;&#039;. The cable connects you to the two screens. If it does not, check that the main Dell screen which the cable connects to is set to have the input source as USB-C.&lt;br /&gt;
# &#039;&#039;&#039;Keyboard and mouse&#039;&#039;&#039;. These accessories are connected to the screen and are used by both the desktop PC (if any) and the laptop. Do not disconnect these to connect them directly to your laptop.&lt;br /&gt;
# &#039;&#039;&#039;(Optional): Network&#039;&#039;&#039;. In some cases, such as the private offices used exclusively by one staff member, the cable also handles their network connection.&lt;br /&gt;
&lt;br /&gt;
= How to work (desktop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link [https://imperial.officespacesoftware.com/visual-directory/floors/75 is here]. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, you may sit at the keyboard and mouse and use the PC exactly as you have always done.&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting =&lt;br /&gt;
Sometimes, especially with older laptops, things might not go exactly to plan. Read on.&lt;br /&gt;
&lt;br /&gt;
== I plugged into my USB-C port and nothing happens. ==&lt;br /&gt;
First of all, try another port. Usually one of them is designated as a port supporting external displays (often indicated by a lightning symbol, which curiously denotes it as a Thunderbolt port - not to be confused with a Lightning port, which you would expect from the logo).&lt;br /&gt;
&lt;br /&gt;
If that fails, especially with HP laptops, then you’ll need to install the software to talk to the dock in the main Dell screen. [https://www.dell.com/support/home/en-uk/product-support/product/u2424he-monitor/drivers Go here and install the software.] Once these packages are installed (installed by default on Dell laptops), restart your laptop and try again.&lt;br /&gt;
&lt;br /&gt;
== What’s a USB-C port and what does it do? ==&lt;br /&gt;
It’s a little socket in the side of your laptop, about the size of the charging socket on your phone.&lt;br /&gt;
The role of a USB-C port is mostly for data transfer, &#039;&#039;e.g.&#039;&#039; to memory sticks, but these days is also capable of charging and carrying video, audio and network traffic.&lt;br /&gt;
&lt;br /&gt;
== I’ve an Apple laptop and I don’t have USB-C ports. ==&lt;br /&gt;
Yes you do, but Apple calls them Thunderbolt ports. You can identify the ports on your Apple laptop [https://support.apple.com/en-gb/109523 on this page]. If you want to read about the subtle differences between USB-C and Thunderbolt, [https://www.intel.com/content/www/us/en/architecture-and-technology/thunderbolt/thunderbolt-4-vs-usb-c.html read here].&lt;br /&gt;
&lt;br /&gt;
== Nothing’s working. I’ve tried different ports and I’ve installed the software. ==&lt;br /&gt;
The most likely explanation is that the USB-C cable has come out of the back of the monitor. Carefully push it back in, or see your local IT staff (DIDE IT are in 512; EBS IT are in 714).&lt;br /&gt;
&lt;br /&gt;
The next most likely explanation is that the main Dell screen (the one with the USB-C cable connected) is set to not display from the USB-C cable. Change the monitor source to be USB-C (it will be labelled as ‘USB-C (PD)’ - the PD means Power Delivery, meaning it will also charge your laptop).&lt;br /&gt;
&lt;br /&gt;
== I want to use the keyboard and mouse with my laptop, but they’re connected to the screen. ==&lt;br /&gt;
This is correct and by design. The keyboard and mouse are shared between the PC on the desk (if present) and the laptop connected by the USB-C cable. Control of the keyboard and mouse is passed through the USB-C cable to the laptop. Do not disconnect the keyboard and mouse to connect it to your laptop.&lt;br /&gt;
&lt;br /&gt;
== My laptop is so old that I don’t have any USB-C ports. ==&lt;br /&gt;
This has been a standard port for 8-9 years. If your laptop is older than this then it’s really time to upgrade. You also won’t be able to upgrade to Windows 11 in 2024 when all support for Windows 10 ends. ICT will be blocking all access from Windows 10 computers once support expires.&lt;br /&gt;
&lt;br /&gt;
== My screens work fine but they&#039;re in the wrong arrangement ==&lt;br /&gt;
This is normal and depends on the order in which your monitors detect the screens. Your laptop will always be Screen 1 but the other two displays could be 2 and 3, or 3 and 2.&lt;br /&gt;
&lt;br /&gt;
[https://support.microsoft.com/en-us/windows/how-to-use-multiple-monitors-in-windows-329c6962-5a4d-b481-7baa-bec9671f728a#Category=Windows_10 See this page for how to rearrange your screens. ]&lt;br /&gt;
&lt;br /&gt;
== I have a question not listed here. ==&lt;br /&gt;
Either visit your local IT staff, or if not on site email [mailto:dide-it@imperial.ac.uk DIDE-IT].&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14279</id>
		<title>Working in the new School of Public Health building</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14279"/>
		<updated>2024-03-23T16:04:23Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
In the new building, desks in the common areas are set up to allow any member of the SPH to work from any desk with their departmental laptop.&lt;br /&gt;
&lt;br /&gt;
Some desks have PCs on them. These are to allow remote users a fast wired presence to our DIDE HPC cluster, or else they are powerful workstations for GPU work. Do not interfere with these PCs unless you are the registered owner.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Do not disconnect any cables. If you are unsure of how things work, speak directly to your local IT staff. &#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= How to work (laptop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link [https://imperial.officespacesoftware.com/visual-directory/floors/75 is here]. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, connect your laptop using the supplied USB-C cable. This single cable handles the following functions:&lt;br /&gt;
&lt;br /&gt;
# &#039;&#039;&#039;Power&#039;&#039;&#039;. Your laptop does not need its charger if it’s a USB-C type. Obviously if it’s the old barrel type you need to connect your charger to the white sockets on the desk.&lt;br /&gt;
# &#039;&#039;&#039;Screens&#039;&#039;&#039;. The cable connects you to the two screens. If it does not, check that the main Dell screen which the cable connects to is set to have the input source as USB-C.&lt;br /&gt;
# &#039;&#039;&#039;Keyboard and mouse&#039;&#039;&#039;. These accessories are connected to the screen and are used by both the desktop PC (if any) and the laptop. Do not disconnect these to connect them directly to your laptop.&lt;br /&gt;
# &#039;&#039;&#039;(Optional): Network&#039;&#039;&#039;. In some cases, such as the private offices used exclusively by one staff member, the cable also handles their network connection.&lt;br /&gt;
&lt;br /&gt;
= How to work (desktop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link [https://imperial.officespacesoftware.com/visual-directory/floors/75 is here]. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, you may sit at the keyboard and mouse and use the PC exactly as you have always done.&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting =&lt;br /&gt;
Sometimes, especially with older laptops, things might not go exactly to plan. Read on.&lt;br /&gt;
&lt;br /&gt;
== I plugged into my USB-C port and nothing happens. ==&lt;br /&gt;
First of all, try another port. Usually one of them is designated as a port supporting external displays (often indicated by a lightning symbol, which curiously denotes it as a Thunderbolt port - not to be confused with a Lightning port, which you would expect from the logo).&lt;br /&gt;
&lt;br /&gt;
If that fails, especially with HP laptops, then you’ll need to install the software to talk to the dock in the main Dell screen. [https://www.dell.com/support/home/en-uk/product-support/product/u2424he-monitor/drivers Go here and install the software.] Once these packages are installed (installed by default on Dell laptops), restart your laptop and try again.&lt;br /&gt;
&lt;br /&gt;
== What’s a USB-C port and what does it do? ==&lt;br /&gt;
It’s a little socket in the side of your laptop, about the size of the charging socket on your phone.&lt;br /&gt;
The role of a USB-C port is mostly for data transfer, &#039;&#039;e.g.&#039;&#039; to memory sticks, but these days is also capable of charging and carrying video, audio and network traffic.&lt;br /&gt;
&lt;br /&gt;
== I’ve an Apple laptop and I don’t have USB-C ports. ==&lt;br /&gt;
Yes you do, but Apple calls them Thunderbolt ports. You can identify the ports on your Apple laptop [https://support.apple.com/en-gb/109523 on this page]. If you want to read about the subtle differences between USB-C and Thunderbolt, [https://www.intel.com/content/www/us/en/architecture-and-technology/thunderbolt/thunderbolt-4-vs-usb-c.html read here].&lt;br /&gt;
&lt;br /&gt;
== Nothing’s working. I’ve tried different ports and I’ve installed the software. ==&lt;br /&gt;
The most likely explanation is that the USB-C cable has come out of the back of the monitor. Carefully push it back in, or see your local IT staff (DIDE IT are in 512; EBS IT are in 714).&lt;br /&gt;
&lt;br /&gt;
The next most likely explanation is that the main Dell screen (the one with the USB-C cable connected) is set to not display from the USB-C cable. Change the monitor source to be USB-C (it will be labelled as ‘USB-C (PD)’ - the PD means Power Delivery, meaning it will also charge your laptop).&lt;br /&gt;
&lt;br /&gt;
== I want to use the keyboard and mouse with my laptop, but they’re connected to the screen. ==&lt;br /&gt;
This is correct and by design. The keyboard and mouse are shared between the PC on the desk (if present) and the laptop connected by the USB-C cable. Control of the keyboard and mouse is passed through the USB-C cable to the laptop. Do not disconnect the keyboard and mouse to connect it to your laptop.&lt;br /&gt;
&lt;br /&gt;
== My laptop is so old that I don’t have any USB-C ports. ==&lt;br /&gt;
This has been a standard port for 8-9 years. If your laptop is older than this then it’s really time to upgrade. You also won’t be able to upgrade to Windows 11 in 2024 when all support for Windows 10 ends. ICT will be blocking all access from Windows 10 computers once support expires.&lt;br /&gt;
&lt;br /&gt;
== I have a question not listed here. ==&lt;br /&gt;
Either visit your local IT staff, or if not on site email [mailto:dide-it@imperial.ac.uk DIDE-IT].&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14278</id>
		<title>Working in the new School of Public Health building</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14278"/>
		<updated>2024-03-23T15:58:31Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
In the new building, desks in the common areas are set up to allow any member of the SPH to work from any desk with their departmental laptop.&lt;br /&gt;
&lt;br /&gt;
Some desks have PCs on them. These are to allow remote users a fast wired presence to our DIDE HPC cluster, or else they are powerful workstations for GPU work. Do not interfere with these PCs unless you are the registered owner.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Do not disconnect any cables. If you are unsure of how things work, speak directly to your local IT staff. &#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= How to work (laptop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link [https://imperial.officespacesoftware.com/visual-directory/floors/75 is here]. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, connect your laptop using the supplied USB-C cable. This single cable handles the following functions:&lt;br /&gt;
&lt;br /&gt;
# &#039;&#039;&#039;Power&#039;&#039;&#039;. Your laptop does not need its charger if it’s a USB-C type. Obviously if it’s the old barrel type you need to connect your charger to the white sockets on the desk.&lt;br /&gt;
# &#039;&#039;&#039;Screens&#039;&#039;&#039;. The cable connects you to the two screens. If it does not, check that the main Dell screen which the cable connects to is set to have the input source as USB-C.&lt;br /&gt;
# &#039;&#039;&#039;Keyboard and mouse&#039;&#039;&#039;. These accessories are connected to the screen and are used by both the desktop PC (if any) and the laptop. Do not disconnect these to connect them directly to your laptop.&lt;br /&gt;
# &#039;&#039;&#039;(Optional): Network&#039;&#039;&#039;. In some cases, such as the private offices used exclusively by one staff member, the cable also handles their network connection.&lt;br /&gt;
&lt;br /&gt;
= How to work (desktop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link [https://imperial.officespacesoftware.com/visual-directory/floors/75 is here]. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, you may sit at the keyboard and mouse and use the PC exactly as you have always done.&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting =&lt;br /&gt;
Sometimes, especially with older laptops, things might not go exactly to plan. Read on.&lt;br /&gt;
&lt;br /&gt;
== I plugged into my USB-C port and nothing happens. ==&lt;br /&gt;
First of all, try another port. Usually one of them is designated as a port supporting external displays (often indicated by a lightning symbol, which curiously denotes it as a Thunderbolt port - not to be confused with a Lightning port, which you would expect from the logo).&lt;br /&gt;
&lt;br /&gt;
If that fails, especially with HP laptops, then you’ll need to install the software to talk to the dock in the main Dell screen. [https://www.dell.com/support/home/en-uk/product-support/product/u2424he-monitor/drivers Go here and install the software.] Once these packages are installed (installed by default on Dell laptops), restart your laptop and try again.&lt;br /&gt;
&lt;br /&gt;
== What’s a USB-C port and what does it do? ==&lt;br /&gt;
It’s a little socket in the side of your laptop, about the size of the charging socket on your phone.&lt;br /&gt;
The role of a USB-C port is mostly for data transfer, &#039;&#039;e.g.&#039;&#039; to memory sticks, but these days is also capable of charging and carrying video, audio and network traffic.&lt;br /&gt;
&lt;br /&gt;
== I’ve an Apple laptop and I don’t have USB-C ports. ==&lt;br /&gt;
Yes you do, but Apple calls them Thunderbolt ports. You can identify the ports on your Apple laptop [https://support.apple.com/en-gb/109523 on this page]. If you want to read about the subtle differences between USB-C and Thunderbolt, [https://www.intel.com/content/www/us/en/architecture-and-technology/thunderbolt/thunderbolt-4-vs-usb-c.html read here].&lt;br /&gt;
&lt;br /&gt;
== Nothing’s working. I’ve tried different ports and I’ve installed the software. ==&lt;br /&gt;
The most likely explanation is that the USB-C cable has come out of the back of the monitor. Carefully push it back in, or see your local IT staff (DIDE IT are in 512; EBS IT are in 714).&lt;br /&gt;
&lt;br /&gt;
The next most likely explanation is that the main Dell screen (the one with the USB-C cable connected) is set to not display from the USB-C cable. Change the monitor source to be USB-C (it will be labelled as ‘USB-C (PD)’ - the PD means Power Delivery, meaning it will also charge your laptop).&lt;br /&gt;
&lt;br /&gt;
== I want to use the keyboard and mouse with my laptop, but they’re connected to the screen. ==&lt;br /&gt;
This is correct and by design. The keyboard and mouse are shared between the PC on the desk (if present) and the laptop connected by the USB-C cable. Control of the keyboard and mouse is passed through the USB-C cable to the laptop. Do not disconnect the keyboard and mouse to connect it to your laptop.&lt;br /&gt;
&lt;br /&gt;
== My laptop is so old that I don’t have any USB-C ports. ==&lt;br /&gt;
This has been a standard port for 7-8 years. If your laptop is older than this then it’s really time to upgrade. You also won’t be able to upgrade to Windows 11 in 2024 when all support for Windows 10 ends. ICT will be blocking all access from Windows 10 computers once support expires.&lt;br /&gt;
&lt;br /&gt;
== I have a question not listed here. ==&lt;br /&gt;
Either visit your local IT staff, or if not on site email [mailto:dide-it@imperial.ac.uk DIDE-IT].&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14277</id>
		<title>Working in the new School of Public Health building</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14277"/>
		<updated>2024-03-23T15:55:09Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
In the new building, desks in the common areas are set up to allow any member of the SPH to work from any desk with their departmental laptop.&lt;br /&gt;
&lt;br /&gt;
Some desks have PCs on them. These are to allow remote users a fast wired presence to our DIDE HPC cluster, or else they are powerful workstations for GPU work. Do not interfere with these PCs unless you are the registered owner.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Do not disconnect any cables. If you are unsure of how things work, speak directly to your local IT staff. &#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= How to work (laptop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link [https://imperial.officespacesoftware.com/visual-directory/floors/75 is here]. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, connect your laptop using the supplied USB-C cable. This single cable handles the following functions:&lt;br /&gt;
&lt;br /&gt;
# &#039;&#039;&#039;Power&#039;&#039;&#039;. Your laptop does not need its charger if it’s a USB-C type. Obviously if it’s the old barrel type you need to connect your charger to the white sockets on the desk.&lt;br /&gt;
# &#039;&#039;&#039;Screens&#039;&#039;&#039;. The cable connects you to the two screens. If it does not, check that the main Dell screen which the cable connects to is set to have the input source as USB-C.&lt;br /&gt;
# &#039;&#039;&#039;Keyboard and mouse&#039;&#039;&#039;. These accessories are connected to the screen and are used by both the desktop PC (if any) and the laptop. Do not disconnect these to connect them directly to your laptop.&lt;br /&gt;
# &#039;&#039;&#039;(Optional): Network&#039;&#039;&#039;. In some cases, such as the private offices used exclusively by one staff member, the cable also handles their network connection.&lt;br /&gt;
&lt;br /&gt;
= How to work (desktop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link [https://imperial.officespacesoftware.com/visual-directory/floors/75 is here]. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, you may sit at the keyboard and mouse and use the PC exactly as you have always done.&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting =&lt;br /&gt;
Sometimes, especially with older laptops, things might not go exactly to plan. Read on.&lt;br /&gt;
&lt;br /&gt;
== I plugged into my USB-C port and nothing happens. ==&lt;br /&gt;
First of all, try another port. Usually one of them is designated as a port supporting external displays (often indicated by a lightning symbol, which curiously denotes it as a Thunderbolt port - not to be confused with a Lightning port, which you would expect from the logo).&lt;br /&gt;
&lt;br /&gt;
If that fails, especially with HP laptops, then you’ll need to install the software to talk to the dock in the main Dell screen. [https://www.dell.com/support/home/en-uk/product-support/product/u2424he-monitor/drivers Go here and install the software.] Once these packages are installed (installed by default on Dell laptops), restart your laptop and try again.&lt;br /&gt;
&lt;br /&gt;
== What’s a USB-C port and what does it do? ==&lt;br /&gt;
It’s a little socket in the side of your laptop, about the size of the charging socket on your phone.&lt;br /&gt;
The role of a USB-C port is mostly for data transfer, &#039;&#039;e.g.&#039;&#039; to memory sticks, but these days is also capable of charging and carrying video, audio and network traffic.&lt;br /&gt;
&lt;br /&gt;
== I’ve an Apple laptop and I don’t have USB-C ports. ==&lt;br /&gt;
Yes you do, but Apple calls them Thunderbolt ports. You can identify the ports on your Apple laptop [https://support.apple.com/en-gb/109523 on this page]. If you want to read about the subtle differences between USB-C and Thunderbolt, [https://www.intel.com/content/www/us/en/architecture-and-technology/thunderbolt/thunderbolt-4-vs-usb-c.html read here].&lt;br /&gt;
&lt;br /&gt;
== Nothing’s working. I’ve tried different ports and I’ve installed the software. ==&lt;br /&gt;
The most likely explanation is that the USB-C cable has come out of the back of the monitor. Carefully push it back in, or see your local IT staff (DIDE IT are in 512; EBS IT are in 714).&lt;br /&gt;
&lt;br /&gt;
The next most likely explanation is that the main Dell screen (the one with the USB-C cable connected) is set to not display from the USB-C cable. Change the monitor source to be USB-C (it will be labelled as ‘USB-C (PD)’ - the PD means Power Delivery, meaning it will also charge your laptop).&lt;br /&gt;
&lt;br /&gt;
== I want to use the keyboard and mouse with my laptop, but they’re connected to the screen. ==&lt;br /&gt;
This is correct and by design. The keyboard and mouse are shared between the PC on the desk (if present) and the laptop connected by the USB-C cable. Control of the keyboard and mouse is passed through the USB-C cable to the laptop. Do not disconnect the keyboard and mouse to connect it to your laptop.&lt;br /&gt;
&lt;br /&gt;
== My laptop is so old that I don’t have any USB-C ports. ==&lt;br /&gt;
This has been a standard port for 7-8 years. If your laptop is older than this then it’s really time to upgrade. You also won’t be able to upgrade to Windows 11 in 2024 when all support for Windows 10 ends. ICT will be blocking all access from Windows 10 computers once support expires.&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14276</id>
		<title>Working in the new School of Public Health building</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14276"/>
		<updated>2024-03-23T15:52:21Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
In the new building, desks in the common areas are set up to allow any member of the SPH to work from any desk with their departmental laptop.&lt;br /&gt;
&lt;br /&gt;
Some desks have PCs on them. These are to allow remote users a fast wired presence to our DIDE HPC cluster, or else they are powerful workstations for GPU work. Do not interfere with these PCs unless you are the registered owner.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Do not disconnect any cables. If you are unsure of how things work, speak directly to your local IT staff. &#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= How to work (laptop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link [https://imperial.officespacesoftware.com/visual-directory/floors/75 is here]. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, connect your laptop using the supplied USB-C cable. This single cable handles the following functions:&lt;br /&gt;
&lt;br /&gt;
# &#039;&#039;&#039;Power&#039;&#039;&#039;. Your laptop does not need its charger if it’s a USB-C type. Obviously if it’s the old barrel type you need to connect your charger to the white sockets on the desk.&lt;br /&gt;
# &#039;&#039;&#039;Screens&#039;&#039;&#039;. The cable connects you to the two screens. If it does not, check that the main Dell screen which the cable connects to is set to have the input source as USB-C.&lt;br /&gt;
# &#039;&#039;&#039;Keyboard and mouse&#039;&#039;&#039;. These accessories are connected to the screen and are used by both the desktop PC (if any) and the laptop. Do not disconnect these to connect them directly to your laptop.&lt;br /&gt;
# &#039;&#039;&#039;(Optional): Network&#039;&#039;&#039;. In some cases, such as the private offices used exclusively by one staff member, the cable also handles their network connection.&lt;br /&gt;
&lt;br /&gt;
= How to work (desktop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link [https://imperial.officespacesoftware.com/visual-directory/floors/75 is here]. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, you may sit at the keyboard and mouse and use the PC exactly as you have always done.&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting =&lt;br /&gt;
Sometimes, especially with older laptops, things might not go exactly to plan. Read on.&lt;br /&gt;
&lt;br /&gt;
== My laptop is so old that I don’t have any USB-C ports. ==&lt;br /&gt;
This has been a standard port for 7-8 years. If your laptop is older than this then it’s really time to upgrade. You also won’t be able to upgrade to Windows 11 in 2024 when all support for Windows 10 ends. ICT will be blocking all access from Windows 10 computers once support expires.&lt;br /&gt;
&lt;br /&gt;
== I plugged into my USB-C port and nothing happens. ==&lt;br /&gt;
First of all, try another port. Usually one of them is designated as a port supporting external displays (often indicated by a lightning symbol, which curiously denotes it as a Thunderbolt port - not to be confused with a Lightning port, which you would expect from the logo).&lt;br /&gt;
&lt;br /&gt;
If that fails, especially with HP laptops, then you’ll need to install the software to talk to the dock in the main Dell screen. [https://www.dell.com/support/home/en-uk/product-support/product/u2424he-monitor/drivers Go here and install the software.] Once these packages are installed (installed by default on Dell laptops), restart your laptop and try again.&lt;br /&gt;
&lt;br /&gt;
== What’s a USB-C port and what does it do? ==&lt;br /&gt;
It’s a little socket in the side of your laptop, about the size of the charging socket on your phone.&lt;br /&gt;
The role of a USB-C port is mostly for data transfer, &#039;&#039;e.g.&#039;&#039; to memory sticks, but these days is also capable of charging and carrying video, audio and network traffic.&lt;br /&gt;
&lt;br /&gt;
== I’ve an Apple laptop and I don’t have USB-C ports. ==&lt;br /&gt;
Yes you do, but Apple calls them Thunderbolt ports. You can identify the ports on your Apple laptop [https://support.apple.com/en-gb/109523 on this page]. If you want to read about the subtle differences between USB-C and Thunderbolt, [https://www.intel.com/content/www/us/en/architecture-and-technology/thunderbolt/thunderbolt-4-vs-usb-c.html read here].&lt;br /&gt;
&lt;br /&gt;
== Nothing’s working. I’ve tried different ports and I’ve installed the software. ==&lt;br /&gt;
The most likely explanation is that the USB-C cable has come out of the back of the monitor. Carefully push it back in, or see your local IT staff (DIDE IT are in 512; EBS IT are in 714).&lt;br /&gt;
&lt;br /&gt;
The next most likely explanation is that the main Dell screen (the one with the USB-C cable connected) is set to not display from the USB-C cable. Change the monitor source to be USB-C (it will be labelled as ‘USB-C (PD)’ - the PD means Power Delivery, meaning it will also charge your laptop).&lt;br /&gt;
&lt;br /&gt;
== I want to use the keyboard and mouse with my laptop, but they’re connected to the screen. ==&lt;br /&gt;
This is correct and by design. The keyboard and mouse are shared between the PC on the desk (if present) and the laptop connected by the USB-C cable. Control of the keyboard and mouse is passed through the USB-C cable to the laptop. Do not disconnect the keyboard and mouse to connect it to your laptop.&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14275</id>
		<title>Working in the new School of Public Health building</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14275"/>
		<updated>2024-03-23T15:28:27Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
In the new building, desks in the common areas are set up to allow any member of the SPH to work from any desk with their departmental laptop.&lt;br /&gt;
&lt;br /&gt;
Some desks have PCs on them. These are to allow remote users a fast wired presence to our DIDE HPC cluster, or else they are powerful workstations for GPU work. Do not interfere with these PCs unless you are the registered owner.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Do not disconnect any cables. If you are unsure of how things work, speak directly to your local IT staff. &#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= How to work (laptop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link [https://imperial.officespacesoftware.com/visual-directory/floors/75 is here]. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, connect your laptop using the supplied USB-C cable. This single cable handles the following functions:&lt;br /&gt;
&lt;br /&gt;
# &#039;&#039;&#039;Power&#039;&#039;&#039;. Your laptop does not need its charger if it’s a USB-C type. Obviously if it’s the old barrel type you need to connect your charger to the white sockets on the desk.&lt;br /&gt;
# &#039;&#039;&#039;Screens&#039;&#039;&#039;. The cable connects you to the two screens. If it does not, check that the main Dell screen which the cable connects to is set to have the input source as USB-C.&lt;br /&gt;
# &#039;&#039;&#039;Keyboard and mouse&#039;&#039;&#039;. These accessories are connected to the screen and are used by both the desktop PC (if any) and the laptop. Do not disconnect these to connect them directly to your laptop.&lt;br /&gt;
# &#039;&#039;&#039;(Optional): Network&#039;&#039;&#039;. In some cases, such as the private offices used exclusively by one staff member, the cable also handles their network connection.&lt;br /&gt;
&lt;br /&gt;
= How to work (desktop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link [https://imperial.officespacesoftware.com/visual-directory/floors/75 is here]. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, you may sit at the keyboard and mouse and use the PC exactly as you have always done.&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting =&lt;br /&gt;
Sometimes, especially with older laptops, things might not go exactly to plan. Read on.&lt;br /&gt;
&lt;br /&gt;
== My laptop is so old that I don’t have any USB-C ports. ==&lt;br /&gt;
This has been a standard port for 7-8 years. If your laptop is older than this then it’s really time to upgrade. You also won’t be able to upgrade to Windows 11 in 2024 when all support for Windows 10 ends. ICT will be blocking all access from Windows 10 computers once support expires.&lt;br /&gt;
&lt;br /&gt;
== I plugged into my USB-C port and nothing happens. ==&lt;br /&gt;
First of all, try another port. Usually one of them is designated as a port supporting external displays (often indicated by a lightning symbol, which curiously denotes it as a Thunderbolt port - not to be confused with a Lightning port, which you would expect from the logo).&lt;br /&gt;
&lt;br /&gt;
If that fails, especially with HP laptops, then you’ll need to install the software to talk to the dock in the main Dell screen. [https://www.dell.com/support/home/en-uk/product-support/product/u2424he-monitor/drivers Go here and install the software.] Once these packages are installed (installed by default on Dell laptops), restart your laptop and try again.&lt;br /&gt;
&lt;br /&gt;
== What’s a USB-C port and what does it do? ==&lt;br /&gt;
It’s a little socket in the side of your laptop, about the size of the charging socket on your phone.&lt;br /&gt;
The role of a USB-C port is mostly for data transfer, &#039;&#039;e.g.&#039;&#039; to memory sticks, but these days is also capable of charging and carrying video, audio and network traffic.&lt;br /&gt;
&lt;br /&gt;
== I’ve an Apple laptop and I don’t have USB-C ports. ==&lt;br /&gt;
Yes you do, but Apple calls them Thunderbolt ports. You can identify the ports on your Apple laptop [https://support.apple.com/en-gb/109523 on this page]. If you want to read about the subtle differences between USB-C and Thunderbolt, [https://www.intel.com/content/www/us/en/architecture-and-technology/thunderbolt/thunderbolt-4-vs-usb-c.html read here].&lt;br /&gt;
&lt;br /&gt;
== Nothing’s working. I’ve tried different ports and I’ve installed the software. ==&lt;br /&gt;
The most likely explanation is that the USB-C cable has come out of the back of the monitor. Carefully push it back in, or see your local IT staff (DIDE IT are in 512; EBS IT are in 714).&lt;br /&gt;
&lt;br /&gt;
The next most likely explanation is that the main Dell screen (the one with the USB-C cable connected) is set to not display from the USB-C cable. Change the monitor source to be USB-C (it will be labelled as ‘USB-C (PD)’ - the PD means Power Delivery, meaning it will also charge your laptop).&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14274</id>
		<title>Working in the new School of Public Health building</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14274"/>
		<updated>2024-03-23T15:26:57Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
In the new building, desks in the common areas are set up to allow any member of the SPH to work from any desk with their departmental laptop.&lt;br /&gt;
&lt;br /&gt;
Some desks have PCs on them. These are to allow remote users a fast wired presence to our DIDE HPC cluster, or else they are powerful workstations for GPU work. Do not interfere with these PCs unless you are the registered owner.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Do not disconnect any cables. If you are unsure of how things work, speak directly to your local IT staff. &#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= How to work (laptop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link [https://imperial.officespacesoftware.com/visual-directory/floors/75 is here]. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, connect your laptop using the supplied USB-C cable. This single cable handles the following functions:&lt;br /&gt;
&lt;br /&gt;
# &#039;&#039;&#039;Power&#039;&#039;&#039;. Your laptop does not need its charger if it’s a USB-C type. Obviously if it’s the old barrel type you need to connect your charger to the white sockets on the desk.&lt;br /&gt;
# &#039;&#039;&#039;Screens&#039;&#039;&#039;. The cable connects you to the two screens. If it does not, check that the main Dell screen which the cable connects to is set to have the input source as USB-C.&lt;br /&gt;
# &#039;&#039;&#039;Keyboard and mouse&#039;&#039;&#039;. These accessories are connected to the screen and are used by both the desktop PC (if any) and the laptop. Do not disconnect these to connect them directly to your laptop.&lt;br /&gt;
# &#039;&#039;&#039;(Optional): Network&#039;&#039;&#039;. In some cases, such as the private offices used exclusively by one staff member, the cable also handles their network connection.&lt;br /&gt;
&lt;br /&gt;
= How to work (desktop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link [https://imperial.officespacesoftware.com/visual-directory/floors/75 is here]. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, you may sit at the keyboard and mouse and use the PC exactly as you have always done.&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting =&lt;br /&gt;
Sometimes, especially with older laptops, things might not go exactly to plan. Read on.&lt;br /&gt;
&lt;br /&gt;
== My laptop is so old that I don’t have any USB-C ports. ==&lt;br /&gt;
This has been a standard port for 7-8 years. If your laptop is older than this then it’s really time to upgrade. You also won’t be able to upgrade to Windows 11 in 2024 when all support for Windows 10 ends. ICT will be blocking all access from Windows 10 computers once support expires.&lt;br /&gt;
&lt;br /&gt;
== I plugged into my USB-C port and nothing happens. ==&lt;br /&gt;
First of all, try another port. Usually one of them is designated as a port supporting external displays (often indicated by a lightning symbol, which curiously denotes it as a Thunderbolt port - not to be confused with a Lightning port, which you would expect from the logo).&lt;br /&gt;
&lt;br /&gt;
If that fails, especially with HP laptops, then you’ll need to install the software to talk to the dock in the main Dell screen. [https://www.dell.com/support/home/en-uk/product-support/product/u2424he-monitor/drivers Go here and install the software.] Once these packages are installed (installed by default on Dell laptops), restart your laptop and try again.&lt;br /&gt;
&lt;br /&gt;
== What’s a USB-C port and what does it do? ==&lt;br /&gt;
It’s a little socket in the side of your laptop, about the size of the charging socket on your phone.&lt;br /&gt;
The role of a USB-C port is mostly for data transfer, &#039;&#039;e.g.&#039;&#039; to memory sticks, but these days is also capable of charging and carrying video, audio and network traffic.&lt;br /&gt;
&lt;br /&gt;
== I’ve an Apple laptop and I don’t have USB-C ports. ==&lt;br /&gt;
Yes you do, but Apple calls them Thunderbolt ports. You can identify the ports on your Apple laptop [https://support.apple.com/en-gb/109523 on this page]. If you want to read about the subtle differences between USB-C and Thunderbolt, [https://www.intel.com/content/www/us/en/architecture-and-technology/thunderbolt/thunderbolt-4-vs-usb-c.html read here].&lt;br /&gt;
&lt;br /&gt;
== Nothing’s working. I’ve tried different ports and I’ve installed the software. ==&lt;br /&gt;
The most likely explanation is that the USB-C cable has come out of the back of the monitor. Carefully push it back in, or see your local IT staff.&lt;br /&gt;
&lt;br /&gt;
The next most likely explanation is that the main Dell screen (the one with the USB-C cable connected) is set to not display from the USB-C cable. Change the monitor source to be USB-C (it will be labelled as ‘USB-C (PD)’ - the PD means Power Delivery, meaning it will also charge your laptop).&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14273</id>
		<title>Working in the new School of Public Health building</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14273"/>
		<updated>2024-03-23T15:26:29Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
In the new building, desks in the common areas are set up to allow any member of the SPH to work from any desk with their departmental laptop.&lt;br /&gt;
&lt;br /&gt;
Some desks have PCs on them. These are to allow remote users a fast wired presence to our DIDE HPC cluster, or else they are powerful workstations for GPU work. Do not interfere with these PCs unless you are the registered owner.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Do not disconnect any cables. If you are unsure of how things work, speak directly to your local IT staff. &#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= How to work (laptop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link [https://imperial.officespacesoftware.com/visual-directory/floors/75 is here]. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, connect your laptop using the supplied USB-C cable. This single cable handles the following functions:&lt;br /&gt;
&lt;br /&gt;
# &#039;&#039;&#039;Power&#039;&#039;&#039;. Your laptop does not need its charger if it’s a USB-C type. Obviously if it’s the old barrel type you need to connect your charger to the white sockets on the desk.&lt;br /&gt;
# &#039;&#039;&#039;Screens&#039;&#039;&#039;. The cable connects you to the two screens. If it does not, check that the main Dell screen which the cable connects to is set to have the input source as USB-C.&lt;br /&gt;
# &#039;&#039;&#039;Keyboard and mouse&#039;&#039;&#039;. These accessories are connected to the screen and are used by both the desktop PC (if any) and the laptop. Do not disconnect these to connect them directly to your laptop.&lt;br /&gt;
# &#039;&#039;&#039;(Optional): Network&#039;&#039;&#039;. In some cases, such as the private offices used exclusively by one staff member, the cable also handles their network connection.&lt;br /&gt;
&lt;br /&gt;
= How to work (desktop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link [https://imperial.officespacesoftware.com/visual-directory/floors/75 is here]. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, you may sit at the keyboard and mouse and use the PC exactly as you have always done.&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting =&lt;br /&gt;
Sometimes, especially with older laptops, things might not go exactly to plan. Read on.&lt;br /&gt;
&lt;br /&gt;
== My laptop is so old that I don’t have any USB-C ports. ==&lt;br /&gt;
This has been a standard port for 7-8 years. If your laptop is older than this then it’s really time to upgrade. You also won’t be able to upgrade to Windows 11 in 2024 when all support for Windows 10 ends. ICT will be blocking all access from Windows 10 computers once support expires.&lt;br /&gt;
&lt;br /&gt;
== I plugged into my USB-C port and nothing happens. ==&lt;br /&gt;
First of all, try another port. Usually one of them is designated as a port supporting external displays (often indicated by a lightning symbol, which curiously denotes it as a Thunderbolt port - not to be confused with a Lightning port, which you would expect from the logo).&lt;br /&gt;
&lt;br /&gt;
If that fails, especially with HP laptops, then you’ll need to install the software to talk to the dock in the main Dell screen. [https://www.dell.com/support/home/en-uk/product-support/product/u2424he-monitor/drivers Go here and install the software.] Once these packages are installed (installed by default on Dell laptops), restart your laptop and try again.&lt;br /&gt;
&lt;br /&gt;
== What’s a USB-C port and what does it do? ==&lt;br /&gt;
It’s a little socket in the side of your laptop, about the size of the charging socket on your phone.&lt;br /&gt;
The role of a USB-C port is mostly for data transfer, &#039;’e.g.&#039;&#039; to memory sticks, but these days is also capable of charging and carrying video, audio and network traffic.&lt;br /&gt;
&lt;br /&gt;
== I’ve an Apple laptop and I don’t have USB-C ports. ==&lt;br /&gt;
Yes you do, but Apple calls them Thunderbolt ports. You can identify the ports on your Apple laptop [https://support.apple.com/en-gb/109523 on this page]. If you want to read about the subtle differences between USB-C and Thunderbolt, [https://www.intel.com/content/www/us/en/architecture-and-technology/thunderbolt/thunderbolt-4-vs-usb-c.html read here].&lt;br /&gt;
&lt;br /&gt;
== Nothing’s working. I’ve tried different ports and I’ve installed the software. ==&lt;br /&gt;
The most likely explanation is that the USB-C cable has come out of the back of the monitor. Carefully push it back in, or see your local IT staff.&lt;br /&gt;
&lt;br /&gt;
The next most likely explanation is that the main Dell screen (the one with the USB-C cable connected) is set to not display from the USB-C cable. Change the monitor source to be USB-C (it will be labelled as ‘USB-C (PD)’ - the PD means Power Delivery, meaning it will also charge your laptop).&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14272</id>
		<title>Working in the new School of Public Health building</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14272"/>
		<updated>2024-03-23T15:24:26Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
In the new building, desks in the common areas are set up to allow any member of the SPH to work from any desk with their departmental laptop.&lt;br /&gt;
&lt;br /&gt;
Some desks have PCs on them. These are to allow remote users a fast wired presence to our DIDE HPC cluster, or else they are powerful workstations for GPU work. Do not interfere with these PCs unless you are the registered owner.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Do not disconnect any cables. If you are unsure of how things work, speak directly to your local IT staff. &#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= How to work (laptop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link [https://imperial.officespacesoftware.com/visual-directory/floors/75 is here]. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, connect your laptop using the supplied USB-C cable. This single cable handles the following functions:&lt;br /&gt;
&lt;br /&gt;
# &#039;&#039;&#039;Power&#039;&#039;&#039;. Your laptop does not need its charger if it’s a USB-C type. Obviously if it’s the old barrel type you need to connect your charger to the white sockets on the desk.&lt;br /&gt;
# &#039;&#039;&#039;Screens&#039;&#039;&#039;. The cable connects you to the two screens. If it does not, check that the main Dell screen which the cable connects to is set to have the input source as USB-C.&lt;br /&gt;
# &#039;&#039;&#039;Keyboard and mouse&#039;&#039;&#039;. These accessories are connected to the screen and are used by both the desktop PC (if any) and the laptop. Do not disconnect these to connect them directly to your laptop.&lt;br /&gt;
# &#039;&#039;&#039;(Optional): Network&#039;&#039;&#039;. In some cases, such as the private offices used exclusively by one staff member, the cable also handles their network connection.&lt;br /&gt;
&lt;br /&gt;
= How to work (desktop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link [https://imperial.officespacesoftware.com/visual-directory/floors/75 is here]. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, you may sit at the keyboard and mouse and use the PC exactly as you have always done.&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting =&lt;br /&gt;
Sometimes, especially with older laptops, things might not go exactly to plan. Read on.&lt;br /&gt;
&lt;br /&gt;
== My laptop is so old that I don’t have any USB-C ports. ==&lt;br /&gt;
This has been a standard port for 7-8 years. If your laptop is older than this then it’s really time to upgrade. You also won’t be able to upgrade to Windows 11 in 2024 when all support for Windows 10 ends. ICT will be blocking all access from Windows 10 computers once support expires.&lt;br /&gt;
&lt;br /&gt;
== I plugged into my USB-C port and nothing happens. ==&lt;br /&gt;
First of all, try another port. Usually one of them is designated as a port supporting external displays (often indicated by a lightning symbol, which curiously denotes it as a Thunderbolt port - not to be confused with a Lightning port, which you would expect from the logo).&lt;br /&gt;
&lt;br /&gt;
If that fails, especially with HP laptops, then you’ll need to install the software to talk to the dock in the main Dell screen. [https://www.dell.com/support/home/en-uk/product-support/product/u2424he-monitor/drivers Go here and install the software.] Once these packages are installed (installed by default on Dell laptops), restart your laptop and try again.&lt;br /&gt;
&lt;br /&gt;
== What’s a USB-C port and what does it do? ==&lt;br /&gt;
It’s a little socket in the side of your laptop, about the size of the charging socket on your phone.&lt;br /&gt;
The role of a USB-C port is mostly for data transfer, e.g. to memory sticks, but these days is also capable of charging and carrying video, audio and network traffic.&lt;br /&gt;
&lt;br /&gt;
== I’ve an Apple laptop and I don’t have USB-C ports. ==&lt;br /&gt;
Yes you do, but Apple calls them Thunderbolt ports. You can identify the ports on your Apple laptop [https://support.apple.com/en-gb/109523 on this page]. If you want to read about the subtle differences between USB-C and Thunderbolt, [https://www.intel.com/content/www/us/en/architecture-and-technology/thunderbolt/thunderbolt-4-vs-usb-c.html read here].&lt;br /&gt;
&lt;br /&gt;
== Nothing’s working. I’ve tried different ports and I’ve installed the software. ==&lt;br /&gt;
The most likely explanation is that the USB-C cable has come out of the back of the monitor. Carefully push it back in, or see your local IT staff.&lt;br /&gt;
&lt;br /&gt;
The next most likely explanation is that the main Dell screen (the one with the USB-C cable connected) is set to not display from the USB-C cable. Change the monitor source to be USB-C (it will be labelled as ‘USB-C (PD)’ - the PD means Power Delivery, meaning it will also charge your laptop).&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14271</id>
		<title>Working in the new School of Public Health building</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14271"/>
		<updated>2024-03-23T15:22:09Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
In the new building, desks in the common areas are set up to allow any member of the SPH to work from any desk with their departmental laptop.&lt;br /&gt;
&lt;br /&gt;
Some desks have PCs on them. These are to allow remote users a fast wired presence to our DIDE HPC cluster, or else they are powerful workstations for GPU work. Do not interfere with these PCs unless you are the registered owner.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Do not disconnect any cables. If you are unsure of how things work, speak directly to your local IT staff. &#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= How to work (laptop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link [https://imperial.officespacesoftware.com/visual-directory/floors/75 is here]. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, connect your laptop using the supplied USB-C cable. This single cable handles the following functions:&lt;br /&gt;
&lt;br /&gt;
# &#039;&#039;&#039;Power&#039;&#039;&#039;. Your laptop does not need its charger if it’s a USB-C type. Obviously if it’s the old barrel type you need to connect your charger to the white sockets on the desk.&lt;br /&gt;
# &#039;&#039;&#039;Screens&#039;&#039;&#039;. The cable connects you to the two screens. If it does not, check that the main Dell screen which the cable connects to is set to have the input source as USB-C.&lt;br /&gt;
# &#039;&#039;&#039;Keyboard and mouse&#039;&#039;&#039;. These accessories are connected to the screen and are used by both the desktop PC (if any) and the laptop. Do not disconnect these to connect them directly to your laptop.&lt;br /&gt;
# &#039;&#039;&#039;(Optional): Network&#039;&#039;&#039;. In some cases, such as the private offices used exclusively by one staff member, the cable also handles their network connection.&lt;br /&gt;
&lt;br /&gt;
= How to work (desktop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link [https://imperial.officespacesoftware.com/visual-directory/floors/75 is here]. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, you may sit at the keyboard and mouse and use the PC exactly as you have always done.&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting =&lt;br /&gt;
Sometimes, especially with older laptops, things might not go exactly to plan. Read on.&lt;br /&gt;
&lt;br /&gt;
== My laptop is so old that I don’t have any USB-C ports ==&lt;br /&gt;
This has been a standard port for 7-8 years. If your laptop is older than this then it’s really time to upgrade. You also won’t be able to upgrade to Windows 11 in 2024 when all support for Windows 10 ends. ICT will be blocking all access from Windows 10 computers once support expires.&lt;br /&gt;
&lt;br /&gt;
== I plugged into my USB-C port and nothing happens ==&lt;br /&gt;
First of all, try another port. Usually one of them is designated as a port supporting external displays (often indicated by a lightning symbol, which curiously denotes it as a Thunderbolt port - not to be confused with a Lightning port, which you would expect from the logo).&lt;br /&gt;
&lt;br /&gt;
If that fails, especially with HP laptops, then you’ll need to install the software to talk to the dock in the main Dell screen. [https://www.dell.com/support/home/en-uk/product-support/product/u2424he-monitor/drivers Go here and install the software.] Once these packages are installed (installed by default on Dell laptops), restart your laptop and try again.&lt;br /&gt;
&lt;br /&gt;
== What’s a USB-C port and what does it do? ==&lt;br /&gt;
It’s a little socket in the side of your laptop, about the size of the charging socket on your phone.&lt;br /&gt;
The role of a USB-C port is mostly for data transfer, e.g. to memory sticks, but these days is also capable of charging and carrying video, audio and network traffic.&lt;br /&gt;
&lt;br /&gt;
== I’ve an Apple laptop and I don’t have USB-C ports ==&lt;br /&gt;
Yes you do, but Apple calls them Thunderbolt ports. You can identify the ports on your Apple laptop [https://support.apple.com/en-gb/109523 on this page]. If you want to read about the subtle differences between USB-C and Thunderbolt, [https://www.intel.com/content/www/us/en/architecture-and-technology/thunderbolt/thunderbolt-4-vs-usb-c.html read here].&lt;br /&gt;
&lt;br /&gt;
== Nothing’s working. I’ve tried different ports and I’ve installed the software ==&lt;br /&gt;
The most likely explanation is that the USB-C cable has come out of the back of the monitor. Carefully push it back in, or see your local IT staff.&lt;br /&gt;
&lt;br /&gt;
The next most likely explanation is that the main Dell screen (the one with the USB-C cable connected) is set to not display from the USB-C cable. Change the monitor source to be USB-C (it will be labelled as ‘USB-C (PD)’ - the PD means Power Delivery, meaning it will also charge your laptop).&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14270</id>
		<title>Working in the new School of Public Health building</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14270"/>
		<updated>2024-03-23T15:21:37Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
In the new building, desks in the common areas are set up to allow any member of the SPH to work from any desk with their departmental laptop.&lt;br /&gt;
&lt;br /&gt;
Some desks have PCs on them. These are to allow remote users a fast wired presence to our DIDE HPC cluster, or else they are powerful workstations for GPU work. Do not interfere with these PCs unless you are the registered owner.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Do not disconnect any cables. If you are unsure of how things work, speak directly to your local IT staff. &#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= How to work (laptop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link [https://imperial.officespacesoftware.com/visual-directory/floors/75 is here]. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, connect your laptop using the supplied USB-C cable. This single cable handles the following functions:&lt;br /&gt;
&lt;br /&gt;
# &#039;&#039;&#039;Power&#039;&#039;&#039;. Your laptop does not need its charger if it’s a USB-C type. Obviously if it’s the old barrel type you need to connect your charger to the white sockets on the desk.&lt;br /&gt;
# &#039;&#039;&#039;Screens&#039;&#039;&#039;. The cable connects you to the two screens. If it does not, check that the main Dell screen which the cable connects to is set to have the input source as USB-C.&lt;br /&gt;
# &#039;&#039;&#039;Keyboard and mouse&#039;&#039;&#039;. These accessories are connected to the screen and are used by both the desktop PC (if any) and the laptop. Do not disconnect these to connect them directly to your laptop.&lt;br /&gt;
# &#039;&#039;&#039;(Optional): Network&#039;&#039;&#039;. In some cases, such as the private offices used exclusively by one staff member, the cable also handles their network connection.&lt;br /&gt;
&lt;br /&gt;
= How to work (desktop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link has been emailed to each of you. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, you may sit at the keyboard and mouse and use the PC exactly as you have always done.&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting =&lt;br /&gt;
Sometimes, especially with older laptops, things might not go exactly to plan. Read on.&lt;br /&gt;
&lt;br /&gt;
== My laptop is so old that I don’t have any USB-C ports ==&lt;br /&gt;
This has been a standard port for 7-8 years. If your laptop is older than this then it’s really time to upgrade. You also won’t be able to upgrade to Windows 11 in 2024 when all support for Windows 10 ends. ICT will be blocking all access from Windows 10 computers once support expires.&lt;br /&gt;
&lt;br /&gt;
== I plugged into my USB-C port and nothing happens ==&lt;br /&gt;
First of all, try another port. Usually one of them is designated as a port supporting external displays (often indicated by a lightning symbol, which curiously denotes it as a Thunderbolt port - not to be confused with a Lightning port, which you would expect from the logo).&lt;br /&gt;
&lt;br /&gt;
If that fails, especially with HP laptops, then you’ll need to install the software to talk to the dock in the main Dell screen. [https://www.dell.com/support/home/en-uk/product-support/product/u2424he-monitor/drivers Go here and install the software.] Once these packages are installed (installed by default on Dell laptops), restart your laptop and try again.&lt;br /&gt;
&lt;br /&gt;
== What’s a USB-C port and what does it do? ==&lt;br /&gt;
It’s a little socket in the side of your laptop, about the size of the charging socket on your phone.&lt;br /&gt;
The role of a USB-C port is mostly for data transfer, e.g. to memory sticks, but these days is also capable of charging and carrying video, audio and network traffic.&lt;br /&gt;
&lt;br /&gt;
== I’ve an Apple laptop and I don’t have USB-C ports ==&lt;br /&gt;
Yes you do, but Apple calls them Thunderbolt ports. You can identify the ports on your Apple laptop [https://support.apple.com/en-gb/109523 on this page]. If you want to read about the subtle differences between USB-C and Thunderbolt, [https://www.intel.com/content/www/us/en/architecture-and-technology/thunderbolt/thunderbolt-4-vs-usb-c.html read here].&lt;br /&gt;
&lt;br /&gt;
== Nothing’s working. I’ve tried different ports and I’ve installed the software ==&lt;br /&gt;
The most likely explanation is that the USB-C cable has come out of the back of the monitor. Carefully push it back in, or see your local IT staff.&lt;br /&gt;
&lt;br /&gt;
The next most likely explanation is that the main Dell screen (the one with the USB-C cable connected) is set to not display from the USB-C cable. Change the monitor source to be USB-C (it will be labelled as ‘USB-C (PD)’ - the PD means Power Delivery, meaning it will also charge your laptop).&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14269</id>
		<title>Working in the new School of Public Health building</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14269"/>
		<updated>2024-03-23T14:27:49Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
In the new building, desks in the common areas are set up to allow any member of the SPH to work from any desk with their departmental laptop.&lt;br /&gt;
&lt;br /&gt;
Some desks have PCs on them. These are to allow remote users a fast wired presence to our DIDE HPC cluster, or else they are powerful workstations for GPU work. Do not interfere with these PCs unless you are the registered owner.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Do not disconnect any cables. If you are unsure of how things work, speak directly to your local IT staff. &#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= How to work (laptop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link has been emailed to each of you. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, connect your laptop using the supplied USB-C cable. This single cable handles the following functions:&lt;br /&gt;
&lt;br /&gt;
# &#039;&#039;&#039;Power&#039;&#039;&#039;. Your laptop does not need its charger if it’s a USB-C type. Obviously if it’s the old barrel type you need to connect your charger to the white sockets on the desk.&lt;br /&gt;
# &#039;&#039;&#039;Screens&#039;&#039;&#039;. The cable connects you to the two screens. If it does not, check that the main Dell screen which the cable connects to is set to have the input source as USB-C.&lt;br /&gt;
# &#039;&#039;&#039;Keyboard and mouse&#039;&#039;&#039;. These accessories are connected to the screen and are used by both the desktop PC (if any) and the laptop. Do not disconnect these to connect them directly to your laptop.&lt;br /&gt;
# &#039;&#039;&#039;(Optional): Network&#039;&#039;&#039;. In some cases, such as the private offices used exclusively by one staff member, the cable also handles their network connection.&lt;br /&gt;
&lt;br /&gt;
= How to work (desktop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link has been emailed to each of you. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, you may sit at the keyboard and mouse and use the PC exactly as you have always done.&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting =&lt;br /&gt;
Sometimes, especially with older laptops, things might not go exactly to plan. Read on.&lt;br /&gt;
&lt;br /&gt;
== My laptop is so old that I don’t have any USB-C ports ==&lt;br /&gt;
This has been a standard port for 7-8 years. If your laptop is older than this then it’s really time to upgrade. You also won’t be able to upgrade to Windows 11 in 2024 when all support for Windows 10 ends. ICT will be blocking all access from Windows 10 computers once support expires.&lt;br /&gt;
&lt;br /&gt;
== I plugged into my USB-C port and nothing happens ==&lt;br /&gt;
First of all, try another port. Usually one of them is designated as a port supporting external displays (often indicated by a lightning symbol, which curiously denotes it as a Thunderbolt port - not to be confused with a Lightning port, which you would expect from the logo).&lt;br /&gt;
&lt;br /&gt;
If that fails, especially with HP laptops, then you’ll need to install the software to talk to the dock in the main Dell screen. [https://www.dell.com/support/home/en-uk/product-support/product/u2424he-monitor/drivers Go here and install the software.] Once these packages are installed (installed by default on Dell laptops), restart your laptop and try again.&lt;br /&gt;
&lt;br /&gt;
== What’s a USB-C port and what does it do? ===&lt;br /&gt;
It’s a little socket in the side of your laptop, about the size of the charging socket on your phone.&lt;br /&gt;
The role of a USB-C port is mostly for data transfer, e.g. to memory sticks, but these days is also capable of charging and carrying video, audio and network traffic.&lt;br /&gt;
&lt;br /&gt;
== I’ve an Apple laptop and I don’t have USB-C ports ==&lt;br /&gt;
Yes you do, but Apple calls them Thunderbolt ports. You can identify the ports on your Apple laptop [https://support.apple.com/en-gb/109523 on this page]. If you want to read about the subtle differences between USB-C and Thunderbolt, [https://www.intel.com/content/www/us/en/architecture-and-technology/thunderbolt/thunderbolt-4-vs-usb-c.html read here].&lt;br /&gt;
&lt;br /&gt;
== Nothing’s working. I’ve tried different ports and I’ve installed the software ==&lt;br /&gt;
The most likely explanation is that the USB-C cable has come out of the back of the monitor. Carefully push it back in, or see your local IT staff.&lt;br /&gt;
&lt;br /&gt;
The next most likely explanation is that the main Dell screen (the one with the USB-C cable connected) is set to not display from the USB-C cable. Change the monitor source to be USB-C (it will be labelled as ‘USB-C (PD)’ - the PD means Power Delivery, meaning it will also charge your laptop).&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14268</id>
		<title>Working in the new School of Public Health building</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14268"/>
		<updated>2024-03-23T14:17:43Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
In the new building, desks in the common areas are set up to allow any member of the SPH to work from any desk with their departmental laptop.&lt;br /&gt;
&lt;br /&gt;
Some desks have PCs on them. These are to allow remote users a fast wired presence to our DIDE HPC cluster, or else they are powerful workstations for GPU work. Do not interfere with these PCs unless you are the registered owner.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Do not disconnect any cables. If you are unsure of how things work, speak directly to your local IT staff. &#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= How to work (laptop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link has been emailed to each of you. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, connect your laptop using the supplied USB-C cable. This single cable handles the following functions:&lt;br /&gt;
&lt;br /&gt;
# &#039;&#039;&#039;Power&#039;&#039;&#039;. Your laptop does not need its charger if it’s a USB-C type. Obviously if it’s the old barrel type you need to connect your charger to the white sockets on the desk.&lt;br /&gt;
# &#039;&#039;&#039;Screens&#039;&#039;&#039;. The cable connects you to the two screens. If it does not, check that the main Dell screen which the cable connects to is set to have the input source as USB-C.&lt;br /&gt;
# &#039;&#039;&#039;Keyboard and mouse&#039;&#039;&#039;. These accessories are connected to the screen and are used by both the desktop PC (if any) and the laptop. Do not disconnect these to connect them directly to your laptop.&lt;br /&gt;
# &#039;&#039;&#039;(Optional): Network&#039;&#039;&#039;. In some cases, such as the private offices used exclusively by one staff member, the cable also handles their network connection.&lt;br /&gt;
&lt;br /&gt;
= How to work (desktop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link has been emailed to each of you. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, you may sit at the keyboard and mouse and use the PC exactly as you have always done.&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting =&lt;br /&gt;
Sometimes, especially with older laptops, things might not go exactly to plan. Read on.&lt;br /&gt;
&lt;br /&gt;
== My laptop is so old that I don’t have any USB-C ports ==&lt;br /&gt;
This has been a standard port for 7-8 years. If your laptop is older than this then it’s really time to upgrade. You also won’t be able to upgrade to Windows 11 in 2024 when all support for Windows 10 ends. ICT will be blocking all access from Windows 10 computers once support expires.&lt;br /&gt;
&lt;br /&gt;
== I plugged into my USB-C port and nothing happens ==&lt;br /&gt;
First of all, try another port. Usually one of them is designated as a port supporting external displays (often indicated by a lightning symbol).&lt;br /&gt;
&lt;br /&gt;
If that fails, especially with HP laptops, then you’ll need to install the software to talk to the dock in the main Dell screen. [https://www.dell.com/support/home/en-uk/product-support/product/u2424he-monitor/drivers Go here and install the software.] Once these packages are installed (installed by default on Dell laptops), restart your laptop and try again.&lt;br /&gt;
&lt;br /&gt;
== What’s a USB-C port and what does it do? ===&lt;br /&gt;
It’s a little socket in the side of your laptop, about the size of the charging socket on your phone.&lt;br /&gt;
The role of a USB-C port is mostly for data transfer, e.g. to memory sticks, but these days is also capable of charging and carrying video, audio and network traffic.&lt;br /&gt;
&lt;br /&gt;
== I’ve got an Apple laptop and I don’t have USB-C ports ==&lt;br /&gt;
Yes you do, but Apple calls them Thunderbolt ports. If you want to read about the subtle differences, [https://www.intel.com/content/www/us/en/architecture-and-technology/thunderbolt/thunderbolt-4-vs-usb-c.html read here].&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14267</id>
		<title>Working in the new School of Public Health building</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14267"/>
		<updated>2024-03-23T14:12:48Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
In the new building, desks in the common areas are set up to allow any member of the SPH to work from any desk with their departmental laptop.&lt;br /&gt;
&lt;br /&gt;
Some desks have PCs on them. These are to allow remote users a fast wired presence to our DIDE HPC cluster, or else they are powerful workstations for GPU work. Do not interfere with these PCs unless you are the registered owner.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Do not disconnect any cables. If you are unsure of how things work, speak directly to your local IT staff. &#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= How to work (laptop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link has been emailed to each of you. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, connect your laptop using the supplied USB-C cable. This single cable handles the following functions:&lt;br /&gt;
&lt;br /&gt;
# &#039;&#039;&#039;Power&#039;&#039;&#039;. Your laptop does not need its charger if it’s a USB-C type. Obviously if it’s the old barrel type you need to connect your charger to the white sockets on the desk.&lt;br /&gt;
# &#039;&#039;&#039;Screens&#039;&#039;&#039;. The cable connects you to the two screens. If it does not, check that the main Dell screen which the cable connects to is set to have the input source as USB-C.&lt;br /&gt;
# &#039;&#039;&#039;Keyboard and mouse&#039;&#039;&#039;. These accessories are connected to the screen and are used by both the desktop PC (if any) and the laptop. Do not disconnect these to connect them directly to your laptop.&lt;br /&gt;
# &#039;&#039;&#039;(Optional): Network&#039;&#039;&#039;. In some cases, such as the private offices used exclusively by one staff member, the cable also handles their network connection.&lt;br /&gt;
&lt;br /&gt;
= How to work (desktop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link has been emailed to each of you. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, you may sit at the keyboard and mouse and use the PC exactly as you have always done.&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting =&lt;br /&gt;
Sometimes, especially with older laptops, things might not go exactly to plan. Read on.&lt;br /&gt;
&lt;br /&gt;
== My laptop is so old that I don’t have any USB-C ports ==&lt;br /&gt;
This has been a standard port for 7-8 years. If your laptop is older than this then it’s really time to upgrade. You also won’t be able to upgrade to Windows 11 in 2024 when all support for Windows 10 ends. ICT will be blocking all access from Windows 10 computers once support expires.&lt;br /&gt;
&lt;br /&gt;
== I plugged into my USB-C port and nothing happens ==&lt;br /&gt;
First of all, try another port. Usually one of them is designated as a port supporting external displays (often indicated by a lightning symbol).&lt;br /&gt;
&lt;br /&gt;
If that fails, especially with HP laptops, then you’ll need to install the software to talk to the dock in the main Dell screen. [https://www.dell.com/support/home/en-uk/product-support/product/u2424he-monitor/drivers Go here and install the software.] Once these packages are installed (installed by default on Dell laptops), restart your laptop and try again.&lt;br /&gt;
&lt;br /&gt;
== What’s a USB-C port and what does it do? ===&lt;br /&gt;
It’s a little socket in the side of your laptop, about the size of the socket on your phone charging socket.&lt;br /&gt;
The role of a USB-C port is mostly for data transfer, e.g. to memory sticks, but these days is also capable of charging and carrying video, audio and network traffic.&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14266</id>
		<title>Working in the new School of Public Health building</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14266"/>
		<updated>2024-03-23T14:09:30Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
In the new building, desks in the common areas are set up to allow any member of the SPH to work from any desk with their departmental laptop.&lt;br /&gt;
&lt;br /&gt;
Some desks have PCs on them. These are to allow remote users a fast wired presence to our DIDE HPC cluster, or else they are powerful workstations for GPU work. Do not interfere with these PCs unless you are the registered owner.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Do not disconnect any cables. If you are unsure of how things work, speak directly to your local IT staff. &#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= How to work (laptop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link has been emailed to each of you. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, connect your laptop using the supplied USB-C cable. This single cable handles the following functions:&lt;br /&gt;
&lt;br /&gt;
# &#039;&#039;&#039;Power&#039;&#039;&#039;. Your laptop does not need its charger if it’s a USB-C type. Obviously if it’s the old barrel type you need to connect your charger to the white sockets on the desk.&lt;br /&gt;
# &#039;&#039;&#039;Screens&#039;&#039;&#039;. The cable connects you to the two screens. If it does not, check that the main Dell screen which the cable connects to is set to have the input source as USB-C.&lt;br /&gt;
# &#039;&#039;&#039;Keyboard and mouse&#039;&#039;&#039;. These accessories are connected to the screen and are used by both the desktop PC (if any) and the laptop. Do not disconnect these to connect them directly to your laptop.&lt;br /&gt;
# &#039;&#039;&#039;(Optional): Network&#039;&#039;&#039;. In some cases, such as the private offices used exclusively by one staff member, the cable also handles their network connection.&lt;br /&gt;
&lt;br /&gt;
= How to work (desktop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link has been emailed to each of you. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, you may sit at the keyboard and mouse and use the PC exactly as you have always done.&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting =&lt;br /&gt;
Sometimes, especially with older laptops, things might not go exactly to plan. Read on.&lt;br /&gt;
&lt;br /&gt;
== My laptop is so old that I don’t have any USB-C ports ==&lt;br /&gt;
This has been a standard port for 7-8 years. If your laptop is older than this then it’s really time to upgrade. You also won’t be able to upgrade to Windows 11 in 2024 when all support for Windows 10 ends. ICT will be blocking all access from Windows 10 computers once support expires.&lt;br /&gt;
&lt;br /&gt;
== I plugged into my USB-C port and nothing happens ==&lt;br /&gt;
First of all, try another port. Usually one of them is designated as a port supporting external displays (often indicated by a lightning symbol).&lt;br /&gt;
&lt;br /&gt;
If that fails, especially with HP laptops, then you’ll need to install the software to talk to the dock in the main Dell screen. [https://www.dell.com/support/home/en-uk/product-support/product/u2424he-monitor/drivers Go here and install the software.] Once these packages are installed (installed by default on Dell laptops), restart your laptop and try again.&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14265</id>
		<title>Working in the new School of Public Health building</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14265"/>
		<updated>2024-03-23T14:06:51Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
In the new building, desks in the common areas are set up to allow any member of the SPH to work from any desk with their departmental laptop.&lt;br /&gt;
&lt;br /&gt;
Some desks have PCs on them. These are to allow remote users a fast wired presence to our DIDE HPC cluster, or else they are powerful workstations for GPU work. Do not interfere with these PCs unless you are the registered owner.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Do not disconnect any cables. If you are unsure of how things work, speak directly to your local IT staff. &#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= How to work (laptop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link has been emailed to each of you. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, connect your laptop using the supplied USB-C cable. This single cable handles the following functions:&lt;br /&gt;
&lt;br /&gt;
# &#039;&#039;&#039;Power&#039;&#039;&#039;. Your laptop does not need its charger if it’s a USB-C type. Obviously if it’s the old barrel type you need to connect your charger to the white sockets on the desk.&lt;br /&gt;
# &#039;&#039;&#039;Screens&#039;&#039;&#039;. The cable connects you to the two screens. If it does not, check that the main Dell screen which the cable connects to is set to have the input source as USB-C.&lt;br /&gt;
# &#039;&#039;&#039;Keyboard and mouse&#039;&#039;&#039;. These accessories are connected to the screen and are used by both the desktop PC (if any) and the laptop. Do not disconnect these to connect them directly to your laptop.&lt;br /&gt;
# &#039;&#039;&#039;(Optional): Network&#039;&#039;&#039;. In some cases, such as the private offices used exclusively by one staff member, the cable also handles their network connection.&lt;br /&gt;
&lt;br /&gt;
= How to work (desktop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link has been emailed to each of you. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, you may sit at the keyboard and mouse and use the PC exactly as you have always done.&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting =&lt;br /&gt;
Sometimes, especially with older laptops, things might not go exactly to plan. Read on.&lt;br /&gt;
&lt;br /&gt;
== My laptop is so old that I don’t have any USB-C ports ==&lt;br /&gt;
This has been a standard port for 7-8 years. If your laptop is older than this then it’s really time to upgrade. You also won’t be able to upgrade to Windows 11 in 2024 when all support for Windows 10 ends.&lt;br /&gt;
&lt;br /&gt;
== I plugged into my USB-C port and nothing happens ==&lt;br /&gt;
First of all, try another port. Usually one of them is designated as a port supporting external displays (often indicated by a lightning symbol).&lt;br /&gt;
&lt;br /&gt;
If that fails, especially with HP laptops, then you’ll need to install the software to talk to the dock in the main Dell screen. [https://www.dell.com/support/home/en-uk/product-support/product/u2424he-monitor/drivers Go here and install the software.]&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14264</id>
		<title>Working in the new School of Public Health building</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14264"/>
		<updated>2024-03-23T13:20:12Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
In the new building, desks in the common areas are set up to allow any member of the SPH to work from any desk with their departmental laptop.&lt;br /&gt;
&lt;br /&gt;
Some desks have PCs on them. These are to allow remote users a fast wired presence to our DIDE HPC cluster, or else they are powerful workstations for GPU work. Do not interfere with these PCs unless you are the registered owner.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Do not disconnect any cables. If you are unsure of how things work, speak directly to your local IT staff. &#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= How to work (laptop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link has been emailed to each of you. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, connect your laptop using the supplied USB-C cable. This single cable handles the following functions:&lt;br /&gt;
&lt;br /&gt;
# &#039;&#039;&#039;Power&#039;&#039;&#039;. Your laptop does not need its charger if it’s a USB-C type. Obviously if it’s the old barrel type you need to connect your charger to the white sockets on the desk.&lt;br /&gt;
# &#039;&#039;&#039;Screens&#039;&#039;&#039;. The cable connects you to the two screens. If it does not, check that the main Dell screen which the cable connects to is set to have the input source as USB-C.&lt;br /&gt;
# &#039;&#039;&#039;Keyboard and mouse&#039;&#039;&#039;. These accessories are connected to the screen and are used by both the desktop PC (if any) and the laptop. Do not disconnect these to connect them directly to your laptop.&lt;br /&gt;
# &#039;&#039;&#039;(Optional): Network&#039;&#039;&#039;. In some cases, such as the private offices used exclusively by one staff member, the cable also handles their network connection.&lt;br /&gt;
&lt;br /&gt;
= How to work (desktop users) =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link has been emailed to each of you. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, you may sit at the keyboard and mouse and use the PC exactly as you have always done.&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14263</id>
		<title>Working in the new School of Public Health building</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Working_in_the_new_School_of_Public_Health_building&amp;diff=14263"/>
		<updated>2024-03-23T13:16:55Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;= Introduction = In the new building, desks in the common areas are set up to allow any member of the SPH to work from any desk with their departmental laptop.  Some desks have PCs on them. These are to allow remote users a fast wired presence to our DIDE HPC cluster, or else they are powerful workstations for GPU work. Do not interfere with these PCs unless you are the registered owner.  &amp;#039;&amp;#039;&amp;#039; Do not disconnect any cables. If you are unsure of how things work, speak direc...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
In the new building, desks in the common areas are set up to allow any member of the SPH to work from any desk with their departmental laptop.&lt;br /&gt;
&lt;br /&gt;
Some desks have PCs on them. These are to allow remote users a fast wired presence to our DIDE HPC cluster, or else they are powerful workstations for GPU work. Do not interfere with these PCs unless you are the registered owner.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Do not disconnect any cables. If you are unsure of how things work, speak directly to your local IT staff. &#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= How to work =&lt;br /&gt;
The first step is to book a desk. You may not use a desk unless you have booked it for the time period which you are sat at the desk. The booking system link has been emailed to each of you. Log in with your Imperial account.&lt;br /&gt;
&lt;br /&gt;
Once you have booked a desk, connect your laptop using the supplied USB-C cable. This single cable handles the following functions:&lt;br /&gt;
&lt;br /&gt;
# &#039;&#039;&#039;Power&#039;&#039;&#039;. Your laptop does not need its charger if it’s a USB-C type. Obviously if it’s the old barrel type you need to connect your charger to the white sockets on the desk.&lt;br /&gt;
# &#039;&#039;&#039;Screens&#039;&#039;&#039;. The cable connects you to the two screens. If it does not, check that the main Dell screen which the cable connects to is set to have the input source as USB-C.&lt;br /&gt;
# &#039;&#039;&#039;Keyboard and mouse&#039;&#039;&#039;. These accessories are connected to the screen and are used by both the desktop PC (if any) and the laptop. Do not disconnect these to connect them directly to your laptop.&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=The_DIDE_IT_Team_Documentation&amp;diff=14262</id>
		<title>The DIDE IT Team Documentation</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=The_DIDE_IT_Team_Documentation&amp;diff=14262"/>
		<updated>2024-03-23T13:03:04Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Common Topics in DIDE IT =&lt;br /&gt;
These pages are for internal DIDE IT documentation. None of this information is sensitive, it is simply a list of procedures already present in the main ICT help pages but modified to be more useful to DIDE.&lt;br /&gt;
&lt;br /&gt;
== [[Working in the new School of Public Health building]] ==&lt;br /&gt;
This section describes the new working practices for the department since the move in March 2024.&lt;br /&gt;
&lt;br /&gt;
== [[Printing]] ==&lt;br /&gt;
This section describes how to install the mono and colour queues for the managed swipe printers.&lt;br /&gt;
== [[Office 365]] ==&lt;br /&gt;
This section explains the features of your Office 365 subscription. Note that all Office 365 services are managed by your Imperial account (username@ic.ac.uk), not your DIDE one.&lt;br /&gt;
== [[Wi-Fi]] ==&lt;br /&gt;
How to access Imperial&#039;s Wi-Fi network, whether you are a member of Imperial College (using Imperial-WPA), an academic guest (using EduRoam) or a visitor (using _The Cloud).&lt;br /&gt;
== [[Remote access to DIDE]] ==&lt;br /&gt;
In order to access DIDE resources from anywhere other than our wired internal network, you must either access via the zScaler Unified Access app.&lt;br /&gt;
&lt;br /&gt;
== [[Disk quotas]] ==&lt;br /&gt;
All DIDE members have a default personal disk quota of 15GB. All research groups also have a research group share quota.&lt;br /&gt;
== [[Hardware orders]] ==&lt;br /&gt;
A guide to our stock equipment from HP and Dell.&lt;br /&gt;
== [[Multi-Factor Authentication (MFA)]] ==&lt;br /&gt;
How to enable extra security features on your Imperial account.&lt;br /&gt;
== [[Anti-Virus Upgrades (Autumn 2022)]] ==&lt;br /&gt;
Here we discuss how to move from our old security software to our new software.&lt;br /&gt;
== [[Troubleshooting]] ==&lt;br /&gt;
Sometimes things can go wrong. Here we list the most common problems not listed on the main Imperial ICT help pages and how to resolve them.&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Remote_access_to_DIDE&amp;diff=14261</id>
		<title>Remote access to DIDE</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Remote_access_to_DIDE&amp;diff=14261"/>
		<updated>2024-03-23T13:01:27Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* Remote Access to your Windows DIDE Desktop via ZScaler */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;These instructions are now obsolete. All remote access to DIDE is now via [https://www.imperial.ac.uk/admin-services/ict/self-service/connect-communicate/remote-access/unified-access/ Zscaler]. &#039;&#039;&#039;ZScaler replaces both the Pulse Secure VPN and the Remote Desktop Gateway&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Remote Access to your Windows DIDE Desktop via ZScaler ==&lt;br /&gt;
The procedure below only needs to be followed once. Complete each step in turn.&lt;br /&gt;
# Ensure that you&#039;ve uninstalled Pulse Secure VPN, or have never installed it.&lt;br /&gt;
# Ensure that you&#039;ve installed ZScaler via above link.&lt;br /&gt;
# Click on the Start button in your desktop toolbar, type &#039;&#039;&#039;Remote Desktop&#039;&#039;&#039; in the search field and press the Return key on your keyboard.&lt;br /&gt;
# Press the &#039;&#039;&#039;Show Options&#039;&#039;&#039; arrow in the bottom left hand corner of the Remote Desktop window.&lt;br /&gt;
# Click the &#039;&#039;&#039;Display&#039;&#039;&#039; tab and ensure that the &#039;&#039;&#039;Colours&#039;&#039;&#039; menu says &#039;&#039;High Colour (16-bit)&#039;&#039;.[[File:TS display.png|thumb|Step 10]]&lt;br /&gt;
# Click on the &#039;&#039;&#039;Experience&#039;&#039;&#039; tab and select &#039;&#039;&#039;Low speed internet&#039;&#039;&#039;, then re-tick the box for Font Smoothing.&lt;br /&gt;
# Click the &#039;&#039;&#039;Local Resources&#039;&#039;&#039; tab and ensure that the &#039;&#039;&#039;Printers&#039;&#039;&#039; box is &#039;&#039;unticked&#039;&#039;.[[File:TS printer.png|thumb|Step 11]]&lt;br /&gt;
# Click the &#039;&#039;&#039;General&#039;&#039;&#039; tab.&lt;br /&gt;
# Enter the full name of your DIDE PC (e.g. &#039;&#039;&#039;WPIA-DIDEx.dide.ic.ac.uk&#039;&#039;&#039;) and click &#039;&#039;Connect&#039;&#039;.&lt;br /&gt;
# Enter your DIDE username (&#039;&#039;&#039;DIDE\yourusername&#039;&#039;&#039;) and click &#039;&#039;OK&#039;&#039;.[[File:TS general.png|thumb|Steps 12 to 15]]&lt;br /&gt;
# Finally, click the &#039;&#039;&#039;Save As...&#039;&#039;&#039; button and save these settings as something like &#039;&#039;&#039;Remote Desktop Connection&#039;&#039;&#039; to your desktop or wherever you like.&lt;br /&gt;
&lt;br /&gt;
== OBSOLETE SINCE ZSCALER - Remote Access to your Windows DIDE Desktop via Terminal Services Gateway ==&lt;br /&gt;
The procedure below only needs to be followed once. Complete each step in turn.&lt;br /&gt;
[[File:TS connection2.png|thumb|Steps 4 to 9]]&lt;br /&gt;
# Click on the Start button in your desktop toolbar, type &#039;&#039;&#039;Remote Desktop&#039;&#039;&#039; in the search field and press the Return key on your keyboard.&lt;br /&gt;
# Press the &#039;&#039;&#039;Show Options&#039;&#039;&#039; arrow in the bottom left hand corner of the Remote Desktop window.&lt;br /&gt;
# Select the &#039;&#039;&#039;Advanced&#039;&#039;&#039; tab on the far right and click the &#039;&#039;&#039;Settings...&#039;&#039;&#039; button under Connect from anywhere.&lt;br /&gt;
# Select the &#039;&#039;&#039;Use these RD Gateway server settings&#039;&#039;&#039; button.&lt;br /&gt;
# Enter &#039;&#039;&#039;ictsgw.cc.ic.ac.uk&#039;&#039;&#039; in the &#039;&#039;Server name&#039;&#039; field.&lt;br /&gt;
# Select &#039;&#039;&#039;Allow me to select later&#039;&#039;&#039; in the &#039;&#039;Log-on method&#039;&#039; field. We&#039;ll add this later (see after these steps).&lt;br /&gt;
# Ensure that &#039;&#039;&#039;Bypass RD Gateway server for local addresses&#039;&#039;&#039; is &#039;&#039;ticked&#039;&#039;.&lt;br /&gt;
# Ensure that &#039;&#039;&#039;Use my RD Gateway credentials for the remote computer&#039;&#039;&#039; at the bottom is &#039;&#039;unticked&#039;&#039;. &lt;br /&gt;
# Press the OK button&lt;br /&gt;
# Click the &#039;&#039;&#039;Display&#039;&#039;&#039; tab and ensure that the &#039;&#039;&#039;Colours&#039;&#039;&#039; menu says &#039;&#039;High Colour (16-bit)&#039;&#039;.[[File:TS display.png|thumb|Step 10]]&lt;br /&gt;
# Click on the &#039;&#039;&#039;Experience&#039;&#039;&#039; tab and select &#039;&#039;&#039;Low speed internet&#039;&#039;&#039;, then re-tick the box for Font Smoothing.&lt;br /&gt;
# Click the &#039;&#039;&#039;Local Resources&#039;&#039;&#039; tab and ensure that the &#039;&#039;&#039;Printers&#039;&#039;&#039; box is &#039;&#039;unticked&#039;&#039;.[[File:TS printer.png|thumb|Step 11]]&lt;br /&gt;
# Click the &#039;&#039;&#039;General&#039;&#039;&#039; tab.&lt;br /&gt;
# Enter the full name of your DIDE PC (e.g. &#039;&#039;&#039;WPIA-DIDEx.dide.ic.ac.uk&#039;&#039;&#039;) and click &#039;&#039;Connect&#039;&#039;.&lt;br /&gt;
# Enter your DIDE username (&#039;&#039;&#039;DIDE\yourusername&#039;&#039;&#039;) and click &#039;&#039;OK&#039;&#039;.[[File:TS general.png|thumb|Steps 12 to 15]]&lt;br /&gt;
# Finally, click the &#039;&#039;&#039;Save As...&#039;&#039;&#039; button and save these settings as something like &#039;&#039;&#039;Remote Desktop Connection&#039;&#039;&#039; to your desktop or wherever you like.&lt;br /&gt;
&lt;br /&gt;
You will now have a new icon on your desktop and you never need to do the above again. To connect to your DIDE desktop, click the &#039;&#039;&#039;Connect&#039;&#039;&#039; button in your new Remote Desktop shortcut.&lt;br /&gt;
&lt;br /&gt;
You will now be asked for your Imperial credentials in order to access the Terminal Services Gateway. Enter your details as &#039;&#039;&#039;IC\username&#039;&#039;&#039; with your Imperial password.&lt;br /&gt;
&lt;br /&gt;
Once that allows you through you will be prompted for your DIDE credentials in order to access your PC. Enter your details as &#039;&#039;&#039;DIDE\username&#039;&#039;&#039; with your DIDE password. If this is the first time that you&#039;ve connected to your DIDE PC for a while you&#039;ll get a certificate warning message. Tick the box and select &#039;&#039;&#039;Yes&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
If you don&#039;t get prompted for your DIDE account that probably means your PC is asleep. To wake it up [https://www.imperial.ac.uk/admin-services/ict/self-service/connect-communicate/remote-access/remotely-access-my-college-computer/wake-my-pc/ click here].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;N.B.&#039;&#039;&#039; If all the above seems too difficult, I&#039;ve made a template file with all the settings. It is in the &#039;&#039;&#039;T:&#039;&#039;&#039; drive in folder &#039;&#039;&#039;IT\VPN&#039;&#039;&#039; and is called &#039;&#039;&#039;DIDE-Remote.RDP&#039;&#039;&#039;. Right-click and edit that to put your correct hostname and username in and all the other settings are done for you.&lt;br /&gt;
&lt;br /&gt;
== Remote Access to your Ubuntu DIDE Desktop via Terminal Services Gateway ==&lt;br /&gt;
First of all, you will need to have enabled remote desktop in advance. [https://linuxconfig.org/ubuntu-remote-desktop-18-04-bionic-beaver-linux See here for example]. You should also check you have the Remmina app installed.&lt;br /&gt;
&lt;br /&gt;
# Open Remmina&lt;br /&gt;
# Click the “+” button to add a new configuration, and give it a meaningful name.&lt;br /&gt;
# Protocol: RDP - Remote Desktop Protocol&lt;br /&gt;
# Open Remmina and on the Basic tab fill in the following details: &lt;br /&gt;
#* Server: Your desktop PC FQDN (e.g. &#039;&#039;&#039;WPIA-DIDEx.dide.ic.ac.uk&#039;&#039;&#039;)&lt;br /&gt;
#* User Name: &#039;&#039;&#039;Your Ubuntu username&#039;&#039;&#039;&lt;br /&gt;
#* Password: &#039;&#039;&#039;Your Ubuntu  password&#039;&#039;&#039;&lt;br /&gt;
#* Domain: &#039;&#039;&#039;DIDE&#039;&#039;&#039; (only if your workstation is on the DIDE domain - very likely it&#039;s not).&lt;br /&gt;
# Adjust colour depth to &#039;&#039;&#039;16 bit&#039;&#039;&#039;.&lt;br /&gt;
# Go to to the Advanced Tab and set up the ICT RDP Gateway with the following details:&lt;br /&gt;
#* RDG Server: &#039;&#039;&#039;ictsgw.cc.ic.ac.uk&#039;&#039;&#039;&lt;br /&gt;
#* RDG username: &#039;&#039;&#039;Your IC username&#039;&#039;&#039;&lt;br /&gt;
#* RDG password: &#039;&#039;&#039;Your IC password&#039;&#039;&#039;&lt;br /&gt;
#* RDG domain: &#039;&#039;&#039;IC&#039;&#039;&#039;&lt;br /&gt;
# Click &#039;&#039;&#039;Save&#039;&#039;&#039; and you will have a new configuration with the name you initially specified. &lt;br /&gt;
# Click on this new entry to connect to your server.&lt;br /&gt;
# Accept the certificate warnings. These should only appear the very first time you connect.&lt;br /&gt;
# Your Ubuntu remote session should now be active.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Remote Access to your DIDE Desktop via Terminal Services Gateway on a Mac ==&lt;br /&gt;
The procedure below only needs to be followed once. Complete each step in turn.&lt;br /&gt;
&lt;br /&gt;
# Start the &#039;&#039;&#039;Microsoft Remote Desktop 10&#039;&#039;&#039; app from the App Store and select &#039;&#039;&#039;Add desktop&#039;&#039;&#039; to add a new profile entry.&lt;br /&gt;
# Enter a name for the remote desktop profile.&lt;br /&gt;
# Enter the full name of your DIDE machine (e.g. &#039;&#039;&#039;WPIA-DIDEx.dide.ic.ac.uk&#039;&#039;&#039;).&lt;br /&gt;
# Change the &#039;&#039;&#039;User Account&#039;&#039;&#039; drop down to Add User Account&lt;br /&gt;
# Enter &#039;&#039;&#039;DIDE\username&#039;&#039;&#039; in the User name field.&lt;br /&gt;
# Enter your DIDE password in the Password field.&lt;br /&gt;
# Enter a friendly name if desired (optional)&lt;br /&gt;
# Click &#039;&#039;&#039;Add&#039;&#039;&#039; and &#039;&#039;&#039;Save&#039;&#039;&#039; again.&lt;br /&gt;
# Click the Cog in the top left of the screen then Preferences.&lt;br /&gt;
# Click Gateways.&lt;br /&gt;
# Click on the &#039;&#039;&#039;+&#039;&#039;&#039; symbol on the bottom left of the window.&lt;br /&gt;
# Enter &#039;&#039;&#039;ictsgw.cc.ic.ac.uk&#039;&#039;&#039; in the Server name field.&lt;br /&gt;
# Select your Imperial &#039;&#039;&#039;username&#039;&#039;&#039; in the User name field.&lt;br /&gt;
# Enter a name for the gateway in the Friendly Name field.&lt;br /&gt;
# Click &#039;&#039;&#039;Save&#039;&#039;&#039;.&lt;br /&gt;
# Close the screen.&lt;br /&gt;
# Now choose the gateway you created from the Gateway dropdown list.&lt;br /&gt;
# Click the pencil icon.&lt;br /&gt;
# Under &#039;&#039;&#039;General&#039;&#039;&#039; select the gateway name in the Gateway field.&lt;br /&gt;
# Click &#039;&#039;&#039;Save&#039;&#039;&#039;.&lt;br /&gt;
# The main screen will display your new profile. Double click this to start a remote desktop session.&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=The_DIDE_IT_Team_Documentation&amp;diff=14260</id>
		<title>The DIDE IT Team Documentation</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=The_DIDE_IT_Team_Documentation&amp;diff=14260"/>
		<updated>2024-03-23T13:00:21Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* Remote access to DIDE */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Common Topics in DIDE IT =&lt;br /&gt;
These pages are for internal DIDE IT documentation. None of this information is sensitive, it is simply a list of procedures already present in the main ICT help pages but modified to be more useful to DIDE.&lt;br /&gt;
&lt;br /&gt;
== [[Printing]] ==&lt;br /&gt;
This section describes how to install the mono and colour queues for the managed swipe printers.&lt;br /&gt;
== [[Office 365]] ==&lt;br /&gt;
This section explains the features of your Office 365 subscription. Note that all Office 365 services are managed by your Imperial account (username@ic.ac.uk), not your DIDE one.&lt;br /&gt;
== [[Wi-Fi]] ==&lt;br /&gt;
How to access Imperial&#039;s Wi-Fi network, whether you are a member of Imperial College (using Imperial-WPA), an academic guest (using EduRoam) or a visitor (using _The Cloud).&lt;br /&gt;
== [[Remote access to DIDE]] ==&lt;br /&gt;
In order to access DIDE resources from anywhere other than our wired internal network, you must either access via the zScaler Unified Access app.&lt;br /&gt;
&lt;br /&gt;
== [[Disk quotas]] ==&lt;br /&gt;
All DIDE members have a default personal disk quota of 15GB. All research groups also have a research group share quota.&lt;br /&gt;
== [[Hardware orders]] ==&lt;br /&gt;
A guide to our stock equipment from HP and Dell.&lt;br /&gt;
== [[Multi-Factor Authentication (MFA)]] ==&lt;br /&gt;
How to enable extra security features on your Imperial account.&lt;br /&gt;
== [[Anti-Virus Upgrades (Autumn 2022)]] ==&lt;br /&gt;
Here we discuss how to move from our old security software to our new software.&lt;br /&gt;
== [[Troubleshooting]] ==&lt;br /&gt;
Sometimes things can go wrong. Here we list the most common problems not listed on the main Imperial ICT help pages and how to resolve them.&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Cluster_Documentation&amp;diff=14259</id>
		<title>Cluster Documentation</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Cluster_Documentation&amp;diff=14259"/>
		<updated>2024-02-28T16:58:58Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* We have two high performance clusters for general use, both running Microsoft HPC 2012 R2, Update 3. The smaller, older cluster is [[fi--dideclusthn]] and the larger is [[fi--didemrchnb]]. &lt;br /&gt;
&lt;br /&gt;
* Many users in the department write code and packages in R. We have in-house packages that can allow an almost-interactive experience of running jobs on our high performance clusters, so if that sounds like what you&#039;d like, you might as well stop reading here, and go straight to [https://github.com/mrc-ide/didehpc The DIDEHPC package] - or if you need to join the mrc-ide github org first, go to [https://github.com/mrc-ide/welcome The welcome page].&lt;br /&gt;
&lt;br /&gt;
If you&#039;re not using R, or you are interested in other ways, then continue...&lt;br /&gt;
&lt;br /&gt;
== Windows Users ==&lt;br /&gt;
&lt;br /&gt;
The cluster nodes are Windows 2012-R2 based. This is good news if you&#039;re a Windows user, and especially easy for PCs within the departmental DIDE domain. You have the option of using the MS client for launching jobs (see below), or you can use try the new [[HPC Web Portal]]. If you&#039;re preparing to use the cluster, and have doubts about whether it can run what you want - and whether it will be straightforward to develop and run on it, best talk to me and/or the IT guys first!&lt;br /&gt;
&lt;br /&gt;
== Linux and MAC Users ==&lt;br /&gt;
&lt;br /&gt;
There are two problems, but both can be at least partially overcome. The first is that there is no client for linux. The second is that it can only run windows binaries.&lt;br /&gt;
&lt;br /&gt;
=== Launching jobs on Linux/Mac ===&lt;br /&gt;
&lt;br /&gt;
* The best way might be the [[HPC Web Portal]], which lets you submit jobs through a webpage. Give it a try, and feedback to me any issues! &lt;br /&gt;
&lt;br /&gt;
* Alternatively, you can either (1) go down the VM route, installing a windows virtual machine, eg VMWare or Parallels, and follow the instructions below. (2) Remote Desktop to your friend&#039;s Windows machine. These tend not to be very convenient, but some users have submitted thousands of jobs this way.&lt;br /&gt;
&lt;br /&gt;
=== What Linux/Mac jobs can I run? ===&lt;br /&gt;
&lt;br /&gt;
* Many jobs may be platform indepedent. Where compiled code is involved though, you&#039;ll have some extra work to make sure the binary parts can be run in windows. For R, [https://github.com/mrc-ide/didehpc the tools] help you sort that out. For others, you may need to run a job on the cluster to do your builds. Also, for many linux applications, there is a windows port. Mileage can vary, but it&#039;s worth a try searching for that before you give up hope. Some of these might be installed on the cluster already - see below. Or some you may be able to download and call them from your run script.&lt;br /&gt;
&lt;br /&gt;
* For C code, again, we can run scripts on the cluster to build the binaries for you, if your code can be compiled with (say) the MinGW port of gcc. Cygwin can also be used (although seems less common these days) with accompanying dlls. Get in touch if you need further ideas; most things can be solved. &lt;br /&gt;
&lt;br /&gt;
* Matlab is a little more tricky - we have a range of colossal matlab runtimes on the cluster, but you&#039;d need to compile a windows binary to use them, since the matlab platforms are distinct in every way. For this, probably find a friend, or get in touch, and we&#039;ll work out how you can compile for it.&lt;br /&gt;
&lt;br /&gt;
* There is also the option of running a Windows VM, which might solve all of the above problems.&lt;br /&gt;
&lt;br /&gt;
=== But I really want a unix cluster. ===&lt;br /&gt;
&lt;br /&gt;
* We have run linux clusters in the past ([[fi--didelxhn]]), but there was very low demand, whereas the other clusters are consistently well used. Accessing DIDE network shares from linux was a little harder in some aspects, but we did not implement the more traditional linux approach of having dedicated separate cluster storage that inputs and outputs would have to be staged on to, in order for the cluster to see them. Generally, the flexibility of the other clusters makes such things quite straightforward, and may even feel a pleasure if your background is with the less domain-integrated style of cluster architecture.&lt;br /&gt;
&lt;br /&gt;
* It has also become far easier to write software that builds on multiple platforms with good practice. Tools that only run on one platform are rare, and in some circumstances have raised questions about the quality of those packages. Alternatives are often available.&lt;br /&gt;
&lt;br /&gt;
* Where compilation is the issue - for example if you want to run binaries on the cluster, but your compilation machine runs linux, or is a mac, (Matlab via MCC, or C++ code for example), then get in touch, and there are a few ways we can think of solving that, either by getting someone else, or the cluster itself, to build your code.&lt;br /&gt;
&lt;br /&gt;
* There are also resources in [https://www.imperial.ac.uk/admin-services/ict/self-service/research-support/rcs/computing/high-throughput-computing/ ICT) who run a linux cluster, with the file-staging approach, and also (being shared between a much larger pool of users) have rather stricter rules on job durations and resources than we provide locally in DIDE.&lt;br /&gt;
&lt;br /&gt;
== Getting Started ==&lt;br /&gt;
&lt;br /&gt;
=== Getting access to the cluster ===&lt;br /&gt;
&lt;br /&gt;
Send a mail to Wes (w.hinsley@imperial.ac.uk) requesting access to the cluster. He will add you to the necessary groups, and work out what cluster you should be running on. Unless you are told otherwise, this will be fi--dideclusthn. But if you have been told otherwise, then whenever you see fi--dideclusthn, replace it with the cluster name you’ve been given, either mentally or (less effectively) on your screen with tip-ex.&lt;br /&gt;
&lt;br /&gt;
=== Windows: Install the HPC client software ===&lt;br /&gt;
&lt;br /&gt;
* Run \\fi--dideclusthn.dide.ic.ac.uk\REMINST\setup.exe. &lt;br /&gt;
* Confirm &#039;&#039;&#039;Yes, I really want to run this&#039;&#039;&#039;.&lt;br /&gt;
* There&#039;s an introductory screen, and you click &#039;&#039;&#039;Next&#039;&#039;&#039;&lt;br /&gt;
* You have to tick the &#039;&#039;&#039;Accept&#039;&#039;&#039;, then click &#039;&#039;&#039;Next&#039;&#039;&#039;&lt;br /&gt;
* If it gives you any choice, select &#039;&#039;&#039;Install only the client utilities&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;Next&#039;&#039;&#039;, &#039;&#039;&#039;Next&#039;&#039;&#039;, &#039;&#039;&#039;Next&#039;&#039;&#039;&lt;br /&gt;
* Select &#039;&#039;&#039;Use Microsoft Update&#039;&#039;&#039; and then &#039;&#039;&#039;Next&#039;&#039;&#039;&lt;br /&gt;
* And then &#039;&#039;&#039;Install&#039;&#039;&#039;&lt;br /&gt;
* And possibly &#039;&#039;&#039;Install&#039;&#039;&#039; again – if it had to install any pre-requisites first.&lt;br /&gt;
* And &#039;&#039;&#039;Finish&#039;&#039;&#039;, and the client installation is done.&lt;br /&gt;
* To check everything is alright so far, open a &#039;&#039;&#039;NEW command prompt window&#039;&#039;&#039;.&lt;br /&gt;
* (Because the installer adds things to the path, which only take effect on &#039;&#039;&#039;NEW comamnd windows&#039;&#039;&#039;! :-)&lt;br /&gt;
* (Find it under Accessories, or you can use Start, Run, &#039;&#039;&#039;cmd&#039;&#039;&#039;).&lt;br /&gt;
* Type &amp;lt;code&amp;gt;job list /scheduler:fi--dideclusthn.dide.ic.ac.uk&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And it will list the jobs you have running, which will be none so far!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Id         Owner         Name              State        Priority    Resource Request&lt;br /&gt;
---------- ------------- ----------------- ------------ ----------- -------- -------&lt;br /&gt;
&lt;br /&gt;
0 matching jobs for DIDE\user&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Windows: Using a non-domain machine ===&lt;br /&gt;
&lt;br /&gt;
If you&#039;re using a machine that isn&#039;t actually logged into DIDE, then the client software will have a problem working out who you are. In this case, there are two things you need to do.&lt;br /&gt;
* Check you&#039;ve really got a DIDE username. If you don&#039;t know what it is, talk to your lovely IT team.&lt;br /&gt;
* Connect to the DIDE VPN using ZScaler from https://uafiles.cc.ic.ac.uk/, and login to that with your IC account - but you&#039;ll still need your DIDE account to access DIDE servers after the ZScaler connection is up and running.&lt;br /&gt;
* Now we&#039;ll open a command window using &amp;quot;runas&amp;quot; - which lets you choose which identity the system thinks you are within that command window:-&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
runas /netonly /user:DIDE\user cmd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* (Change user to your own login obviously). It will ask for your password, then open a new command window. In that window, you&#039;ll be able to do cluster-related things as your DIDE username.&lt;br /&gt;
&lt;br /&gt;
=== Windows: Launching and cancelling jobs ===&lt;br /&gt;
==== Windows: Command Line ====&lt;br /&gt;
&lt;br /&gt;
Suppose you have a file called &amp;quot;run.bat&amp;quot; in your home directory, which does what you want to run on the cluster. Let&#039;s say it&#039;s a single-core, very simple job. We’ll discuss what should be inside &amp;quot;run.bat&amp;quot; later. To submit your job on the cluster, at the command prompt, type this (all on one line) - or put it in a file called &amp;quot;launch.bat&amp;quot;, and run it:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /jobtemplate:GeneralNodes /numcores:1 \\qdrive.dide.ic.ac.uk\homes\user\run.bat&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If it&#039;s the first time you’ve run a job - or if you&#039;ve recently changed your password, then it might ask you for your DIDE password and offer to remember it. Otherwise, it will just tell you the ID number of your job.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;Enter the password for ‘DIDE\user’ to connect to ‘FI—DIDECLUSTHN’:&lt;br /&gt;
Remember this password? (Y/N)&lt;br /&gt;
job has been submitted. ID: 123&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you want to remove the job, then:-	&amp;lt;code&amp;gt;job cancel 123 /scheduler:fi--dideclusthn.dide.ic.ac.uk&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Or view its details with &amp;lt;code&amp;gt;job view 123 /scheduler:fi--dideclusthn.dide.ic.ac.uk&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Windows: Job Manager GUI ====&lt;br /&gt;
&lt;br /&gt;
Alternatively to the command-line, you can use the job management software, rather than the command-line. The advantage is that it’s a GUI. The disadvantage is, as in all GUIs, you may not feel totally sure you know what it’s up to – where most of the time the things you want to do might not be very complex, as above.&lt;br /&gt;
&lt;br /&gt;
The job management software will be on your start menu, as above. All the features are under the “Actions” menu, and hopefully it will be self explanatory. Read the details below about launching, and you&#039;ll find the interface bits that do it in the Job Manager. However, you may find over time, especially if you run lots of jobs, that learning to do it the scripted way with the command-line can be quicker.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Information for running any job ==&lt;br /&gt;
&lt;br /&gt;
=== Visibility ===&lt;br /&gt;
&lt;br /&gt;
Any executable/batch file that the cluster will run must be somewhere on the network that the cluster has access to, when it logs in as you. This amounts to any network accessible drive that you have access to when you login – including network shares, such as the temp drive, your home directory, and any specific network space set up for your project.&lt;br /&gt;
&lt;br /&gt;
After a job is launched, all paths are relative to the &#039;&#039;&#039;/workdir:&#039;&#039;&#039; specified on the job submit command-line. Windows does not usually allow a network path to be the current directory, and MS-HPC somehow gets around this. But if in doubt, use fully-qualified paths to specify where files should be read from, or written to. You may want to write code that takes the paths from a parameter file, or as a command-line parameter, to give as much flexibility as possible. &lt;br /&gt;
&lt;br /&gt;
Your home directory, and the temp drive are on departmental servers that don&#039;t have an especially fast connection to the cluster. So avoid having thousands of jobs all reading/writing to those places at once. Additionally, the temp drive is shared between all users, and your home drive has a limited quota. It is also backed up every day, so avoid using it as scratch storage for results you don’t actually want to keep. Generally, the shares you&#039;ll want to use from the clusters will be ones containing the word &amp;quot;NAS&amp;quot;, which the big cluster has fast access to.&lt;br /&gt;
&lt;br /&gt;
=== Interactivity ===&lt;br /&gt;
&lt;br /&gt;
The job must run in an entirely scripted, unattended way. It must not require any key presses or mouse clicks, or other live interactivity while it runs. So jobs generally will read some sort of input (from a file, or from the way you run the job), do some processing, and write the results somewhere for you - all without intervention.&lt;br /&gt;
&lt;br /&gt;
== Launching jobs ==&lt;br /&gt;
&lt;br /&gt;
Jobs can be launched either through the Job Manager interface, or through the command line tools, which offer greater flexibility. We&#039;ll describe the command line method here; if you want to use the GUI, then it&#039;ll be a case of finding the matching boxes... Below are the specifics for our clusters. For more information, simply type &amp;lt;code&amp;gt;job&amp;lt;/code&amp;gt; on the commandline, or &amp;lt;code&amp;gt;job submit&amp;lt;/code&amp;gt; for the list of submission-related commands.&lt;br /&gt;
&lt;br /&gt;
=== FI--DIDECLUSTHN vs FI--DIDEMRCHNB ===&lt;br /&gt;
&lt;br /&gt;
Job submissions, as shown below, must specify a &amp;quot;job template&amp;quot;, which sets up a load of default things to make the job work. On fi--dideclusthn, the job templates are called 4Core, 8Core and GeneralNodes, which will respectively force jobs to run on the 4-core nodes, the 8-core nodes, or on any machine available.&lt;br /&gt;
&lt;br /&gt;
On fi--didemrchnb, you can set the job template to be... 8Core, 12Core, 16Core, 12and16Core, and GeneralNodes - which hopefully are fairly self-explanatory. There are a couple of other job templates, (24Core and Phi), but those are a bit special purpose for now, so don&#039;t use them!&lt;br /&gt;
&lt;br /&gt;
=== Job Submission ===&lt;br /&gt;
&lt;br /&gt;
Job submissions from the command line can take the following form (all on one line):-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /stdout:\\path\to\stdout.txt&lt;br /&gt;
   /stderr:\\path\to\stderr.txt /numcores:1-1 /jobtemplate:4Core \\path\to\run.bat&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== The /singlenode argument ===&lt;br /&gt;
&lt;br /&gt;
In MS HPC (2012), Microsoft finally added a tag to allow you to say that the &#039;n&#039; cores you requested must be on the same computer. Therefore, if you know precisely how many cores you want, then use the following (on one line):-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /singlenode:true &lt;br /&gt;
   /jobtemplate:8Core \\path\to\run.bat&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
However, there is one bug with this, for the specific case where you request a whole node, regardless of how many cores it has. In this case, oddly, you have to disable single node:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /singlenode:false &lt;br /&gt;
   /numnodes:1 /jobtemplate:8Core \\path\to\run.bat&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Languages and libraries supported ==&lt;br /&gt;
&lt;br /&gt;
A number of languages, and different versions of languages are available on the cluster. The sections below refer to your &amp;quot;run.bat&amp;quot; file - a batch file that you will create which will get run by a cluster node when a suitable one is available. The commands described below are to be put in this &amp;quot;run.bat&amp;quot; file, and they add various directories to the path, so that the software you want will be added to the path. &lt;br /&gt;
&lt;br /&gt;
=== C/C++ === &lt;br /&gt;
&lt;br /&gt;
A number of Microsoft C++ and Intel C++ runtimes are installed, but it&#039;s usually better to try and avoid using them, and make your executable as stand-alone as possible. If it requires any external libraries that you&#039;ve had to download, then put the .dll file in the same directory as the .exe file. If you use Microsoft Visual Studio, in Project Preferences, C/C++, Code Generation, make sure the Runtime Library is Multi-threaded (/MT) – the ones with DLL files won’t work. Even so, on recent versions of the Intel and Microsoft C compilers, &amp;quot;static linking&amp;quot; doesn’t really mean static when it comes to OpenMP, and you’ll have to copy some DLLs and put them next to your EXE file. See the OpenMP section below.&lt;br /&gt;
&lt;br /&gt;
The cluster nodes are all 64-bit, but they will run 32-bit compiled code. Just make sure you provide the right DLLs!&lt;br /&gt;
&lt;br /&gt;
Here is a document about [[Using the Xeon Phi]]&lt;br /&gt;
&lt;br /&gt;
Here is a document about [[Using MPI]]&lt;br /&gt;
&lt;br /&gt;
And if you want to use libraries such as GSL, then try [[C/C++ Libraries for Windows]]&lt;br /&gt;
&lt;br /&gt;
=== Java ===&lt;br /&gt;
&lt;br /&gt;
Java doesn&#039;t strictly need installing; you can setup any Java Runtime Environment you like, from Oracle, or anywhere. If you want to do this, then, (if you were to use the Server JRE from Oracle), something similar to the following will add java.exe and jvm.dll to the path, and set the JAVA_HOME environment variable, which most Java-using software will appreciate.&lt;br /&gt;
&lt;br /&gt;
    set JAVA_HOME=\\my\path\to\jre1.8.0&lt;br /&gt;
    set path=%JAVA_HOME%\bin;%JAVA_HOME%\bin\server;%path%&lt;br /&gt;
&lt;br /&gt;
For convenience, if you&#039;re happy with Azul&#039;s OpenJDK Java 1.8.0 update 308 (September 2021), then &amp;lt;code&amp;gt;call setJava64&amp;lt;/code&amp;gt; in your run script will set this up for you. Incidentally the above will also add what&#039;s needed for using the rJava package in R - in which case you&#039;ll perhaps also want something like &amp;lt;code&amp;gt;call setR64_4_1_0&amp;lt;/code&amp;gt; in your run script.&lt;br /&gt;
&lt;br /&gt;
=== Perl ===&lt;br /&gt;
&lt;br /&gt;
Strawberry Perl 64-bit portable, v5.30.1.1. Put &amp;lt;code&amp;gt;call setPerl&amp;lt;/code&amp;gt; at the top of your script.&lt;br /&gt;
&lt;br /&gt;
=== R ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;New tools are coming&#039;&#039;&#039;: [http://dide-tools.github.io/didehpc/vignettes/quickstart.html see here].  The instructions below are still valid if you want to do this manually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You can R jobs on all the clusters. This is the latest wisdom on how to do so – thanks to James, Jeff, Hannah and others. &lt;br /&gt;
&lt;br /&gt;
First, if you are wanting to use packages, then set up a package repository on your home directory by running this in R.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;install.packages(&amp;quot;&amp;lt;package&amp;gt;&amp;quot;,lib=&amp;quot;Q:/R&amp;quot;)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now, write your run script. Suppose you have an R script in your home directory: Q:\R-scripts\test.R. And suppose you’ve set up your repository as above. Your run.bat should then be:-&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
	call &amp;lt;script for the R version you want – see below&amp;gt;&lt;br /&gt;
	net use Q: \\qdrive.dide.ic.ac.uk\homes\user&lt;br /&gt;
	set R_LIBS=Q:\R&lt;br /&gt;
	set R_LIBS_USER=Q:\R&lt;br /&gt;
	Rscript Q:\R-scripts\test.R&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Various packages require various R versions, and the cluster supports a few versions. To choose which one, change the first line of the script above to one of these – 32-bit or 64-bit versions of R releases. Purely for amusement, R&#039;s codenames are shown here too. &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setr32_2_13_1.bat		call setr64_2_13_1.bat    (anyone know the codename?)&lt;br /&gt;
call setr32_2_14_2.bat		call setr64_2_14_2.bat    (Gift-getting season)&lt;br /&gt;
call setr32_2_15_2.bat		call setr64_2_15_2.bat    (Trick or treat)&lt;br /&gt;
call setr32_3_0_1.bat           call setr64_3_0_1.bat     (Good Sport)&lt;br /&gt;
call setr32_3_0_2.bat           call setr64_3_0_2.bat     (Frisbee Sailing)&lt;br /&gt;
call setr32_3_1_0.bat           call setr64_3_1_0.bat     (Spring Dance)&lt;br /&gt;
call setr32_3_1_2.bat           call setr64_3_1_2.bat     (Pumpkin Helmet)&lt;br /&gt;
call setr32_3_2_2.bat           call setr64_3_2_2.bat     (Fire Safety)&lt;br /&gt;
call setr32_3_2_3.bat           call setr64_3_2_3.bat     (Wooden Christmas Tree)&lt;br /&gt;
call setr32_3_2_4.bat           call setr64_3_2_4.bat     (Very Secure Dishes - Revised Version - R later renamed this to 3.2.5)&lt;br /&gt;
call setr32_3_3_1.bat           call setr64_3_3_1.bat     (Bug in your hair)&lt;br /&gt;
call setr32_3_3_2.bat           call setr64_3_3_2.bat     (Sincere Pumpkin Patch)&lt;br /&gt;
call setr32_3_4_0.bat           call setr64_3_4_0.bat     (You Stupid Darkness)&lt;br /&gt;
call setr32_3_4_2.bat           call setr64_3_4_2.bat     (Short Summer)&lt;br /&gt;
call setr32_3_4_4.bat           call setr64_3_4_4.bat     (Someone to lean on)&lt;br /&gt;
call setr32_3_5_0.bat           call setr64_3_5_0.bat     (Joy in Playing)&lt;br /&gt;
call setr32_3_5_1.bat           call setr64_3_5_1.bat     (Feather Spray)&lt;br /&gt;
call setr32_3_5_3.bat           call setr64_3_5_3.bat     (Great Truth)&lt;br /&gt;
call setr32_3_6_0.bat           call setr64_3_6_0.bat     (Planting of a Tree)&lt;br /&gt;
call setr32_3_6_1.bat           call setr64_3_6_1.bat     (Action of the Toes)&lt;br /&gt;
call setr32_3_6_3.bat           call setr64_3_6_3.bat     (Holding the Windsock)&lt;br /&gt;
call setr32_4_0_2.bat           call setr64_4_0_2.bat     (Taking Off Again)&lt;br /&gt;
call setr32_4_0_3.bat           call setr64_4_0_3.bat     (Bunny-Wunnies Freak Out)&lt;br /&gt;
call setr32_4_0_5.bat           call setr64_4_0_5.bat     (Shake and Throw)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following versions are *not* available on the cluster at the moment - but here are their names anyway, as it seemed a shame to miss them out. Let me know if you desperately need one of these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
2.14.0    Great Pumpkin                   &lt;br /&gt;
2.14.1    December Snowflakes&lt;br /&gt;
2.15.0    Easter Beagle&lt;br /&gt;
2.15.1    Roasted Marshmallow&lt;br /&gt;
2.15.3    Security Blanket&lt;br /&gt;
3.0.0     Masked Marvel&lt;br /&gt;
3.0.3     Warm Puppy&lt;br /&gt;
3.1.1     Sock it to me&lt;br /&gt;
3.1.3     Smooth Sidewalk&lt;br /&gt;
3.2.0     Full of Ingredients&lt;br /&gt;
3.2.1     World famous astronaut&lt;br /&gt;
3.2.4     Very Secure Dishes (the non-revised version)&lt;br /&gt;
3.3.0     Supposedly Educational&lt;br /&gt;
3.3.3     Another Canoe&lt;br /&gt;
3.4.1     Single Candle&lt;br /&gt;
3.4.3     Kite-Eating Tree&lt;br /&gt;
3.5.2     Eggshell Igloo&lt;br /&gt;
3.6.2     Dark and Stormy Night&lt;br /&gt;
4.0.0     Arbor Day&lt;br /&gt;
4.0.1     See Things Now&lt;br /&gt;
4.0.4     Lost Library Book&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It also seems that different R versions put their packages in different structures – sometimes adding &amp;quot;win-library&amp;quot; into there for fun. Basically, R_LIBS and R_LIBS_USER should be paths to a folder that contains a list of other folders, one for each package you&#039;ve installed.&lt;br /&gt;
&lt;br /&gt;
IMPORTANT:  R_LIBS and R_LIBS_USER paths must NOT contain quotes, nor spaces. If the path to your library contains spaces, you need to use old-fashioned 8-character names. If in your command window, you type &amp;lt;code&amp;gt;dir /x&amp;lt;/code&amp;gt;, you’ll see the names – Program Files tends to become PROGRA~1 for instance. &lt;br /&gt;
&lt;br /&gt;
==== Passing parameters to R scripts ====&lt;br /&gt;
Passing parameters to R scripts means you can have fewer versions of your R and bat files and easily run whole sets of jobs. You can get parameters into R using Rscript (but not Rcmd BATCH, I think) as follows. In the run.bat example above, the Rscript statement becomes:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Rscript Q:\R-scripts\test.R arg1 arg2 arg3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Within the R code, the arguments can be recovered using &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
args &amp;lt;- commandArgs(trailingOnly = TRUE)&lt;br /&gt;
&lt;br /&gt;
outFileName &amp;lt;- args[1]     ## name of output file.&lt;br /&gt;
dataFileName &amp;lt;- args[2]    ## name of local data file. &lt;br /&gt;
currentR0 &amp;lt;- as.numeric(args[3]) ## convert this explicitly to number. &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
If you want your arguments to have a particular type, best to explicitly convert (see R0 above). Better still, you can pass parameters directly into the batch file that runs the R script. Command line arguments can be referenced within the batch file using %1, %2, etc. For example, if you have a batch file, runArgs.bat:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call &amp;lt;script for the R version you want – see below&amp;gt;&lt;br /&gt;
net use Q: \\qdrive.dide.ic.ac.uk\homes\user&lt;br /&gt;
set R_LIBS=Q:\R&lt;br /&gt;
set R_LIBS_USER=Q:\R&lt;br /&gt;
Rscript Q:\R-scripts\%1.R %2 %3 %4&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
then&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
runArgs.bat myRScript arg1 arg2 arg3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
will run the R script myRScript.R and pass it the parameters arg1, arg2 and arg3. The batch file runArgs.bat is now almost a &#039;&#039;&#039;generic R script runner&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== OpenMP ===&lt;br /&gt;
&lt;br /&gt;
This has been tested with C/C++ - but the same should apply to other languages such as fortran, that achieve multi-threading with a DLL file.&lt;br /&gt;
&lt;br /&gt;
==== Microsoft&#039;s C/C++ Compiler ====&lt;br /&gt;
You will need to copy vcomp100.dll (for Visual Studio 2010 – it maybe vcomp90.dll for 2008), into the same directory as your executable. You can usually find the dll file in a directory similar to:- C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\redist\x64\Microsoft.VC100.OpenMP. Extrapolate for future versions! Also make sure that you&#039;ve enabled OpenMP in the Properties (C++/Language).&lt;br /&gt;
&lt;br /&gt;
==== GCC or MinGW ====&lt;br /&gt;
Usually, this applies to Eclipse use. In project properties, the C++ command “g++ -fopenmp”, the C command “gcc –fopenmp”, and in the Linker options, under Miscellaneous, Linker flags, put “-fopenmp” too. Copy the OpenMP DLLs from MinGW into the same directory as your final executable. You may find the dlls are in C:\MinGW\Bin\libgomp-1.dll and in the same place, libpthread-2.dll,  libstdc++-6.dll and libgcc_s_dw2-1.dll.&lt;br /&gt;
&lt;br /&gt;
==== Intel C++ Compiler ====&lt;br /&gt;
Copy the libiomp5md.dll file from somewhere like C:\Program Files (x86)\Intel\ComposerXE-2011\redist\intel64\compiler\libiomp5md.dll to the same place as your executable. And in Visual Studio, make sure you&#039;ve enabled OpenMP in the project properties.&lt;br /&gt;
&lt;br /&gt;
==== How many threads? ====&lt;br /&gt;
The OpenMP function omp_max_threads() returns the number of &#039;&#039;physical&#039;&#039; cores on a machine, not the number of cores &#039;&#039;allocated&#039;&#039; to your job. To determine how many cores the scheduler actually allocated to you, use the following code to dig up the environment variable CCP_NUMCPUS, which will be set by the cluster management software:- &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
		int set_NCores() {&lt;br /&gt;
		   char * val;&lt;br /&gt;
		   char * endchar;&lt;br /&gt;
		   val = getenv(&amp;quot;CCP_NUMCPUS&amp;quot;);&lt;br /&gt;
		   int cores = omp_get_max_threads();&lt;br /&gt;
		   if (val!=NULL) cores = strtol (val,&amp;amp;endchar,10);&lt;br /&gt;
                   omp_set_num_threads(cores);&lt;br /&gt;
		   return cores;&lt;br /&gt;
		}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== WinBugs (or OpenBugs) ===&lt;br /&gt;
&lt;br /&gt;
They are similar, but OpenBugs 3.2.2 is the one we&#039;ve gone for. Something like this as your run.bat script will work:-&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setOpenBugs&lt;br /&gt;
openbugs \\path\to\script.txt /HEADLESS&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== MatLab ===&lt;br /&gt;
&lt;br /&gt;
There are various ways of producing a non-interactive executable from Matlab. Perhaps the simplest (not necessarily the best performance) way is to use “mcc.exe” – supplied with most full versions of Matlab, including the Imperial site licence version that you&#039;ve probably got.&lt;br /&gt;
&lt;br /&gt;
==== Use mcc.exe to compile your code ====&lt;br /&gt;
&lt;br /&gt;
Use windows explorer to navigate to the folder where the “.m” files are for the project you want to compile. Now use a good text editor to create a file called “compile.bat” in that folder. It should contain something similar to the following:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mcc -m file1.m file2.m file3.m -o myexe&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Don’t copy/paste the text from this document by the way – Word has a different idea of what a dash is to most other software, and will probably replace the two dashes with funny characters. so you have to list every single .m file that your project needs, after the’-m’. If you save this file, then double-click on it, then it will think for some while, and produce “myexe.exe” in this example. Copy your .exe file into a network accessible place as usual.&lt;br /&gt;
&lt;br /&gt;
==== Launch on the cluster. ====&lt;br /&gt;
&lt;br /&gt;
The launch.bat file will be exactly the same as before – see page 2. The run script will then start with a line that tells the cluster which version of Matlab you used to compile the cluster. Below is the table of different versions. The runtimes are huge and cumbersome to install on the cluster, so as a result I haven’t installed every single one. If you need one that’s not listed, get in touch.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Matlab Version&lt;br /&gt;
! First line of run script&lt;br /&gt;
|- &lt;br /&gt;
| R2009b&lt;br /&gt;
| call useMatLab79&lt;br /&gt;
|- &lt;br /&gt;
| R2010a&lt;br /&gt;
| call useMatLab713&lt;br /&gt;
|- &lt;br /&gt;
| R2011a&lt;br /&gt;
| call useMatLab715&lt;br /&gt;
|- &lt;br /&gt;
| R2011b&lt;br /&gt;
| call useMatLab716&lt;br /&gt;
|- &lt;br /&gt;
| R2012a (64-bit)&lt;br /&gt;
| call useMatLab717_64&lt;br /&gt;
|- &lt;br /&gt;
| R2012b (64-bit)&lt;br /&gt;
| call useMatLab80_64&lt;br /&gt;
|- &lt;br /&gt;
| R2013a (64-bit)&lt;br /&gt;
| call useMatLab81_64&lt;br /&gt;
|- &lt;br /&gt;
| R2014a (64-bit)&lt;br /&gt;
| call useMatLab83_64&lt;br /&gt;
|- &lt;br /&gt;
| R2014b (64-bit)&lt;br /&gt;
| call useMatLab84_64&lt;br /&gt;
|- &lt;br /&gt;
| R2015a (64-bit)&lt;br /&gt;
| call useMatLab85_64&lt;br /&gt;
|- &lt;br /&gt;
| R2015b (64-bit)&lt;br /&gt;
| call useMatLab90_64&lt;br /&gt;
|- &lt;br /&gt;
| R2016b (64-bit)&lt;br /&gt;
| call useMatLab91_64&lt;br /&gt;
|- &lt;br /&gt;
| R2017a (64-bit)&lt;br /&gt;
| call useMatLab92_64&lt;br /&gt;
|- &lt;br /&gt;
| R2019a (64-bit)&lt;br /&gt;
| call useMatLab96_64&lt;br /&gt;
|- &lt;br /&gt;
| R2021a (64-bit)&lt;br /&gt;
| call useMatLab910_64&lt;br /&gt;
|- &lt;br /&gt;
| R2022a (64-bit)&lt;br /&gt;
| call useMatLab912_64&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Python ===&lt;br /&gt;
&lt;br /&gt;
* The most recent version of each major release is on the cluster. Different python versions within the same release (e.g., 3.5.1 and 3.5.2) do not behave nicely together in automated installation, so if you have a desperate need for a previous minor version, get in touch. While 2.7.18 is available, we &#039;&#039;&#039;strongly&#039;&#039;&#039; recommend migrating away from Python 2.7, as it has been officially discontinued on 1st January 2020. Experiences may vary, and future success is not guaranteed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
2.7.18  64-bit   call set_python_27_64.bat&lt;br /&gt;
3.5.9   64-bit   call set_python_35_64.bat&lt;br /&gt;
3.6.15  64-bit   call set python_36_64.bat&lt;br /&gt;
3.7.17  64-bit   call set_python_37_64.bat&lt;br /&gt;
3.8.17  64-bit   call set python_38_64.bat&lt;br /&gt;
3.9.17  64-bit   call set_python_39_64.bat&lt;br /&gt;
3.10.12 64-bit   call set python_310_64.bat&lt;br /&gt;
3.11.4  64-bit   call set_python_311_64.bat&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* You&#039;ll most likely want to use some packages, so you&#039;ll need to have a network-accessible location to put your packages in. If you&#039;re running a version of Windows with Python that matches one installed on the cluster, then you&#039;ll be able to share that package repository between the two. But if you&#039;re running a different version, or a different operating system, or a different Python version, then you&#039;ll need to keep your local package repository separate from the one the cluster uses.&lt;br /&gt;
* Here comes the basic script to run some python. Suppose I decide to put my Python packages for the cluster in &#039;&#039;&#039;\\qdrive.dide.ic.ac.uk\homes\username\PythonCluster37_64&#039;&#039;&#039; (which is Q:\PythonCluster37_64 on a DIDE Windows PC). To run some python, something like the following:-&lt;br /&gt;
&lt;br /&gt;
 call set_python_37_64&lt;br /&gt;
 set PYTHONPATH=\\qdrive\homes\username\PythonCluster37_64&lt;br /&gt;
 python \\qdrive\homes\username\Python\MyScript.py&lt;br /&gt;
&lt;br /&gt;
or if you want to do this in a programmatic way...&lt;br /&gt;
&lt;br /&gt;
 import sys&lt;br /&gt;
 sys.path = [&#039;\\\\qdrive\\homes\\username\\PythonCluster37_64&#039;] + sys.path&lt;br /&gt;
&lt;br /&gt;
==== Packages ====&lt;br /&gt;
&lt;br /&gt;
* If you want to install a package like numpy, that&#039;s readily available through pip, then you can launch a batch file like this:-&lt;br /&gt;
 call set_python_36_64&lt;br /&gt;
 pip install numpy --target \\qdrive\homes\username\PythonCluster36_64&lt;br /&gt;
* or alternatively, you could write a python script that looks like this, and launch it as normal:-&lt;br /&gt;
 import pip&lt;br /&gt;
 pip.main([&#039;install&#039;,&#039;numpy&#039;,&#039;--target&#039;,&#039;\\\\qdrive\\homes\\username\\PythonCluster36_64&#039;])&lt;br /&gt;
&lt;br /&gt;
* And if you&#039;re running the same Python version on a Windows machine, then you can do these two locally, without submitting a cluster job to do them for you.&lt;br /&gt;
&lt;br /&gt;
* And next time you submit a python job on the cluster, python will look in the place set by PYTHONPATH, and will find the packages you&#039;ve just installed when you import them.&lt;br /&gt;
&lt;br /&gt;
=== Beast and Beagle ===&lt;br /&gt;
&lt;br /&gt;
We&#039;ve got a couple of versions available. For BEAST 1.75 with BEAGLE 1.0:  (the x y z represents all the command-line arguments you&#039;ll want to pass to beast)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setbeast&lt;br /&gt;
call beast-beagle x y z&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you want BEAST 1.82 or 1.83 with BEAGLE 2.1:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setbeast_182                        call setbeast_183&lt;br /&gt;
call beast-beagle_182 x y z              call beast-beagle_183 x y z&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And if you want BEAST 2.3.2 with BEAGLE 2.1 (note that BEAST 2 is a different, er, beast to BEAST 1, regarding packages and compatibilities, so only use BEAST 2 if you know that&#039;s what you want to use).&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setbeast_232&lt;br /&gt;
call beast-beagle_232 x y z&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
OpenCL is installed on all the nodes, which means Beagle will pick up the Intel Xeon processors and use what it can on them. It will also detect the Xeon Phis where they&#039;re available. If that&#039;s something you&#039;d be particularly interested in using, drop me a line.&lt;br /&gt;
&lt;br /&gt;
=== Blast ===&lt;br /&gt;
&lt;br /&gt;
Drop me a line to join the party testing this, and to get added to the (large) BlastDB network share.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setblast&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
will set the `BLASTDB` environment variable to point to what we current have of the `v5` database, and the Blast tools (2.9.0, 64-bit) will be added to the path. So you can &lt;br /&gt;
then call `blastp`, `blastn`, `blastx` setc.&lt;br /&gt;
&lt;br /&gt;
=== BOW (BioInformatics on Windows) ===&lt;br /&gt;
&lt;br /&gt;
A number of Bio-informatics tools are ready to go. These used to be provided together on codeplex, but that has since been retired. Ugene is one project that&lt;br /&gt;
maintains windows builds of them. Start your run.bat file with &amp;lt;code&amp;gt;call setBOW&amp;lt;/code&amp;gt; to add these to the path:-&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! EXE File&lt;br /&gt;
! Version&lt;br /&gt;
|- &lt;br /&gt;
| SamTools.exe&lt;br /&gt;
| 0.1.19-44429cd&lt;br /&gt;
|- &lt;br /&gt;
| BCFTools.exe&lt;br /&gt;
| 0.1.19-44428cd&lt;br /&gt;
|- &lt;br /&gt;
| bgzip&lt;br /&gt;
| ?&lt;br /&gt;
|- &lt;br /&gt;
| razip&lt;br /&gt;
| ?&lt;br /&gt;
|- &lt;br /&gt;
| bwa&lt;br /&gt;
| 0.7.17-r1188&lt;br /&gt;
|-&lt;br /&gt;
| tabix&lt;br /&gt;
| 0.2.5 (r1005)&lt;br /&gt;
|-&lt;br /&gt;
| minimap2&lt;br /&gt;
| 2.24 (r1122)&lt;br /&gt;
|-&lt;br /&gt;
| raxml&lt;br /&gt;
| 8.2.12 (best for each node)&lt;br /&gt;
|-&lt;br /&gt;
| raxml_sse3&lt;br /&gt;
| 8.2.12 (pthreads+sse3)&lt;br /&gt;
|-&lt;br /&gt;
| raxml_avx&lt;br /&gt;
| 8.2.12 (pthreads+avx)&lt;br /&gt;
|-&lt;br /&gt;
| raxml_avx2&lt;br /&gt;
| 8.2.12 (pthreads+avx2)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Note that BWA-MEM is hardwired to use a linux-only feature, so will produce an odd message and not do what you want if you use that mode on Windows. However, it seems that minimap2 may be a faster and more accurate way&lt;br /&gt;
of doing what bwa does in any case, and that seems to have no such limitation.&lt;br /&gt;
&lt;br /&gt;
Also, note that raxml.exe is a copy of the most optimised build for the particular cluster node the job is running on. fi--dideclusthn only supports SSE3;&lt;br /&gt;
fi--didemrchnb varies a little; the 32-cores support AVX2, the 24, 20 and 16 core machines support AVX, and only the oldest 12-core nodes only support SSE3. You don&#039;t have to worry about, except to expect performance to vary between them.&lt;br /&gt;
&lt;br /&gt;
=== GATK and Picard ===&lt;br /&gt;
&lt;br /&gt;
These both rely on Java, so put this in your run script:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setJava64&lt;br /&gt;
call setgatk&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and then &amp;lt;code&amp;gt;gatk&amp;lt;/code&amp;gt; in your scripts will use Python 3.7 to call the argument handling wrapper for GATK 4.2.2.0, and &amp;lt;code&amp;gt;picard&amp;lt;/code&amp;gt; maps to the picard (2.26.2) jar file.&lt;br /&gt;
&lt;br /&gt;
=== FastQC ===&lt;br /&gt;
&lt;br /&gt;
This one has a slight eccentricity that instead of passing normal command-line args, it uses java&#039;s -D command-line options to buffer them out of an environment variable&lt;br /&gt;
called _JAVA_OPTIONS. Strange but true. The ZIP comes with a bash script, which I&#039;ll reimplement if anyone actually wants me to. But in the meantime, it&#039;s easy to work &lt;br /&gt;
out the arguments by inspection. For example, most likely usage:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setFastQC&lt;br /&gt;
&lt;br /&gt;
set _JAVA_OPTIONS=&#039;-Dfastqc.output_dir=%OUT%&#039;&lt;br /&gt;
call fastqc thing.fq&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== MAFFT ===&lt;br /&gt;
&lt;br /&gt;
For version 7.212 (Win64), write &amp;lt;code&amp;gt;call setMAFFT.bat&amp;lt;/code&amp;gt; at the top of your run script.&lt;br /&gt;
&lt;br /&gt;
=== Applied-Maths Open Source ===&lt;br /&gt;
&lt;br /&gt;
Write &amp;lt;code&amp;gt;call setAppliedMaths.bat&amp;lt;/code&amp;gt; at the top of your run script, to add these to the path:&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! EXE File(s)&lt;br /&gt;
! Description&lt;br /&gt;
! Version&lt;br /&gt;
|- &lt;br /&gt;
| velvetg_mt_x86.exe&lt;br /&gt;
| Graph Construction Multi-threaded, 32-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velvetg_mt_x64.exe&lt;br /&gt;
| Graph Construction Multi-threaded, 64-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velvetg_st_x86.exe&lt;br /&gt;
| Graph Construction Multi-threaded, 32-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velvetg_st_x64.exe&lt;br /&gt;
| Graph Construction Multi-threaded, 64-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velveth_mt_x86.exe&lt;br /&gt;
| Hashing Multi-threaded, 32-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velveth_mt_x64.exe&lt;br /&gt;
| Hashing Multi-threaded, 64-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velveth_st_x86.exe&lt;br /&gt;
| Hashing Multi-threaded, 32-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velveth_st_x64.exe&lt;br /&gt;
| Hashing Multi-threaded, 64-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| ray_x64.exe&lt;br /&gt;
| Ray 64-bit (for MPI)&lt;br /&gt;
| 1.6&lt;br /&gt;
|-&lt;br /&gt;
| ray_x86.exe&lt;br /&gt;
| Ray 32-bit (for MPI)&lt;br /&gt;
| 1.6&lt;br /&gt;
|-&lt;br /&gt;
| Mothur_x64.exe&lt;br /&gt;
| Mothur 64-bit (for MPI)&lt;br /&gt;
| 1.25.1&lt;br /&gt;
|-&lt;br /&gt;
| Mothur_x86.exe&lt;br /&gt;
| Mothur 32-bit (for MPI)&lt;br /&gt;
| 1.25.1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Tensorflow ===&lt;br /&gt;
&lt;br /&gt;
Here is an example of getting Tensorflow (as a python package) available from an R script, using the cluster to install everything for you. It only works for Tensorflow 2.0 - older versions and newer versions seem to want combinations of DLLs that I can&#039;t satisfy. The following are I think minimal steps to get Tensorflow running from Python and R.&lt;br /&gt;
&lt;br /&gt;
* Create a folder for your python packages in your home directory (so the cluster can see it. I&#039;m calling mine &amp;lt;code&amp;gt;Q:/python_37_repo&amp;lt;/code&amp;gt; - and the cluster will call it \\fi--san03.dide.ic.ac.uk\homes\wrh1\python_37_repo - change wrh1 to your DIDE username of course.&lt;br /&gt;
* Create a similar folder for R packages, which for me is &amp;lt;code&amp;gt;Q:/R4&amp;lt;/code&amp;gt;&lt;br /&gt;
* And a third folder, Q:/Tensorflow to do this work in.&lt;br /&gt;
* Download these DLLs and put them in the Q:/Tensorflow folder - at present they seem to be the ones Python/Tensorflow wants. Let&#039;s hope for the best... Download [https://mrcdata.dide.ic.ac.uk/resources/msvcp140.dll msvcp140.dll] and [https://mrcdata.dide.ic.ac.uk/resources/msvcp140_1.dll msvcp140_1.dll] into your &amp;lt;code&amp;gt;Q:/Tensorflow&amp;lt;/code&amp;gt; folder.&lt;br /&gt;
&lt;br /&gt;
* Now, create a script &amp;lt;code&amp;gt;Q:/Tensorflow/prepare.bat&amp;lt;/code&amp;gt;. We&#039;re going to launch this on the cluster, and get it to wire up the packages we want. Replace USER with your username...&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  net delete Q: /y&lt;br /&gt;
  net use Q: \\qdrive.dide.ic.ac.uk\homes\USER&lt;br /&gt;
  set TMPDIR=%TEMP%&lt;br /&gt;
  set PYTHONPATH=\\qdrive.dide.ic.ac.uk\homes\USER\python_37_repo&lt;br /&gt;
  set R_LIBS=Q:\R4&lt;br /&gt;
  set R_LIBS_USER=Q:\R4&lt;br /&gt;
  call set_python_37_64.bat&lt;br /&gt;
  call setr64_4_0_3.bat&lt;br /&gt;
  pip install --no-cache-dir tensorflow==2.00 --target Q:\python_37_repo&lt;br /&gt;
  RScript Q:\Tensorflow\install_tensorflow.R&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Create also &amp;lt;code&amp;gt;Q:/Tensorflow/install_tensorflow.R&amp;lt;/code&amp;gt; contains:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  install.packages(c(&amp;quot;reticulate&amp;quot;, &amp;quot;tensorflow&amp;quot;),lib=&amp;quot;Q:/R4&amp;quot;,repos=&amp;quot;https://cran.ma.imperial.ac.uk/&amp;quot;)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Now submit the prepare job to the cluster with &amp;lt;code&amp;gt;job submit /scheduler:fi--dideclusthn /jobtemplate:GeneralNodes \\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\prepare.bat&amp;lt;/code&amp;gt; - or if you use the portal, just &amp;lt;code&amp;gt;\\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\prepare.bat&amp;lt;/code&amp;gt; in the big window will do it. That will take a while, but you should notice lots of new files in your Q:/python_37_repo folder. You&#039;ll only need to do this once (unless you delete your Python repo folder, or it randomly breaks and you start again...)&lt;br /&gt;
&lt;br /&gt;
* Next, create a file &amp;lt;code&amp;gt;Q:/Tensorflow/run.bat&amp;lt;/code&amp;gt; containing the following the two &amp;quot;call&amp;quot; lines near the end are the ones that do some &amp;quot;work&amp;quot; in python or R, so this script basically a template for running your future jobs. Just change those two calls to set off the python or R code you want to run that uses Tensorflow.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call set_python_37_64.bat&lt;br /&gt;
call setr64_4_0_3.bat&lt;br /&gt;
net use Q: /delete /y&lt;br /&gt;
net use Q: \\qdrive.dide.ic.ac.uk\homes\USER&lt;br /&gt;
set PYTHONPATH=Q:/python_37_repo&lt;br /&gt;
set R_LIBS=Q:\R4&lt;br /&gt;
set R_LIBS_USER=Q:\R4&lt;br /&gt;
call python Q:\tensorflow\test_tensorflow.py&lt;br /&gt;
call RScript Q:\tensorflow\test_tensorflow.R&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* And finally, you&#039;ll need &amp;lt;code&amp;gt;Q:\tensorflow\test_tensorflow.py&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;Q:\tensorflow\test_tensorflow.R&amp;lt;/code&amp;gt; to exist. Here are minimal tests that everything is wired up. &amp;lt;code.test_tensorflow.py&amp;lt;/code&amp;gt; first:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import tensorflow as tf;&lt;br /&gt;
print(tf.reduce_sum(tf.random.normal([1000, 1000])));&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and &amp;lt;code&amp;gt;Q:\Tensorflow\test_tensorflow.R&amp;lt;/code&amp;gt; contains:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
library(reticulate)&lt;br /&gt;
reticulate::py_config()&lt;br /&gt;
library(tensorflow)&lt;br /&gt;
tf$constant(&#039;Hello, TensorFlow!&#039;)&lt;br /&gt;
tf$Variable(tf$zeros(shape(1L)))&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Now submit the run job to the cluster with &amp;lt;code&amp;gt;job submit /scheduler:fi--dideclusthn /jobtemplate:GeneralNodes \\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\run.bat&amp;lt;/code&amp;gt; - or if you use the portal, just &amp;lt;code&amp;gt;\\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\run.bat&amp;lt;/code&amp;gt; in the big window will do it - and perhaps paste &amp;lt;code&amp;gt;\\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\output.txt&amp;lt;/code&amp;gt; in the stdout box to collect the input and see how it gets on. You should see sensible output from both tests.&lt;br /&gt;
&lt;br /&gt;
== Launching a job ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Submitting many jobs ==&lt;br /&gt;
&lt;br /&gt;
Suppose you write an exe that you might run with… Mysim.exe init.txt 1 2 3, and you want to run it many times with a range of parameters. One way of many, is to write a launch.bat file that will run “job submit” separately, for example (thanks Tini/James!):-&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
@echo off&lt;br /&gt;
set SubDetails=job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /jobtemplate:GeneralNodes /numcores:1&lt;br /&gt;
set initFile=\\networkshare\job\init.txt&lt;br /&gt;
set exeFile=\\networkshare\job\mysim.exe&lt;br /&gt;
&lt;br /&gt;
%SubDetails% %exeFile% %initfile% 1 2 3&lt;br /&gt;
%SubDetails% %exeFile% %initfile% 4 5 6&lt;br /&gt;
%SubDetails% %exeFile% %initfile% 7 8 9&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suppose the job you want to run is an R script? To specify arguments to an R script, you have to add ′--args a=1 b=2′ - so… you might make launch.bat like this:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
@echo off&lt;br /&gt;
set SubDetails=job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /jobtemplate:GeneralNodes /numcores:1&lt;br /&gt;
set rbatFile=\\networkshare\R-scripts\run.bat&lt;br /&gt;
&lt;br /&gt;
%SubDetails% %rbatFile% 1 2&lt;br /&gt;
%SubDetails% %rbatFile% 3 4&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
And make the significant line of your run.bat:-&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
Rcmd BATCH ′--args a=%1 b=%2′ U:\R-scripts\test.R&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
%1 and %2 will map to the first and second thing after the batch file. You can go all the way up to %9.&lt;br /&gt;
&lt;br /&gt;
		IMPORTANT NOTE&lt;br /&gt;
&lt;br /&gt;
Make sure you get the apostrophe character right in the above example – NEVER copy and paste from a word document into a script. It will go hideously wrong. Type the apostrophes (and dashes for that matter) in a good text editor – you want just the standard old-fashioned characters.&lt;br /&gt;
&lt;br /&gt;
== Requesting resources ==&lt;br /&gt;
&lt;br /&gt;
The following modifiers next to the “/scheduler:” part of the job submit line (before your app.exe 1 2 3 part), will request things you might want…&lt;br /&gt;
&lt;br /&gt;
/numcores:8				- number of cores you want&lt;br /&gt;
&lt;br /&gt;
/numcores:8-12				- minimum and maximum cores appropriate for your job&lt;br /&gt;
&lt;br /&gt;
/memorypernode:1024			- amount of mem in MegaBytes needed.&lt;br /&gt;
&lt;br /&gt;
/workdir:\\networkshare\work		- set working directory&lt;br /&gt;
&lt;br /&gt;
/stdout:\\networkshare\out.txt		- divert stdout to a file&lt;br /&gt;
&lt;br /&gt;
/stderr:    or    /stdin:			- similar for stderr and stdin&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting / Miscellany / Q &amp;amp; A ==&lt;br /&gt;
&lt;br /&gt;
*	My job doesn’t work.&lt;br /&gt;
**	Run the HPC Job Manager application. Find your job id, possible under “My Jobs, Failed”. Double click on it, then on “View All Tasks”. Perhaps something in the output section will help.&lt;br /&gt;
&lt;br /&gt;
* Check that the path to your job is visible everywhere.&lt;br /&gt;
** Avoid spaces in your paths - “job submit” doesn’t like them very much. If you must have them, they’ll be ok in the “run.bat” batch file that the cluster will run – in which case, put the path in standard double-quotes (&amp;quot;). But avoid them in your “launch.bat” file – you may have to relocate your run.bat to a simple non-space-containing directory.&lt;br /&gt;
** Rather than putting the full application and parameters on the job submit line, you might want to write a batch-file to do all that, and submit the batch file to the cluster. (See section 6 about R for example). But make sure the batch file is somewhere visible to the cluster.&lt;br /&gt;
	&lt;br /&gt;
*	My job seems to work, but reports as having failed.&lt;br /&gt;
**	The success/failure depends on the error code returned. If you’re running C code, end with “return 0;” for success.&lt;br /&gt;
&lt;br /&gt;
*  job submit ..blah blah.. app.exe &amp;gt;out.txt doesn’t work!&lt;br /&gt;
** The contents of out.txt will be the result of “job submit”, not the result of “app.exe”. You meant to say this job submit ..blah blah.. /stdout:out.txt app.exe correcting out.txt and app.exe to network paths of course.&lt;br /&gt;
&lt;br /&gt;
* My C/C++ Executable works perfectly on my desktop, but doesn&#039;t work on the cluster. What&#039;s wrong with the cluster?&lt;br /&gt;
** Your EXE file probably relies on some DLL files that the cluster doesn&#039;t have. If you use Visual Studio, check that in Code Generation, you have &amp;quot;Multi-Threaded (/MT)&amp;quot; as your target - with no mention of DLLs. If your code uses OpenMP, check you&#039;ve copied the right OpenMP DLL(s) (go back to the C section above). As a last resort, give your EXE to someone who doesn&#039;t have Visual Studio installed, and get them to run it, and see what DLL files it seems to ask for.&lt;br /&gt;
&lt;br /&gt;
== Contributing Authors ==&lt;br /&gt;
&lt;br /&gt;
Wes Hinsley, James Truscott, Tini Garske, Jeff Eaton, Hannah Clapham&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Cluster_Documentation&amp;diff=14258</id>
		<title>Cluster Documentation</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Cluster_Documentation&amp;diff=14258"/>
		<updated>2024-02-28T16:58:09Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* We have two high performance clusters for general use, both running Microsoft HPC 2012 R2, Update 3. The smaller, older cluster is [[fi--dideclusthn]] and the larger is [[fi--didemrchnb]]. &lt;br /&gt;
&lt;br /&gt;
* Many users in the department write code and packages in R. We have in-house packages that can allow an almost-interactive experience of running jobs on our high performance clusters, so if that sounds like what you&#039;d like, you might as well stop reading here, and go straight to [https://github.com/mrc-ide/didehpc The DIDEHPC package] - or if you need to join the mrc-ide github org first, go to [https://github.com/mrc-ide/welcome The welcome page].&lt;br /&gt;
&lt;br /&gt;
If you&#039;re not using R, or you are interested in other ways, then continue...&lt;br /&gt;
&lt;br /&gt;
== Windows Users ==&lt;br /&gt;
&lt;br /&gt;
The cluster nodes are Windows 2012-R2 based. This is good news if you&#039;re a Windows user, and especially easy for PCs within the departmental DIDE domain. You have the option of using the MS client for launching jobs (see below), or you can use try the new [[HPC Web Portal]]. If you&#039;re preparing to use the cluster, and have doubts about whether it can run what you want - and whether it will be straightforward to develop and run on it, best talk to me and/or the IT guys first!&lt;br /&gt;
&lt;br /&gt;
== Linux and MAC Users ==&lt;br /&gt;
&lt;br /&gt;
There are two problems, but both can be at least partially overcome. The first is that there is no client for linux. The second is that it can only run windows binaries.&lt;br /&gt;
&lt;br /&gt;
=== Launching jobs on Linux/Mac ===&lt;br /&gt;
&lt;br /&gt;
* The best way might be the [[HPC Web Portal]], which lets you submit jobs through a webpage. Give it a try, and feedback to me any issues! &lt;br /&gt;
&lt;br /&gt;
* Alternatively, you can either (1) go down the VM route, installing a windows virtual machine, eg VMWare or Parallels, and follow the instructions below. (2) Remote Desktop to your friend&#039;s Windows machine. These tend not to be very convenient, but some users have submitted thousands of jobs this way.&lt;br /&gt;
&lt;br /&gt;
=== What Linux/Mac jobs can I run? ===&lt;br /&gt;
&lt;br /&gt;
* Many jobs may be platform indepedent. Where compiled code is involved though, you&#039;ll have some extra work to make sure the binary parts can be run in windows. For R, [https://github.com/mrc-ide/didehpc the tools] help you sort that out. For others, you may need to run a job on the cluster to do your builds. Also, for many linux applications, there is a windows port. Mileage can vary, but it&#039;s worth a try searching for that before you give up hope. Some of these might be installed on the cluster already - see below. Or some you may be able to download and call them from your run script.&lt;br /&gt;
&lt;br /&gt;
* For C code, again, we can run scripts on the cluster to build the binaries for you, if your code can be compiled with (say) the MinGW port of gcc. Cygwin can also be used (although seems less common these days) with accompanying dlls. Get in touch if you need further ideas; most things can be solved. &lt;br /&gt;
&lt;br /&gt;
* Matlab is a little more tricky - we have a range of colossal matlab runtimes on the cluster, but you&#039;d need to compile a windows binary to use them, since the matlab platforms are distinct in every way. For this, probably find a friend, or get in touch, and we&#039;ll work out how you can compile for it.&lt;br /&gt;
&lt;br /&gt;
* There is also the option of running a Windows VM, which might solve all of the above problems.&lt;br /&gt;
&lt;br /&gt;
=== But I really want a unix cluster. ===&lt;br /&gt;
&lt;br /&gt;
* We have run linux clusters in the past ([[fi--didelxhn]]), but there was very low demand, whereas the other clusters are consistently well used. Accessing DIDE network shares from linux was a little harder in some aspects, but we did not implement the more traditional linux approach of having dedicated separate cluster storage that inputs and outputs would have to be staged on to, in order for the cluster to see them. Generally, the flexibility of the other clusters makes such things quite straightforward, and may even feel a pleasure if your background is with the less domain-integrated style of cluster architecture.&lt;br /&gt;
&lt;br /&gt;
* It has also become far easier to write software that builds on multiple platforms with good practice. Tools that only run on one platform are rare, and in some circumstances have raised questions about the quality of those packages. Alternatives are often available.&lt;br /&gt;
&lt;br /&gt;
* Where compilation is the issue - for example if you want to run binaries on the cluster, but your compilation machine runs linux, or is a mac, (Matlab via MCC, or C++ code for example), then get in touch, and there are a few ways we can think of solving that, either by getting someone else, or the cluster itself, to build your code.&lt;br /&gt;
&lt;br /&gt;
* There are also resources in [https://www.imperial.ac.uk/admin-services/ict/self-service/research-support/rcs/computing/high-throughput-computing/ ICT) who run a linux cluster, with the file-staging approach, and also (being shared between a much larger pool of users) have rather stricter rules on job durations and resources than we provide locally in DIDE.&lt;br /&gt;
&lt;br /&gt;
== Getting Started ==&lt;br /&gt;
&lt;br /&gt;
=== Getting access to the cluster ===&lt;br /&gt;
&lt;br /&gt;
Send a mail to Wes (w.hinsley@imperial.ac.uk) requesting access to the cluster. He will add you to the necessary groups, and work out what cluster you should be running on. Unless you are told otherwise, this will be fi--dideclusthn. But if you have been told otherwise, then whenever you see fi--dideclusthn, replace it with the cluster name you’ve been given, either mentally or (less effectively) on your screen with tip-ex.&lt;br /&gt;
&lt;br /&gt;
=== Windows: Install the HPC client software ===&lt;br /&gt;
&lt;br /&gt;
* Run \\fi--dideclusthn.dide.ic.ac.uk\REMINST\setup.exe. &lt;br /&gt;
* Confirm &#039;&#039;&#039;Yes, I really want to run this&#039;&#039;&#039;.&lt;br /&gt;
* There&#039;s an introductory screen, and you click &#039;&#039;&#039;Next&#039;&#039;&#039;&lt;br /&gt;
* You have to tick the &#039;&#039;&#039;Accept&#039;&#039;&#039;, then click &#039;&#039;&#039;Next&#039;&#039;&#039;&lt;br /&gt;
* If it gives you any choice, select &#039;&#039;&#039;Install only the client utilities&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;Next&#039;&#039;&#039;, &#039;&#039;&#039;Next&#039;&#039;&#039;, &#039;&#039;&#039;Next&#039;&#039;&#039;&lt;br /&gt;
* Select &#039;&#039;&#039;Use Microsoft Update&#039;&#039;&#039; and then &#039;&#039;&#039;Next&#039;&#039;&#039;&lt;br /&gt;
* And then &#039;&#039;&#039;Install&#039;&#039;&#039;&lt;br /&gt;
* And possibly &#039;&#039;&#039;Install&#039;&#039;&#039; again – if it had to install any pre-requisites first.&lt;br /&gt;
* And &#039;&#039;&#039;Finish&#039;&#039;&#039;, and the client installation is done.&lt;br /&gt;
* To check everything is alright so far, open a &#039;&#039;&#039;NEW command prompt window&#039;&#039;&#039;.&lt;br /&gt;
* (Because the installer adds things to the path, which only take effect on &#039;&#039;&#039;NEW comamnd windows&#039;&#039;&#039;! :-)&lt;br /&gt;
* (Find it under Accessories, or you can use Start, Run, &#039;&#039;&#039;cmd&#039;&#039;&#039;).&lt;br /&gt;
* Type &amp;lt;code&amp;gt;job list /scheduler:fi--dideclusthn.dide.ic.ac.uk&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And it will list the jobs you have running, which will be none so far!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Id         Owner         Name              State        Priority    Resource Request&lt;br /&gt;
---------- ------------- ----------------- ------------ ----------- -------- -------&lt;br /&gt;
&lt;br /&gt;
0 matching jobs for DIDE\user&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Windows: Using a non-domain machine ===&lt;br /&gt;
&lt;br /&gt;
If you&#039;re using a machine that isn&#039;t actually logged into DIDE, then the client software will have a problem working out who you are. In this case, there are two things you need to do.&lt;br /&gt;
* Check you&#039;ve really got a DIDE username. If you don&#039;t know what it is, talk to your lovely IT team.&lt;br /&gt;
* Connect to the DIDE VPN (see http://www1.imperial.ac.uk/publichealth/departments/ide/it/remote/) - login to that with your DIDE account.&lt;br /&gt;
* Alternatively to the DIDE VPN, you can install ICT&#039;s ZScaler from https://uafiles.cc.ic.ac.uk/, and login to that with your IC account - but you&#039;ll still need your DIDE account to access DIDE servers after the ZScaler connection is up and running.&lt;br /&gt;
* Now we&#039;ll open a command window using &amp;quot;runas&amp;quot; - which lets you choose which identity the system thinks you are within that command window:-&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
runas /netonly /user:DIDE\user cmd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* (Change user to your own login obviously). It will ask for your password, then open a new command window. In that window, you&#039;ll be able to do cluster-related things as your DIDE username.&lt;br /&gt;
&lt;br /&gt;
=== Windows: Launching and cancelling jobs ===&lt;br /&gt;
==== Windows: Command Line ====&lt;br /&gt;
&lt;br /&gt;
Suppose you have a file called &amp;quot;run.bat&amp;quot; in your home directory, which does what you want to run on the cluster. Let&#039;s say it&#039;s a single-core, very simple job. We’ll discuss what should be inside &amp;quot;run.bat&amp;quot; later. To submit your job on the cluster, at the command prompt, type this (all on one line) - or put it in a file called &amp;quot;launch.bat&amp;quot;, and run it:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /jobtemplate:GeneralNodes /numcores:1 \\qdrive.dide.ic.ac.uk\homes\user\run.bat&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If it&#039;s the first time you’ve run a job - or if you&#039;ve recently changed your password, then it might ask you for your DIDE password and offer to remember it. Otherwise, it will just tell you the ID number of your job.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;Enter the password for ‘DIDE\user’ to connect to ‘FI—DIDECLUSTHN’:&lt;br /&gt;
Remember this password? (Y/N)&lt;br /&gt;
job has been submitted. ID: 123&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you want to remove the job, then:-	&amp;lt;code&amp;gt;job cancel 123 /scheduler:fi--dideclusthn.dide.ic.ac.uk&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Or view its details with &amp;lt;code&amp;gt;job view 123 /scheduler:fi--dideclusthn.dide.ic.ac.uk&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Windows: Job Manager GUI ====&lt;br /&gt;
&lt;br /&gt;
Alternatively to the command-line, you can use the job management software, rather than the command-line. The advantage is that it’s a GUI. The disadvantage is, as in all GUIs, you may not feel totally sure you know what it’s up to – where most of the time the things you want to do might not be very complex, as above.&lt;br /&gt;
&lt;br /&gt;
The job management software will be on your start menu, as above. All the features are under the “Actions” menu, and hopefully it will be self explanatory. Read the details below about launching, and you&#039;ll find the interface bits that do it in the Job Manager. However, you may find over time, especially if you run lots of jobs, that learning to do it the scripted way with the command-line can be quicker.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Information for running any job ==&lt;br /&gt;
&lt;br /&gt;
=== Visibility ===&lt;br /&gt;
&lt;br /&gt;
Any executable/batch file that the cluster will run must be somewhere on the network that the cluster has access to, when it logs in as you. This amounts to any network accessible drive that you have access to when you login – including network shares, such as the temp drive, your home directory, and any specific network space set up for your project.&lt;br /&gt;
&lt;br /&gt;
After a job is launched, all paths are relative to the &#039;&#039;&#039;/workdir:&#039;&#039;&#039; specified on the job submit command-line. Windows does not usually allow a network path to be the current directory, and MS-HPC somehow gets around this. But if in doubt, use fully-qualified paths to specify where files should be read from, or written to. You may want to write code that takes the paths from a parameter file, or as a command-line parameter, to give as much flexibility as possible. &lt;br /&gt;
&lt;br /&gt;
Your home directory, and the temp drive are on departmental servers that don&#039;t have an especially fast connection to the cluster. So avoid having thousands of jobs all reading/writing to those places at once. Additionally, the temp drive is shared between all users, and your home drive has a limited quota. It is also backed up every day, so avoid using it as scratch storage for results you don’t actually want to keep. Generally, the shares you&#039;ll want to use from the clusters will be ones containing the word &amp;quot;NAS&amp;quot;, which the big cluster has fast access to.&lt;br /&gt;
&lt;br /&gt;
=== Interactivity ===&lt;br /&gt;
&lt;br /&gt;
The job must run in an entirely scripted, unattended way. It must not require any key presses or mouse clicks, or other live interactivity while it runs. So jobs generally will read some sort of input (from a file, or from the way you run the job), do some processing, and write the results somewhere for you - all without intervention.&lt;br /&gt;
&lt;br /&gt;
== Launching jobs ==&lt;br /&gt;
&lt;br /&gt;
Jobs can be launched either through the Job Manager interface, or through the command line tools, which offer greater flexibility. We&#039;ll describe the command line method here; if you want to use the GUI, then it&#039;ll be a case of finding the matching boxes... Below are the specifics for our clusters. For more information, simply type &amp;lt;code&amp;gt;job&amp;lt;/code&amp;gt; on the commandline, or &amp;lt;code&amp;gt;job submit&amp;lt;/code&amp;gt; for the list of submission-related commands.&lt;br /&gt;
&lt;br /&gt;
=== FI--DIDECLUSTHN vs FI--DIDEMRCHNB ===&lt;br /&gt;
&lt;br /&gt;
Job submissions, as shown below, must specify a &amp;quot;job template&amp;quot;, which sets up a load of default things to make the job work. On fi--dideclusthn, the job templates are called 4Core, 8Core and GeneralNodes, which will respectively force jobs to run on the 4-core nodes, the 8-core nodes, or on any machine available.&lt;br /&gt;
&lt;br /&gt;
On fi--didemrchnb, you can set the job template to be... 8Core, 12Core, 16Core, 12and16Core, and GeneralNodes - which hopefully are fairly self-explanatory. There are a couple of other job templates, (24Core and Phi), but those are a bit special purpose for now, so don&#039;t use them!&lt;br /&gt;
&lt;br /&gt;
=== Job Submission ===&lt;br /&gt;
&lt;br /&gt;
Job submissions from the command line can take the following form (all on one line):-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /stdout:\\path\to\stdout.txt&lt;br /&gt;
   /stderr:\\path\to\stderr.txt /numcores:1-1 /jobtemplate:4Core \\path\to\run.bat&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== The /singlenode argument ===&lt;br /&gt;
&lt;br /&gt;
In MS HPC (2012), Microsoft finally added a tag to allow you to say that the &#039;n&#039; cores you requested must be on the same computer. Therefore, if you know precisely how many cores you want, then use the following (on one line):-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /singlenode:true &lt;br /&gt;
   /jobtemplate:8Core \\path\to\run.bat&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
However, there is one bug with this, for the specific case where you request a whole node, regardless of how many cores it has. In this case, oddly, you have to disable single node:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /singlenode:false &lt;br /&gt;
   /numnodes:1 /jobtemplate:8Core \\path\to\run.bat&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Languages and libraries supported ==&lt;br /&gt;
&lt;br /&gt;
A number of languages, and different versions of languages are available on the cluster. The sections below refer to your &amp;quot;run.bat&amp;quot; file - a batch file that you will create which will get run by a cluster node when a suitable one is available. The commands described below are to be put in this &amp;quot;run.bat&amp;quot; file, and they add various directories to the path, so that the software you want will be added to the path. &lt;br /&gt;
&lt;br /&gt;
=== C/C++ === &lt;br /&gt;
&lt;br /&gt;
A number of Microsoft C++ and Intel C++ runtimes are installed, but it&#039;s usually better to try and avoid using them, and make your executable as stand-alone as possible. If it requires any external libraries that you&#039;ve had to download, then put the .dll file in the same directory as the .exe file. If you use Microsoft Visual Studio, in Project Preferences, C/C++, Code Generation, make sure the Runtime Library is Multi-threaded (/MT) – the ones with DLL files won’t work. Even so, on recent versions of the Intel and Microsoft C compilers, &amp;quot;static linking&amp;quot; doesn’t really mean static when it comes to OpenMP, and you’ll have to copy some DLLs and put them next to your EXE file. See the OpenMP section below.&lt;br /&gt;
&lt;br /&gt;
The cluster nodes are all 64-bit, but they will run 32-bit compiled code. Just make sure you provide the right DLLs!&lt;br /&gt;
&lt;br /&gt;
Here is a document about [[Using the Xeon Phi]]&lt;br /&gt;
&lt;br /&gt;
Here is a document about [[Using MPI]]&lt;br /&gt;
&lt;br /&gt;
And if you want to use libraries such as GSL, then try [[C/C++ Libraries for Windows]]&lt;br /&gt;
&lt;br /&gt;
=== Java ===&lt;br /&gt;
&lt;br /&gt;
Java doesn&#039;t strictly need installing; you can setup any Java Runtime Environment you like, from Oracle, or anywhere. If you want to do this, then, (if you were to use the Server JRE from Oracle), something similar to the following will add java.exe and jvm.dll to the path, and set the JAVA_HOME environment variable, which most Java-using software will appreciate.&lt;br /&gt;
&lt;br /&gt;
    set JAVA_HOME=\\my\path\to\jre1.8.0&lt;br /&gt;
    set path=%JAVA_HOME%\bin;%JAVA_HOME%\bin\server;%path%&lt;br /&gt;
&lt;br /&gt;
For convenience, if you&#039;re happy with Azul&#039;s OpenJDK Java 1.8.0 update 308 (September 2021), then &amp;lt;code&amp;gt;call setJava64&amp;lt;/code&amp;gt; in your run script will set this up for you. Incidentally the above will also add what&#039;s needed for using the rJava package in R - in which case you&#039;ll perhaps also want something like &amp;lt;code&amp;gt;call setR64_4_1_0&amp;lt;/code&amp;gt; in your run script.&lt;br /&gt;
&lt;br /&gt;
=== Perl ===&lt;br /&gt;
&lt;br /&gt;
Strawberry Perl 64-bit portable, v5.30.1.1. Put &amp;lt;code&amp;gt;call setPerl&amp;lt;/code&amp;gt; at the top of your script.&lt;br /&gt;
&lt;br /&gt;
=== R ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;New tools are coming&#039;&#039;&#039;: [http://dide-tools.github.io/didehpc/vignettes/quickstart.html see here].  The instructions below are still valid if you want to do this manually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You can R jobs on all the clusters. This is the latest wisdom on how to do so – thanks to James, Jeff, Hannah and others. &lt;br /&gt;
&lt;br /&gt;
First, if you are wanting to use packages, then set up a package repository on your home directory by running this in R.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;install.packages(&amp;quot;&amp;lt;package&amp;gt;&amp;quot;,lib=&amp;quot;Q:/R&amp;quot;)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now, write your run script. Suppose you have an R script in your home directory: Q:\R-scripts\test.R. And suppose you’ve set up your repository as above. Your run.bat should then be:-&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
	call &amp;lt;script for the R version you want – see below&amp;gt;&lt;br /&gt;
	net use Q: \\qdrive.dide.ic.ac.uk\homes\user&lt;br /&gt;
	set R_LIBS=Q:\R&lt;br /&gt;
	set R_LIBS_USER=Q:\R&lt;br /&gt;
	Rscript Q:\R-scripts\test.R&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Various packages require various R versions, and the cluster supports a few versions. To choose which one, change the first line of the script above to one of these – 32-bit or 64-bit versions of R releases. Purely for amusement, R&#039;s codenames are shown here too. &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setr32_2_13_1.bat		call setr64_2_13_1.bat    (anyone know the codename?)&lt;br /&gt;
call setr32_2_14_2.bat		call setr64_2_14_2.bat    (Gift-getting season)&lt;br /&gt;
call setr32_2_15_2.bat		call setr64_2_15_2.bat    (Trick or treat)&lt;br /&gt;
call setr32_3_0_1.bat           call setr64_3_0_1.bat     (Good Sport)&lt;br /&gt;
call setr32_3_0_2.bat           call setr64_3_0_2.bat     (Frisbee Sailing)&lt;br /&gt;
call setr32_3_1_0.bat           call setr64_3_1_0.bat     (Spring Dance)&lt;br /&gt;
call setr32_3_1_2.bat           call setr64_3_1_2.bat     (Pumpkin Helmet)&lt;br /&gt;
call setr32_3_2_2.bat           call setr64_3_2_2.bat     (Fire Safety)&lt;br /&gt;
call setr32_3_2_3.bat           call setr64_3_2_3.bat     (Wooden Christmas Tree)&lt;br /&gt;
call setr32_3_2_4.bat           call setr64_3_2_4.bat     (Very Secure Dishes - Revised Version - R later renamed this to 3.2.5)&lt;br /&gt;
call setr32_3_3_1.bat           call setr64_3_3_1.bat     (Bug in your hair)&lt;br /&gt;
call setr32_3_3_2.bat           call setr64_3_3_2.bat     (Sincere Pumpkin Patch)&lt;br /&gt;
call setr32_3_4_0.bat           call setr64_3_4_0.bat     (You Stupid Darkness)&lt;br /&gt;
call setr32_3_4_2.bat           call setr64_3_4_2.bat     (Short Summer)&lt;br /&gt;
call setr32_3_4_4.bat           call setr64_3_4_4.bat     (Someone to lean on)&lt;br /&gt;
call setr32_3_5_0.bat           call setr64_3_5_0.bat     (Joy in Playing)&lt;br /&gt;
call setr32_3_5_1.bat           call setr64_3_5_1.bat     (Feather Spray)&lt;br /&gt;
call setr32_3_5_3.bat           call setr64_3_5_3.bat     (Great Truth)&lt;br /&gt;
call setr32_3_6_0.bat           call setr64_3_6_0.bat     (Planting of a Tree)&lt;br /&gt;
call setr32_3_6_1.bat           call setr64_3_6_1.bat     (Action of the Toes)&lt;br /&gt;
call setr32_3_6_3.bat           call setr64_3_6_3.bat     (Holding the Windsock)&lt;br /&gt;
call setr32_4_0_2.bat           call setr64_4_0_2.bat     (Taking Off Again)&lt;br /&gt;
call setr32_4_0_3.bat           call setr64_4_0_3.bat     (Bunny-Wunnies Freak Out)&lt;br /&gt;
call setr32_4_0_5.bat           call setr64_4_0_5.bat     (Shake and Throw)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following versions are *not* available on the cluster at the moment - but here are their names anyway, as it seemed a shame to miss them out. Let me know if you desperately need one of these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
2.14.0    Great Pumpkin                   &lt;br /&gt;
2.14.1    December Snowflakes&lt;br /&gt;
2.15.0    Easter Beagle&lt;br /&gt;
2.15.1    Roasted Marshmallow&lt;br /&gt;
2.15.3    Security Blanket&lt;br /&gt;
3.0.0     Masked Marvel&lt;br /&gt;
3.0.3     Warm Puppy&lt;br /&gt;
3.1.1     Sock it to me&lt;br /&gt;
3.1.3     Smooth Sidewalk&lt;br /&gt;
3.2.0     Full of Ingredients&lt;br /&gt;
3.2.1     World famous astronaut&lt;br /&gt;
3.2.4     Very Secure Dishes (the non-revised version)&lt;br /&gt;
3.3.0     Supposedly Educational&lt;br /&gt;
3.3.3     Another Canoe&lt;br /&gt;
3.4.1     Single Candle&lt;br /&gt;
3.4.3     Kite-Eating Tree&lt;br /&gt;
3.5.2     Eggshell Igloo&lt;br /&gt;
3.6.2     Dark and Stormy Night&lt;br /&gt;
4.0.0     Arbor Day&lt;br /&gt;
4.0.1     See Things Now&lt;br /&gt;
4.0.4     Lost Library Book&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It also seems that different R versions put their packages in different structures – sometimes adding &amp;quot;win-library&amp;quot; into there for fun. Basically, R_LIBS and R_LIBS_USER should be paths to a folder that contains a list of other folders, one for each package you&#039;ve installed.&lt;br /&gt;
&lt;br /&gt;
IMPORTANT:  R_LIBS and R_LIBS_USER paths must NOT contain quotes, nor spaces. If the path to your library contains spaces, you need to use old-fashioned 8-character names. If in your command window, you type &amp;lt;code&amp;gt;dir /x&amp;lt;/code&amp;gt;, you’ll see the names – Program Files tends to become PROGRA~1 for instance. &lt;br /&gt;
&lt;br /&gt;
==== Passing parameters to R scripts ====&lt;br /&gt;
Passing parameters to R scripts means you can have fewer versions of your R and bat files and easily run whole sets of jobs. You can get parameters into R using Rscript (but not Rcmd BATCH, I think) as follows. In the run.bat example above, the Rscript statement becomes:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Rscript Q:\R-scripts\test.R arg1 arg2 arg3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Within the R code, the arguments can be recovered using &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
args &amp;lt;- commandArgs(trailingOnly = TRUE)&lt;br /&gt;
&lt;br /&gt;
outFileName &amp;lt;- args[1]     ## name of output file.&lt;br /&gt;
dataFileName &amp;lt;- args[2]    ## name of local data file. &lt;br /&gt;
currentR0 &amp;lt;- as.numeric(args[3]) ## convert this explicitly to number. &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
If you want your arguments to have a particular type, best to explicitly convert (see R0 above). Better still, you can pass parameters directly into the batch file that runs the R script. Command line arguments can be referenced within the batch file using %1, %2, etc. For example, if you have a batch file, runArgs.bat:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call &amp;lt;script for the R version you want – see below&amp;gt;&lt;br /&gt;
net use Q: \\qdrive.dide.ic.ac.uk\homes\user&lt;br /&gt;
set R_LIBS=Q:\R&lt;br /&gt;
set R_LIBS_USER=Q:\R&lt;br /&gt;
Rscript Q:\R-scripts\%1.R %2 %3 %4&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
then&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
runArgs.bat myRScript arg1 arg2 arg3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
will run the R script myRScript.R and pass it the parameters arg1, arg2 and arg3. The batch file runArgs.bat is now almost a &#039;&#039;&#039;generic R script runner&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== OpenMP ===&lt;br /&gt;
&lt;br /&gt;
This has been tested with C/C++ - but the same should apply to other languages such as fortran, that achieve multi-threading with a DLL file.&lt;br /&gt;
&lt;br /&gt;
==== Microsoft&#039;s C/C++ Compiler ====&lt;br /&gt;
You will need to copy vcomp100.dll (for Visual Studio 2010 – it maybe vcomp90.dll for 2008), into the same directory as your executable. You can usually find the dll file in a directory similar to:- C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\redist\x64\Microsoft.VC100.OpenMP. Extrapolate for future versions! Also make sure that you&#039;ve enabled OpenMP in the Properties (C++/Language).&lt;br /&gt;
&lt;br /&gt;
==== GCC or MinGW ====&lt;br /&gt;
Usually, this applies to Eclipse use. In project properties, the C++ command “g++ -fopenmp”, the C command “gcc –fopenmp”, and in the Linker options, under Miscellaneous, Linker flags, put “-fopenmp” too. Copy the OpenMP DLLs from MinGW into the same directory as your final executable. You may find the dlls are in C:\MinGW\Bin\libgomp-1.dll and in the same place, libpthread-2.dll,  libstdc++-6.dll and libgcc_s_dw2-1.dll.&lt;br /&gt;
&lt;br /&gt;
==== Intel C++ Compiler ====&lt;br /&gt;
Copy the libiomp5md.dll file from somewhere like C:\Program Files (x86)\Intel\ComposerXE-2011\redist\intel64\compiler\libiomp5md.dll to the same place as your executable. And in Visual Studio, make sure you&#039;ve enabled OpenMP in the project properties.&lt;br /&gt;
&lt;br /&gt;
==== How many threads? ====&lt;br /&gt;
The OpenMP function omp_max_threads() returns the number of &#039;&#039;physical&#039;&#039; cores on a machine, not the number of cores &#039;&#039;allocated&#039;&#039; to your job. To determine how many cores the scheduler actually allocated to you, use the following code to dig up the environment variable CCP_NUMCPUS, which will be set by the cluster management software:- &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
		int set_NCores() {&lt;br /&gt;
		   char * val;&lt;br /&gt;
		   char * endchar;&lt;br /&gt;
		   val = getenv(&amp;quot;CCP_NUMCPUS&amp;quot;);&lt;br /&gt;
		   int cores = omp_get_max_threads();&lt;br /&gt;
		   if (val!=NULL) cores = strtol (val,&amp;amp;endchar,10);&lt;br /&gt;
                   omp_set_num_threads(cores);&lt;br /&gt;
		   return cores;&lt;br /&gt;
		}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== WinBugs (or OpenBugs) ===&lt;br /&gt;
&lt;br /&gt;
They are similar, but OpenBugs 3.2.2 is the one we&#039;ve gone for. Something like this as your run.bat script will work:-&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setOpenBugs&lt;br /&gt;
openbugs \\path\to\script.txt /HEADLESS&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== MatLab ===&lt;br /&gt;
&lt;br /&gt;
There are various ways of producing a non-interactive executable from Matlab. Perhaps the simplest (not necessarily the best performance) way is to use “mcc.exe” – supplied with most full versions of Matlab, including the Imperial site licence version that you&#039;ve probably got.&lt;br /&gt;
&lt;br /&gt;
==== Use mcc.exe to compile your code ====&lt;br /&gt;
&lt;br /&gt;
Use windows explorer to navigate to the folder where the “.m” files are for the project you want to compile. Now use a good text editor to create a file called “compile.bat” in that folder. It should contain something similar to the following:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mcc -m file1.m file2.m file3.m -o myexe&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Don’t copy/paste the text from this document by the way – Word has a different idea of what a dash is to most other software, and will probably replace the two dashes with funny characters. so you have to list every single .m file that your project needs, after the’-m’. If you save this file, then double-click on it, then it will think for some while, and produce “myexe.exe” in this example. Copy your .exe file into a network accessible place as usual.&lt;br /&gt;
&lt;br /&gt;
==== Launch on the cluster. ====&lt;br /&gt;
&lt;br /&gt;
The launch.bat file will be exactly the same as before – see page 2. The run script will then start with a line that tells the cluster which version of Matlab you used to compile the cluster. Below is the table of different versions. The runtimes are huge and cumbersome to install on the cluster, so as a result I haven’t installed every single one. If you need one that’s not listed, get in touch.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Matlab Version&lt;br /&gt;
! First line of run script&lt;br /&gt;
|- &lt;br /&gt;
| R2009b&lt;br /&gt;
| call useMatLab79&lt;br /&gt;
|- &lt;br /&gt;
| R2010a&lt;br /&gt;
| call useMatLab713&lt;br /&gt;
|- &lt;br /&gt;
| R2011a&lt;br /&gt;
| call useMatLab715&lt;br /&gt;
|- &lt;br /&gt;
| R2011b&lt;br /&gt;
| call useMatLab716&lt;br /&gt;
|- &lt;br /&gt;
| R2012a (64-bit)&lt;br /&gt;
| call useMatLab717_64&lt;br /&gt;
|- &lt;br /&gt;
| R2012b (64-bit)&lt;br /&gt;
| call useMatLab80_64&lt;br /&gt;
|- &lt;br /&gt;
| R2013a (64-bit)&lt;br /&gt;
| call useMatLab81_64&lt;br /&gt;
|- &lt;br /&gt;
| R2014a (64-bit)&lt;br /&gt;
| call useMatLab83_64&lt;br /&gt;
|- &lt;br /&gt;
| R2014b (64-bit)&lt;br /&gt;
| call useMatLab84_64&lt;br /&gt;
|- &lt;br /&gt;
| R2015a (64-bit)&lt;br /&gt;
| call useMatLab85_64&lt;br /&gt;
|- &lt;br /&gt;
| R2015b (64-bit)&lt;br /&gt;
| call useMatLab90_64&lt;br /&gt;
|- &lt;br /&gt;
| R2016b (64-bit)&lt;br /&gt;
| call useMatLab91_64&lt;br /&gt;
|- &lt;br /&gt;
| R2017a (64-bit)&lt;br /&gt;
| call useMatLab92_64&lt;br /&gt;
|- &lt;br /&gt;
| R2019a (64-bit)&lt;br /&gt;
| call useMatLab96_64&lt;br /&gt;
|- &lt;br /&gt;
| R2021a (64-bit)&lt;br /&gt;
| call useMatLab910_64&lt;br /&gt;
|- &lt;br /&gt;
| R2022a (64-bit)&lt;br /&gt;
| call useMatLab912_64&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Python ===&lt;br /&gt;
&lt;br /&gt;
* The most recent version of each major release is on the cluster. Different python versions within the same release (e.g., 3.5.1 and 3.5.2) do not behave nicely together in automated installation, so if you have a desperate need for a previous minor version, get in touch. While 2.7.18 is available, we &#039;&#039;&#039;strongly&#039;&#039;&#039; recommend migrating away from Python 2.7, as it has been officially discontinued on 1st January 2020. Experiences may vary, and future success is not guaranteed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
2.7.18  64-bit   call set_python_27_64.bat&lt;br /&gt;
3.5.9   64-bit   call set_python_35_64.bat&lt;br /&gt;
3.6.15  64-bit   call set python_36_64.bat&lt;br /&gt;
3.7.17  64-bit   call set_python_37_64.bat&lt;br /&gt;
3.8.17  64-bit   call set python_38_64.bat&lt;br /&gt;
3.9.17  64-bit   call set_python_39_64.bat&lt;br /&gt;
3.10.12 64-bit   call set python_310_64.bat&lt;br /&gt;
3.11.4  64-bit   call set_python_311_64.bat&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* You&#039;ll most likely want to use some packages, so you&#039;ll need to have a network-accessible location to put your packages in. If you&#039;re running a version of Windows with Python that matches one installed on the cluster, then you&#039;ll be able to share that package repository between the two. But if you&#039;re running a different version, or a different operating system, or a different Python version, then you&#039;ll need to keep your local package repository separate from the one the cluster uses.&lt;br /&gt;
* Here comes the basic script to run some python. Suppose I decide to put my Python packages for the cluster in &#039;&#039;&#039;\\qdrive.dide.ic.ac.uk\homes\username\PythonCluster37_64&#039;&#039;&#039; (which is Q:\PythonCluster37_64 on a DIDE Windows PC). To run some python, something like the following:-&lt;br /&gt;
&lt;br /&gt;
 call set_python_37_64&lt;br /&gt;
 set PYTHONPATH=\\qdrive\homes\username\PythonCluster37_64&lt;br /&gt;
 python \\qdrive\homes\username\Python\MyScript.py&lt;br /&gt;
&lt;br /&gt;
or if you want to do this in a programmatic way...&lt;br /&gt;
&lt;br /&gt;
 import sys&lt;br /&gt;
 sys.path = [&#039;\\\\qdrive\\homes\\username\\PythonCluster37_64&#039;] + sys.path&lt;br /&gt;
&lt;br /&gt;
==== Packages ====&lt;br /&gt;
&lt;br /&gt;
* If you want to install a package like numpy, that&#039;s readily available through pip, then you can launch a batch file like this:-&lt;br /&gt;
 call set_python_36_64&lt;br /&gt;
 pip install numpy --target \\qdrive\homes\username\PythonCluster36_64&lt;br /&gt;
* or alternatively, you could write a python script that looks like this, and launch it as normal:-&lt;br /&gt;
 import pip&lt;br /&gt;
 pip.main([&#039;install&#039;,&#039;numpy&#039;,&#039;--target&#039;,&#039;\\\\qdrive\\homes\\username\\PythonCluster36_64&#039;])&lt;br /&gt;
&lt;br /&gt;
* And if you&#039;re running the same Python version on a Windows machine, then you can do these two locally, without submitting a cluster job to do them for you.&lt;br /&gt;
&lt;br /&gt;
* And next time you submit a python job on the cluster, python will look in the place set by PYTHONPATH, and will find the packages you&#039;ve just installed when you import them.&lt;br /&gt;
&lt;br /&gt;
=== Beast and Beagle ===&lt;br /&gt;
&lt;br /&gt;
We&#039;ve got a couple of versions available. For BEAST 1.75 with BEAGLE 1.0:  (the x y z represents all the command-line arguments you&#039;ll want to pass to beast)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setbeast&lt;br /&gt;
call beast-beagle x y z&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you want BEAST 1.82 or 1.83 with BEAGLE 2.1:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setbeast_182                        call setbeast_183&lt;br /&gt;
call beast-beagle_182 x y z              call beast-beagle_183 x y z&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And if you want BEAST 2.3.2 with BEAGLE 2.1 (note that BEAST 2 is a different, er, beast to BEAST 1, regarding packages and compatibilities, so only use BEAST 2 if you know that&#039;s what you want to use).&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setbeast_232&lt;br /&gt;
call beast-beagle_232 x y z&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
OpenCL is installed on all the nodes, which means Beagle will pick up the Intel Xeon processors and use what it can on them. It will also detect the Xeon Phis where they&#039;re available. If that&#039;s something you&#039;d be particularly interested in using, drop me a line.&lt;br /&gt;
&lt;br /&gt;
=== Blast ===&lt;br /&gt;
&lt;br /&gt;
Drop me a line to join the party testing this, and to get added to the (large) BlastDB network share.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setblast&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
will set the `BLASTDB` environment variable to point to what we current have of the `v5` database, and the Blast tools (2.9.0, 64-bit) will be added to the path. So you can &lt;br /&gt;
then call `blastp`, `blastn`, `blastx` setc.&lt;br /&gt;
&lt;br /&gt;
=== BOW (BioInformatics on Windows) ===&lt;br /&gt;
&lt;br /&gt;
A number of Bio-informatics tools are ready to go. These used to be provided together on codeplex, but that has since been retired. Ugene is one project that&lt;br /&gt;
maintains windows builds of them. Start your run.bat file with &amp;lt;code&amp;gt;call setBOW&amp;lt;/code&amp;gt; to add these to the path:-&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! EXE File&lt;br /&gt;
! Version&lt;br /&gt;
|- &lt;br /&gt;
| SamTools.exe&lt;br /&gt;
| 0.1.19-44429cd&lt;br /&gt;
|- &lt;br /&gt;
| BCFTools.exe&lt;br /&gt;
| 0.1.19-44428cd&lt;br /&gt;
|- &lt;br /&gt;
| bgzip&lt;br /&gt;
| ?&lt;br /&gt;
|- &lt;br /&gt;
| razip&lt;br /&gt;
| ?&lt;br /&gt;
|- &lt;br /&gt;
| bwa&lt;br /&gt;
| 0.7.17-r1188&lt;br /&gt;
|-&lt;br /&gt;
| tabix&lt;br /&gt;
| 0.2.5 (r1005)&lt;br /&gt;
|-&lt;br /&gt;
| minimap2&lt;br /&gt;
| 2.24 (r1122)&lt;br /&gt;
|-&lt;br /&gt;
| raxml&lt;br /&gt;
| 8.2.12 (best for each node)&lt;br /&gt;
|-&lt;br /&gt;
| raxml_sse3&lt;br /&gt;
| 8.2.12 (pthreads+sse3)&lt;br /&gt;
|-&lt;br /&gt;
| raxml_avx&lt;br /&gt;
| 8.2.12 (pthreads+avx)&lt;br /&gt;
|-&lt;br /&gt;
| raxml_avx2&lt;br /&gt;
| 8.2.12 (pthreads+avx2)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Note that BWA-MEM is hardwired to use a linux-only feature, so will produce an odd message and not do what you want if you use that mode on Windows. However, it seems that minimap2 may be a faster and more accurate way&lt;br /&gt;
of doing what bwa does in any case, and that seems to have no such limitation.&lt;br /&gt;
&lt;br /&gt;
Also, note that raxml.exe is a copy of the most optimised build for the particular cluster node the job is running on. fi--dideclusthn only supports SSE3;&lt;br /&gt;
fi--didemrchnb varies a little; the 32-cores support AVX2, the 24, 20 and 16 core machines support AVX, and only the oldest 12-core nodes only support SSE3. You don&#039;t have to worry about, except to expect performance to vary between them.&lt;br /&gt;
&lt;br /&gt;
=== GATK and Picard ===&lt;br /&gt;
&lt;br /&gt;
These both rely on Java, so put this in your run script:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setJava64&lt;br /&gt;
call setgatk&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and then &amp;lt;code&amp;gt;gatk&amp;lt;/code&amp;gt; in your scripts will use Python 3.7 to call the argument handling wrapper for GATK 4.2.2.0, and &amp;lt;code&amp;gt;picard&amp;lt;/code&amp;gt; maps to the picard (2.26.2) jar file.&lt;br /&gt;
&lt;br /&gt;
=== FastQC ===&lt;br /&gt;
&lt;br /&gt;
This one has a slight eccentricity that instead of passing normal command-line args, it uses java&#039;s -D command-line options to buffer them out of an environment variable&lt;br /&gt;
called _JAVA_OPTIONS. Strange but true. The ZIP comes with a bash script, which I&#039;ll reimplement if anyone actually wants me to. But in the meantime, it&#039;s easy to work &lt;br /&gt;
out the arguments by inspection. For example, most likely usage:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setFastQC&lt;br /&gt;
&lt;br /&gt;
set _JAVA_OPTIONS=&#039;-Dfastqc.output_dir=%OUT%&#039;&lt;br /&gt;
call fastqc thing.fq&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== MAFFT ===&lt;br /&gt;
&lt;br /&gt;
For version 7.212 (Win64), write &amp;lt;code&amp;gt;call setMAFFT.bat&amp;lt;/code&amp;gt; at the top of your run script.&lt;br /&gt;
&lt;br /&gt;
=== Applied-Maths Open Source ===&lt;br /&gt;
&lt;br /&gt;
Write &amp;lt;code&amp;gt;call setAppliedMaths.bat&amp;lt;/code&amp;gt; at the top of your run script, to add these to the path:&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! EXE File(s)&lt;br /&gt;
! Description&lt;br /&gt;
! Version&lt;br /&gt;
|- &lt;br /&gt;
| velvetg_mt_x86.exe&lt;br /&gt;
| Graph Construction Multi-threaded, 32-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velvetg_mt_x64.exe&lt;br /&gt;
| Graph Construction Multi-threaded, 64-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velvetg_st_x86.exe&lt;br /&gt;
| Graph Construction Multi-threaded, 32-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velvetg_st_x64.exe&lt;br /&gt;
| Graph Construction Multi-threaded, 64-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velveth_mt_x86.exe&lt;br /&gt;
| Hashing Multi-threaded, 32-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velveth_mt_x64.exe&lt;br /&gt;
| Hashing Multi-threaded, 64-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velveth_st_x86.exe&lt;br /&gt;
| Hashing Multi-threaded, 32-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velveth_st_x64.exe&lt;br /&gt;
| Hashing Multi-threaded, 64-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| ray_x64.exe&lt;br /&gt;
| Ray 64-bit (for MPI)&lt;br /&gt;
| 1.6&lt;br /&gt;
|-&lt;br /&gt;
| ray_x86.exe&lt;br /&gt;
| Ray 32-bit (for MPI)&lt;br /&gt;
| 1.6&lt;br /&gt;
|-&lt;br /&gt;
| Mothur_x64.exe&lt;br /&gt;
| Mothur 64-bit (for MPI)&lt;br /&gt;
| 1.25.1&lt;br /&gt;
|-&lt;br /&gt;
| Mothur_x86.exe&lt;br /&gt;
| Mothur 32-bit (for MPI)&lt;br /&gt;
| 1.25.1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Tensorflow ===&lt;br /&gt;
&lt;br /&gt;
Here is an example of getting Tensorflow (as a python package) available from an R script, using the cluster to install everything for you. It only works for Tensorflow 2.0 - older versions and newer versions seem to want combinations of DLLs that I can&#039;t satisfy. The following are I think minimal steps to get Tensorflow running from Python and R.&lt;br /&gt;
&lt;br /&gt;
* Create a folder for your python packages in your home directory (so the cluster can see it. I&#039;m calling mine &amp;lt;code&amp;gt;Q:/python_37_repo&amp;lt;/code&amp;gt; - and the cluster will call it \\fi--san03.dide.ic.ac.uk\homes\wrh1\python_37_repo - change wrh1 to your DIDE username of course.&lt;br /&gt;
* Create a similar folder for R packages, which for me is &amp;lt;code&amp;gt;Q:/R4&amp;lt;/code&amp;gt;&lt;br /&gt;
* And a third folder, Q:/Tensorflow to do this work in.&lt;br /&gt;
* Download these DLLs and put them in the Q:/Tensorflow folder - at present they seem to be the ones Python/Tensorflow wants. Let&#039;s hope for the best... Download [https://mrcdata.dide.ic.ac.uk/resources/msvcp140.dll msvcp140.dll] and [https://mrcdata.dide.ic.ac.uk/resources/msvcp140_1.dll msvcp140_1.dll] into your &amp;lt;code&amp;gt;Q:/Tensorflow&amp;lt;/code&amp;gt; folder.&lt;br /&gt;
&lt;br /&gt;
* Now, create a script &amp;lt;code&amp;gt;Q:/Tensorflow/prepare.bat&amp;lt;/code&amp;gt;. We&#039;re going to launch this on the cluster, and get it to wire up the packages we want. Replace USER with your username...&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  net delete Q: /y&lt;br /&gt;
  net use Q: \\qdrive.dide.ic.ac.uk\homes\USER&lt;br /&gt;
  set TMPDIR=%TEMP%&lt;br /&gt;
  set PYTHONPATH=\\qdrive.dide.ic.ac.uk\homes\USER\python_37_repo&lt;br /&gt;
  set R_LIBS=Q:\R4&lt;br /&gt;
  set R_LIBS_USER=Q:\R4&lt;br /&gt;
  call set_python_37_64.bat&lt;br /&gt;
  call setr64_4_0_3.bat&lt;br /&gt;
  pip install --no-cache-dir tensorflow==2.00 --target Q:\python_37_repo&lt;br /&gt;
  RScript Q:\Tensorflow\install_tensorflow.R&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Create also &amp;lt;code&amp;gt;Q:/Tensorflow/install_tensorflow.R&amp;lt;/code&amp;gt; contains:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  install.packages(c(&amp;quot;reticulate&amp;quot;, &amp;quot;tensorflow&amp;quot;),lib=&amp;quot;Q:/R4&amp;quot;,repos=&amp;quot;https://cran.ma.imperial.ac.uk/&amp;quot;)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Now submit the prepare job to the cluster with &amp;lt;code&amp;gt;job submit /scheduler:fi--dideclusthn /jobtemplate:GeneralNodes \\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\prepare.bat&amp;lt;/code&amp;gt; - or if you use the portal, just &amp;lt;code&amp;gt;\\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\prepare.bat&amp;lt;/code&amp;gt; in the big window will do it. That will take a while, but you should notice lots of new files in your Q:/python_37_repo folder. You&#039;ll only need to do this once (unless you delete your Python repo folder, or it randomly breaks and you start again...)&lt;br /&gt;
&lt;br /&gt;
* Next, create a file &amp;lt;code&amp;gt;Q:/Tensorflow/run.bat&amp;lt;/code&amp;gt; containing the following the two &amp;quot;call&amp;quot; lines near the end are the ones that do some &amp;quot;work&amp;quot; in python or R, so this script basically a template for running your future jobs. Just change those two calls to set off the python or R code you want to run that uses Tensorflow.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call set_python_37_64.bat&lt;br /&gt;
call setr64_4_0_3.bat&lt;br /&gt;
net use Q: /delete /y&lt;br /&gt;
net use Q: \\qdrive.dide.ic.ac.uk\homes\USER&lt;br /&gt;
set PYTHONPATH=Q:/python_37_repo&lt;br /&gt;
set R_LIBS=Q:\R4&lt;br /&gt;
set R_LIBS_USER=Q:\R4&lt;br /&gt;
call python Q:\tensorflow\test_tensorflow.py&lt;br /&gt;
call RScript Q:\tensorflow\test_tensorflow.R&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* And finally, you&#039;ll need &amp;lt;code&amp;gt;Q:\tensorflow\test_tensorflow.py&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;Q:\tensorflow\test_tensorflow.R&amp;lt;/code&amp;gt; to exist. Here are minimal tests that everything is wired up. &amp;lt;code.test_tensorflow.py&amp;lt;/code&amp;gt; first:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import tensorflow as tf;&lt;br /&gt;
print(tf.reduce_sum(tf.random.normal([1000, 1000])));&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and &amp;lt;code&amp;gt;Q:\Tensorflow\test_tensorflow.R&amp;lt;/code&amp;gt; contains:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
library(reticulate)&lt;br /&gt;
reticulate::py_config()&lt;br /&gt;
library(tensorflow)&lt;br /&gt;
tf$constant(&#039;Hello, TensorFlow!&#039;)&lt;br /&gt;
tf$Variable(tf$zeros(shape(1L)))&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Now submit the run job to the cluster with &amp;lt;code&amp;gt;job submit /scheduler:fi--dideclusthn /jobtemplate:GeneralNodes \\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\run.bat&amp;lt;/code&amp;gt; - or if you use the portal, just &amp;lt;code&amp;gt;\\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\run.bat&amp;lt;/code&amp;gt; in the big window will do it - and perhaps paste &amp;lt;code&amp;gt;\\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\output.txt&amp;lt;/code&amp;gt; in the stdout box to collect the input and see how it gets on. You should see sensible output from both tests.&lt;br /&gt;
&lt;br /&gt;
== Launching a job ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Submitting many jobs ==&lt;br /&gt;
&lt;br /&gt;
Suppose you write an exe that you might run with… Mysim.exe init.txt 1 2 3, and you want to run it many times with a range of parameters. One way of many, is to write a launch.bat file that will run “job submit” separately, for example (thanks Tini/James!):-&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
@echo off&lt;br /&gt;
set SubDetails=job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /jobtemplate:GeneralNodes /numcores:1&lt;br /&gt;
set initFile=\\networkshare\job\init.txt&lt;br /&gt;
set exeFile=\\networkshare\job\mysim.exe&lt;br /&gt;
&lt;br /&gt;
%SubDetails% %exeFile% %initfile% 1 2 3&lt;br /&gt;
%SubDetails% %exeFile% %initfile% 4 5 6&lt;br /&gt;
%SubDetails% %exeFile% %initfile% 7 8 9&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suppose the job you want to run is an R script? To specify arguments to an R script, you have to add ′--args a=1 b=2′ - so… you might make launch.bat like this:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
@echo off&lt;br /&gt;
set SubDetails=job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /jobtemplate:GeneralNodes /numcores:1&lt;br /&gt;
set rbatFile=\\networkshare\R-scripts\run.bat&lt;br /&gt;
&lt;br /&gt;
%SubDetails% %rbatFile% 1 2&lt;br /&gt;
%SubDetails% %rbatFile% 3 4&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
And make the significant line of your run.bat:-&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
Rcmd BATCH ′--args a=%1 b=%2′ U:\R-scripts\test.R&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
%1 and %2 will map to the first and second thing after the batch file. You can go all the way up to %9.&lt;br /&gt;
&lt;br /&gt;
		IMPORTANT NOTE&lt;br /&gt;
&lt;br /&gt;
Make sure you get the apostrophe character right in the above example – NEVER copy and paste from a word document into a script. It will go hideously wrong. Type the apostrophes (and dashes for that matter) in a good text editor – you want just the standard old-fashioned characters.&lt;br /&gt;
&lt;br /&gt;
== Requesting resources ==&lt;br /&gt;
&lt;br /&gt;
The following modifiers next to the “/scheduler:” part of the job submit line (before your app.exe 1 2 3 part), will request things you might want…&lt;br /&gt;
&lt;br /&gt;
/numcores:8				- number of cores you want&lt;br /&gt;
&lt;br /&gt;
/numcores:8-12				- minimum and maximum cores appropriate for your job&lt;br /&gt;
&lt;br /&gt;
/memorypernode:1024			- amount of mem in MegaBytes needed.&lt;br /&gt;
&lt;br /&gt;
/workdir:\\networkshare\work		- set working directory&lt;br /&gt;
&lt;br /&gt;
/stdout:\\networkshare\out.txt		- divert stdout to a file&lt;br /&gt;
&lt;br /&gt;
/stderr:    or    /stdin:			- similar for stderr and stdin&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting / Miscellany / Q &amp;amp; A ==&lt;br /&gt;
&lt;br /&gt;
*	My job doesn’t work.&lt;br /&gt;
**	Run the HPC Job Manager application. Find your job id, possible under “My Jobs, Failed”. Double click on it, then on “View All Tasks”. Perhaps something in the output section will help.&lt;br /&gt;
&lt;br /&gt;
* Check that the path to your job is visible everywhere.&lt;br /&gt;
** Avoid spaces in your paths - “job submit” doesn’t like them very much. If you must have them, they’ll be ok in the “run.bat” batch file that the cluster will run – in which case, put the path in standard double-quotes (&amp;quot;). But avoid them in your “launch.bat” file – you may have to relocate your run.bat to a simple non-space-containing directory.&lt;br /&gt;
** Rather than putting the full application and parameters on the job submit line, you might want to write a batch-file to do all that, and submit the batch file to the cluster. (See section 6 about R for example). But make sure the batch file is somewhere visible to the cluster.&lt;br /&gt;
	&lt;br /&gt;
*	My job seems to work, but reports as having failed.&lt;br /&gt;
**	The success/failure depends on the error code returned. If you’re running C code, end with “return 0;” for success.&lt;br /&gt;
&lt;br /&gt;
*  job submit ..blah blah.. app.exe &amp;gt;out.txt doesn’t work!&lt;br /&gt;
** The contents of out.txt will be the result of “job submit”, not the result of “app.exe”. You meant to say this job submit ..blah blah.. /stdout:out.txt app.exe correcting out.txt and app.exe to network paths of course.&lt;br /&gt;
&lt;br /&gt;
* My C/C++ Executable works perfectly on my desktop, but doesn&#039;t work on the cluster. What&#039;s wrong with the cluster?&lt;br /&gt;
** Your EXE file probably relies on some DLL files that the cluster doesn&#039;t have. If you use Visual Studio, check that in Code Generation, you have &amp;quot;Multi-Threaded (/MT)&amp;quot; as your target - with no mention of DLLs. If your code uses OpenMP, check you&#039;ve copied the right OpenMP DLL(s) (go back to the C section above). As a last resort, give your EXE to someone who doesn&#039;t have Visual Studio installed, and get them to run it, and see what DLL files it seems to ask for.&lt;br /&gt;
&lt;br /&gt;
== Contributing Authors ==&lt;br /&gt;
&lt;br /&gt;
Wes Hinsley, James Truscott, Tini Garske, Jeff Eaton, Hannah Clapham&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Remote_access_to_DIDE&amp;diff=14257</id>
		<title>Remote access to DIDE</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Remote_access_to_DIDE&amp;diff=14257"/>
		<updated>2023-12-11T11:00:30Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;These instructions are now obsolete. All remote access to DIDE is now via [https://www.imperial.ac.uk/admin-services/ict/self-service/connect-communicate/remote-access/unified-access/ Zscaler]. &#039;&#039;&#039;ZScaler replaces both the Pulse Secure VPN and the Remote Desktop Gateway&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Remote Access to your Windows DIDE Desktop via ZScaler ==&lt;br /&gt;
The procedure below only needs to be followed once. Complete each step in turn.&lt;br /&gt;
# Ensure that you&#039;ve uninstalled Pulse Secure VPN.&lt;br /&gt;
# Ensure that you&#039;ve installed ZScaler via above link.&lt;br /&gt;
# Click on the Start button in your desktop toolbar, type &#039;&#039;&#039;Remote Desktop&#039;&#039;&#039; in the search field and press the Return key on your keyboard.&lt;br /&gt;
# Press the &#039;&#039;&#039;Show Options&#039;&#039;&#039; arrow in the bottom left hand corner of the Remote Desktop window.&lt;br /&gt;
# Click the &#039;&#039;&#039;Display&#039;&#039;&#039; tab and ensure that the &#039;&#039;&#039;Colours&#039;&#039;&#039; menu says &#039;&#039;High Colour (16-bit)&#039;&#039;.[[File:TS display.png|thumb|Step 10]]&lt;br /&gt;
# Click on the &#039;&#039;&#039;Experience&#039;&#039;&#039; tab and select &#039;&#039;&#039;Low speed internet&#039;&#039;&#039;, then re-tick the box for Font Smoothing.&lt;br /&gt;
# Click the &#039;&#039;&#039;Local Resources&#039;&#039;&#039; tab and ensure that the &#039;&#039;&#039;Printers&#039;&#039;&#039; box is &#039;&#039;unticked&#039;&#039;.[[File:TS printer.png|thumb|Step 11]]&lt;br /&gt;
# Click the &#039;&#039;&#039;General&#039;&#039;&#039; tab.&lt;br /&gt;
# Enter the full name of your DIDE PC (e.g. &#039;&#039;&#039;WPIA-DIDEx.dide.ic.ac.uk&#039;&#039;&#039;) and click &#039;&#039;Connect&#039;&#039;.&lt;br /&gt;
# Enter your DIDE username (&#039;&#039;&#039;DIDE\yourusername&#039;&#039;&#039;) and click &#039;&#039;OK&#039;&#039;.[[File:TS general.png|thumb|Steps 12 to 15]]&lt;br /&gt;
# Finally, click the &#039;&#039;&#039;Save As...&#039;&#039;&#039; button and save these settings as something like &#039;&#039;&#039;Remote Desktop Connection&#039;&#039;&#039; to your desktop or wherever you like.&lt;br /&gt;
&lt;br /&gt;
== OBSOLETE SINCE ZSCALER - Remote Access to your Windows DIDE Desktop via Terminal Services Gateway ==&lt;br /&gt;
The procedure below only needs to be followed once. Complete each step in turn.&lt;br /&gt;
[[File:TS connection2.png|thumb|Steps 4 to 9]]&lt;br /&gt;
# Click on the Start button in your desktop toolbar, type &#039;&#039;&#039;Remote Desktop&#039;&#039;&#039; in the search field and press the Return key on your keyboard.&lt;br /&gt;
# Press the &#039;&#039;&#039;Show Options&#039;&#039;&#039; arrow in the bottom left hand corner of the Remote Desktop window.&lt;br /&gt;
# Select the &#039;&#039;&#039;Advanced&#039;&#039;&#039; tab on the far right and click the &#039;&#039;&#039;Settings...&#039;&#039;&#039; button under Connect from anywhere.&lt;br /&gt;
# Select the &#039;&#039;&#039;Use these RD Gateway server settings&#039;&#039;&#039; button.&lt;br /&gt;
# Enter &#039;&#039;&#039;ictsgw.cc.ic.ac.uk&#039;&#039;&#039; in the &#039;&#039;Server name&#039;&#039; field.&lt;br /&gt;
# Select &#039;&#039;&#039;Allow me to select later&#039;&#039;&#039; in the &#039;&#039;Log-on method&#039;&#039; field. We&#039;ll add this later (see after these steps).&lt;br /&gt;
# Ensure that &#039;&#039;&#039;Bypass RD Gateway server for local addresses&#039;&#039;&#039; is &#039;&#039;ticked&#039;&#039;.&lt;br /&gt;
# Ensure that &#039;&#039;&#039;Use my RD Gateway credentials for the remote computer&#039;&#039;&#039; at the bottom is &#039;&#039;unticked&#039;&#039;. &lt;br /&gt;
# Press the OK button&lt;br /&gt;
# Click the &#039;&#039;&#039;Display&#039;&#039;&#039; tab and ensure that the &#039;&#039;&#039;Colours&#039;&#039;&#039; menu says &#039;&#039;High Colour (16-bit)&#039;&#039;.[[File:TS display.png|thumb|Step 10]]&lt;br /&gt;
# Click on the &#039;&#039;&#039;Experience&#039;&#039;&#039; tab and select &#039;&#039;&#039;Low speed internet&#039;&#039;&#039;, then re-tick the box for Font Smoothing.&lt;br /&gt;
# Click the &#039;&#039;&#039;Local Resources&#039;&#039;&#039; tab and ensure that the &#039;&#039;&#039;Printers&#039;&#039;&#039; box is &#039;&#039;unticked&#039;&#039;.[[File:TS printer.png|thumb|Step 11]]&lt;br /&gt;
# Click the &#039;&#039;&#039;General&#039;&#039;&#039; tab.&lt;br /&gt;
# Enter the full name of your DIDE PC (e.g. &#039;&#039;&#039;WPIA-DIDEx.dide.ic.ac.uk&#039;&#039;&#039;) and click &#039;&#039;Connect&#039;&#039;.&lt;br /&gt;
# Enter your DIDE username (&#039;&#039;&#039;DIDE\yourusername&#039;&#039;&#039;) and click &#039;&#039;OK&#039;&#039;.[[File:TS general.png|thumb|Steps 12 to 15]]&lt;br /&gt;
# Finally, click the &#039;&#039;&#039;Save As...&#039;&#039;&#039; button and save these settings as something like &#039;&#039;&#039;Remote Desktop Connection&#039;&#039;&#039; to your desktop or wherever you like.&lt;br /&gt;
&lt;br /&gt;
You will now have a new icon on your desktop and you never need to do the above again. To connect to your DIDE desktop, click the &#039;&#039;&#039;Connect&#039;&#039;&#039; button in your new Remote Desktop shortcut.&lt;br /&gt;
&lt;br /&gt;
You will now be asked for your Imperial credentials in order to access the Terminal Services Gateway. Enter your details as &#039;&#039;&#039;IC\username&#039;&#039;&#039; with your Imperial password.&lt;br /&gt;
&lt;br /&gt;
Once that allows you through you will be prompted for your DIDE credentials in order to access your PC. Enter your details as &#039;&#039;&#039;DIDE\username&#039;&#039;&#039; with your DIDE password. If this is the first time that you&#039;ve connected to your DIDE PC for a while you&#039;ll get a certificate warning message. Tick the box and select &#039;&#039;&#039;Yes&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
If you don&#039;t get prompted for your DIDE account that probably means your PC is asleep. To wake it up [https://www.imperial.ac.uk/admin-services/ict/self-service/connect-communicate/remote-access/remotely-access-my-college-computer/wake-my-pc/ click here].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;N.B.&#039;&#039;&#039; If all the above seems too difficult, I&#039;ve made a template file with all the settings. It is in the &#039;&#039;&#039;T:&#039;&#039;&#039; drive in folder &#039;&#039;&#039;IT\VPN&#039;&#039;&#039; and is called &#039;&#039;&#039;DIDE-Remote.RDP&#039;&#039;&#039;. Right-click and edit that to put your correct hostname and username in and all the other settings are done for you.&lt;br /&gt;
&lt;br /&gt;
== Remote Access to your Ubuntu DIDE Desktop via Terminal Services Gateway ==&lt;br /&gt;
First of all, you will need to have enabled remote desktop in advance. [https://linuxconfig.org/ubuntu-remote-desktop-18-04-bionic-beaver-linux See here for example]. You should also check you have the Remmina app installed.&lt;br /&gt;
&lt;br /&gt;
# Open Remmina&lt;br /&gt;
# Click the “+” button to add a new configuration, and give it a meaningful name.&lt;br /&gt;
# Protocol: RDP - Remote Desktop Protocol&lt;br /&gt;
# Open Remmina and on the Basic tab fill in the following details: &lt;br /&gt;
#* Server: Your desktop PC FQDN (e.g. &#039;&#039;&#039;WPIA-DIDEx.dide.ic.ac.uk&#039;&#039;&#039;)&lt;br /&gt;
#* User Name: &#039;&#039;&#039;Your Ubuntu username&#039;&#039;&#039;&lt;br /&gt;
#* Password: &#039;&#039;&#039;Your Ubuntu  password&#039;&#039;&#039;&lt;br /&gt;
#* Domain: &#039;&#039;&#039;DIDE&#039;&#039;&#039; (only if your workstation is on the DIDE domain - very likely it&#039;s not).&lt;br /&gt;
# Adjust colour depth to &#039;&#039;&#039;16 bit&#039;&#039;&#039;.&lt;br /&gt;
# Go to to the Advanced Tab and set up the ICT RDP Gateway with the following details:&lt;br /&gt;
#* RDG Server: &#039;&#039;&#039;ictsgw.cc.ic.ac.uk&#039;&#039;&#039;&lt;br /&gt;
#* RDG username: &#039;&#039;&#039;Your IC username&#039;&#039;&#039;&lt;br /&gt;
#* RDG password: &#039;&#039;&#039;Your IC password&#039;&#039;&#039;&lt;br /&gt;
#* RDG domain: &#039;&#039;&#039;IC&#039;&#039;&#039;&lt;br /&gt;
# Click &#039;&#039;&#039;Save&#039;&#039;&#039; and you will have a new configuration with the name you initially specified. &lt;br /&gt;
# Click on this new entry to connect to your server.&lt;br /&gt;
# Accept the certificate warnings. These should only appear the very first time you connect.&lt;br /&gt;
# Your Ubuntu remote session should now be active.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Remote Access to your DIDE Desktop via Terminal Services Gateway on a Mac ==&lt;br /&gt;
The procedure below only needs to be followed once. Complete each step in turn.&lt;br /&gt;
&lt;br /&gt;
# Start the &#039;&#039;&#039;Microsoft Remote Desktop 10&#039;&#039;&#039; app from the App Store and select &#039;&#039;&#039;Add desktop&#039;&#039;&#039; to add a new profile entry.&lt;br /&gt;
# Enter a name for the remote desktop profile.&lt;br /&gt;
# Enter the full name of your DIDE machine (e.g. &#039;&#039;&#039;WPIA-DIDEx.dide.ic.ac.uk&#039;&#039;&#039;).&lt;br /&gt;
# Change the &#039;&#039;&#039;User Account&#039;&#039;&#039; drop down to Add User Account&lt;br /&gt;
# Enter &#039;&#039;&#039;DIDE\username&#039;&#039;&#039; in the User name field.&lt;br /&gt;
# Enter your DIDE password in the Password field.&lt;br /&gt;
# Enter a friendly name if desired (optional)&lt;br /&gt;
# Click &#039;&#039;&#039;Add&#039;&#039;&#039; and &#039;&#039;&#039;Save&#039;&#039;&#039; again.&lt;br /&gt;
# Click the Cog in the top left of the screen then Preferences.&lt;br /&gt;
# Click Gateways.&lt;br /&gt;
# Click on the &#039;&#039;&#039;+&#039;&#039;&#039; symbol on the bottom left of the window.&lt;br /&gt;
# Enter &#039;&#039;&#039;ictsgw.cc.ic.ac.uk&#039;&#039;&#039; in the Server name field.&lt;br /&gt;
# Select your Imperial &#039;&#039;&#039;username&#039;&#039;&#039; in the User name field.&lt;br /&gt;
# Enter a name for the gateway in the Friendly Name field.&lt;br /&gt;
# Click &#039;&#039;&#039;Save&#039;&#039;&#039;.&lt;br /&gt;
# Close the screen.&lt;br /&gt;
# Now choose the gateway you created from the Gateway dropdown list.&lt;br /&gt;
# Click the pencil icon.&lt;br /&gt;
# Under &#039;&#039;&#039;General&#039;&#039;&#039; select the gateway name in the Gateway field.&lt;br /&gt;
# Click &#039;&#039;&#039;Save&#039;&#039;&#039;.&lt;br /&gt;
# The main screen will display your new profile. Double click this to start a remote desktop session.&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Remote_access_to_DIDE&amp;diff=14256</id>
		<title>Remote access to DIDE</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Remote_access_to_DIDE&amp;diff=14256"/>
		<updated>2023-12-11T11:00:13Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;These instructions are now obsolete. All remote access to DIDE is now via [https://www.imperial.ac.uk/admin-services/ict/self-service/connect-communicate/remote-access/unified-access/ Zscaler]. &#039;&#039;&#039;ZScaler replaces both the Pulse Secure VPN and the Remote Desktop Gatway&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Remote Access to your Windows DIDE Desktop via ZScaler ==&lt;br /&gt;
The procedure below only needs to be followed once. Complete each step in turn.&lt;br /&gt;
# Ensure that you&#039;ve uninstalled Pulse Secure VPN.&lt;br /&gt;
# Ensure that you&#039;ve installed ZScaler via above link.&lt;br /&gt;
# Click on the Start button in your desktop toolbar, type &#039;&#039;&#039;Remote Desktop&#039;&#039;&#039; in the search field and press the Return key on your keyboard.&lt;br /&gt;
# Press the &#039;&#039;&#039;Show Options&#039;&#039;&#039; arrow in the bottom left hand corner of the Remote Desktop window.&lt;br /&gt;
# Click the &#039;&#039;&#039;Display&#039;&#039;&#039; tab and ensure that the &#039;&#039;&#039;Colours&#039;&#039;&#039; menu says &#039;&#039;High Colour (16-bit)&#039;&#039;.[[File:TS display.png|thumb|Step 10]]&lt;br /&gt;
# Click on the &#039;&#039;&#039;Experience&#039;&#039;&#039; tab and select &#039;&#039;&#039;Low speed internet&#039;&#039;&#039;, then re-tick the box for Font Smoothing.&lt;br /&gt;
# Click the &#039;&#039;&#039;Local Resources&#039;&#039;&#039; tab and ensure that the &#039;&#039;&#039;Printers&#039;&#039;&#039; box is &#039;&#039;unticked&#039;&#039;.[[File:TS printer.png|thumb|Step 11]]&lt;br /&gt;
# Click the &#039;&#039;&#039;General&#039;&#039;&#039; tab.&lt;br /&gt;
# Enter the full name of your DIDE PC (e.g. &#039;&#039;&#039;WPIA-DIDEx.dide.ic.ac.uk&#039;&#039;&#039;) and click &#039;&#039;Connect&#039;&#039;.&lt;br /&gt;
# Enter your DIDE username (&#039;&#039;&#039;DIDE\yourusername&#039;&#039;&#039;) and click &#039;&#039;OK&#039;&#039;.[[File:TS general.png|thumb|Steps 12 to 15]]&lt;br /&gt;
# Finally, click the &#039;&#039;&#039;Save As...&#039;&#039;&#039; button and save these settings as something like &#039;&#039;&#039;Remote Desktop Connection&#039;&#039;&#039; to your desktop or wherever you like.&lt;br /&gt;
&lt;br /&gt;
== OBSOLETE SINCE ZSCALER - Remote Access to your Windows DIDE Desktop via Terminal Services Gateway ==&lt;br /&gt;
The procedure below only needs to be followed once. Complete each step in turn.&lt;br /&gt;
[[File:TS connection2.png|thumb|Steps 4 to 9]]&lt;br /&gt;
# Click on the Start button in your desktop toolbar, type &#039;&#039;&#039;Remote Desktop&#039;&#039;&#039; in the search field and press the Return key on your keyboard.&lt;br /&gt;
# Press the &#039;&#039;&#039;Show Options&#039;&#039;&#039; arrow in the bottom left hand corner of the Remote Desktop window.&lt;br /&gt;
# Select the &#039;&#039;&#039;Advanced&#039;&#039;&#039; tab on the far right and click the &#039;&#039;&#039;Settings...&#039;&#039;&#039; button under Connect from anywhere.&lt;br /&gt;
# Select the &#039;&#039;&#039;Use these RD Gateway server settings&#039;&#039;&#039; button.&lt;br /&gt;
# Enter &#039;&#039;&#039;ictsgw.cc.ic.ac.uk&#039;&#039;&#039; in the &#039;&#039;Server name&#039;&#039; field.&lt;br /&gt;
# Select &#039;&#039;&#039;Allow me to select later&#039;&#039;&#039; in the &#039;&#039;Log-on method&#039;&#039; field. We&#039;ll add this later (see after these steps).&lt;br /&gt;
# Ensure that &#039;&#039;&#039;Bypass RD Gateway server for local addresses&#039;&#039;&#039; is &#039;&#039;ticked&#039;&#039;.&lt;br /&gt;
# Ensure that &#039;&#039;&#039;Use my RD Gateway credentials for the remote computer&#039;&#039;&#039; at the bottom is &#039;&#039;unticked&#039;&#039;. &lt;br /&gt;
# Press the OK button&lt;br /&gt;
# Click the &#039;&#039;&#039;Display&#039;&#039;&#039; tab and ensure that the &#039;&#039;&#039;Colours&#039;&#039;&#039; menu says &#039;&#039;High Colour (16-bit)&#039;&#039;.[[File:TS display.png|thumb|Step 10]]&lt;br /&gt;
# Click on the &#039;&#039;&#039;Experience&#039;&#039;&#039; tab and select &#039;&#039;&#039;Low speed internet&#039;&#039;&#039;, then re-tick the box for Font Smoothing.&lt;br /&gt;
# Click the &#039;&#039;&#039;Local Resources&#039;&#039;&#039; tab and ensure that the &#039;&#039;&#039;Printers&#039;&#039;&#039; box is &#039;&#039;unticked&#039;&#039;.[[File:TS printer.png|thumb|Step 11]]&lt;br /&gt;
# Click the &#039;&#039;&#039;General&#039;&#039;&#039; tab.&lt;br /&gt;
# Enter the full name of your DIDE PC (e.g. &#039;&#039;&#039;WPIA-DIDEx.dide.ic.ac.uk&#039;&#039;&#039;) and click &#039;&#039;Connect&#039;&#039;.&lt;br /&gt;
# Enter your DIDE username (&#039;&#039;&#039;DIDE\yourusername&#039;&#039;&#039;) and click &#039;&#039;OK&#039;&#039;.[[File:TS general.png|thumb|Steps 12 to 15]]&lt;br /&gt;
# Finally, click the &#039;&#039;&#039;Save As...&#039;&#039;&#039; button and save these settings as something like &#039;&#039;&#039;Remote Desktop Connection&#039;&#039;&#039; to your desktop or wherever you like.&lt;br /&gt;
&lt;br /&gt;
You will now have a new icon on your desktop and you never need to do the above again. To connect to your DIDE desktop, click the &#039;&#039;&#039;Connect&#039;&#039;&#039; button in your new Remote Desktop shortcut.&lt;br /&gt;
&lt;br /&gt;
You will now be asked for your Imperial credentials in order to access the Terminal Services Gateway. Enter your details as &#039;&#039;&#039;IC\username&#039;&#039;&#039; with your Imperial password.&lt;br /&gt;
&lt;br /&gt;
Once that allows you through you will be prompted for your DIDE credentials in order to access your PC. Enter your details as &#039;&#039;&#039;DIDE\username&#039;&#039;&#039; with your DIDE password. If this is the first time that you&#039;ve connected to your DIDE PC for a while you&#039;ll get a certificate warning message. Tick the box and select &#039;&#039;&#039;Yes&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
If you don&#039;t get prompted for your DIDE account that probably means your PC is asleep. To wake it up [https://www.imperial.ac.uk/admin-services/ict/self-service/connect-communicate/remote-access/remotely-access-my-college-computer/wake-my-pc/ click here].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;N.B.&#039;&#039;&#039; If all the above seems too difficult, I&#039;ve made a template file with all the settings. It is in the &#039;&#039;&#039;T:&#039;&#039;&#039; drive in folder &#039;&#039;&#039;IT\VPN&#039;&#039;&#039; and is called &#039;&#039;&#039;DIDE-Remote.RDP&#039;&#039;&#039;. Right-click and edit that to put your correct hostname and username in and all the other settings are done for you.&lt;br /&gt;
&lt;br /&gt;
== Remote Access to your Ubuntu DIDE Desktop via Terminal Services Gateway ==&lt;br /&gt;
First of all, you will need to have enabled remote desktop in advance. [https://linuxconfig.org/ubuntu-remote-desktop-18-04-bionic-beaver-linux See here for example]. You should also check you have the Remmina app installed.&lt;br /&gt;
&lt;br /&gt;
# Open Remmina&lt;br /&gt;
# Click the “+” button to add a new configuration, and give it a meaningful name.&lt;br /&gt;
# Protocol: RDP - Remote Desktop Protocol&lt;br /&gt;
# Open Remmina and on the Basic tab fill in the following details: &lt;br /&gt;
#* Server: Your desktop PC FQDN (e.g. &#039;&#039;&#039;WPIA-DIDEx.dide.ic.ac.uk&#039;&#039;&#039;)&lt;br /&gt;
#* User Name: &#039;&#039;&#039;Your Ubuntu username&#039;&#039;&#039;&lt;br /&gt;
#* Password: &#039;&#039;&#039;Your Ubuntu  password&#039;&#039;&#039;&lt;br /&gt;
#* Domain: &#039;&#039;&#039;DIDE&#039;&#039;&#039; (only if your workstation is on the DIDE domain - very likely it&#039;s not).&lt;br /&gt;
# Adjust colour depth to &#039;&#039;&#039;16 bit&#039;&#039;&#039;.&lt;br /&gt;
# Go to to the Advanced Tab and set up the ICT RDP Gateway with the following details:&lt;br /&gt;
#* RDG Server: &#039;&#039;&#039;ictsgw.cc.ic.ac.uk&#039;&#039;&#039;&lt;br /&gt;
#* RDG username: &#039;&#039;&#039;Your IC username&#039;&#039;&#039;&lt;br /&gt;
#* RDG password: &#039;&#039;&#039;Your IC password&#039;&#039;&#039;&lt;br /&gt;
#* RDG domain: &#039;&#039;&#039;IC&#039;&#039;&#039;&lt;br /&gt;
# Click &#039;&#039;&#039;Save&#039;&#039;&#039; and you will have a new configuration with the name you initially specified. &lt;br /&gt;
# Click on this new entry to connect to your server.&lt;br /&gt;
# Accept the certificate warnings. These should only appear the very first time you connect.&lt;br /&gt;
# Your Ubuntu remote session should now be active.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Remote Access to your DIDE Desktop via Terminal Services Gateway on a Mac ==&lt;br /&gt;
The procedure below only needs to be followed once. Complete each step in turn.&lt;br /&gt;
&lt;br /&gt;
# Start the &#039;&#039;&#039;Microsoft Remote Desktop 10&#039;&#039;&#039; app from the App Store and select &#039;&#039;&#039;Add desktop&#039;&#039;&#039; to add a new profile entry.&lt;br /&gt;
# Enter a name for the remote desktop profile.&lt;br /&gt;
# Enter the full name of your DIDE machine (e.g. &#039;&#039;&#039;WPIA-DIDEx.dide.ic.ac.uk&#039;&#039;&#039;).&lt;br /&gt;
# Change the &#039;&#039;&#039;User Account&#039;&#039;&#039; drop down to Add User Account&lt;br /&gt;
# Enter &#039;&#039;&#039;DIDE\username&#039;&#039;&#039; in the User name field.&lt;br /&gt;
# Enter your DIDE password in the Password field.&lt;br /&gt;
# Enter a friendly name if desired (optional)&lt;br /&gt;
# Click &#039;&#039;&#039;Add&#039;&#039;&#039; and &#039;&#039;&#039;Save&#039;&#039;&#039; again.&lt;br /&gt;
# Click the Cog in the top left of the screen then Preferences.&lt;br /&gt;
# Click Gateways.&lt;br /&gt;
# Click on the &#039;&#039;&#039;+&#039;&#039;&#039; symbol on the bottom left of the window.&lt;br /&gt;
# Enter &#039;&#039;&#039;ictsgw.cc.ic.ac.uk&#039;&#039;&#039; in the Server name field.&lt;br /&gt;
# Select your Imperial &#039;&#039;&#039;username&#039;&#039;&#039; in the User name field.&lt;br /&gt;
# Enter a name for the gateway in the Friendly Name field.&lt;br /&gt;
# Click &#039;&#039;&#039;Save&#039;&#039;&#039;.&lt;br /&gt;
# Close the screen.&lt;br /&gt;
# Now choose the gateway you created from the Gateway dropdown list.&lt;br /&gt;
# Click the pencil icon.&lt;br /&gt;
# Under &#039;&#039;&#039;General&#039;&#039;&#039; select the gateway name in the Gateway field.&lt;br /&gt;
# Click &#039;&#039;&#039;Save&#039;&#039;&#039;.&lt;br /&gt;
# The main screen will display your new profile. Double click this to start a remote desktop session.&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Cluster_Documentation&amp;diff=14255</id>
		<title>Cluster Documentation</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Cluster_Documentation&amp;diff=14255"/>
		<updated>2023-08-24T07:20:18Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* Python */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* We have two high performance clusters for general use, both running Microsoft HPC 2012 R2, Update 3. The smaller, older cluster is [[fi--dideclusthn]] and the larger is [[fi--didemrchnb]]. &lt;br /&gt;
&lt;br /&gt;
* Many users in the department write code and packages in R. We have in-house packages that can allow an almost-interactive experience of running jobs on our high performance clusters, so if that sounds like what you&#039;d like, you might as well stop reading here, and go straight to [https://github.com/mrc-ide/didehpc The DIDEHPC package] - or if you need to join the mrc-ide github org first, go to [https://github.com/mrc-ide/welcome The welcome page].&lt;br /&gt;
&lt;br /&gt;
If you&#039;re not using R, or you are interested in other ways, then continue...&lt;br /&gt;
&lt;br /&gt;
== Windows Users ==&lt;br /&gt;
&lt;br /&gt;
The cluster nodes are Windows 2012-R2 based. This is good news if you&#039;re a Windows user, and especially easy for PCs within the departmental DIDE domain. You have the option of using the MS client for launching jobs (see below), or you can use try the new [[HPC Web Portal]]. If you&#039;re preparing to use the cluster, and have doubts about whether it can run what you want - and whether it will be straightforward to develop and run on it, best talk to me and/or the IT guys first!&lt;br /&gt;
&lt;br /&gt;
== Linux and MAC Users ==&lt;br /&gt;
&lt;br /&gt;
There are two problems, but both can be at least partially overcome. The first is that there is no client for linux. The second is that it can only run windows binaries.&lt;br /&gt;
&lt;br /&gt;
=== Launching jobs on Linux/Mac ===&lt;br /&gt;
&lt;br /&gt;
* The best way might be the [[HPC Web Portal]], which lets you submit jobs through a webpage. Give it a try, and feedback to me any issues! &lt;br /&gt;
&lt;br /&gt;
* Alternatively, you can either (1) go down the VM route, installing a windows virtual machine, eg VMWare or Parallels, and follow the instructions below. (2) Remote Desktop to your friend&#039;s Windows machine. These tend not to be very convenient, but some users have submitted thousands of jobs this way.&lt;br /&gt;
&lt;br /&gt;
=== What Linux/Mac jobs can I run? ===&lt;br /&gt;
&lt;br /&gt;
* Many jobs may be platform indepedent. Where compiled code is involved though, you&#039;ll have some extra work to make sure the binary parts can be run in windows. For R, [https://github.com/mrc-ide/didehpc the tools] help you sort that out. For others, you may need to run a job on the cluster to do your builds. Also, for many linux applications, there is a windows port. Mileage can vary, but it&#039;s worth a try searching for that before you give up hope. Some of these might be installed on the cluster already - see below. Or some you may be able to download and call them from your run script.&lt;br /&gt;
&lt;br /&gt;
* For C code, again, we can run scripts on the cluster to build the binaries for you, if your code can be compiled with (say) the MinGW port of gcc. Cygwin can also be used (although seems less common these days) with accompanying dlls. Get in touch if you need further ideas; most things can be solved. &lt;br /&gt;
&lt;br /&gt;
* Matlab is a little more tricky - we have a range of colossal matlab runtimes on the cluster, but you&#039;d need to compile a windows binary to use them, since the matlab platforms are distinct in every way. For this, probably find a friend, or get in touch, and we&#039;ll work out how you can compile for it.&lt;br /&gt;
&lt;br /&gt;
* There is also the option of running a Windows VM, which might solve all of the above problems.&lt;br /&gt;
&lt;br /&gt;
=== But I really want a unix cluster. ===&lt;br /&gt;
&lt;br /&gt;
* We have run linux clusters in the past ([[fi--didelxhn]]), but there was very low demand, whereas the other clusters are consistently well used. Accessing DIDE network shares from linux was a little harder in some aspects, but we did not implement the more traditional linux approach of having dedicated separate cluster storage that inputs and outputs would have to be staged on to, in order for the cluster to see them. Generally, the flexibility of the other clusters makes such things quite straightforward, and may even feel a pleasure if your background is with the less domain-integrated style of cluster architecture.&lt;br /&gt;
&lt;br /&gt;
* It has also become far easier to write software that builds on multiple platforms with good practice. Tools that only run on one platform are rare, and in some circumstances have raised questions about the quality of those packages. Alternatives are often available.&lt;br /&gt;
&lt;br /&gt;
* Where compilation is the issue - for example if you want to run binaries on the cluster, but your compilation machine runs linux, or is a mac, (Matlab via MCC, or C++ code for example), then get in touch, and there are a few ways we can think of solving that, either by getting someone else, or the cluster itself, to build your code.&lt;br /&gt;
&lt;br /&gt;
* There are also resources in [https://www.imperial.ac.uk/admin-services/ict/self-service/research-support/rcs/computing/high-throughput-computing/ ICT) who run a linux cluster, with the file-staging approach, and also (being shared between a much larger pool of users) have rather stricter rules on job durations and resources than we provide locally in DIDE.&lt;br /&gt;
&lt;br /&gt;
== Getting Started ==&lt;br /&gt;
&lt;br /&gt;
=== Getting access to the cluster ===&lt;br /&gt;
&lt;br /&gt;
Send a mail to Wes (w.hinsley@imperial.ac.uk) requesting access to the cluster. He will add you to the necessary groups, and work out what cluster you should be running on. Unless you are told otherwise, this will be fi--dideclusthn. But if you have been told otherwise, then whenever you see fi--dideclusthn, replace it with the cluster name you’ve been given, either mentally or (less effectively) on your screen with tip-ex.&lt;br /&gt;
&lt;br /&gt;
=== Windows: Install the HPC client software ===&lt;br /&gt;
&lt;br /&gt;
* Run \\fi--dideclusthn.dide.ic.ac.uk\REMINST\setup.exe. &lt;br /&gt;
* Confirm &#039;&#039;&#039;Yes, I really want to run this&#039;&#039;&#039;.&lt;br /&gt;
* There&#039;s an introductory screen, and you click &#039;&#039;&#039;Next&#039;&#039;&#039;&lt;br /&gt;
* You have to tick the &#039;&#039;&#039;Accept&#039;&#039;&#039;, then click &#039;&#039;&#039;Next&#039;&#039;&#039;&lt;br /&gt;
* If it gives you any choice, select &#039;&#039;&#039;Install only the client utilities&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;Next&#039;&#039;&#039;, &#039;&#039;&#039;Next&#039;&#039;&#039;, &#039;&#039;&#039;Next&#039;&#039;&#039;&lt;br /&gt;
* Select &#039;&#039;&#039;Use Microsoft Update&#039;&#039;&#039; and then &#039;&#039;&#039;Next&#039;&#039;&#039;&lt;br /&gt;
* And then &#039;&#039;&#039;Install&#039;&#039;&#039;&lt;br /&gt;
* And possibly &#039;&#039;&#039;Install&#039;&#039;&#039; again – if it had to install any pre-requisites first.&lt;br /&gt;
* And &#039;&#039;&#039;Finish&#039;&#039;&#039;, and the client installation is done.&lt;br /&gt;
* To check everything is alright so far, open a &#039;&#039;&#039;NEW command prompt window&#039;&#039;&#039;.&lt;br /&gt;
* (Because the installer adds things to the path, which only take effect on &#039;&#039;&#039;NEW comamnd windows&#039;&#039;&#039;! :-)&lt;br /&gt;
* (Find it under Accessories, or you can use Start, Run, &#039;&#039;&#039;cmd&#039;&#039;&#039;).&lt;br /&gt;
* Type &amp;lt;code&amp;gt;job list /scheduler:fi--dideclusthn.dide.ic.ac.uk&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And it will list the jobs you have running, which will be none so far!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Id         Owner         Name              State        Priority    Resource Request&lt;br /&gt;
---------- ------------- ----------------- ------------ ----------- -------- -------&lt;br /&gt;
&lt;br /&gt;
0 matching jobs for DIDE\user&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Windows: Using a non-domain machine ===&lt;br /&gt;
&lt;br /&gt;
If you&#039;re using a machine that isn&#039;t actually logged into DIDE, then the client software will have a problem working out who you are. In this case, there are two things you need to do.&lt;br /&gt;
* Check you&#039;ve really got a DIDE username. If you don&#039;t know what it is, talk to your lovely IT team.&lt;br /&gt;
* Connect to the DIDE VPN (see http://www1.imperial.ac.uk/publichealth/departments/ide/it/remote/) - login to that with your DIDE account.&lt;br /&gt;
* Alternatively to the DIDE VPN, you can install ICT&#039;s Juniper client from http://secureaccess.imperial.ac.uk, and login to that with your IC account - but you&#039;ll still need your DIDE account to access DIDE servers after the Juniper connection is up and running.&lt;br /&gt;
* Now we&#039;ll open a command window using &amp;quot;runas&amp;quot; - which lets you choose which identity the system thinks you are within that command window:-&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
runas /netonly /user:DIDE\user cmd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* (Change user to your own login obviously). It will ask for your password, then open a new command window. In that window, you&#039;ll be able to do cluster-related things as your DIDE username.&lt;br /&gt;
&lt;br /&gt;
=== Windows: Launching and cancelling jobs ===&lt;br /&gt;
==== Windows: Command Line ====&lt;br /&gt;
&lt;br /&gt;
Suppose you have a file called &amp;quot;run.bat&amp;quot; in your home directory, which does what you want to run on the cluster. Let&#039;s say it&#039;s a single-core, very simple job. We’ll discuss what should be inside &amp;quot;run.bat&amp;quot; later. To submit your job on the cluster, at the command prompt, type this (all on one line) - or put it in a file called &amp;quot;launch.bat&amp;quot;, and run it:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /jobtemplate:GeneralNodes /numcores:1 \\qdrive.dide.ic.ac.uk\homes\user\run.bat&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If it&#039;s the first time you’ve run a job - or if you&#039;ve recently changed your password, then it might ask you for your DIDE password and offer to remember it. Otherwise, it will just tell you the ID number of your job.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;Enter the password for ‘DIDE\user’ to connect to ‘FI—DIDECLUSTHN’:&lt;br /&gt;
Remember this password? (Y/N)&lt;br /&gt;
job has been submitted. ID: 123&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you want to remove the job, then:-	&amp;lt;code&amp;gt;job cancel 123 /scheduler:fi--dideclusthn.dide.ic.ac.uk&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Or view its details with &amp;lt;code&amp;gt;job view 123 /scheduler:fi--dideclusthn.dide.ic.ac.uk&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Windows: Job Manager GUI ====&lt;br /&gt;
&lt;br /&gt;
Alternatively to the command-line, you can use the job management software, rather than the command-line. The advantage is that it’s a GUI. The disadvantage is, as in all GUIs, you may not feel totally sure you know what it’s up to – where most of the time the things you want to do might not be very complex, as above.&lt;br /&gt;
&lt;br /&gt;
The job management software will be on your start menu, as above. All the features are under the “Actions” menu, and hopefully it will be self explanatory. Read the details below about launching, and you&#039;ll find the interface bits that do it in the Job Manager. However, you may find over time, especially if you run lots of jobs, that learning to do it the scripted way with the command-line can be quicker.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Information for running any job ==&lt;br /&gt;
&lt;br /&gt;
=== Visibility ===&lt;br /&gt;
&lt;br /&gt;
Any executable/batch file that the cluster will run must be somewhere on the network that the cluster has access to, when it logs in as you. This amounts to any network accessible drive that you have access to when you login – including network shares, such as the temp drive, your home directory, and any specific network space set up for your project.&lt;br /&gt;
&lt;br /&gt;
After a job is launched, all paths are relative to the &#039;&#039;&#039;/workdir:&#039;&#039;&#039; specified on the job submit command-line. Windows does not usually allow a network path to be the current directory, and MS-HPC somehow gets around this. But if in doubt, use fully-qualified paths to specify where files should be read from, or written to. You may want to write code that takes the paths from a parameter file, or as a command-line parameter, to give as much flexibility as possible. &lt;br /&gt;
&lt;br /&gt;
Your home directory, and the temp drive are on departmental servers that don&#039;t have an especially fast connection to the cluster. So avoid having thousands of jobs all reading/writing to those places at once. Additionally, the temp drive is shared between all users, and your home drive has a limited quota. It is also backed up every day, so avoid using it as scratch storage for results you don’t actually want to keep. Generally, the shares you&#039;ll want to use from the clusters will be ones containing the word &amp;quot;NAS&amp;quot;, which the big cluster has fast access to.&lt;br /&gt;
&lt;br /&gt;
=== Interactivity ===&lt;br /&gt;
&lt;br /&gt;
The job must run in an entirely scripted, unattended way. It must not require any key presses or mouse clicks, or other live interactivity while it runs. So jobs generally will read some sort of input (from a file, or from the way you run the job), do some processing, and write the results somewhere for you - all without intervention.&lt;br /&gt;
&lt;br /&gt;
== Launching jobs ==&lt;br /&gt;
&lt;br /&gt;
Jobs can be launched either through the Job Manager interface, or through the command line tools, which offer greater flexibility. We&#039;ll describe the command line method here; if you want to use the GUI, then it&#039;ll be a case of finding the matching boxes... Below are the specifics for our clusters. For more information, simply type &amp;lt;code&amp;gt;job&amp;lt;/code&amp;gt; on the commandline, or &amp;lt;code&amp;gt;job submit&amp;lt;/code&amp;gt; for the list of submission-related commands.&lt;br /&gt;
&lt;br /&gt;
=== FI--DIDECLUSTHN vs FI--DIDEMRCHNB ===&lt;br /&gt;
&lt;br /&gt;
Job submissions, as shown below, must specify a &amp;quot;job template&amp;quot;, which sets up a load of default things to make the job work. On fi--dideclusthn, the job templates are called 4Core, 8Core and GeneralNodes, which will respectively force jobs to run on the 4-core nodes, the 8-core nodes, or on any machine available.&lt;br /&gt;
&lt;br /&gt;
On fi--didemrchnb, you can set the job template to be... 8Core, 12Core, 16Core, 12and16Core, and GeneralNodes - which hopefully are fairly self-explanatory. There are a couple of other job templates, (24Core and Phi), but those are a bit special purpose for now, so don&#039;t use them!&lt;br /&gt;
&lt;br /&gt;
=== Job Submission ===&lt;br /&gt;
&lt;br /&gt;
Job submissions from the command line can take the following form (all on one line):-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /stdout:\\path\to\stdout.txt&lt;br /&gt;
   /stderr:\\path\to\stderr.txt /numcores:1-1 /jobtemplate:4Core \\path\to\run.bat&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== The /singlenode argument ===&lt;br /&gt;
&lt;br /&gt;
In MS HPC (2012), Microsoft finally added a tag to allow you to say that the &#039;n&#039; cores you requested must be on the same computer. Therefore, if you know precisely how many cores you want, then use the following (on one line):-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /singlenode:true &lt;br /&gt;
   /jobtemplate:8Core \\path\to\run.bat&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
However, there is one bug with this, for the specific case where you request a whole node, regardless of how many cores it has. In this case, oddly, you have to disable single node:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /singlenode:false &lt;br /&gt;
   /numnodes:1 /jobtemplate:8Core \\path\to\run.bat&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Languages and libraries supported ==&lt;br /&gt;
&lt;br /&gt;
A number of languages, and different versions of languages are available on the cluster. The sections below refer to your &amp;quot;run.bat&amp;quot; file - a batch file that you will create which will get run by a cluster node when a suitable one is available. The commands described below are to be put in this &amp;quot;run.bat&amp;quot; file, and they add various directories to the path, so that the software you want will be added to the path. &lt;br /&gt;
&lt;br /&gt;
=== C/C++ === &lt;br /&gt;
&lt;br /&gt;
A number of Microsoft C++ and Intel C++ runtimes are installed, but it&#039;s usually better to try and avoid using them, and make your executable as stand-alone as possible. If it requires any external libraries that you&#039;ve had to download, then put the .dll file in the same directory as the .exe file. If you use Microsoft Visual Studio, in Project Preferences, C/C++, Code Generation, make sure the Runtime Library is Multi-threaded (/MT) – the ones with DLL files won’t work. Even so, on recent versions of the Intel and Microsoft C compilers, &amp;quot;static linking&amp;quot; doesn’t really mean static when it comes to OpenMP, and you’ll have to copy some DLLs and put them next to your EXE file. See the OpenMP section below.&lt;br /&gt;
&lt;br /&gt;
The cluster nodes are all 64-bit, but they will run 32-bit compiled code. Just make sure you provide the right DLLs!&lt;br /&gt;
&lt;br /&gt;
Here is a document about [[Using the Xeon Phi]]&lt;br /&gt;
&lt;br /&gt;
Here is a document about [[Using MPI]]&lt;br /&gt;
&lt;br /&gt;
And if you want to use libraries such as GSL, then try [[C/C++ Libraries for Windows]]&lt;br /&gt;
&lt;br /&gt;
=== Java ===&lt;br /&gt;
&lt;br /&gt;
Java doesn&#039;t strictly need installing; you can setup any Java Runtime Environment you like, from Oracle, or anywhere. If you want to do this, then, (if you were to use the Server JRE from Oracle), something similar to the following will add java.exe and jvm.dll to the path, and set the JAVA_HOME environment variable, which most Java-using software will appreciate.&lt;br /&gt;
&lt;br /&gt;
    set JAVA_HOME=\\my\path\to\jre1.8.0&lt;br /&gt;
    set path=%JAVA_HOME%\bin;%JAVA_HOME%\bin\server;%path%&lt;br /&gt;
&lt;br /&gt;
For convenience, if you&#039;re happy with Azul&#039;s OpenJDK Java 1.8.0 update 308 (September 2021), then &amp;lt;code&amp;gt;call setJava64&amp;lt;/code&amp;gt; in your run script will set this up for you. Incidentally the above will also add what&#039;s needed for using the rJava package in R - in which case you&#039;ll perhaps also want something like &amp;lt;code&amp;gt;call setR64_4_1_0&amp;lt;/code&amp;gt; in your run script.&lt;br /&gt;
&lt;br /&gt;
=== Perl ===&lt;br /&gt;
&lt;br /&gt;
Strawberry Perl 64-bit portable, v5.30.1.1. Put &amp;lt;code&amp;gt;call setPerl&amp;lt;/code&amp;gt; at the top of your script.&lt;br /&gt;
&lt;br /&gt;
=== R ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;New tools are coming&#039;&#039;&#039;: [http://dide-tools.github.io/didehpc/vignettes/quickstart.html see here].  The instructions below are still valid if you want to do this manually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You can R jobs on all the clusters. This is the latest wisdom on how to do so – thanks to James, Jeff, Hannah and others. &lt;br /&gt;
&lt;br /&gt;
First, if you are wanting to use packages, then set up a package repository on your home directory by running this in R.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;install.packages(&amp;quot;&amp;lt;package&amp;gt;&amp;quot;,lib=&amp;quot;Q:/R&amp;quot;)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now, write your run script. Suppose you have an R script in your home directory: Q:\R-scripts\test.R. And suppose you’ve set up your repository as above. Your run.bat should then be:-&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
	call &amp;lt;script for the R version you want – see below&amp;gt;&lt;br /&gt;
	net use Q: \\qdrive.dide.ic.ac.uk\homes\user&lt;br /&gt;
	set R_LIBS=Q:\R&lt;br /&gt;
	set R_LIBS_USER=Q:\R&lt;br /&gt;
	Rscript Q:\R-scripts\test.R&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Various packages require various R versions, and the cluster supports a few versions. To choose which one, change the first line of the script above to one of these – 32-bit or 64-bit versions of R releases. Purely for amusement, R&#039;s codenames are shown here too. &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setr32_2_13_1.bat		call setr64_2_13_1.bat    (anyone know the codename?)&lt;br /&gt;
call setr32_2_14_2.bat		call setr64_2_14_2.bat    (Gift-getting season)&lt;br /&gt;
call setr32_2_15_2.bat		call setr64_2_15_2.bat    (Trick or treat)&lt;br /&gt;
call setr32_3_0_1.bat           call setr64_3_0_1.bat     (Good Sport)&lt;br /&gt;
call setr32_3_0_2.bat           call setr64_3_0_2.bat     (Frisbee Sailing)&lt;br /&gt;
call setr32_3_1_0.bat           call setr64_3_1_0.bat     (Spring Dance)&lt;br /&gt;
call setr32_3_1_2.bat           call setr64_3_1_2.bat     (Pumpkin Helmet)&lt;br /&gt;
call setr32_3_2_2.bat           call setr64_3_2_2.bat     (Fire Safety)&lt;br /&gt;
call setr32_3_2_3.bat           call setr64_3_2_3.bat     (Wooden Christmas Tree)&lt;br /&gt;
call setr32_3_2_4.bat           call setr64_3_2_4.bat     (Very Secure Dishes - Revised Version - R later renamed this to 3.2.5)&lt;br /&gt;
call setr32_3_3_1.bat           call setr64_3_3_1.bat     (Bug in your hair)&lt;br /&gt;
call setr32_3_3_2.bat           call setr64_3_3_2.bat     (Sincere Pumpkin Patch)&lt;br /&gt;
call setr32_3_4_0.bat           call setr64_3_4_0.bat     (You Stupid Darkness)&lt;br /&gt;
call setr32_3_4_2.bat           call setr64_3_4_2.bat     (Short Summer)&lt;br /&gt;
call setr32_3_4_4.bat           call setr64_3_4_4.bat     (Someone to lean on)&lt;br /&gt;
call setr32_3_5_0.bat           call setr64_3_5_0.bat     (Joy in Playing)&lt;br /&gt;
call setr32_3_5_1.bat           call setr64_3_5_1.bat     (Feather Spray)&lt;br /&gt;
call setr32_3_5_3.bat           call setr64_3_5_3.bat     (Great Truth)&lt;br /&gt;
call setr32_3_6_0.bat           call setr64_3_6_0.bat     (Planting of a Tree)&lt;br /&gt;
call setr32_3_6_1.bat           call setr64_3_6_1.bat     (Action of the Toes)&lt;br /&gt;
call setr32_3_6_3.bat           call setr64_3_6_3.bat     (Holding the Windsock)&lt;br /&gt;
call setr32_4_0_2.bat           call setr64_4_0_2.bat     (Taking Off Again)&lt;br /&gt;
call setr32_4_0_3.bat           call setr64_4_0_3.bat     (Bunny-Wunnies Freak Out)&lt;br /&gt;
call setr32_4_0_5.bat           call setr64_4_0_5.bat     (Shake and Throw)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following versions are *not* available on the cluster at the moment - but here are their names anyway, as it seemed a shame to miss them out. Let me know if you desperately need one of these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
2.14.0    Great Pumpkin                   &lt;br /&gt;
2.14.1    December Snowflakes&lt;br /&gt;
2.15.0    Easter Beagle&lt;br /&gt;
2.15.1    Roasted Marshmallow&lt;br /&gt;
2.15.3    Security Blanket&lt;br /&gt;
3.0.0     Masked Marvel&lt;br /&gt;
3.0.3     Warm Puppy&lt;br /&gt;
3.1.1     Sock it to me&lt;br /&gt;
3.1.3     Smooth Sidewalk&lt;br /&gt;
3.2.0     Full of Ingredients&lt;br /&gt;
3.2.1     World famous astronaut&lt;br /&gt;
3.2.4     Very Secure Dishes (the non-revised version)&lt;br /&gt;
3.3.0     Supposedly Educational&lt;br /&gt;
3.3.3     Another Canoe&lt;br /&gt;
3.4.1     Single Candle&lt;br /&gt;
3.4.3     Kite-Eating Tree&lt;br /&gt;
3.5.2     Eggshell Igloo&lt;br /&gt;
3.6.2     Dark and Stormy Night&lt;br /&gt;
4.0.0     Arbor Day&lt;br /&gt;
4.0.1     See Things Now&lt;br /&gt;
4.0.4     Lost Library Book&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It also seems that different R versions put their packages in different structures – sometimes adding &amp;quot;win-library&amp;quot; into there for fun. Basically, R_LIBS and R_LIBS_USER should be paths to a folder that contains a list of other folders, one for each package you&#039;ve installed.&lt;br /&gt;
&lt;br /&gt;
IMPORTANT:  R_LIBS and R_LIBS_USER paths must NOT contain quotes, nor spaces. If the path to your library contains spaces, you need to use old-fashioned 8-character names. If in your command window, you type &amp;lt;code&amp;gt;dir /x&amp;lt;/code&amp;gt;, you’ll see the names – Program Files tends to become PROGRA~1 for instance. &lt;br /&gt;
&lt;br /&gt;
==== Passing parameters to R scripts ====&lt;br /&gt;
Passing parameters to R scripts means you can have fewer versions of your R and bat files and easily run whole sets of jobs. You can get parameters into R using Rscript (but not Rcmd BATCH, I think) as follows. In the run.bat example above, the Rscript statement becomes:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Rscript Q:\R-scripts\test.R arg1 arg2 arg3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Within the R code, the arguments can be recovered using &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
args &amp;lt;- commandArgs(trailingOnly = TRUE)&lt;br /&gt;
&lt;br /&gt;
outFileName &amp;lt;- args[1]     ## name of output file.&lt;br /&gt;
dataFileName &amp;lt;- args[2]    ## name of local data file. &lt;br /&gt;
currentR0 &amp;lt;- as.numeric(args[3]) ## convert this explicitly to number. &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
If you want your arguments to have a particular type, best to explicitly convert (see R0 above). Better still, you can pass parameters directly into the batch file that runs the R script. Command line arguments can be referenced within the batch file using %1, %2, etc. For example, if you have a batch file, runArgs.bat:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call &amp;lt;script for the R version you want – see below&amp;gt;&lt;br /&gt;
net use Q: \\qdrive.dide.ic.ac.uk\homes\user&lt;br /&gt;
set R_LIBS=Q:\R&lt;br /&gt;
set R_LIBS_USER=Q:\R&lt;br /&gt;
Rscript Q:\R-scripts\%1.R %2 %3 %4&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
then&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
runArgs.bat myRScript arg1 arg2 arg3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
will run the R script myRScript.R and pass it the parameters arg1, arg2 and arg3. The batch file runArgs.bat is now almost a &#039;&#039;&#039;generic R script runner&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== OpenMP ===&lt;br /&gt;
&lt;br /&gt;
This has been tested with C/C++ - but the same should apply to other languages such as fortran, that achieve multi-threading with a DLL file.&lt;br /&gt;
&lt;br /&gt;
==== Microsoft&#039;s C/C++ Compiler ====&lt;br /&gt;
You will need to copy vcomp100.dll (for Visual Studio 2010 – it maybe vcomp90.dll for 2008), into the same directory as your executable. You can usually find the dll file in a directory similar to:- C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\redist\x64\Microsoft.VC100.OpenMP. Extrapolate for future versions! Also make sure that you&#039;ve enabled OpenMP in the Properties (C++/Language).&lt;br /&gt;
&lt;br /&gt;
==== GCC or MinGW ====&lt;br /&gt;
Usually, this applies to Eclipse use. In project properties, the C++ command “g++ -fopenmp”, the C command “gcc –fopenmp”, and in the Linker options, under Miscellaneous, Linker flags, put “-fopenmp” too. Copy the OpenMP DLLs from MinGW into the same directory as your final executable. You may find the dlls are in C:\MinGW\Bin\libgomp-1.dll and in the same place, libpthread-2.dll,  libstdc++-6.dll and libgcc_s_dw2-1.dll.&lt;br /&gt;
&lt;br /&gt;
==== Intel C++ Compiler ====&lt;br /&gt;
Copy the libiomp5md.dll file from somewhere like C:\Program Files (x86)\Intel\ComposerXE-2011\redist\intel64\compiler\libiomp5md.dll to the same place as your executable. And in Visual Studio, make sure you&#039;ve enabled OpenMP in the project properties.&lt;br /&gt;
&lt;br /&gt;
==== How many threads? ====&lt;br /&gt;
The OpenMP function omp_max_threads() returns the number of &#039;&#039;physical&#039;&#039; cores on a machine, not the number of cores &#039;&#039;allocated&#039;&#039; to your job. To determine how many cores the scheduler actually allocated to you, use the following code to dig up the environment variable CCP_NUMCPUS, which will be set by the cluster management software:- &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
		int set_NCores() {&lt;br /&gt;
		   char * val;&lt;br /&gt;
		   char * endchar;&lt;br /&gt;
		   val = getenv(&amp;quot;CCP_NUMCPUS&amp;quot;);&lt;br /&gt;
		   int cores = omp_get_max_threads();&lt;br /&gt;
		   if (val!=NULL) cores = strtol (val,&amp;amp;endchar,10);&lt;br /&gt;
                   omp_set_num_threads(cores);&lt;br /&gt;
		   return cores;&lt;br /&gt;
		}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== WinBugs (or OpenBugs) ===&lt;br /&gt;
&lt;br /&gt;
They are similar, but OpenBugs 3.2.2 is the one we&#039;ve gone for. Something like this as your run.bat script will work:-&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setOpenBugs&lt;br /&gt;
openbugs \\path\to\script.txt /HEADLESS&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== MatLab ===&lt;br /&gt;
&lt;br /&gt;
There are various ways of producing a non-interactive executable from Matlab. Perhaps the simplest (not necessarily the best performance) way is to use “mcc.exe” – supplied with most full versions of Matlab, including the Imperial site licence version that you&#039;ve probably got.&lt;br /&gt;
&lt;br /&gt;
==== Use mcc.exe to compile your code ====&lt;br /&gt;
&lt;br /&gt;
Use windows explorer to navigate to the folder where the “.m” files are for the project you want to compile. Now use a good text editor to create a file called “compile.bat” in that folder. It should contain something similar to the following:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mcc -m file1.m file2.m file3.m -o myexe&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Don’t copy/paste the text from this document by the way – Word has a different idea of what a dash is to most other software, and will probably replace the two dashes with funny characters. so you have to list every single .m file that your project needs, after the’-m’. If you save this file, then double-click on it, then it will think for some while, and produce “myexe.exe” in this example. Copy your .exe file into a network accessible place as usual.&lt;br /&gt;
&lt;br /&gt;
==== Launch on the cluster. ====&lt;br /&gt;
&lt;br /&gt;
The launch.bat file will be exactly the same as before – see page 2. The run script will then start with a line that tells the cluster which version of Matlab you used to compile the cluster. Below is the table of different versions. The runtimes are huge and cumbersome to install on the cluster, so as a result I haven’t installed every single one. If you need one that’s not listed, get in touch.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Matlab Version&lt;br /&gt;
! First line of run script&lt;br /&gt;
|- &lt;br /&gt;
| R2009b&lt;br /&gt;
| call useMatLab79&lt;br /&gt;
|- &lt;br /&gt;
| R2010a&lt;br /&gt;
| call useMatLab713&lt;br /&gt;
|- &lt;br /&gt;
| R2011a&lt;br /&gt;
| call useMatLab715&lt;br /&gt;
|- &lt;br /&gt;
| R2011b&lt;br /&gt;
| call useMatLab716&lt;br /&gt;
|- &lt;br /&gt;
| R2012a (64-bit)&lt;br /&gt;
| call useMatLab717_64&lt;br /&gt;
|- &lt;br /&gt;
| R2012b (64-bit)&lt;br /&gt;
| call useMatLab80_64&lt;br /&gt;
|- &lt;br /&gt;
| R2013a (64-bit)&lt;br /&gt;
| call useMatLab81_64&lt;br /&gt;
|- &lt;br /&gt;
| R2014a (64-bit)&lt;br /&gt;
| call useMatLab83_64&lt;br /&gt;
|- &lt;br /&gt;
| R2014b (64-bit)&lt;br /&gt;
| call useMatLab84_64&lt;br /&gt;
|- &lt;br /&gt;
| R2015a (64-bit)&lt;br /&gt;
| call useMatLab85_64&lt;br /&gt;
|- &lt;br /&gt;
| R2015b (64-bit)&lt;br /&gt;
| call useMatLab90_64&lt;br /&gt;
|- &lt;br /&gt;
| R2016b (64-bit)&lt;br /&gt;
| call useMatLab91_64&lt;br /&gt;
|- &lt;br /&gt;
| R2017a (64-bit)&lt;br /&gt;
| call useMatLab92_64&lt;br /&gt;
|- &lt;br /&gt;
| R2019a (64-bit)&lt;br /&gt;
| call useMatLab96_64&lt;br /&gt;
|- &lt;br /&gt;
| R2021a (64-bit)&lt;br /&gt;
| call useMatLab910_64&lt;br /&gt;
|- &lt;br /&gt;
| R2022a (64-bit)&lt;br /&gt;
| call useMatLab912_64&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Python ===&lt;br /&gt;
&lt;br /&gt;
* The most recent version of each major release is on the cluster. Different python versions within the same release (e.g., 3.5.1 and 3.5.2) do not behave nicely together in automated installation, so if you have a desperate need for a previous minor version, get in touch. While 2.7.18 is available, we &#039;&#039;&#039;strongly&#039;&#039;&#039; recommend migrating away from Python 2.7, as it has been officially discontinued on 1st January 2020. Experiences may vary, and future success is not guaranteed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
2.7.18  64-bit   call set_python_27_64.bat&lt;br /&gt;
3.5.9   64-bit   call set_python_35_64.bat&lt;br /&gt;
3.6.15  64-bit   call set python_36_64.bat&lt;br /&gt;
3.7.17  64-bit   call set_python_37_64.bat&lt;br /&gt;
3.8.17  64-bit   call set python_38_64.bat&lt;br /&gt;
3.9.17  64-bit   call set_python_39_64.bat&lt;br /&gt;
3.10.12 64-bit   call set python_310_64.bat&lt;br /&gt;
3.11.4  64-bit   call set_python_311_64.bat&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* You&#039;ll most likely want to use some packages, so you&#039;ll need to have a network-accessible location to put your packages in. If you&#039;re running a version of Windows with Python that matches one installed on the cluster, then you&#039;ll be able to share that package repository between the two. But if you&#039;re running a different version, or a different operating system, or a different Python version, then you&#039;ll need to keep your local package repository separate from the one the cluster uses.&lt;br /&gt;
* Here comes the basic script to run some python. Suppose I decide to put my Python packages for the cluster in &#039;&#039;&#039;\\qdrive.dide.ic.ac.uk\homes\username\PythonCluster37_64&#039;&#039;&#039; (which is Q:\PythonCluster37_64 on a DIDE Windows PC). To run some python, something like the following:-&lt;br /&gt;
&lt;br /&gt;
 call set_python_37_64&lt;br /&gt;
 set PYTHONPATH=\\qdrive\homes\username\PythonCluster37_64&lt;br /&gt;
 python \\qdrive\homes\username\Python\MyScript.py&lt;br /&gt;
&lt;br /&gt;
or if you want to do this in a programmatic way...&lt;br /&gt;
&lt;br /&gt;
 import sys&lt;br /&gt;
 sys.path = [&#039;\\\\qdrive\\homes\\username\\PythonCluster37_64&#039;] + sys.path&lt;br /&gt;
&lt;br /&gt;
==== Packages ====&lt;br /&gt;
&lt;br /&gt;
* If you want to install a package like numpy, that&#039;s readily available through pip, then you can launch a batch file like this:-&lt;br /&gt;
 call set_python_36_64&lt;br /&gt;
 pip install numpy --target \\qdrive\homes\username\PythonCluster36_64&lt;br /&gt;
* or alternatively, you could write a python script that looks like this, and launch it as normal:-&lt;br /&gt;
 import pip&lt;br /&gt;
 pip.main([&#039;install&#039;,&#039;numpy&#039;,&#039;--target&#039;,&#039;\\\\qdrive\\homes\\username\\PythonCluster36_64&#039;])&lt;br /&gt;
&lt;br /&gt;
* And if you&#039;re running the same Python version on a Windows machine, then you can do these two locally, without submitting a cluster job to do them for you.&lt;br /&gt;
&lt;br /&gt;
* And next time you submit a python job on the cluster, python will look in the place set by PYTHONPATH, and will find the packages you&#039;ve just installed when you import them.&lt;br /&gt;
&lt;br /&gt;
=== Beast and Beagle ===&lt;br /&gt;
&lt;br /&gt;
We&#039;ve got a couple of versions available. For BEAST 1.75 with BEAGLE 1.0:  (the x y z represents all the command-line arguments you&#039;ll want to pass to beast)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setbeast&lt;br /&gt;
call beast-beagle x y z&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you want BEAST 1.82 or 1.83 with BEAGLE 2.1:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setbeast_182                        call setbeast_183&lt;br /&gt;
call beast-beagle_182 x y z              call beast-beagle_183 x y z&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And if you want BEAST 2.3.2 with BEAGLE 2.1 (note that BEAST 2 is a different, er, beast to BEAST 1, regarding packages and compatibilities, so only use BEAST 2 if you know that&#039;s what you want to use).&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setbeast_232&lt;br /&gt;
call beast-beagle_232 x y z&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
OpenCL is installed on all the nodes, which means Beagle will pick up the Intel Xeon processors and use what it can on them. It will also detect the Xeon Phis where they&#039;re available. If that&#039;s something you&#039;d be particularly interested in using, drop me a line.&lt;br /&gt;
&lt;br /&gt;
=== Blast ===&lt;br /&gt;
&lt;br /&gt;
Drop me a line to join the party testing this, and to get added to the (large) BlastDB network share.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setblast&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
will set the `BLASTDB` environment variable to point to what we current have of the `v5` database, and the Blast tools (2.9.0, 64-bit) will be added to the path. So you can &lt;br /&gt;
then call `blastp`, `blastn`, `blastx` setc.&lt;br /&gt;
&lt;br /&gt;
=== BOW (BioInformatics on Windows) ===&lt;br /&gt;
&lt;br /&gt;
A number of Bio-informatics tools are ready to go. These used to be provided together on codeplex, but that has since been retired. Ugene is one project that&lt;br /&gt;
maintains windows builds of them. Start your run.bat file with &amp;lt;code&amp;gt;call setBOW&amp;lt;/code&amp;gt; to add these to the path:-&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! EXE File&lt;br /&gt;
! Version&lt;br /&gt;
|- &lt;br /&gt;
| SamTools.exe&lt;br /&gt;
| 0.1.19-44429cd&lt;br /&gt;
|- &lt;br /&gt;
| BCFTools.exe&lt;br /&gt;
| 0.1.19-44428cd&lt;br /&gt;
|- &lt;br /&gt;
| bgzip&lt;br /&gt;
| ?&lt;br /&gt;
|- &lt;br /&gt;
| razip&lt;br /&gt;
| ?&lt;br /&gt;
|- &lt;br /&gt;
| bwa&lt;br /&gt;
| 0.7.17-r1188&lt;br /&gt;
|-&lt;br /&gt;
| tabix&lt;br /&gt;
| 0.2.5 (r1005)&lt;br /&gt;
|-&lt;br /&gt;
| minimap2&lt;br /&gt;
| 2.24 (r1122)&lt;br /&gt;
|-&lt;br /&gt;
| raxml&lt;br /&gt;
| 8.2.12 (best for each node)&lt;br /&gt;
|-&lt;br /&gt;
| raxml_sse3&lt;br /&gt;
| 8.2.12 (pthreads+sse3)&lt;br /&gt;
|-&lt;br /&gt;
| raxml_avx&lt;br /&gt;
| 8.2.12 (pthreads+avx)&lt;br /&gt;
|-&lt;br /&gt;
| raxml_avx2&lt;br /&gt;
| 8.2.12 (pthreads+avx2)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Note that BWA-MEM is hardwired to use a linux-only feature, so will produce an odd message and not do what you want if you use that mode on Windows. However, it seems that minimap2 may be a faster and more accurate way&lt;br /&gt;
of doing what bwa does in any case, and that seems to have no such limitation.&lt;br /&gt;
&lt;br /&gt;
Also, note that raxml.exe is a copy of the most optimised build for the particular cluster node the job is running on. fi--dideclusthn only supports SSE3;&lt;br /&gt;
fi--didemrchnb varies a little; the 32-cores support AVX2, the 24, 20 and 16 core machines support AVX, and only the oldest 12-core nodes only support SSE3. You don&#039;t have to worry about, except to expect performance to vary between them.&lt;br /&gt;
&lt;br /&gt;
=== GATK and Picard ===&lt;br /&gt;
&lt;br /&gt;
These both rely on Java, so put this in your run script:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setJava64&lt;br /&gt;
call setgatk&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and then &amp;lt;code&amp;gt;gatk&amp;lt;/code&amp;gt; in your scripts will use Python 3.7 to call the argument handling wrapper for GATK 4.2.2.0, and &amp;lt;code&amp;gt;picard&amp;lt;/code&amp;gt; maps to the picard (2.26.2) jar file.&lt;br /&gt;
&lt;br /&gt;
=== FastQC ===&lt;br /&gt;
&lt;br /&gt;
This one has a slight eccentricity that instead of passing normal command-line args, it uses java&#039;s -D command-line options to buffer them out of an environment variable&lt;br /&gt;
called _JAVA_OPTIONS. Strange but true. The ZIP comes with a bash script, which I&#039;ll reimplement if anyone actually wants me to. But in the meantime, it&#039;s easy to work &lt;br /&gt;
out the arguments by inspection. For example, most likely usage:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setFastQC&lt;br /&gt;
&lt;br /&gt;
set _JAVA_OPTIONS=&#039;-Dfastqc.output_dir=%OUT%&#039;&lt;br /&gt;
call fastqc thing.fq&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== MAFFT ===&lt;br /&gt;
&lt;br /&gt;
For version 7.212 (Win64), write &amp;lt;code&amp;gt;call setMAFFT.bat&amp;lt;/code&amp;gt; at the top of your run script.&lt;br /&gt;
&lt;br /&gt;
=== Applied-Maths Open Source ===&lt;br /&gt;
&lt;br /&gt;
Write &amp;lt;code&amp;gt;call setAppliedMaths.bat&amp;lt;/code&amp;gt; at the top of your run script, to add these to the path:&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! EXE File(s)&lt;br /&gt;
! Description&lt;br /&gt;
! Version&lt;br /&gt;
|- &lt;br /&gt;
| velvetg_mt_x86.exe&lt;br /&gt;
| Graph Construction Multi-threaded, 32-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velvetg_mt_x64.exe&lt;br /&gt;
| Graph Construction Multi-threaded, 64-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velvetg_st_x86.exe&lt;br /&gt;
| Graph Construction Multi-threaded, 32-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velvetg_st_x64.exe&lt;br /&gt;
| Graph Construction Multi-threaded, 64-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velveth_mt_x86.exe&lt;br /&gt;
| Hashing Multi-threaded, 32-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velveth_mt_x64.exe&lt;br /&gt;
| Hashing Multi-threaded, 64-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velveth_st_x86.exe&lt;br /&gt;
| Hashing Multi-threaded, 32-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velveth_st_x64.exe&lt;br /&gt;
| Hashing Multi-threaded, 64-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| ray_x64.exe&lt;br /&gt;
| Ray 64-bit (for MPI)&lt;br /&gt;
| 1.6&lt;br /&gt;
|-&lt;br /&gt;
| ray_x86.exe&lt;br /&gt;
| Ray 32-bit (for MPI)&lt;br /&gt;
| 1.6&lt;br /&gt;
|-&lt;br /&gt;
| Mothur_x64.exe&lt;br /&gt;
| Mothur 64-bit (for MPI)&lt;br /&gt;
| 1.25.1&lt;br /&gt;
|-&lt;br /&gt;
| Mothur_x86.exe&lt;br /&gt;
| Mothur 32-bit (for MPI)&lt;br /&gt;
| 1.25.1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Tensorflow ===&lt;br /&gt;
&lt;br /&gt;
Here is an example of getting Tensorflow (as a python package) available from an R script, using the cluster to install everything for you. It only works for Tensorflow 2.0 - older versions and newer versions seem to want combinations of DLLs that I can&#039;t satisfy. The following are I think minimal steps to get Tensorflow running from Python and R.&lt;br /&gt;
&lt;br /&gt;
* Create a folder for your python packages in your home directory (so the cluster can see it. I&#039;m calling mine &amp;lt;code&amp;gt;Q:/python_37_repo&amp;lt;/code&amp;gt; - and the cluster will call it \\fi--san03.dide.ic.ac.uk\homes\wrh1\python_37_repo - change wrh1 to your DIDE username of course.&lt;br /&gt;
* Create a similar folder for R packages, which for me is &amp;lt;code&amp;gt;Q:/R4&amp;lt;/code&amp;gt;&lt;br /&gt;
* And a third folder, Q:/Tensorflow to do this work in.&lt;br /&gt;
* Download these DLLs and put them in the Q:/Tensorflow folder - at present they seem to be the ones Python/Tensorflow wants. Let&#039;s hope for the best... Download [https://mrcdata.dide.ic.ac.uk/resources/msvcp140.dll msvcp140.dll] and [https://mrcdata.dide.ic.ac.uk/resources/msvcp140_1.dll msvcp140_1.dll] into your &amp;lt;code&amp;gt;Q:/Tensorflow&amp;lt;/code&amp;gt; folder.&lt;br /&gt;
&lt;br /&gt;
* Now, create a script &amp;lt;code&amp;gt;Q:/Tensorflow/prepare.bat&amp;lt;/code&amp;gt;. We&#039;re going to launch this on the cluster, and get it to wire up the packages we want. Replace USER with your username...&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  net delete Q: /y&lt;br /&gt;
  net use Q: \\qdrive.dide.ic.ac.uk\homes\USER&lt;br /&gt;
  set TMPDIR=%TEMP%&lt;br /&gt;
  set PYTHONPATH=\\qdrive.dide.ic.ac.uk\homes\USER\python_37_repo&lt;br /&gt;
  set R_LIBS=Q:\R4&lt;br /&gt;
  set R_LIBS_USER=Q:\R4&lt;br /&gt;
  call set_python_37_64.bat&lt;br /&gt;
  call setr64_4_0_3.bat&lt;br /&gt;
  pip install --no-cache-dir tensorflow==2.00 --target Q:\python_37_repo&lt;br /&gt;
  RScript Q:\Tensorflow\install_tensorflow.R&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Create also &amp;lt;code&amp;gt;Q:/Tensorflow/install_tensorflow.R&amp;lt;/code&amp;gt; contains:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  install.packages(c(&amp;quot;reticulate&amp;quot;, &amp;quot;tensorflow&amp;quot;),lib=&amp;quot;Q:/R4&amp;quot;,repos=&amp;quot;https://cran.ma.imperial.ac.uk/&amp;quot;)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Now submit the prepare job to the cluster with &amp;lt;code&amp;gt;job submit /scheduler:fi--dideclusthn /jobtemplate:GeneralNodes \\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\prepare.bat&amp;lt;/code&amp;gt; - or if you use the portal, just &amp;lt;code&amp;gt;\\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\prepare.bat&amp;lt;/code&amp;gt; in the big window will do it. That will take a while, but you should notice lots of new files in your Q:/python_37_repo folder. You&#039;ll only need to do this once (unless you delete your Python repo folder, or it randomly breaks and you start again...)&lt;br /&gt;
&lt;br /&gt;
* Next, create a file &amp;lt;code&amp;gt;Q:/Tensorflow/run.bat&amp;lt;/code&amp;gt; containing the following the two &amp;quot;call&amp;quot; lines near the end are the ones that do some &amp;quot;work&amp;quot; in python or R, so this script basically a template for running your future jobs. Just change those two calls to set off the python or R code you want to run that uses Tensorflow.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call set_python_37_64.bat&lt;br /&gt;
call setr64_4_0_3.bat&lt;br /&gt;
net use Q: /delete /y&lt;br /&gt;
net use Q: \\qdrive.dide.ic.ac.uk\homes\USER&lt;br /&gt;
set PYTHONPATH=Q:/python_37_repo&lt;br /&gt;
set R_LIBS=Q:\R4&lt;br /&gt;
set R_LIBS_USER=Q:\R4&lt;br /&gt;
call python Q:\tensorflow\test_tensorflow.py&lt;br /&gt;
call RScript Q:\tensorflow\test_tensorflow.R&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* And finally, you&#039;ll need &amp;lt;code&amp;gt;Q:\tensorflow\test_tensorflow.py&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;Q:\tensorflow\test_tensorflow.R&amp;lt;/code&amp;gt; to exist. Here are minimal tests that everything is wired up. &amp;lt;code.test_tensorflow.py&amp;lt;/code&amp;gt; first:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import tensorflow as tf;&lt;br /&gt;
print(tf.reduce_sum(tf.random.normal([1000, 1000])));&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and &amp;lt;code&amp;gt;Q:\Tensorflow\test_tensorflow.R&amp;lt;/code&amp;gt; contains:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
library(reticulate)&lt;br /&gt;
reticulate::py_config()&lt;br /&gt;
library(tensorflow)&lt;br /&gt;
tf$constant(&#039;Hello, TensorFlow!&#039;)&lt;br /&gt;
tf$Variable(tf$zeros(shape(1L)))&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Now submit the run job to the cluster with &amp;lt;code&amp;gt;job submit /scheduler:fi--dideclusthn /jobtemplate:GeneralNodes \\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\run.bat&amp;lt;/code&amp;gt; - or if you use the portal, just &amp;lt;code&amp;gt;\\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\run.bat&amp;lt;/code&amp;gt; in the big window will do it - and perhaps paste &amp;lt;code&amp;gt;\\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\output.txt&amp;lt;/code&amp;gt; in the stdout box to collect the input and see how it gets on. You should see sensible output from both tests.&lt;br /&gt;
&lt;br /&gt;
== Launching a job ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Submitting many jobs ==&lt;br /&gt;
&lt;br /&gt;
Suppose you write an exe that you might run with… Mysim.exe init.txt 1 2 3, and you want to run it many times with a range of parameters. One way of many, is to write a launch.bat file that will run “job submit” separately, for example (thanks Tini/James!):-&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
@echo off&lt;br /&gt;
set SubDetails=job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /jobtemplate:GeneralNodes /numcores:1&lt;br /&gt;
set initFile=\\networkshare\job\init.txt&lt;br /&gt;
set exeFile=\\networkshare\job\mysim.exe&lt;br /&gt;
&lt;br /&gt;
%SubDetails% %exeFile% %initfile% 1 2 3&lt;br /&gt;
%SubDetails% %exeFile% %initfile% 4 5 6&lt;br /&gt;
%SubDetails% %exeFile% %initfile% 7 8 9&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suppose the job you want to run is an R script? To specify arguments to an R script, you have to add ′--args a=1 b=2′ - so… you might make launch.bat like this:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
@echo off&lt;br /&gt;
set SubDetails=job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /jobtemplate:GeneralNodes /numcores:1&lt;br /&gt;
set rbatFile=\\networkshare\R-scripts\run.bat&lt;br /&gt;
&lt;br /&gt;
%SubDetails% %rbatFile% 1 2&lt;br /&gt;
%SubDetails% %rbatFile% 3 4&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
And make the significant line of your run.bat:-&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
Rcmd BATCH ′--args a=%1 b=%2′ U:\R-scripts\test.R&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
%1 and %2 will map to the first and second thing after the batch file. You can go all the way up to %9.&lt;br /&gt;
&lt;br /&gt;
		IMPORTANT NOTE&lt;br /&gt;
&lt;br /&gt;
Make sure you get the apostrophe character right in the above example – NEVER copy and paste from a word document into a script. It will go hideously wrong. Type the apostrophes (and dashes for that matter) in a good text editor – you want just the standard old-fashioned characters.&lt;br /&gt;
&lt;br /&gt;
== Requesting resources ==&lt;br /&gt;
&lt;br /&gt;
The following modifiers next to the “/scheduler:” part of the job submit line (before your app.exe 1 2 3 part), will request things you might want…&lt;br /&gt;
&lt;br /&gt;
/numcores:8				- number of cores you want&lt;br /&gt;
&lt;br /&gt;
/numcores:8-12				- minimum and maximum cores appropriate for your job&lt;br /&gt;
&lt;br /&gt;
/memorypernode:1024			- amount of mem in MegaBytes needed.&lt;br /&gt;
&lt;br /&gt;
/workdir:\\networkshare\work		- set working directory&lt;br /&gt;
&lt;br /&gt;
/stdout:\\networkshare\out.txt		- divert stdout to a file&lt;br /&gt;
&lt;br /&gt;
/stderr:    or    /stdin:			- similar for stderr and stdin&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting / Miscellany / Q &amp;amp; A ==&lt;br /&gt;
&lt;br /&gt;
*	My job doesn’t work.&lt;br /&gt;
**	Run the HPC Job Manager application. Find your job id, possible under “My Jobs, Failed”. Double click on it, then on “View All Tasks”. Perhaps something in the output section will help.&lt;br /&gt;
&lt;br /&gt;
* Check that the path to your job is visible everywhere.&lt;br /&gt;
** Avoid spaces in your paths - “job submit” doesn’t like them very much. If you must have them, they’ll be ok in the “run.bat” batch file that the cluster will run – in which case, put the path in standard double-quotes (&amp;quot;). But avoid them in your “launch.bat” file – you may have to relocate your run.bat to a simple non-space-containing directory.&lt;br /&gt;
** Rather than putting the full application and parameters on the job submit line, you might want to write a batch-file to do all that, and submit the batch file to the cluster. (See section 6 about R for example). But make sure the batch file is somewhere visible to the cluster.&lt;br /&gt;
	&lt;br /&gt;
*	My job seems to work, but reports as having failed.&lt;br /&gt;
**	The success/failure depends on the error code returned. If you’re running C code, end with “return 0;” for success.&lt;br /&gt;
&lt;br /&gt;
*  job submit ..blah blah.. app.exe &amp;gt;out.txt doesn’t work!&lt;br /&gt;
** The contents of out.txt will be the result of “job submit”, not the result of “app.exe”. You meant to say this job submit ..blah blah.. /stdout:out.txt app.exe correcting out.txt and app.exe to network paths of course.&lt;br /&gt;
&lt;br /&gt;
* My C/C++ Executable works perfectly on my desktop, but doesn&#039;t work on the cluster. What&#039;s wrong with the cluster?&lt;br /&gt;
** Your EXE file probably relies on some DLL files that the cluster doesn&#039;t have. If you use Visual Studio, check that in Code Generation, you have &amp;quot;Multi-Threaded (/MT)&amp;quot; as your target - with no mention of DLLs. If your code uses OpenMP, check you&#039;ve copied the right OpenMP DLL(s) (go back to the C section above). As a last resort, give your EXE to someone who doesn&#039;t have Visual Studio installed, and get them to run it, and see what DLL files it seems to ask for.&lt;br /&gt;
&lt;br /&gt;
== Contributing Authors ==&lt;br /&gt;
&lt;br /&gt;
Wes Hinsley, James Truscott, Tini Garske, Jeff Eaton, Hannah Clapham&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Cluster_Documentation&amp;diff=14254</id>
		<title>Cluster Documentation</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Cluster_Documentation&amp;diff=14254"/>
		<updated>2023-08-24T06:50:51Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* Python */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* We have two high performance clusters for general use, both running Microsoft HPC 2012 R2, Update 3. The smaller, older cluster is [[fi--dideclusthn]] and the larger is [[fi--didemrchnb]]. &lt;br /&gt;
&lt;br /&gt;
* Many users in the department write code and packages in R. We have in-house packages that can allow an almost-interactive experience of running jobs on our high performance clusters, so if that sounds like what you&#039;d like, you might as well stop reading here, and go straight to [https://github.com/mrc-ide/didehpc The DIDEHPC package] - or if you need to join the mrc-ide github org first, go to [https://github.com/mrc-ide/welcome The welcome page].&lt;br /&gt;
&lt;br /&gt;
If you&#039;re not using R, or you are interested in other ways, then continue...&lt;br /&gt;
&lt;br /&gt;
== Windows Users ==&lt;br /&gt;
&lt;br /&gt;
The cluster nodes are Windows 2012-R2 based. This is good news if you&#039;re a Windows user, and especially easy for PCs within the departmental DIDE domain. You have the option of using the MS client for launching jobs (see below), or you can use try the new [[HPC Web Portal]]. If you&#039;re preparing to use the cluster, and have doubts about whether it can run what you want - and whether it will be straightforward to develop and run on it, best talk to me and/or the IT guys first!&lt;br /&gt;
&lt;br /&gt;
== Linux and MAC Users ==&lt;br /&gt;
&lt;br /&gt;
There are two problems, but both can be at least partially overcome. The first is that there is no client for linux. The second is that it can only run windows binaries.&lt;br /&gt;
&lt;br /&gt;
=== Launching jobs on Linux/Mac ===&lt;br /&gt;
&lt;br /&gt;
* The best way might be the [[HPC Web Portal]], which lets you submit jobs through a webpage. Give it a try, and feedback to me any issues! &lt;br /&gt;
&lt;br /&gt;
* Alternatively, you can either (1) go down the VM route, installing a windows virtual machine, eg VMWare or Parallels, and follow the instructions below. (2) Remote Desktop to your friend&#039;s Windows machine. These tend not to be very convenient, but some users have submitted thousands of jobs this way.&lt;br /&gt;
&lt;br /&gt;
=== What Linux/Mac jobs can I run? ===&lt;br /&gt;
&lt;br /&gt;
* Many jobs may be platform indepedent. Where compiled code is involved though, you&#039;ll have some extra work to make sure the binary parts can be run in windows. For R, [https://github.com/mrc-ide/didehpc the tools] help you sort that out. For others, you may need to run a job on the cluster to do your builds. Also, for many linux applications, there is a windows port. Mileage can vary, but it&#039;s worth a try searching for that before you give up hope. Some of these might be installed on the cluster already - see below. Or some you may be able to download and call them from your run script.&lt;br /&gt;
&lt;br /&gt;
* For C code, again, we can run scripts on the cluster to build the binaries for you, if your code can be compiled with (say) the MinGW port of gcc. Cygwin can also be used (although seems less common these days) with accompanying dlls. Get in touch if you need further ideas; most things can be solved. &lt;br /&gt;
&lt;br /&gt;
* Matlab is a little more tricky - we have a range of colossal matlab runtimes on the cluster, but you&#039;d need to compile a windows binary to use them, since the matlab platforms are distinct in every way. For this, probably find a friend, or get in touch, and we&#039;ll work out how you can compile for it.&lt;br /&gt;
&lt;br /&gt;
* There is also the option of running a Windows VM, which might solve all of the above problems.&lt;br /&gt;
&lt;br /&gt;
=== But I really want a unix cluster. ===&lt;br /&gt;
&lt;br /&gt;
* We have run linux clusters in the past ([[fi--didelxhn]]), but there was very low demand, whereas the other clusters are consistently well used. Accessing DIDE network shares from linux was a little harder in some aspects, but we did not implement the more traditional linux approach of having dedicated separate cluster storage that inputs and outputs would have to be staged on to, in order for the cluster to see them. Generally, the flexibility of the other clusters makes such things quite straightforward, and may even feel a pleasure if your background is with the less domain-integrated style of cluster architecture.&lt;br /&gt;
&lt;br /&gt;
* It has also become far easier to write software that builds on multiple platforms with good practice. Tools that only run on one platform are rare, and in some circumstances have raised questions about the quality of those packages. Alternatives are often available.&lt;br /&gt;
&lt;br /&gt;
* Where compilation is the issue - for example if you want to run binaries on the cluster, but your compilation machine runs linux, or is a mac, (Matlab via MCC, or C++ code for example), then get in touch, and there are a few ways we can think of solving that, either by getting someone else, or the cluster itself, to build your code.&lt;br /&gt;
&lt;br /&gt;
* There are also resources in [https://www.imperial.ac.uk/admin-services/ict/self-service/research-support/rcs/computing/high-throughput-computing/ ICT) who run a linux cluster, with the file-staging approach, and also (being shared between a much larger pool of users) have rather stricter rules on job durations and resources than we provide locally in DIDE.&lt;br /&gt;
&lt;br /&gt;
== Getting Started ==&lt;br /&gt;
&lt;br /&gt;
=== Getting access to the cluster ===&lt;br /&gt;
&lt;br /&gt;
Send a mail to Wes (w.hinsley@imperial.ac.uk) requesting access to the cluster. He will add you to the necessary groups, and work out what cluster you should be running on. Unless you are told otherwise, this will be fi--dideclusthn. But if you have been told otherwise, then whenever you see fi--dideclusthn, replace it with the cluster name you’ve been given, either mentally or (less effectively) on your screen with tip-ex.&lt;br /&gt;
&lt;br /&gt;
=== Windows: Install the HPC client software ===&lt;br /&gt;
&lt;br /&gt;
* Run \\fi--dideclusthn.dide.ic.ac.uk\REMINST\setup.exe. &lt;br /&gt;
* Confirm &#039;&#039;&#039;Yes, I really want to run this&#039;&#039;&#039;.&lt;br /&gt;
* There&#039;s an introductory screen, and you click &#039;&#039;&#039;Next&#039;&#039;&#039;&lt;br /&gt;
* You have to tick the &#039;&#039;&#039;Accept&#039;&#039;&#039;, then click &#039;&#039;&#039;Next&#039;&#039;&#039;&lt;br /&gt;
* If it gives you any choice, select &#039;&#039;&#039;Install only the client utilities&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;Next&#039;&#039;&#039;, &#039;&#039;&#039;Next&#039;&#039;&#039;, &#039;&#039;&#039;Next&#039;&#039;&#039;&lt;br /&gt;
* Select &#039;&#039;&#039;Use Microsoft Update&#039;&#039;&#039; and then &#039;&#039;&#039;Next&#039;&#039;&#039;&lt;br /&gt;
* And then &#039;&#039;&#039;Install&#039;&#039;&#039;&lt;br /&gt;
* And possibly &#039;&#039;&#039;Install&#039;&#039;&#039; again – if it had to install any pre-requisites first.&lt;br /&gt;
* And &#039;&#039;&#039;Finish&#039;&#039;&#039;, and the client installation is done.&lt;br /&gt;
* To check everything is alright so far, open a &#039;&#039;&#039;NEW command prompt window&#039;&#039;&#039;.&lt;br /&gt;
* (Because the installer adds things to the path, which only take effect on &#039;&#039;&#039;NEW comamnd windows&#039;&#039;&#039;! :-)&lt;br /&gt;
* (Find it under Accessories, or you can use Start, Run, &#039;&#039;&#039;cmd&#039;&#039;&#039;).&lt;br /&gt;
* Type &amp;lt;code&amp;gt;job list /scheduler:fi--dideclusthn.dide.ic.ac.uk&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And it will list the jobs you have running, which will be none so far!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Id         Owner         Name              State        Priority    Resource Request&lt;br /&gt;
---------- ------------- ----------------- ------------ ----------- -------- -------&lt;br /&gt;
&lt;br /&gt;
0 matching jobs for DIDE\user&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Windows: Using a non-domain machine ===&lt;br /&gt;
&lt;br /&gt;
If you&#039;re using a machine that isn&#039;t actually logged into DIDE, then the client software will have a problem working out who you are. In this case, there are two things you need to do.&lt;br /&gt;
* Check you&#039;ve really got a DIDE username. If you don&#039;t know what it is, talk to your lovely IT team.&lt;br /&gt;
* Connect to the DIDE VPN (see http://www1.imperial.ac.uk/publichealth/departments/ide/it/remote/) - login to that with your DIDE account.&lt;br /&gt;
* Alternatively to the DIDE VPN, you can install ICT&#039;s Juniper client from http://secureaccess.imperial.ac.uk, and login to that with your IC account - but you&#039;ll still need your DIDE account to access DIDE servers after the Juniper connection is up and running.&lt;br /&gt;
* Now we&#039;ll open a command window using &amp;quot;runas&amp;quot; - which lets you choose which identity the system thinks you are within that command window:-&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
runas /netonly /user:DIDE\user cmd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* (Change user to your own login obviously). It will ask for your password, then open a new command window. In that window, you&#039;ll be able to do cluster-related things as your DIDE username.&lt;br /&gt;
&lt;br /&gt;
=== Windows: Launching and cancelling jobs ===&lt;br /&gt;
==== Windows: Command Line ====&lt;br /&gt;
&lt;br /&gt;
Suppose you have a file called &amp;quot;run.bat&amp;quot; in your home directory, which does what you want to run on the cluster. Let&#039;s say it&#039;s a single-core, very simple job. We’ll discuss what should be inside &amp;quot;run.bat&amp;quot; later. To submit your job on the cluster, at the command prompt, type this (all on one line) - or put it in a file called &amp;quot;launch.bat&amp;quot;, and run it:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /jobtemplate:GeneralNodes /numcores:1 \\qdrive.dide.ic.ac.uk\homes\user\run.bat&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If it&#039;s the first time you’ve run a job - or if you&#039;ve recently changed your password, then it might ask you for your DIDE password and offer to remember it. Otherwise, it will just tell you the ID number of your job.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;Enter the password for ‘DIDE\user’ to connect to ‘FI—DIDECLUSTHN’:&lt;br /&gt;
Remember this password? (Y/N)&lt;br /&gt;
job has been submitted. ID: 123&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you want to remove the job, then:-	&amp;lt;code&amp;gt;job cancel 123 /scheduler:fi--dideclusthn.dide.ic.ac.uk&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Or view its details with &amp;lt;code&amp;gt;job view 123 /scheduler:fi--dideclusthn.dide.ic.ac.uk&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Windows: Job Manager GUI ====&lt;br /&gt;
&lt;br /&gt;
Alternatively to the command-line, you can use the job management software, rather than the command-line. The advantage is that it’s a GUI. The disadvantage is, as in all GUIs, you may not feel totally sure you know what it’s up to – where most of the time the things you want to do might not be very complex, as above.&lt;br /&gt;
&lt;br /&gt;
The job management software will be on your start menu, as above. All the features are under the “Actions” menu, and hopefully it will be self explanatory. Read the details below about launching, and you&#039;ll find the interface bits that do it in the Job Manager. However, you may find over time, especially if you run lots of jobs, that learning to do it the scripted way with the command-line can be quicker.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Information for running any job ==&lt;br /&gt;
&lt;br /&gt;
=== Visibility ===&lt;br /&gt;
&lt;br /&gt;
Any executable/batch file that the cluster will run must be somewhere on the network that the cluster has access to, when it logs in as you. This amounts to any network accessible drive that you have access to when you login – including network shares, such as the temp drive, your home directory, and any specific network space set up for your project.&lt;br /&gt;
&lt;br /&gt;
After a job is launched, all paths are relative to the &#039;&#039;&#039;/workdir:&#039;&#039;&#039; specified on the job submit command-line. Windows does not usually allow a network path to be the current directory, and MS-HPC somehow gets around this. But if in doubt, use fully-qualified paths to specify where files should be read from, or written to. You may want to write code that takes the paths from a parameter file, or as a command-line parameter, to give as much flexibility as possible. &lt;br /&gt;
&lt;br /&gt;
Your home directory, and the temp drive are on departmental servers that don&#039;t have an especially fast connection to the cluster. So avoid having thousands of jobs all reading/writing to those places at once. Additionally, the temp drive is shared between all users, and your home drive has a limited quota. It is also backed up every day, so avoid using it as scratch storage for results you don’t actually want to keep. Generally, the shares you&#039;ll want to use from the clusters will be ones containing the word &amp;quot;NAS&amp;quot;, which the big cluster has fast access to.&lt;br /&gt;
&lt;br /&gt;
=== Interactivity ===&lt;br /&gt;
&lt;br /&gt;
The job must run in an entirely scripted, unattended way. It must not require any key presses or mouse clicks, or other live interactivity while it runs. So jobs generally will read some sort of input (from a file, or from the way you run the job), do some processing, and write the results somewhere for you - all without intervention.&lt;br /&gt;
&lt;br /&gt;
== Launching jobs ==&lt;br /&gt;
&lt;br /&gt;
Jobs can be launched either through the Job Manager interface, or through the command line tools, which offer greater flexibility. We&#039;ll describe the command line method here; if you want to use the GUI, then it&#039;ll be a case of finding the matching boxes... Below are the specifics for our clusters. For more information, simply type &amp;lt;code&amp;gt;job&amp;lt;/code&amp;gt; on the commandline, or &amp;lt;code&amp;gt;job submit&amp;lt;/code&amp;gt; for the list of submission-related commands.&lt;br /&gt;
&lt;br /&gt;
=== FI--DIDECLUSTHN vs FI--DIDEMRCHNB ===&lt;br /&gt;
&lt;br /&gt;
Job submissions, as shown below, must specify a &amp;quot;job template&amp;quot;, which sets up a load of default things to make the job work. On fi--dideclusthn, the job templates are called 4Core, 8Core and GeneralNodes, which will respectively force jobs to run on the 4-core nodes, the 8-core nodes, or on any machine available.&lt;br /&gt;
&lt;br /&gt;
On fi--didemrchnb, you can set the job template to be... 8Core, 12Core, 16Core, 12and16Core, and GeneralNodes - which hopefully are fairly self-explanatory. There are a couple of other job templates, (24Core and Phi), but those are a bit special purpose for now, so don&#039;t use them!&lt;br /&gt;
&lt;br /&gt;
=== Job Submission ===&lt;br /&gt;
&lt;br /&gt;
Job submissions from the command line can take the following form (all on one line):-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /stdout:\\path\to\stdout.txt&lt;br /&gt;
   /stderr:\\path\to\stderr.txt /numcores:1-1 /jobtemplate:4Core \\path\to\run.bat&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== The /singlenode argument ===&lt;br /&gt;
&lt;br /&gt;
In MS HPC (2012), Microsoft finally added a tag to allow you to say that the &#039;n&#039; cores you requested must be on the same computer. Therefore, if you know precisely how many cores you want, then use the following (on one line):-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /singlenode:true &lt;br /&gt;
   /jobtemplate:8Core \\path\to\run.bat&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
However, there is one bug with this, for the specific case where you request a whole node, regardless of how many cores it has. In this case, oddly, you have to disable single node:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /singlenode:false &lt;br /&gt;
   /numnodes:1 /jobtemplate:8Core \\path\to\run.bat&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Languages and libraries supported ==&lt;br /&gt;
&lt;br /&gt;
A number of languages, and different versions of languages are available on the cluster. The sections below refer to your &amp;quot;run.bat&amp;quot; file - a batch file that you will create which will get run by a cluster node when a suitable one is available. The commands described below are to be put in this &amp;quot;run.bat&amp;quot; file, and they add various directories to the path, so that the software you want will be added to the path. &lt;br /&gt;
&lt;br /&gt;
=== C/C++ === &lt;br /&gt;
&lt;br /&gt;
A number of Microsoft C++ and Intel C++ runtimes are installed, but it&#039;s usually better to try and avoid using them, and make your executable as stand-alone as possible. If it requires any external libraries that you&#039;ve had to download, then put the .dll file in the same directory as the .exe file. If you use Microsoft Visual Studio, in Project Preferences, C/C++, Code Generation, make sure the Runtime Library is Multi-threaded (/MT) – the ones with DLL files won’t work. Even so, on recent versions of the Intel and Microsoft C compilers, &amp;quot;static linking&amp;quot; doesn’t really mean static when it comes to OpenMP, and you’ll have to copy some DLLs and put them next to your EXE file. See the OpenMP section below.&lt;br /&gt;
&lt;br /&gt;
The cluster nodes are all 64-bit, but they will run 32-bit compiled code. Just make sure you provide the right DLLs!&lt;br /&gt;
&lt;br /&gt;
Here is a document about [[Using the Xeon Phi]]&lt;br /&gt;
&lt;br /&gt;
Here is a document about [[Using MPI]]&lt;br /&gt;
&lt;br /&gt;
And if you want to use libraries such as GSL, then try [[C/C++ Libraries for Windows]]&lt;br /&gt;
&lt;br /&gt;
=== Java ===&lt;br /&gt;
&lt;br /&gt;
Java doesn&#039;t strictly need installing; you can setup any Java Runtime Environment you like, from Oracle, or anywhere. If you want to do this, then, (if you were to use the Server JRE from Oracle), something similar to the following will add java.exe and jvm.dll to the path, and set the JAVA_HOME environment variable, which most Java-using software will appreciate.&lt;br /&gt;
&lt;br /&gt;
    set JAVA_HOME=\\my\path\to\jre1.8.0&lt;br /&gt;
    set path=%JAVA_HOME%\bin;%JAVA_HOME%\bin\server;%path%&lt;br /&gt;
&lt;br /&gt;
For convenience, if you&#039;re happy with Azul&#039;s OpenJDK Java 1.8.0 update 308 (September 2021), then &amp;lt;code&amp;gt;call setJava64&amp;lt;/code&amp;gt; in your run script will set this up for you. Incidentally the above will also add what&#039;s needed for using the rJava package in R - in which case you&#039;ll perhaps also want something like &amp;lt;code&amp;gt;call setR64_4_1_0&amp;lt;/code&amp;gt; in your run script.&lt;br /&gt;
&lt;br /&gt;
=== Perl ===&lt;br /&gt;
&lt;br /&gt;
Strawberry Perl 64-bit portable, v5.30.1.1. Put &amp;lt;code&amp;gt;call setPerl&amp;lt;/code&amp;gt; at the top of your script.&lt;br /&gt;
&lt;br /&gt;
=== R ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;New tools are coming&#039;&#039;&#039;: [http://dide-tools.github.io/didehpc/vignettes/quickstart.html see here].  The instructions below are still valid if you want to do this manually.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You can R jobs on all the clusters. This is the latest wisdom on how to do so – thanks to James, Jeff, Hannah and others. &lt;br /&gt;
&lt;br /&gt;
First, if you are wanting to use packages, then set up a package repository on your home directory by running this in R.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;install.packages(&amp;quot;&amp;lt;package&amp;gt;&amp;quot;,lib=&amp;quot;Q:/R&amp;quot;)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now, write your run script. Suppose you have an R script in your home directory: Q:\R-scripts\test.R. And suppose you’ve set up your repository as above. Your run.bat should then be:-&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
	call &amp;lt;script for the R version you want – see below&amp;gt;&lt;br /&gt;
	net use Q: \\qdrive.dide.ic.ac.uk\homes\user&lt;br /&gt;
	set R_LIBS=Q:\R&lt;br /&gt;
	set R_LIBS_USER=Q:\R&lt;br /&gt;
	Rscript Q:\R-scripts\test.R&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Various packages require various R versions, and the cluster supports a few versions. To choose which one, change the first line of the script above to one of these – 32-bit or 64-bit versions of R releases. Purely for amusement, R&#039;s codenames are shown here too. &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setr32_2_13_1.bat		call setr64_2_13_1.bat    (anyone know the codename?)&lt;br /&gt;
call setr32_2_14_2.bat		call setr64_2_14_2.bat    (Gift-getting season)&lt;br /&gt;
call setr32_2_15_2.bat		call setr64_2_15_2.bat    (Trick or treat)&lt;br /&gt;
call setr32_3_0_1.bat           call setr64_3_0_1.bat     (Good Sport)&lt;br /&gt;
call setr32_3_0_2.bat           call setr64_3_0_2.bat     (Frisbee Sailing)&lt;br /&gt;
call setr32_3_1_0.bat           call setr64_3_1_0.bat     (Spring Dance)&lt;br /&gt;
call setr32_3_1_2.bat           call setr64_3_1_2.bat     (Pumpkin Helmet)&lt;br /&gt;
call setr32_3_2_2.bat           call setr64_3_2_2.bat     (Fire Safety)&lt;br /&gt;
call setr32_3_2_3.bat           call setr64_3_2_3.bat     (Wooden Christmas Tree)&lt;br /&gt;
call setr32_3_2_4.bat           call setr64_3_2_4.bat     (Very Secure Dishes - Revised Version - R later renamed this to 3.2.5)&lt;br /&gt;
call setr32_3_3_1.bat           call setr64_3_3_1.bat     (Bug in your hair)&lt;br /&gt;
call setr32_3_3_2.bat           call setr64_3_3_2.bat     (Sincere Pumpkin Patch)&lt;br /&gt;
call setr32_3_4_0.bat           call setr64_3_4_0.bat     (You Stupid Darkness)&lt;br /&gt;
call setr32_3_4_2.bat           call setr64_3_4_2.bat     (Short Summer)&lt;br /&gt;
call setr32_3_4_4.bat           call setr64_3_4_4.bat     (Someone to lean on)&lt;br /&gt;
call setr32_3_5_0.bat           call setr64_3_5_0.bat     (Joy in Playing)&lt;br /&gt;
call setr32_3_5_1.bat           call setr64_3_5_1.bat     (Feather Spray)&lt;br /&gt;
call setr32_3_5_3.bat           call setr64_3_5_3.bat     (Great Truth)&lt;br /&gt;
call setr32_3_6_0.bat           call setr64_3_6_0.bat     (Planting of a Tree)&lt;br /&gt;
call setr32_3_6_1.bat           call setr64_3_6_1.bat     (Action of the Toes)&lt;br /&gt;
call setr32_3_6_3.bat           call setr64_3_6_3.bat     (Holding the Windsock)&lt;br /&gt;
call setr32_4_0_2.bat           call setr64_4_0_2.bat     (Taking Off Again)&lt;br /&gt;
call setr32_4_0_3.bat           call setr64_4_0_3.bat     (Bunny-Wunnies Freak Out)&lt;br /&gt;
call setr32_4_0_5.bat           call setr64_4_0_5.bat     (Shake and Throw)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following versions are *not* available on the cluster at the moment - but here are their names anyway, as it seemed a shame to miss them out. Let me know if you desperately need one of these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
2.14.0    Great Pumpkin                   &lt;br /&gt;
2.14.1    December Snowflakes&lt;br /&gt;
2.15.0    Easter Beagle&lt;br /&gt;
2.15.1    Roasted Marshmallow&lt;br /&gt;
2.15.3    Security Blanket&lt;br /&gt;
3.0.0     Masked Marvel&lt;br /&gt;
3.0.3     Warm Puppy&lt;br /&gt;
3.1.1     Sock it to me&lt;br /&gt;
3.1.3     Smooth Sidewalk&lt;br /&gt;
3.2.0     Full of Ingredients&lt;br /&gt;
3.2.1     World famous astronaut&lt;br /&gt;
3.2.4     Very Secure Dishes (the non-revised version)&lt;br /&gt;
3.3.0     Supposedly Educational&lt;br /&gt;
3.3.3     Another Canoe&lt;br /&gt;
3.4.1     Single Candle&lt;br /&gt;
3.4.3     Kite-Eating Tree&lt;br /&gt;
3.5.2     Eggshell Igloo&lt;br /&gt;
3.6.2     Dark and Stormy Night&lt;br /&gt;
4.0.0     Arbor Day&lt;br /&gt;
4.0.1     See Things Now&lt;br /&gt;
4.0.4     Lost Library Book&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It also seems that different R versions put their packages in different structures – sometimes adding &amp;quot;win-library&amp;quot; into there for fun. Basically, R_LIBS and R_LIBS_USER should be paths to a folder that contains a list of other folders, one for each package you&#039;ve installed.&lt;br /&gt;
&lt;br /&gt;
IMPORTANT:  R_LIBS and R_LIBS_USER paths must NOT contain quotes, nor spaces. If the path to your library contains spaces, you need to use old-fashioned 8-character names. If in your command window, you type &amp;lt;code&amp;gt;dir /x&amp;lt;/code&amp;gt;, you’ll see the names – Program Files tends to become PROGRA~1 for instance. &lt;br /&gt;
&lt;br /&gt;
==== Passing parameters to R scripts ====&lt;br /&gt;
Passing parameters to R scripts means you can have fewer versions of your R and bat files and easily run whole sets of jobs. You can get parameters into R using Rscript (but not Rcmd BATCH, I think) as follows. In the run.bat example above, the Rscript statement becomes:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Rscript Q:\R-scripts\test.R arg1 arg2 arg3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Within the R code, the arguments can be recovered using &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
args &amp;lt;- commandArgs(trailingOnly = TRUE)&lt;br /&gt;
&lt;br /&gt;
outFileName &amp;lt;- args[1]     ## name of output file.&lt;br /&gt;
dataFileName &amp;lt;- args[2]    ## name of local data file. &lt;br /&gt;
currentR0 &amp;lt;- as.numeric(args[3]) ## convert this explicitly to number. &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
If you want your arguments to have a particular type, best to explicitly convert (see R0 above). Better still, you can pass parameters directly into the batch file that runs the R script. Command line arguments can be referenced within the batch file using %1, %2, etc. For example, if you have a batch file, runArgs.bat:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call &amp;lt;script for the R version you want – see below&amp;gt;&lt;br /&gt;
net use Q: \\qdrive.dide.ic.ac.uk\homes\user&lt;br /&gt;
set R_LIBS=Q:\R&lt;br /&gt;
set R_LIBS_USER=Q:\R&lt;br /&gt;
Rscript Q:\R-scripts\%1.R %2 %3 %4&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
then&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
runArgs.bat myRScript arg1 arg2 arg3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
will run the R script myRScript.R and pass it the parameters arg1, arg2 and arg3. The batch file runArgs.bat is now almost a &#039;&#039;&#039;generic R script runner&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== OpenMP ===&lt;br /&gt;
&lt;br /&gt;
This has been tested with C/C++ - but the same should apply to other languages such as fortran, that achieve multi-threading with a DLL file.&lt;br /&gt;
&lt;br /&gt;
==== Microsoft&#039;s C/C++ Compiler ====&lt;br /&gt;
You will need to copy vcomp100.dll (for Visual Studio 2010 – it maybe vcomp90.dll for 2008), into the same directory as your executable. You can usually find the dll file in a directory similar to:- C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\redist\x64\Microsoft.VC100.OpenMP. Extrapolate for future versions! Also make sure that you&#039;ve enabled OpenMP in the Properties (C++/Language).&lt;br /&gt;
&lt;br /&gt;
==== GCC or MinGW ====&lt;br /&gt;
Usually, this applies to Eclipse use. In project properties, the C++ command “g++ -fopenmp”, the C command “gcc –fopenmp”, and in the Linker options, under Miscellaneous, Linker flags, put “-fopenmp” too. Copy the OpenMP DLLs from MinGW into the same directory as your final executable. You may find the dlls are in C:\MinGW\Bin\libgomp-1.dll and in the same place, libpthread-2.dll,  libstdc++-6.dll and libgcc_s_dw2-1.dll.&lt;br /&gt;
&lt;br /&gt;
==== Intel C++ Compiler ====&lt;br /&gt;
Copy the libiomp5md.dll file from somewhere like C:\Program Files (x86)\Intel\ComposerXE-2011\redist\intel64\compiler\libiomp5md.dll to the same place as your executable. And in Visual Studio, make sure you&#039;ve enabled OpenMP in the project properties.&lt;br /&gt;
&lt;br /&gt;
==== How many threads? ====&lt;br /&gt;
The OpenMP function omp_max_threads() returns the number of &#039;&#039;physical&#039;&#039; cores on a machine, not the number of cores &#039;&#039;allocated&#039;&#039; to your job. To determine how many cores the scheduler actually allocated to you, use the following code to dig up the environment variable CCP_NUMCPUS, which will be set by the cluster management software:- &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
		int set_NCores() {&lt;br /&gt;
		   char * val;&lt;br /&gt;
		   char * endchar;&lt;br /&gt;
		   val = getenv(&amp;quot;CCP_NUMCPUS&amp;quot;);&lt;br /&gt;
		   int cores = omp_get_max_threads();&lt;br /&gt;
		   if (val!=NULL) cores = strtol (val,&amp;amp;endchar,10);&lt;br /&gt;
                   omp_set_num_threads(cores);&lt;br /&gt;
		   return cores;&lt;br /&gt;
		}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== WinBugs (or OpenBugs) ===&lt;br /&gt;
&lt;br /&gt;
They are similar, but OpenBugs 3.2.2 is the one we&#039;ve gone for. Something like this as your run.bat script will work:-&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setOpenBugs&lt;br /&gt;
openbugs \\path\to\script.txt /HEADLESS&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== MatLab ===&lt;br /&gt;
&lt;br /&gt;
There are various ways of producing a non-interactive executable from Matlab. Perhaps the simplest (not necessarily the best performance) way is to use “mcc.exe” – supplied with most full versions of Matlab, including the Imperial site licence version that you&#039;ve probably got.&lt;br /&gt;
&lt;br /&gt;
==== Use mcc.exe to compile your code ====&lt;br /&gt;
&lt;br /&gt;
Use windows explorer to navigate to the folder where the “.m” files are for the project you want to compile. Now use a good text editor to create a file called “compile.bat” in that folder. It should contain something similar to the following:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mcc -m file1.m file2.m file3.m -o myexe&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Don’t copy/paste the text from this document by the way – Word has a different idea of what a dash is to most other software, and will probably replace the two dashes with funny characters. so you have to list every single .m file that your project needs, after the’-m’. If you save this file, then double-click on it, then it will think for some while, and produce “myexe.exe” in this example. Copy your .exe file into a network accessible place as usual.&lt;br /&gt;
&lt;br /&gt;
==== Launch on the cluster. ====&lt;br /&gt;
&lt;br /&gt;
The launch.bat file will be exactly the same as before – see page 2. The run script will then start with a line that tells the cluster which version of Matlab you used to compile the cluster. Below is the table of different versions. The runtimes are huge and cumbersome to install on the cluster, so as a result I haven’t installed every single one. If you need one that’s not listed, get in touch.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Matlab Version&lt;br /&gt;
! First line of run script&lt;br /&gt;
|- &lt;br /&gt;
| R2009b&lt;br /&gt;
| call useMatLab79&lt;br /&gt;
|- &lt;br /&gt;
| R2010a&lt;br /&gt;
| call useMatLab713&lt;br /&gt;
|- &lt;br /&gt;
| R2011a&lt;br /&gt;
| call useMatLab715&lt;br /&gt;
|- &lt;br /&gt;
| R2011b&lt;br /&gt;
| call useMatLab716&lt;br /&gt;
|- &lt;br /&gt;
| R2012a (64-bit)&lt;br /&gt;
| call useMatLab717_64&lt;br /&gt;
|- &lt;br /&gt;
| R2012b (64-bit)&lt;br /&gt;
| call useMatLab80_64&lt;br /&gt;
|- &lt;br /&gt;
| R2013a (64-bit)&lt;br /&gt;
| call useMatLab81_64&lt;br /&gt;
|- &lt;br /&gt;
| R2014a (64-bit)&lt;br /&gt;
| call useMatLab83_64&lt;br /&gt;
|- &lt;br /&gt;
| R2014b (64-bit)&lt;br /&gt;
| call useMatLab84_64&lt;br /&gt;
|- &lt;br /&gt;
| R2015a (64-bit)&lt;br /&gt;
| call useMatLab85_64&lt;br /&gt;
|- &lt;br /&gt;
| R2015b (64-bit)&lt;br /&gt;
| call useMatLab90_64&lt;br /&gt;
|- &lt;br /&gt;
| R2016b (64-bit)&lt;br /&gt;
| call useMatLab91_64&lt;br /&gt;
|- &lt;br /&gt;
| R2017a (64-bit)&lt;br /&gt;
| call useMatLab92_64&lt;br /&gt;
|- &lt;br /&gt;
| R2019a (64-bit)&lt;br /&gt;
| call useMatLab96_64&lt;br /&gt;
|- &lt;br /&gt;
| R2021a (64-bit)&lt;br /&gt;
| call useMatLab910_64&lt;br /&gt;
|- &lt;br /&gt;
| R2022a (64-bit)&lt;br /&gt;
| call useMatLab912_64&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Python ===&lt;br /&gt;
&lt;br /&gt;
* Many Python versions are available on the cluster. Different python versions within the same release (e.g., 3.5.1 and 3.5.2) do not behave nicely together in automated installation, so if you have a desperate need for a previous minor version, get in touch. While 2.7.18 is available, we &#039;&#039;&#039;strongly&#039;&#039;&#039; recommend migrating away from Python 2.7, as it has been officially discontinued on 1st January 2020. Experiences may vary, and future success is not guaranteed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
2.7.18  64-bit   call set_python_27_64.bat&lt;br /&gt;
3.5.9   64-bit   call set_python_35_64.bat&lt;br /&gt;
3.6.15  64-bit   call set python_36_64.bat&lt;br /&gt;
3.7.17  64-bit   call set_python_37_64.bat&lt;br /&gt;
3.8.17  64-bit   call set python_38_64.bat&lt;br /&gt;
3.9.17  64-bit   call set_python_39_64.bat&lt;br /&gt;
3.10.12 64-bit   call set python_310_64.bat&lt;br /&gt;
3.11.4  64-bit   call set_python_311_64.bat&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* You&#039;ll most likely want to use some packages, so you&#039;ll need to have a network-accessible location to put your packages in. If you&#039;re running a version of Windows with Python that matches one installed on the cluster, then you&#039;ll be able to share that package repository between the two. But if you&#039;re running a different version, or a different operating system, or a different Python version, then you&#039;ll need to keep your local package repository separate from the one the cluster uses.&lt;br /&gt;
* Here comes the basic script to run some python. Suppose I decide to put my Python packages for the cluster in &#039;&#039;&#039;\\qdrive.dide.ic.ac.uk\homes\username\PythonCluster37_64&#039;&#039;&#039; (which is Q:\PythonCluster37_64 on a DIDE Windows PC). To run some python, something like the following:-&lt;br /&gt;
&lt;br /&gt;
 call set_python_37_64&lt;br /&gt;
 set PYTHONPATH=\\qdrive\homes\username\PythonCluster37_64&lt;br /&gt;
 python \\qdrive\homes\username\Python\MyScript.py&lt;br /&gt;
&lt;br /&gt;
or if you want to do this in a programmatic way...&lt;br /&gt;
&lt;br /&gt;
 import sys&lt;br /&gt;
 sys.path = [&#039;\\\\qdrive\\homes\\username\\PythonCluster37_64&#039;] + sys.path&lt;br /&gt;
&lt;br /&gt;
==== Packages ====&lt;br /&gt;
&lt;br /&gt;
* If you want to install a package like numpy, that&#039;s readily available through pip, then you can launch a batch file like this:-&lt;br /&gt;
 call set_python_36_64&lt;br /&gt;
 pip install numpy --target \\qdrive\homes\username\PythonCluster36_64&lt;br /&gt;
* or alternatively, you could write a python script that looks like this, and launch it as normal:-&lt;br /&gt;
 import pip&lt;br /&gt;
 pip.main([&#039;install&#039;,&#039;numpy&#039;,&#039;--target&#039;,&#039;\\\\qdrive\\homes\\username\\PythonCluster36_64&#039;])&lt;br /&gt;
&lt;br /&gt;
* And if you&#039;re running the same Python version on a Windows machine, then you can do these two locally, without submitting a cluster job to do them for you.&lt;br /&gt;
&lt;br /&gt;
* And next time you submit a python job on the cluster, python will look in the place set by PYTHONPATH, and will find the packages you&#039;ve just installed when you import them.&lt;br /&gt;
&lt;br /&gt;
=== Beast and Beagle ===&lt;br /&gt;
&lt;br /&gt;
We&#039;ve got a couple of versions available. For BEAST 1.75 with BEAGLE 1.0:  (the x y z represents all the command-line arguments you&#039;ll want to pass to beast)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setbeast&lt;br /&gt;
call beast-beagle x y z&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you want BEAST 1.82 or 1.83 with BEAGLE 2.1:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setbeast_182                        call setbeast_183&lt;br /&gt;
call beast-beagle_182 x y z              call beast-beagle_183 x y z&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And if you want BEAST 2.3.2 with BEAGLE 2.1 (note that BEAST 2 is a different, er, beast to BEAST 1, regarding packages and compatibilities, so only use BEAST 2 if you know that&#039;s what you want to use).&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setbeast_232&lt;br /&gt;
call beast-beagle_232 x y z&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
OpenCL is installed on all the nodes, which means Beagle will pick up the Intel Xeon processors and use what it can on them. It will also detect the Xeon Phis where they&#039;re available. If that&#039;s something you&#039;d be particularly interested in using, drop me a line.&lt;br /&gt;
&lt;br /&gt;
=== Blast ===&lt;br /&gt;
&lt;br /&gt;
Drop me a line to join the party testing this, and to get added to the (large) BlastDB network share.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setblast&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
will set the `BLASTDB` environment variable to point to what we current have of the `v5` database, and the Blast tools (2.9.0, 64-bit) will be added to the path. So you can &lt;br /&gt;
then call `blastp`, `blastn`, `blastx` setc.&lt;br /&gt;
&lt;br /&gt;
=== BOW (BioInformatics on Windows) ===&lt;br /&gt;
&lt;br /&gt;
A number of Bio-informatics tools are ready to go. These used to be provided together on codeplex, but that has since been retired. Ugene is one project that&lt;br /&gt;
maintains windows builds of them. Start your run.bat file with &amp;lt;code&amp;gt;call setBOW&amp;lt;/code&amp;gt; to add these to the path:-&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! EXE File&lt;br /&gt;
! Version&lt;br /&gt;
|- &lt;br /&gt;
| SamTools.exe&lt;br /&gt;
| 0.1.19-44429cd&lt;br /&gt;
|- &lt;br /&gt;
| BCFTools.exe&lt;br /&gt;
| 0.1.19-44428cd&lt;br /&gt;
|- &lt;br /&gt;
| bgzip&lt;br /&gt;
| ?&lt;br /&gt;
|- &lt;br /&gt;
| razip&lt;br /&gt;
| ?&lt;br /&gt;
|- &lt;br /&gt;
| bwa&lt;br /&gt;
| 0.7.17-r1188&lt;br /&gt;
|-&lt;br /&gt;
| tabix&lt;br /&gt;
| 0.2.5 (r1005)&lt;br /&gt;
|-&lt;br /&gt;
| minimap2&lt;br /&gt;
| 2.24 (r1122)&lt;br /&gt;
|-&lt;br /&gt;
| raxml&lt;br /&gt;
| 8.2.12 (best for each node)&lt;br /&gt;
|-&lt;br /&gt;
| raxml_sse3&lt;br /&gt;
| 8.2.12 (pthreads+sse3)&lt;br /&gt;
|-&lt;br /&gt;
| raxml_avx&lt;br /&gt;
| 8.2.12 (pthreads+avx)&lt;br /&gt;
|-&lt;br /&gt;
| raxml_avx2&lt;br /&gt;
| 8.2.12 (pthreads+avx2)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Note that BWA-MEM is hardwired to use a linux-only feature, so will produce an odd message and not do what you want if you use that mode on Windows. However, it seems that minimap2 may be a faster and more accurate way&lt;br /&gt;
of doing what bwa does in any case, and that seems to have no such limitation.&lt;br /&gt;
&lt;br /&gt;
Also, note that raxml.exe is a copy of the most optimised build for the particular cluster node the job is running on. fi--dideclusthn only supports SSE3;&lt;br /&gt;
fi--didemrchnb varies a little; the 32-cores support AVX2, the 24, 20 and 16 core machines support AVX, and only the oldest 12-core nodes only support SSE3. You don&#039;t have to worry about, except to expect performance to vary between them.&lt;br /&gt;
&lt;br /&gt;
=== GATK and Picard ===&lt;br /&gt;
&lt;br /&gt;
These both rely on Java, so put this in your run script:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setJava64&lt;br /&gt;
call setgatk&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and then &amp;lt;code&amp;gt;gatk&amp;lt;/code&amp;gt; in your scripts will use Python 3.7 to call the argument handling wrapper for GATK 4.2.2.0, and &amp;lt;code&amp;gt;picard&amp;lt;/code&amp;gt; maps to the picard (2.26.2) jar file.&lt;br /&gt;
&lt;br /&gt;
=== FastQC ===&lt;br /&gt;
&lt;br /&gt;
This one has a slight eccentricity that instead of passing normal command-line args, it uses java&#039;s -D command-line options to buffer them out of an environment variable&lt;br /&gt;
called _JAVA_OPTIONS. Strange but true. The ZIP comes with a bash script, which I&#039;ll reimplement if anyone actually wants me to. But in the meantime, it&#039;s easy to work &lt;br /&gt;
out the arguments by inspection. For example, most likely usage:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call setFastQC&lt;br /&gt;
&lt;br /&gt;
set _JAVA_OPTIONS=&#039;-Dfastqc.output_dir=%OUT%&#039;&lt;br /&gt;
call fastqc thing.fq&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== MAFFT ===&lt;br /&gt;
&lt;br /&gt;
For version 7.212 (Win64), write &amp;lt;code&amp;gt;call setMAFFT.bat&amp;lt;/code&amp;gt; at the top of your run script.&lt;br /&gt;
&lt;br /&gt;
=== Applied-Maths Open Source ===&lt;br /&gt;
&lt;br /&gt;
Write &amp;lt;code&amp;gt;call setAppliedMaths.bat&amp;lt;/code&amp;gt; at the top of your run script, to add these to the path:&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! EXE File(s)&lt;br /&gt;
! Description&lt;br /&gt;
! Version&lt;br /&gt;
|- &lt;br /&gt;
| velvetg_mt_x86.exe&lt;br /&gt;
| Graph Construction Multi-threaded, 32-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velvetg_mt_x64.exe&lt;br /&gt;
| Graph Construction Multi-threaded, 64-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velvetg_st_x86.exe&lt;br /&gt;
| Graph Construction Multi-threaded, 32-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velvetg_st_x64.exe&lt;br /&gt;
| Graph Construction Multi-threaded, 64-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velveth_mt_x86.exe&lt;br /&gt;
| Hashing Multi-threaded, 32-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velveth_mt_x64.exe&lt;br /&gt;
| Hashing Multi-threaded, 64-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velveth_st_x86.exe&lt;br /&gt;
| Hashing Multi-threaded, 32-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| velveth_st_x64.exe&lt;br /&gt;
| Hashing Multi-threaded, 64-bit&lt;br /&gt;
| 1.01.04&lt;br /&gt;
|-&lt;br /&gt;
| ray_x64.exe&lt;br /&gt;
| Ray 64-bit (for MPI)&lt;br /&gt;
| 1.6&lt;br /&gt;
|-&lt;br /&gt;
| ray_x86.exe&lt;br /&gt;
| Ray 32-bit (for MPI)&lt;br /&gt;
| 1.6&lt;br /&gt;
|-&lt;br /&gt;
| Mothur_x64.exe&lt;br /&gt;
| Mothur 64-bit (for MPI)&lt;br /&gt;
| 1.25.1&lt;br /&gt;
|-&lt;br /&gt;
| Mothur_x86.exe&lt;br /&gt;
| Mothur 32-bit (for MPI)&lt;br /&gt;
| 1.25.1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Tensorflow ===&lt;br /&gt;
&lt;br /&gt;
Here is an example of getting Tensorflow (as a python package) available from an R script, using the cluster to install everything for you. It only works for Tensorflow 2.0 - older versions and newer versions seem to want combinations of DLLs that I can&#039;t satisfy. The following are I think minimal steps to get Tensorflow running from Python and R.&lt;br /&gt;
&lt;br /&gt;
* Create a folder for your python packages in your home directory (so the cluster can see it. I&#039;m calling mine &amp;lt;code&amp;gt;Q:/python_37_repo&amp;lt;/code&amp;gt; - and the cluster will call it \\fi--san03.dide.ic.ac.uk\homes\wrh1\python_37_repo - change wrh1 to your DIDE username of course.&lt;br /&gt;
* Create a similar folder for R packages, which for me is &amp;lt;code&amp;gt;Q:/R4&amp;lt;/code&amp;gt;&lt;br /&gt;
* And a third folder, Q:/Tensorflow to do this work in.&lt;br /&gt;
* Download these DLLs and put them in the Q:/Tensorflow folder - at present they seem to be the ones Python/Tensorflow wants. Let&#039;s hope for the best... Download [https://mrcdata.dide.ic.ac.uk/resources/msvcp140.dll msvcp140.dll] and [https://mrcdata.dide.ic.ac.uk/resources/msvcp140_1.dll msvcp140_1.dll] into your &amp;lt;code&amp;gt;Q:/Tensorflow&amp;lt;/code&amp;gt; folder.&lt;br /&gt;
&lt;br /&gt;
* Now, create a script &amp;lt;code&amp;gt;Q:/Tensorflow/prepare.bat&amp;lt;/code&amp;gt;. We&#039;re going to launch this on the cluster, and get it to wire up the packages we want. Replace USER with your username...&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  net delete Q: /y&lt;br /&gt;
  net use Q: \\qdrive.dide.ic.ac.uk\homes\USER&lt;br /&gt;
  set TMPDIR=%TEMP%&lt;br /&gt;
  set PYTHONPATH=\\qdrive.dide.ic.ac.uk\homes\USER\python_37_repo&lt;br /&gt;
  set R_LIBS=Q:\R4&lt;br /&gt;
  set R_LIBS_USER=Q:\R4&lt;br /&gt;
  call set_python_37_64.bat&lt;br /&gt;
  call setr64_4_0_3.bat&lt;br /&gt;
  pip install --no-cache-dir tensorflow==2.00 --target Q:\python_37_repo&lt;br /&gt;
  RScript Q:\Tensorflow\install_tensorflow.R&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Create also &amp;lt;code&amp;gt;Q:/Tensorflow/install_tensorflow.R&amp;lt;/code&amp;gt; contains:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  install.packages(c(&amp;quot;reticulate&amp;quot;, &amp;quot;tensorflow&amp;quot;),lib=&amp;quot;Q:/R4&amp;quot;,repos=&amp;quot;https://cran.ma.imperial.ac.uk/&amp;quot;)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Now submit the prepare job to the cluster with &amp;lt;code&amp;gt;job submit /scheduler:fi--dideclusthn /jobtemplate:GeneralNodes \\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\prepare.bat&amp;lt;/code&amp;gt; - or if you use the portal, just &amp;lt;code&amp;gt;\\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\prepare.bat&amp;lt;/code&amp;gt; in the big window will do it. That will take a while, but you should notice lots of new files in your Q:/python_37_repo folder. You&#039;ll only need to do this once (unless you delete your Python repo folder, or it randomly breaks and you start again...)&lt;br /&gt;
&lt;br /&gt;
* Next, create a file &amp;lt;code&amp;gt;Q:/Tensorflow/run.bat&amp;lt;/code&amp;gt; containing the following the two &amp;quot;call&amp;quot; lines near the end are the ones that do some &amp;quot;work&amp;quot; in python or R, so this script basically a template for running your future jobs. Just change those two calls to set off the python or R code you want to run that uses Tensorflow.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call set_python_37_64.bat&lt;br /&gt;
call setr64_4_0_3.bat&lt;br /&gt;
net use Q: /delete /y&lt;br /&gt;
net use Q: \\qdrive.dide.ic.ac.uk\homes\USER&lt;br /&gt;
set PYTHONPATH=Q:/python_37_repo&lt;br /&gt;
set R_LIBS=Q:\R4&lt;br /&gt;
set R_LIBS_USER=Q:\R4&lt;br /&gt;
call python Q:\tensorflow\test_tensorflow.py&lt;br /&gt;
call RScript Q:\tensorflow\test_tensorflow.R&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* And finally, you&#039;ll need &amp;lt;code&amp;gt;Q:\tensorflow\test_tensorflow.py&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;Q:\tensorflow\test_tensorflow.R&amp;lt;/code&amp;gt; to exist. Here are minimal tests that everything is wired up. &amp;lt;code.test_tensorflow.py&amp;lt;/code&amp;gt; first:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import tensorflow as tf;&lt;br /&gt;
print(tf.reduce_sum(tf.random.normal([1000, 1000])));&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and &amp;lt;code&amp;gt;Q:\Tensorflow\test_tensorflow.R&amp;lt;/code&amp;gt; contains:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
library(reticulate)&lt;br /&gt;
reticulate::py_config()&lt;br /&gt;
library(tensorflow)&lt;br /&gt;
tf$constant(&#039;Hello, TensorFlow!&#039;)&lt;br /&gt;
tf$Variable(tf$zeros(shape(1L)))&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Now submit the run job to the cluster with &amp;lt;code&amp;gt;job submit /scheduler:fi--dideclusthn /jobtemplate:GeneralNodes \\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\run.bat&amp;lt;/code&amp;gt; - or if you use the portal, just &amp;lt;code&amp;gt;\\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\run.bat&amp;lt;/code&amp;gt; in the big window will do it - and perhaps paste &amp;lt;code&amp;gt;\\fi--san03.dide.ic.ac.uk\homes\USER\tensorflow\output.txt&amp;lt;/code&amp;gt; in the stdout box to collect the input and see how it gets on. You should see sensible output from both tests.&lt;br /&gt;
&lt;br /&gt;
== Launching a job ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Submitting many jobs ==&lt;br /&gt;
&lt;br /&gt;
Suppose you write an exe that you might run with… Mysim.exe init.txt 1 2 3, and you want to run it many times with a range of parameters. One way of many, is to write a launch.bat file that will run “job submit” separately, for example (thanks Tini/James!):-&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
@echo off&lt;br /&gt;
set SubDetails=job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /jobtemplate:GeneralNodes /numcores:1&lt;br /&gt;
set initFile=\\networkshare\job\init.txt&lt;br /&gt;
set exeFile=\\networkshare\job\mysim.exe&lt;br /&gt;
&lt;br /&gt;
%SubDetails% %exeFile% %initfile% 1 2 3&lt;br /&gt;
%SubDetails% %exeFile% %initfile% 4 5 6&lt;br /&gt;
%SubDetails% %exeFile% %initfile% 7 8 9&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Suppose the job you want to run is an R script? To specify arguments to an R script, you have to add ′--args a=1 b=2′ - so… you might make launch.bat like this:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
@echo off&lt;br /&gt;
set SubDetails=job submit /scheduler:fi--dideclusthn.dide.ic.ac.uk /jobtemplate:GeneralNodes /numcores:1&lt;br /&gt;
set rbatFile=\\networkshare\R-scripts\run.bat&lt;br /&gt;
&lt;br /&gt;
%SubDetails% %rbatFile% 1 2&lt;br /&gt;
%SubDetails% %rbatFile% 3 4&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
And make the significant line of your run.bat:-&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
Rcmd BATCH ′--args a=%1 b=%2′ U:\R-scripts\test.R&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
%1 and %2 will map to the first and second thing after the batch file. You can go all the way up to %9.&lt;br /&gt;
&lt;br /&gt;
		IMPORTANT NOTE&lt;br /&gt;
&lt;br /&gt;
Make sure you get the apostrophe character right in the above example – NEVER copy and paste from a word document into a script. It will go hideously wrong. Type the apostrophes (and dashes for that matter) in a good text editor – you want just the standard old-fashioned characters.&lt;br /&gt;
&lt;br /&gt;
== Requesting resources ==&lt;br /&gt;
&lt;br /&gt;
The following modifiers next to the “/scheduler:” part of the job submit line (before your app.exe 1 2 3 part), will request things you might want…&lt;br /&gt;
&lt;br /&gt;
/numcores:8				- number of cores you want&lt;br /&gt;
&lt;br /&gt;
/numcores:8-12				- minimum and maximum cores appropriate for your job&lt;br /&gt;
&lt;br /&gt;
/memorypernode:1024			- amount of mem in MegaBytes needed.&lt;br /&gt;
&lt;br /&gt;
/workdir:\\networkshare\work		- set working directory&lt;br /&gt;
&lt;br /&gt;
/stdout:\\networkshare\out.txt		- divert stdout to a file&lt;br /&gt;
&lt;br /&gt;
/stderr:    or    /stdin:			- similar for stderr and stdin&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting / Miscellany / Q &amp;amp; A ==&lt;br /&gt;
&lt;br /&gt;
*	My job doesn’t work.&lt;br /&gt;
**	Run the HPC Job Manager application. Find your job id, possible under “My Jobs, Failed”. Double click on it, then on “View All Tasks”. Perhaps something in the output section will help.&lt;br /&gt;
&lt;br /&gt;
* Check that the path to your job is visible everywhere.&lt;br /&gt;
** Avoid spaces in your paths - “job submit” doesn’t like them very much. If you must have them, they’ll be ok in the “run.bat” batch file that the cluster will run – in which case, put the path in standard double-quotes (&amp;quot;). But avoid them in your “launch.bat” file – you may have to relocate your run.bat to a simple non-space-containing directory.&lt;br /&gt;
** Rather than putting the full application and parameters on the job submit line, you might want to write a batch-file to do all that, and submit the batch file to the cluster. (See section 6 about R for example). But make sure the batch file is somewhere visible to the cluster.&lt;br /&gt;
	&lt;br /&gt;
*	My job seems to work, but reports as having failed.&lt;br /&gt;
**	The success/failure depends on the error code returned. If you’re running C code, end with “return 0;” for success.&lt;br /&gt;
&lt;br /&gt;
*  job submit ..blah blah.. app.exe &amp;gt;out.txt doesn’t work!&lt;br /&gt;
** The contents of out.txt will be the result of “job submit”, not the result of “app.exe”. You meant to say this job submit ..blah blah.. /stdout:out.txt app.exe correcting out.txt and app.exe to network paths of course.&lt;br /&gt;
&lt;br /&gt;
* My C/C++ Executable works perfectly on my desktop, but doesn&#039;t work on the cluster. What&#039;s wrong with the cluster?&lt;br /&gt;
** Your EXE file probably relies on some DLL files that the cluster doesn&#039;t have. If you use Visual Studio, check that in Code Generation, you have &amp;quot;Multi-Threaded (/MT)&amp;quot; as your target - with no mention of DLLs. If your code uses OpenMP, check you&#039;ve copied the right OpenMP DLL(s) (go back to the C section above). As a last resort, give your EXE to someone who doesn&#039;t have Visual Studio installed, and get them to run it, and see what DLL files it seems to ask for.&lt;br /&gt;
&lt;br /&gt;
== Contributing Authors ==&lt;br /&gt;
&lt;br /&gt;
Wes Hinsley, James Truscott, Tini Garske, Jeff Eaton, Hannah Clapham&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Remote_access_to_DIDE&amp;diff=14253</id>
		<title>Remote access to DIDE</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Remote_access_to_DIDE&amp;diff=14253"/>
		<updated>2023-04-17T14:59:02Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;These instructions are now obsolete. All remote access to DIDE is now via [https://www.imperial.ac.uk/admin-services/ict/self-service/connect-communicate/remote-access/unified-access/ Zscaler]. ZScaler replaces both the Pulse Secure VPN and the Remote Desktop Gatway.&lt;br /&gt;
&lt;br /&gt;
== Remote Access to your Windows DIDE Desktop via ZScaler ==&lt;br /&gt;
The procedure below only needs to be followed once. Complete each step in turn.&lt;br /&gt;
# Ensure that you&#039;ve uninstalled Pulse Secure VPN.&lt;br /&gt;
# Ensure that you&#039;ve installed ZScaler via above link.&lt;br /&gt;
# Click on the Start button in your desktop toolbar, type &#039;&#039;&#039;Remote Desktop&#039;&#039;&#039; in the search field and press the Return key on your keyboard.&lt;br /&gt;
# Press the &#039;&#039;&#039;Show Options&#039;&#039;&#039; arrow in the bottom left hand corner of the Remote Desktop window.&lt;br /&gt;
# Click the &#039;&#039;&#039;Display&#039;&#039;&#039; tab and ensure that the &#039;&#039;&#039;Colours&#039;&#039;&#039; menu says &#039;&#039;High Colour (16-bit)&#039;&#039;.[[File:TS display.png|thumb|Step 10]]&lt;br /&gt;
# Click on the &#039;&#039;&#039;Experience&#039;&#039;&#039; tab and select &#039;&#039;&#039;Low speed internet&#039;&#039;&#039;, then re-tick the box for Font Smoothing.&lt;br /&gt;
# Click the &#039;&#039;&#039;Local Resources&#039;&#039;&#039; tab and ensure that the &#039;&#039;&#039;Printers&#039;&#039;&#039; box is &#039;&#039;unticked&#039;&#039;.[[File:TS printer.png|thumb|Step 11]]&lt;br /&gt;
# Click the &#039;&#039;&#039;General&#039;&#039;&#039; tab.&lt;br /&gt;
# Enter the full name of your DIDE PC (e.g. &#039;&#039;&#039;WPIA-DIDEx.dide.ic.ac.uk&#039;&#039;&#039;) and click &#039;&#039;Connect&#039;&#039;.&lt;br /&gt;
# Enter your DIDE username (&#039;&#039;&#039;DIDE\yourusername&#039;&#039;&#039;) and click &#039;&#039;OK&#039;&#039;.[[File:TS general.png|thumb|Steps 12 to 15]]&lt;br /&gt;
# Finally, click the &#039;&#039;&#039;Save As...&#039;&#039;&#039; button and save these settings as something like &#039;&#039;&#039;Remote Desktop Connection&#039;&#039;&#039; to your desktop or wherever you like.&lt;br /&gt;
&lt;br /&gt;
== OBSOLETE SINCE ZSCALER - Remote Access to your Windows DIDE Desktop via Terminal Services Gateway ==&lt;br /&gt;
The procedure below only needs to be followed once. Complete each step in turn.&lt;br /&gt;
[[File:TS connection2.png|thumb|Steps 4 to 9]]&lt;br /&gt;
# Click on the Start button in your desktop toolbar, type &#039;&#039;&#039;Remote Desktop&#039;&#039;&#039; in the search field and press the Return key on your keyboard.&lt;br /&gt;
# Press the &#039;&#039;&#039;Show Options&#039;&#039;&#039; arrow in the bottom left hand corner of the Remote Desktop window.&lt;br /&gt;
# Select the &#039;&#039;&#039;Advanced&#039;&#039;&#039; tab on the far right and click the &#039;&#039;&#039;Settings...&#039;&#039;&#039; button under Connect from anywhere.&lt;br /&gt;
# Select the &#039;&#039;&#039;Use these RD Gateway server settings&#039;&#039;&#039; button.&lt;br /&gt;
# Enter &#039;&#039;&#039;ictsgw.cc.ic.ac.uk&#039;&#039;&#039; in the &#039;&#039;Server name&#039;&#039; field.&lt;br /&gt;
# Select &#039;&#039;&#039;Allow me to select later&#039;&#039;&#039; in the &#039;&#039;Log-on method&#039;&#039; field. We&#039;ll add this later (see after these steps).&lt;br /&gt;
# Ensure that &#039;&#039;&#039;Bypass RD Gateway server for local addresses&#039;&#039;&#039; is &#039;&#039;ticked&#039;&#039;.&lt;br /&gt;
# Ensure that &#039;&#039;&#039;Use my RD Gateway credentials for the remote computer&#039;&#039;&#039; at the bottom is &#039;&#039;unticked&#039;&#039;. &lt;br /&gt;
# Press the OK button&lt;br /&gt;
# Click the &#039;&#039;&#039;Display&#039;&#039;&#039; tab and ensure that the &#039;&#039;&#039;Colours&#039;&#039;&#039; menu says &#039;&#039;High Colour (16-bit)&#039;&#039;.[[File:TS display.png|thumb|Step 10]]&lt;br /&gt;
# Click on the &#039;&#039;&#039;Experience&#039;&#039;&#039; tab and select &#039;&#039;&#039;Low speed internet&#039;&#039;&#039;, then re-tick the box for Font Smoothing.&lt;br /&gt;
# Click the &#039;&#039;&#039;Local Resources&#039;&#039;&#039; tab and ensure that the &#039;&#039;&#039;Printers&#039;&#039;&#039; box is &#039;&#039;unticked&#039;&#039;.[[File:TS printer.png|thumb|Step 11]]&lt;br /&gt;
# Click the &#039;&#039;&#039;General&#039;&#039;&#039; tab.&lt;br /&gt;
# Enter the full name of your DIDE PC (e.g. &#039;&#039;&#039;WPIA-DIDEx.dide.ic.ac.uk&#039;&#039;&#039;) and click &#039;&#039;Connect&#039;&#039;.&lt;br /&gt;
# Enter your DIDE username (&#039;&#039;&#039;DIDE\yourusername&#039;&#039;&#039;) and click &#039;&#039;OK&#039;&#039;.[[File:TS general.png|thumb|Steps 12 to 15]]&lt;br /&gt;
# Finally, click the &#039;&#039;&#039;Save As...&#039;&#039;&#039; button and save these settings as something like &#039;&#039;&#039;Remote Desktop Connection&#039;&#039;&#039; to your desktop or wherever you like.&lt;br /&gt;
&lt;br /&gt;
You will now have a new icon on your desktop and you never need to do the above again. To connect to your DIDE desktop, click the &#039;&#039;&#039;Connect&#039;&#039;&#039; button in your new Remote Desktop shortcut.&lt;br /&gt;
&lt;br /&gt;
You will now be asked for your Imperial credentials in order to access the Terminal Services Gateway. Enter your details as &#039;&#039;&#039;IC\username&#039;&#039;&#039; with your Imperial password.&lt;br /&gt;
&lt;br /&gt;
Once that allows you through you will be prompted for your DIDE credentials in order to access your PC. Enter your details as &#039;&#039;&#039;DIDE\username&#039;&#039;&#039; with your DIDE password. If this is the first time that you&#039;ve connected to your DIDE PC for a while you&#039;ll get a certificate warning message. Tick the box and select &#039;&#039;&#039;Yes&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
If you don&#039;t get prompted for your DIDE account that probably means your PC is asleep. To wake it up [https://www.imperial.ac.uk/admin-services/ict/self-service/connect-communicate/remote-access/remotely-access-my-college-computer/wake-my-pc/ click here].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;N.B.&#039;&#039;&#039; If all the above seems too difficult, I&#039;ve made a template file with all the settings. It is in the &#039;&#039;&#039;T:&#039;&#039;&#039; drive in folder &#039;&#039;&#039;IT\VPN&#039;&#039;&#039; and is called &#039;&#039;&#039;DIDE-Remote.RDP&#039;&#039;&#039;. Right-click and edit that to put your correct hostname and username in and all the other settings are done for you.&lt;br /&gt;
&lt;br /&gt;
== Remote Access to your Ubuntu DIDE Desktop via Terminal Services Gateway ==&lt;br /&gt;
First of all, you will need to have enabled remote desktop in advance. [https://linuxconfig.org/ubuntu-remote-desktop-18-04-bionic-beaver-linux See here for example]. You should also check you have the Remmina app installed.&lt;br /&gt;
&lt;br /&gt;
# Open Remmina&lt;br /&gt;
# Click the “+” button to add a new configuration, and give it a meaningful name.&lt;br /&gt;
# Protocol: RDP - Remote Desktop Protocol&lt;br /&gt;
# Open Remmina and on the Basic tab fill in the following details: &lt;br /&gt;
#* Server: Your desktop PC FQDN (e.g. &#039;&#039;&#039;WPIA-DIDEx.dide.ic.ac.uk&#039;&#039;&#039;)&lt;br /&gt;
#* User Name: &#039;&#039;&#039;Your Ubuntu username&#039;&#039;&#039;&lt;br /&gt;
#* Password: &#039;&#039;&#039;Your Ubuntu  password&#039;&#039;&#039;&lt;br /&gt;
#* Domain: &#039;&#039;&#039;DIDE&#039;&#039;&#039; (only if your workstation is on the DIDE domain - very likely it&#039;s not).&lt;br /&gt;
# Adjust colour depth to &#039;&#039;&#039;16 bit&#039;&#039;&#039;.&lt;br /&gt;
# Go to to the Advanced Tab and set up the ICT RDP Gateway with the following details:&lt;br /&gt;
#* RDG Server: &#039;&#039;&#039;ictsgw.cc.ic.ac.uk&#039;&#039;&#039;&lt;br /&gt;
#* RDG username: &#039;&#039;&#039;Your IC username&#039;&#039;&#039;&lt;br /&gt;
#* RDG password: &#039;&#039;&#039;Your IC password&#039;&#039;&#039;&lt;br /&gt;
#* RDG domain: &#039;&#039;&#039;IC&#039;&#039;&#039;&lt;br /&gt;
# Click &#039;&#039;&#039;Save&#039;&#039;&#039; and you will have a new configuration with the name you initially specified. &lt;br /&gt;
# Click on this new entry to connect to your server.&lt;br /&gt;
# Accept the certificate warnings. These should only appear the very first time you connect.&lt;br /&gt;
# Your Ubuntu remote session should now be active.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Remote Access to your DIDE Desktop via Terminal Services Gateway on a Mac ==&lt;br /&gt;
The procedure below only needs to be followed once. Complete each step in turn.&lt;br /&gt;
&lt;br /&gt;
# Start the &#039;&#039;&#039;Microsoft Remote Desktop 10&#039;&#039;&#039; app from the App Store and select &#039;&#039;&#039;Add desktop&#039;&#039;&#039; to add a new profile entry.&lt;br /&gt;
# Enter a name for the remote desktop profile.&lt;br /&gt;
# Enter the full name of your DIDE machine (e.g. &#039;&#039;&#039;WPIA-DIDEx.dide.ic.ac.uk&#039;&#039;&#039;).&lt;br /&gt;
# Change the &#039;&#039;&#039;User Account&#039;&#039;&#039; drop down to Add User Account&lt;br /&gt;
# Enter &#039;&#039;&#039;DIDE\username&#039;&#039;&#039; in the User name field.&lt;br /&gt;
# Enter your DIDE password in the Password field.&lt;br /&gt;
# Enter a friendly name if desired (optional)&lt;br /&gt;
# Click &#039;&#039;&#039;Add&#039;&#039;&#039; and &#039;&#039;&#039;Save&#039;&#039;&#039; again.&lt;br /&gt;
# Click the Cog in the top left of the screen then Preferences.&lt;br /&gt;
# Click Gateways.&lt;br /&gt;
# Click on the &#039;&#039;&#039;+&#039;&#039;&#039; symbol on the bottom left of the window.&lt;br /&gt;
# Enter &#039;&#039;&#039;ictsgw.cc.ic.ac.uk&#039;&#039;&#039; in the Server name field.&lt;br /&gt;
# Select your Imperial &#039;&#039;&#039;username&#039;&#039;&#039; in the User name field.&lt;br /&gt;
# Enter a name for the gateway in the Friendly Name field.&lt;br /&gt;
# Click &#039;&#039;&#039;Save&#039;&#039;&#039;.&lt;br /&gt;
# Close the screen.&lt;br /&gt;
# Now choose the gateway you created from the Gateway dropdown list.&lt;br /&gt;
# Click the pencil icon.&lt;br /&gt;
# Under &#039;&#039;&#039;General&#039;&#039;&#039; select the gateway name in the Gateway field.&lt;br /&gt;
# Click &#039;&#039;&#039;Save&#039;&#039;&#039;.&lt;br /&gt;
# The main screen will display your new profile. Double click this to start a remote desktop session.&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Remote_access_to_DIDE&amp;diff=14252</id>
		<title>Remote access to DIDE</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Remote_access_to_DIDE&amp;diff=14252"/>
		<updated>2023-04-17T14:56:02Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;These instructions are now obsolete. All remote access to DIDE is now via [https://www.imperial.ac.uk/admin-services/ict/self-service/connect-communicate/remote-access/unified-access/ Zscaler]. ZScaler replaces both the Pulse Secure VPN and the Remote Desktop Gatway.&lt;br /&gt;
&lt;br /&gt;
== Remote Access to your Windows DIDE Desktop via ZScaler ==&lt;br /&gt;
The procedure below only needs to be followed once. Complete each step in turn.&lt;br /&gt;
[[File:TS connection2.png|thumb|Steps 4 to 9]]&lt;br /&gt;
# Click on the Start button in your desktop toolbar, type &#039;&#039;&#039;Remote Desktop&#039;&#039;&#039; in the search field and press the Return key on your keyboard.&lt;br /&gt;
# Press the &#039;&#039;&#039;Show Options&#039;&#039;&#039; arrow in the bottom left hand corner of the Remote Desktop window.&lt;br /&gt;
# Click the &#039;&#039;&#039;Display&#039;&#039;&#039; tab and ensure that the &#039;&#039;&#039;Colours&#039;&#039;&#039; menu says &#039;&#039;High Colour (16-bit)&#039;&#039;.[[File:TS display.png|thumb|Step 10]]&lt;br /&gt;
# Click on the &#039;&#039;&#039;Experience&#039;&#039;&#039; tab and select &#039;&#039;&#039;Low speed internet&#039;&#039;&#039;, then re-tick the box for Font Smoothing.&lt;br /&gt;
# Click the &#039;&#039;&#039;Local Resources&#039;&#039;&#039; tab and ensure that the &#039;&#039;&#039;Printers&#039;&#039;&#039; box is &#039;&#039;unticked&#039;&#039;.[[File:TS printer.png|thumb|Step 11]]&lt;br /&gt;
# Click the &#039;&#039;&#039;General&#039;&#039;&#039; tab.&lt;br /&gt;
# Enter the full name of your DIDE PC (e.g. &#039;&#039;&#039;WPIA-DIDEx.dide.ic.ac.uk&#039;&#039;&#039;) and click &#039;&#039;Connect&#039;&#039;.&lt;br /&gt;
# Enter your DIDE username (&#039;&#039;&#039;DIDE\yourusername&#039;&#039;&#039;) and click &#039;&#039;OK&#039;&#039;.[[File:TS general.png|thumb|Steps 12 to 15]]&lt;br /&gt;
# Finally, click the &#039;&#039;&#039;Save As...&#039;&#039;&#039; button and save these settings as something like &#039;&#039;&#039;Remote Desktop Connection&#039;&#039;&#039; to your desktop or wherever you like.&lt;br /&gt;
&lt;br /&gt;
== OBSOLETE SINCE ZSCALER - Remote Access to your Windows DIDE Desktop via Terminal Services Gateway ==&lt;br /&gt;
The procedure below only needs to be followed once. Complete each step in turn.&lt;br /&gt;
[[File:TS connection2.png|thumb|Steps 4 to 9]]&lt;br /&gt;
# Click on the Start button in your desktop toolbar, type &#039;&#039;&#039;Remote Desktop&#039;&#039;&#039; in the search field and press the Return key on your keyboard.&lt;br /&gt;
# Press the &#039;&#039;&#039;Show Options&#039;&#039;&#039; arrow in the bottom left hand corner of the Remote Desktop window.&lt;br /&gt;
# Select the &#039;&#039;&#039;Advanced&#039;&#039;&#039; tab on the far right and click the &#039;&#039;&#039;Settings...&#039;&#039;&#039; button under Connect from anywhere.&lt;br /&gt;
# Select the &#039;&#039;&#039;Use these RD Gateway server settings&#039;&#039;&#039; button.&lt;br /&gt;
# Enter &#039;&#039;&#039;ictsgw.cc.ic.ac.uk&#039;&#039;&#039; in the &#039;&#039;Server name&#039;&#039; field.&lt;br /&gt;
# Select &#039;&#039;&#039;Allow me to select later&#039;&#039;&#039; in the &#039;&#039;Log-on method&#039;&#039; field. We&#039;ll add this later (see after these steps).&lt;br /&gt;
# Ensure that &#039;&#039;&#039;Bypass RD Gateway server for local addresses&#039;&#039;&#039; is &#039;&#039;ticked&#039;&#039;.&lt;br /&gt;
# Ensure that &#039;&#039;&#039;Use my RD Gateway credentials for the remote computer&#039;&#039;&#039; at the bottom is &#039;&#039;unticked&#039;&#039;. &lt;br /&gt;
# Press the OK button&lt;br /&gt;
# Click the &#039;&#039;&#039;Display&#039;&#039;&#039; tab and ensure that the &#039;&#039;&#039;Colours&#039;&#039;&#039; menu says &#039;&#039;High Colour (16-bit)&#039;&#039;.[[File:TS display.png|thumb|Step 10]]&lt;br /&gt;
# Click on the &#039;&#039;&#039;Experience&#039;&#039;&#039; tab and select &#039;&#039;&#039;Low speed internet&#039;&#039;&#039;, then re-tick the box for Font Smoothing.&lt;br /&gt;
# Click the &#039;&#039;&#039;Local Resources&#039;&#039;&#039; tab and ensure that the &#039;&#039;&#039;Printers&#039;&#039;&#039; box is &#039;&#039;unticked&#039;&#039;.[[File:TS printer.png|thumb|Step 11]]&lt;br /&gt;
# Click the &#039;&#039;&#039;General&#039;&#039;&#039; tab.&lt;br /&gt;
# Enter the full name of your DIDE PC (e.g. &#039;&#039;&#039;WPIA-DIDEx.dide.ic.ac.uk&#039;&#039;&#039;) and click &#039;&#039;Connect&#039;&#039;.&lt;br /&gt;
# Enter your DIDE username (&#039;&#039;&#039;DIDE\yourusername&#039;&#039;&#039;) and click &#039;&#039;OK&#039;&#039;.[[File:TS general.png|thumb|Steps 12 to 15]]&lt;br /&gt;
# Finally, click the &#039;&#039;&#039;Save As...&#039;&#039;&#039; button and save these settings as something like &#039;&#039;&#039;Remote Desktop Connection&#039;&#039;&#039; to your desktop or wherever you like.&lt;br /&gt;
&lt;br /&gt;
You will now have a new icon on your desktop and you never need to do the above again. To connect to your DIDE desktop, click the &#039;&#039;&#039;Connect&#039;&#039;&#039; button in your new Remote Desktop shortcut.&lt;br /&gt;
&lt;br /&gt;
You will now be asked for your Imperial credentials in order to access the Terminal Services Gateway. Enter your details as &#039;&#039;&#039;IC\username&#039;&#039;&#039; with your Imperial password.&lt;br /&gt;
&lt;br /&gt;
Once that allows you through you will be prompted for your DIDE credentials in order to access your PC. Enter your details as &#039;&#039;&#039;DIDE\username&#039;&#039;&#039; with your DIDE password. If this is the first time that you&#039;ve connected to your DIDE PC for a while you&#039;ll get a certificate warning message. Tick the box and select &#039;&#039;&#039;Yes&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
If you don&#039;t get prompted for your DIDE account that probably means your PC is asleep. To wake it up [https://www.imperial.ac.uk/admin-services/ict/self-service/connect-communicate/remote-access/remotely-access-my-college-computer/wake-my-pc/ click here].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;N.B.&#039;&#039;&#039; If all the above seems too difficult, I&#039;ve made a template file with all the settings. It is in the &#039;&#039;&#039;T:&#039;&#039;&#039; drive in folder &#039;&#039;&#039;IT\VPN&#039;&#039;&#039; and is called &#039;&#039;&#039;DIDE-Remote.RDP&#039;&#039;&#039;. Right-click and edit that to put your correct hostname and username in and all the other settings are done for you.&lt;br /&gt;
&lt;br /&gt;
== Remote Access to your Ubuntu DIDE Desktop via Terminal Services Gateway ==&lt;br /&gt;
First of all, you will need to have enabled remote desktop in advance. [https://linuxconfig.org/ubuntu-remote-desktop-18-04-bionic-beaver-linux See here for example]. You should also check you have the Remmina app installed.&lt;br /&gt;
&lt;br /&gt;
# Open Remmina&lt;br /&gt;
# Click the “+” button to add a new configuration, and give it a meaningful name.&lt;br /&gt;
# Protocol: RDP - Remote Desktop Protocol&lt;br /&gt;
# Open Remmina and on the Basic tab fill in the following details: &lt;br /&gt;
#* Server: Your desktop PC FQDN (e.g. &#039;&#039;&#039;WPIA-DIDEx.dide.ic.ac.uk&#039;&#039;&#039;)&lt;br /&gt;
#* User Name: &#039;&#039;&#039;Your Ubuntu username&#039;&#039;&#039;&lt;br /&gt;
#* Password: &#039;&#039;&#039;Your Ubuntu  password&#039;&#039;&#039;&lt;br /&gt;
#* Domain: &#039;&#039;&#039;DIDE&#039;&#039;&#039; (only if your workstation is on the DIDE domain - very likely it&#039;s not).&lt;br /&gt;
# Adjust colour depth to &#039;&#039;&#039;16 bit&#039;&#039;&#039;.&lt;br /&gt;
# Go to to the Advanced Tab and set up the ICT RDP Gateway with the following details:&lt;br /&gt;
#* RDG Server: &#039;&#039;&#039;ictsgw.cc.ic.ac.uk&#039;&#039;&#039;&lt;br /&gt;
#* RDG username: &#039;&#039;&#039;Your IC username&#039;&#039;&#039;&lt;br /&gt;
#* RDG password: &#039;&#039;&#039;Your IC password&#039;&#039;&#039;&lt;br /&gt;
#* RDG domain: &#039;&#039;&#039;IC&#039;&#039;&#039;&lt;br /&gt;
# Click &#039;&#039;&#039;Save&#039;&#039;&#039; and you will have a new configuration with the name you initially specified. &lt;br /&gt;
# Click on this new entry to connect to your server.&lt;br /&gt;
# Accept the certificate warnings. These should only appear the very first time you connect.&lt;br /&gt;
# Your Ubuntu remote session should now be active.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Remote Access to your DIDE Desktop via Terminal Services Gateway on a Mac ==&lt;br /&gt;
The procedure below only needs to be followed once. Complete each step in turn.&lt;br /&gt;
&lt;br /&gt;
# Start the &#039;&#039;&#039;Microsoft Remote Desktop 10&#039;&#039;&#039; app from the App Store and select &#039;&#039;&#039;Add desktop&#039;&#039;&#039; to add a new profile entry.&lt;br /&gt;
# Enter a name for the remote desktop profile.&lt;br /&gt;
# Enter the full name of your DIDE machine (e.g. &#039;&#039;&#039;WPIA-DIDEx.dide.ic.ac.uk&#039;&#039;&#039;).&lt;br /&gt;
# Change the &#039;&#039;&#039;User Account&#039;&#039;&#039; drop down to Add User Account&lt;br /&gt;
# Enter &#039;&#039;&#039;DIDE\username&#039;&#039;&#039; in the User name field.&lt;br /&gt;
# Enter your DIDE password in the Password field.&lt;br /&gt;
# Enter a friendly name if desired (optional)&lt;br /&gt;
# Click &#039;&#039;&#039;Add&#039;&#039;&#039; and &#039;&#039;&#039;Save&#039;&#039;&#039; again.&lt;br /&gt;
# Click the Cog in the top left of the screen then Preferences.&lt;br /&gt;
# Click Gateways.&lt;br /&gt;
# Click on the &#039;&#039;&#039;+&#039;&#039;&#039; symbol on the bottom left of the window.&lt;br /&gt;
# Enter &#039;&#039;&#039;ictsgw.cc.ic.ac.uk&#039;&#039;&#039; in the Server name field.&lt;br /&gt;
# Select your Imperial &#039;&#039;&#039;username&#039;&#039;&#039; in the User name field.&lt;br /&gt;
# Enter a name for the gateway in the Friendly Name field.&lt;br /&gt;
# Click &#039;&#039;&#039;Save&#039;&#039;&#039;.&lt;br /&gt;
# Close the screen.&lt;br /&gt;
# Now choose the gateway you created from the Gateway dropdown list.&lt;br /&gt;
# Click the pencil icon.&lt;br /&gt;
# Under &#039;&#039;&#039;General&#039;&#039;&#039; select the gateway name in the Gateway field.&lt;br /&gt;
# Click &#039;&#039;&#039;Save&#039;&#039;&#039;.&lt;br /&gt;
# The main screen will display your new profile. Double click this to start a remote desktop session.&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Remote_access_to_DIDE&amp;diff=14251</id>
		<title>Remote access to DIDE</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Remote_access_to_DIDE&amp;diff=14251"/>
		<updated>2023-03-06T17:26:38Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;These instructions are now obsolete. All remote access to DIDE is now via [https://www.imperial.ac.uk/admin-services/ict/self-service/connect-communicate/remote-access/unified-access/ Zscaler].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Remote Access to your Windows DIDE Desktop via Terminal Services Gateway ==&lt;br /&gt;
The procedure below only needs to be followed once. Complete each step in turn.&lt;br /&gt;
[[File:TS connection2.png|thumb|Steps 4 to 9]]&lt;br /&gt;
# Click on the Start button in your desktop toolbar, type &#039;&#039;&#039;Remote Desktop&#039;&#039;&#039; in the search field and press the Return key on your keyboard.&lt;br /&gt;
# Press the &#039;&#039;&#039;Show Options&#039;&#039;&#039; arrow in the bottom left hand corner of the Remote Desktop window.&lt;br /&gt;
# Select the &#039;&#039;&#039;Advanced&#039;&#039;&#039; tab on the far right and click the &#039;&#039;&#039;Settings...&#039;&#039;&#039; button under Connect from anywhere.&lt;br /&gt;
# Select the &#039;&#039;&#039;Use these RD Gateway server settings&#039;&#039;&#039; button.&lt;br /&gt;
# Enter &#039;&#039;&#039;ictsgw.cc.ic.ac.uk&#039;&#039;&#039; in the &#039;&#039;Server name&#039;&#039; field.&lt;br /&gt;
# Select &#039;&#039;&#039;Allow me to select later&#039;&#039;&#039; in the &#039;&#039;Log-on method&#039;&#039; field. We&#039;ll add this later (see after these steps).&lt;br /&gt;
# Ensure that &#039;&#039;&#039;Bypass RD Gateway server for local addresses&#039;&#039;&#039; is &#039;&#039;ticked&#039;&#039;.&lt;br /&gt;
# Ensure that &#039;&#039;&#039;Use my RD Gateway credentials for the remote computer&#039;&#039;&#039; at the bottom is &#039;&#039;unticked&#039;&#039;. &lt;br /&gt;
# Press the OK button&lt;br /&gt;
# Click the &#039;&#039;&#039;Display&#039;&#039;&#039; tab and ensure that the &#039;&#039;&#039;Colours&#039;&#039;&#039; menu says &#039;&#039;High Colour (16-bit)&#039;&#039;.[[File:TS display.png|thumb|Step 10]]&lt;br /&gt;
# Click on the &#039;&#039;&#039;Experience&#039;&#039;&#039; tab and select &#039;&#039;&#039;Low speed internet&#039;&#039;&#039;, then re-tick the box for Font Smoothing.&lt;br /&gt;
# Click the &#039;&#039;&#039;Local Resources&#039;&#039;&#039; tab and ensure that the &#039;&#039;&#039;Printers&#039;&#039;&#039; box is &#039;&#039;unticked&#039;&#039;.[[File:TS printer.png|thumb|Step 11]]&lt;br /&gt;
# Click the &#039;&#039;&#039;General&#039;&#039;&#039; tab.&lt;br /&gt;
# Enter the full name of your DIDE PC (e.g. &#039;&#039;&#039;WPIA-DIDEx.dide.ic.ac.uk&#039;&#039;&#039;) and click &#039;&#039;Connect&#039;&#039;.&lt;br /&gt;
# Enter your DIDE username (&#039;&#039;&#039;DIDE\yourusername&#039;&#039;&#039;) and click &#039;&#039;OK&#039;&#039;.[[File:TS general.png|thumb|Steps 12 to 15]]&lt;br /&gt;
# Finally, click the &#039;&#039;&#039;Save As...&#039;&#039;&#039; button and save these settings as something like &#039;&#039;&#039;Remote Desktop Connection&#039;&#039;&#039; to your desktop or wherever you like.&lt;br /&gt;
&lt;br /&gt;
You will now have a new icon on your desktop and you never need to do the above again. To connect to your DIDE desktop, click the &#039;&#039;&#039;Connect&#039;&#039;&#039; button in your new Remote Desktop shortcut.&lt;br /&gt;
&lt;br /&gt;
You will now be asked for your Imperial credentials in order to access the Terminal Services Gateway. Enter your details as &#039;&#039;&#039;IC\username&#039;&#039;&#039; with your Imperial password.&lt;br /&gt;
&lt;br /&gt;
Once that allows you through you will be prompted for your DIDE credentials in order to access your PC. Enter your details as &#039;&#039;&#039;DIDE\username&#039;&#039;&#039; with your DIDE password. If this is the first time that you&#039;ve connected to your DIDE PC for a while you&#039;ll get a certificate warning message. Tick the box and select &#039;&#039;&#039;Yes&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
If you don&#039;t get prompted for your DIDE account that probably means your PC is asleep. To wake it up [https://www.imperial.ac.uk/admin-services/ict/self-service/connect-communicate/remote-access/remotely-access-my-college-computer/wake-my-pc/ click here].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;N.B.&#039;&#039;&#039; If all the above seems too difficult, I&#039;ve made a template file with all the settings. It is in the &#039;&#039;&#039;T:&#039;&#039;&#039; drive in folder &#039;&#039;&#039;IT\VPN&#039;&#039;&#039; and is called &#039;&#039;&#039;DIDE-Remote.RDP&#039;&#039;&#039;. Right-click and edit that to put your correct hostname and username in and all the other settings are done for you.&lt;br /&gt;
&lt;br /&gt;
== Remote Access to your Ubuntu DIDE Desktop via Terminal Services Gateway ==&lt;br /&gt;
First of all, you will need to have enabled remote desktop in advance. [https://linuxconfig.org/ubuntu-remote-desktop-18-04-bionic-beaver-linux See here for example]. You should also check you have the Remmina app installed.&lt;br /&gt;
&lt;br /&gt;
# Open Remmina&lt;br /&gt;
# Click the “+” button to add a new configuration, and give it a meaningful name.&lt;br /&gt;
# Protocol: RDP - Remote Desktop Protocol&lt;br /&gt;
# Open Remmina and on the Basic tab fill in the following details: &lt;br /&gt;
#* Server: Your desktop PC FQDN (e.g. &#039;&#039;&#039;WPIA-DIDEx.dide.ic.ac.uk&#039;&#039;&#039;)&lt;br /&gt;
#* User Name: &#039;&#039;&#039;Your Ubuntu username&#039;&#039;&#039;&lt;br /&gt;
#* Password: &#039;&#039;&#039;Your Ubuntu  password&#039;&#039;&#039;&lt;br /&gt;
#* Domain: &#039;&#039;&#039;DIDE&#039;&#039;&#039; (only if your workstation is on the DIDE domain - very likely it&#039;s not).&lt;br /&gt;
# Adjust colour depth to &#039;&#039;&#039;16 bit&#039;&#039;&#039;.&lt;br /&gt;
# Go to to the Advanced Tab and set up the ICT RDP Gateway with the following details:&lt;br /&gt;
#* RDG Server: &#039;&#039;&#039;ictsgw.cc.ic.ac.uk&#039;&#039;&#039;&lt;br /&gt;
#* RDG username: &#039;&#039;&#039;Your IC username&#039;&#039;&#039;&lt;br /&gt;
#* RDG password: &#039;&#039;&#039;Your IC password&#039;&#039;&#039;&lt;br /&gt;
#* RDG domain: &#039;&#039;&#039;IC&#039;&#039;&#039;&lt;br /&gt;
# Click &#039;&#039;&#039;Save&#039;&#039;&#039; and you will have a new configuration with the name you initially specified. &lt;br /&gt;
# Click on this new entry to connect to your server.&lt;br /&gt;
# Accept the certificate warnings. These should only appear the very first time you connect.&lt;br /&gt;
# Your Ubuntu remote session should now be active.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Remote Access to your DIDE Desktop via Terminal Services Gateway on a Mac ==&lt;br /&gt;
The procedure below only needs to be followed once. Complete each step in turn.&lt;br /&gt;
&lt;br /&gt;
# Start the &#039;&#039;&#039;Microsoft Remote Desktop 10&#039;&#039;&#039; app from the App Store and select &#039;&#039;&#039;Add desktop&#039;&#039;&#039; to add a new profile entry.&lt;br /&gt;
# Enter a name for the remote desktop profile.&lt;br /&gt;
# Enter the full name of your DIDE machine (e.g. &#039;&#039;&#039;WPIA-DIDEx.dide.ic.ac.uk&#039;&#039;&#039;).&lt;br /&gt;
# Change the &#039;&#039;&#039;User Account&#039;&#039;&#039; drop down to Add User Account&lt;br /&gt;
# Enter &#039;&#039;&#039;DIDE\username&#039;&#039;&#039; in the User name field.&lt;br /&gt;
# Enter your DIDE password in the Password field.&lt;br /&gt;
# Enter a friendly name if desired (optional)&lt;br /&gt;
# Click &#039;&#039;&#039;Add&#039;&#039;&#039; and &#039;&#039;&#039;Save&#039;&#039;&#039; again.&lt;br /&gt;
# Click the Cog in the top left of the screen then Preferences.&lt;br /&gt;
# Click Gateways.&lt;br /&gt;
# Click on the &#039;&#039;&#039;+&#039;&#039;&#039; symbol on the bottom left of the window.&lt;br /&gt;
# Enter &#039;&#039;&#039;ictsgw.cc.ic.ac.uk&#039;&#039;&#039; in the Server name field.&lt;br /&gt;
# Select your Imperial &#039;&#039;&#039;username&#039;&#039;&#039; in the User name field.&lt;br /&gt;
# Enter a name for the gateway in the Friendly Name field.&lt;br /&gt;
# Click &#039;&#039;&#039;Save&#039;&#039;&#039;.&lt;br /&gt;
# Close the screen.&lt;br /&gt;
# Now choose the gateway you created from the Gateway dropdown list.&lt;br /&gt;
# Click the pencil icon.&lt;br /&gt;
# Under &#039;&#039;&#039;General&#039;&#039;&#039; select the gateway name in the Gateway field.&lt;br /&gt;
# Click &#039;&#039;&#039;Save&#039;&#039;&#039;.&lt;br /&gt;
# The main screen will display your new profile. Double click this to start a remote desktop session.&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Printing&amp;diff=14250</id>
		<title>Printing</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Printing&amp;diff=14250"/>
		<updated>2022-11-17T13:30:57Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Printing at Imperial College =&lt;br /&gt;
The print system is handled by HP themselves on behalf of the college. You should follow [https://www.imperial.ac.uk/admin-services/ict/self-service/computers-printing/printing-photocopying-and-scanning/install-print-drivers/ Imperial&#039;s Mobile Print instructions]. This page is a guide to follow while you&#039;re working through the ICT Mobile Print page.&lt;br /&gt;
&lt;br /&gt;
== Advice for when following the Mobile Print instrucions ==&lt;br /&gt;
Most of you are Windows users so I&#039;ll go over the key steps here. The main ICT instructions are quite good if you pay close attention, but they are from an old version of Windows 10. My page here is a supplement in case you get stuck.&lt;br /&gt;
&lt;br /&gt;
Log in to the [https://www.imperial.ac.uk/admin-services/ict/self-service/computers-printing/printing-photocopying-and-scanning/install-print-drivers/ Mobile Print site] with your Imperial credentials and then select &#039;&#039;&#039;Driver Print&#039;&#039;&#039;. Note that this page will only work on campus.&lt;br /&gt;
&lt;br /&gt;
[[file:mobileprint1.jpeg|border]]&lt;br /&gt;
&lt;br /&gt;
Now select your operating system with the large icons at the bottom (you are most likely Windows):&lt;br /&gt;
&lt;br /&gt;
[[file:mobileprint2os.jpeg|border]]&lt;br /&gt;
&lt;br /&gt;
After this you get a couple of pages with only one option each (there used to be more). Go through these formalities and select the only option you have:&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint3option.jpeg|border]]&lt;br /&gt;
&lt;br /&gt;
We now get to a mildly tricky bit as we have to download the actual HP software for talking to the printers. There is a handy link on the Mobile Print page to the [https://ftp.hp.com/pub/softlib/software13/COL40842/ds-99374-24/upd-pcl6-x64-7.0.1.24923.exe HP FTP site] so click on that to download it.&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint4drivers.jpeg|border]]&lt;br /&gt;
&lt;br /&gt;
Once downloaded, double click on it to run it and press the &#039;&#039;&#039;Unzip&#039;&#039;&#039; button. Go through the installer as normal but make sure you select &#039;&#039;&#039;USB Mode - Plug and Play&#039;&#039;&#039; as your printer type. Leave the two text boxes at the bottom ticked.&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint5usb.png|border]]&lt;br /&gt;
&lt;br /&gt;
Now we get to add the actual print queue to your computer. From your start menu type &#039;&#039;&#039;printers&#039;&#039;&#039; and you&#039;ll see a menu item to add printers. Click on that and then select &#039;&#039;&#039;add a printer&#039;&#039;&#039;. It will have a think for a while and then show you some completely incorrect printers. As soon as you see the option &#039;&#039;&#039;my printer is not listed here&#039;&#039;&#039; click on that.&lt;br /&gt;
&lt;br /&gt;
[[File:Printernotlisted.png|border]]&lt;br /&gt;
&lt;br /&gt;
Now you can copy and paste the name of your print queue, which is listed in Step 4 of the Mobile Print page guide (below is a screenshot for your reference - you can&#039;t copy and paste this):&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint6queue.jpeg|border]]&lt;br /&gt;
&lt;br /&gt;
You do need to copy and paste the whole address line, including the bit I&#039;ve blurred out (I&#039;ve blurred my exact address out or you would be printing as me with my print credit!). Remember that you&#039;re not copying and pasting this line, you&#039;re using the line from the Mobile Print web page!&lt;br /&gt;
&lt;br /&gt;
The rest of the ICT instructions should work ok, you merely have to select that you&#039;re adding an &#039;&#039;&#039;HP&#039;&#039;&#039; printer and you want to use &#039;&#039;&#039;HP Universal Printing PCL 6&#039;&#039;&#039;. There is no need to print a test page.&lt;br /&gt;
&lt;br /&gt;
== I don&#039;t have time for this and just want to print something! ==&lt;br /&gt;
If you&#039;re in a rush and have to print right now, then email your document to [mailto:print@imperial.ac.uk print@imperial.ac.uk] from your Imperial email address. You may then go to any swipe printer and collect your document. Remember to delete the email from your Sent Items folder afterwards or you may be wasting mailbox space.&lt;br /&gt;
&lt;br /&gt;
== Gotchas ==&lt;br /&gt;
If you are in the habit of using Remote Desktop and the VPN to connect to your DIDE PC, then there is a setting which you should &#039;&#039;&#039;untick&#039;&#039;&#039; in your Remote Desktop connection settings screen:&lt;br /&gt;
&lt;br /&gt;
[[File:Printer3.jpg]]&lt;br /&gt;
&lt;br /&gt;
Otherwise you&#039;ll end up with your office printers connected to your home computer and it has been known to mess things up.&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Printing&amp;diff=14249</id>
		<title>Printing</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Printing&amp;diff=14249"/>
		<updated>2022-11-17T13:30:33Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Printing at Imperial College =&lt;br /&gt;
The print system is handled by HP themselves on behalf of the college. You should follow [https://www.imperial.ac.uk/admin-services/ict/self-service/computers-printing/printing-photocopying-and-scanning/install-print-drivers/ Imperial&#039;s Mobile Print instructions]. This page is a guide to follow while you&#039;re working through the ICT Mobile Print page.&lt;br /&gt;
&lt;br /&gt;
== Advice for when following the Mobile Print instrucions ==&lt;br /&gt;
Most of you are Windows users so I&#039;ll go over the key steps here. The main ICT instructions are quite good if you pay close attention, but they are from an old version of Windows 10. My page here is a supplement in case you get stuck.&lt;br /&gt;
&lt;br /&gt;
Log in to the [https://www.imperial.ac.uk/admin-services/ict/self-service/computers-printing/printing-photocopying-and-scanning/install-print-drivers/ Mobile Print site] with your Imperial credentials and then select &#039;&#039;&#039;Driver Print&#039;&#039;&#039;. Note that this page will only work on campus.&lt;br /&gt;
&lt;br /&gt;
[[file:mobileprint1.jpeg|border]]&lt;br /&gt;
&lt;br /&gt;
Now select your operating system with the large icons at the bottom (you are most likely Windows):&lt;br /&gt;
&lt;br /&gt;
[[file:mobileprint2os.jpeg|border]]&lt;br /&gt;
&lt;br /&gt;
After this you get a couple of pages with only one option each (there used to be more). Go through these formalities and select the only option you have:&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint3option.jpeg|border]]&lt;br /&gt;
&lt;br /&gt;
We now get to a mildly tricky bit as we have to download the actual HP software for talking to the printers. There is a handy link on the Mobile Print page to the [https://ftp.hp.com/pub/softlib/software13/COL40842/ds-99374-24/upd-pcl6-x64-7.0.1.24923.exe HP FTP site] so click on that to download it.&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint4drivers.jpeg|border]]&lt;br /&gt;
&lt;br /&gt;
Once downloaded, double click on it to run it and press the &#039;&#039;&#039;Unzip&#039;&#039;&#039; button. Go through the installer as normal but make sure you select &#039;&#039;&#039;USB Mode - Plug and Play&#039;&#039;&#039; as your printer type. Leave the two text boxes at the bottom ticked.&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint5usb.png|border]]&lt;br /&gt;
&lt;br /&gt;
Now we get to add the actual print queue to your computer. From your start menu type &#039;&#039;&#039;printers&#039;&#039;&#039; and you&#039;ll see a menu item to add printers. Click on that and then select &#039;&#039;&#039;add a printer&#039;&#039;&#039;. It will have a think for a while and then show you some completely incorrect printers. As soon as you see the option &#039;&#039;&#039;my printer is not listed here&#039;&#039;&#039; click on that.&lt;br /&gt;
&lt;br /&gt;
[[File:Printernotlisted.png|border]]&lt;br /&gt;
&lt;br /&gt;
Now you can copy and paste the name of your print queue, which is listed in Step 4 of the Mobile Print page guide (below is a screenshot for your reference - you can&#039;t copy and paste this):&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint6queue.jpeg|border]]&lt;br /&gt;
&lt;br /&gt;
You do need to copy and paste the whole address line, including the bit I&#039;ve blurred out (I&#039;ve blurred my exact address out or you would be printing as me with my print credit!). Remember that you&#039;re not copying and pasting this line, you&#039;re using the line from the Mobile Print web page!&lt;br /&gt;
&lt;br /&gt;
The rest of the ICT instructions should work ok, you merely have to select that you&#039;re adding an &#039;&#039;&#039;HP&#039;&#039;&#039; printer and you want to use &#039;&#039;&#039;HP Universal Printing PCL 6&#039;&#039;&#039;. There is no need to print a test page.&lt;br /&gt;
&lt;br /&gt;
== I don&#039;t have time for this and just want to print something! ==&lt;br /&gt;
If you&#039;re in a rush and have to print right now, then email your document to [mailto:print@imperial.ac.uk print@imperial.ac.uk] from your Imperial email address. You may then go to any swipe printer and collect your document. Remember to delete the email from your Sent Items folder afterwards or you may be wasting mailbox space.&lt;br /&gt;
&lt;br /&gt;
=== Gotchas ===&lt;br /&gt;
If you are in the habit of using Remote Desktop and the VPN to connect to your DIDE PC, then there is a setting which you should &#039;&#039;&#039;untick&#039;&#039;&#039; in your Remote Desktop connection settings screen:&lt;br /&gt;
&lt;br /&gt;
[[File:Printer3.jpg]]&lt;br /&gt;
&lt;br /&gt;
Otherwise you&#039;ll end up with your office printers connected to your home computer and it has been known to mess things up.&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Printing&amp;diff=14248</id>
		<title>Printing</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Printing&amp;diff=14248"/>
		<updated>2022-11-17T13:29:40Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Printing at Imperial College =&lt;br /&gt;
The print system is handled by HP themselves on behalf of the college. You should follow [https://www.imperial.ac.uk/admin-services/ict/self-service/computers-printing/printing-photocopying-and-scanning/install-print-drivers/ Imperial&#039;s Mobile Print instructions]. This page is a guide to follow while you&#039;re working through the ICT Mobile Print page.&lt;br /&gt;
&lt;br /&gt;
== I don&#039;t have time for this and just want to print something! ==&lt;br /&gt;
If you&#039;re in a rush and have to print right now, then email your document to [mailto:print@imperial.ac.uk print@imperial.ac.uk] from your Imperial email address. You may then go to any swipe printer and collect your document. Remember to delete the email from your Sent Items folder afterwards or you may be wasting mailbox space.&lt;br /&gt;
&lt;br /&gt;
== Advice for when following the Mobile Print instrucions ==&lt;br /&gt;
Most of you are Windows users so I&#039;ll go over the key steps here. The main ICT instructions are quite good if you pay close attention, but they are from an old version of Windows 10. My page here is a supplement in case you get stuck.&lt;br /&gt;
&lt;br /&gt;
Log in to the [https://www.imperial.ac.uk/admin-services/ict/self-service/computers-printing/printing-photocopying-and-scanning/install-print-drivers/ Mobile Print site] with your Imperial credentials and then select &#039;&#039;&#039;Driver Print&#039;&#039;&#039;. Note that this page will only work on campus.&lt;br /&gt;
&lt;br /&gt;
[[file:mobileprint1.jpeg|border]]&lt;br /&gt;
&lt;br /&gt;
Now select your operating system with the large icons at the bottom (you are most likely Windows):&lt;br /&gt;
&lt;br /&gt;
[[file:mobileprint2os.jpeg|border]]&lt;br /&gt;
&lt;br /&gt;
After this you get a couple of pages with only one option each (there used to be more). Go through these formalities and select the only option you have:&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint3option.jpeg|border]]&lt;br /&gt;
&lt;br /&gt;
We now get to a mildly tricky bit as we have to download the actual HP software for talking to the printers. There is a handy link on the Mobile Print page to the [https://ftp.hp.com/pub/softlib/software13/COL40842/ds-99374-24/upd-pcl6-x64-7.0.1.24923.exe HP FTP site] so click on that to download it.&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint4drivers.jpeg|border]]&lt;br /&gt;
&lt;br /&gt;
Once downloaded, double click on it to run it and press the &#039;&#039;&#039;Unzip&#039;&#039;&#039; button. Go through the installer as normal but make sure you select &#039;&#039;&#039;USB Mode - Plug and Play&#039;&#039;&#039; as your printer type. Leave the two text boxes at the bottom ticked.&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint5usb.png|border]]&lt;br /&gt;
&lt;br /&gt;
Now we get to add the actual print queue to your computer. From your start menu type &#039;&#039;&#039;printers&#039;&#039;&#039; and you&#039;ll see a menu item to add printers. Click on that and then select &#039;&#039;&#039;add a printer&#039;&#039;&#039;. It will have a think for a while and then show you some completely incorrect printers. As soon as you see the option &#039;&#039;&#039;my printer is not listed here&#039;&#039;&#039; click on that.&lt;br /&gt;
&lt;br /&gt;
[[File:Printernotlisted.png|border]]&lt;br /&gt;
&lt;br /&gt;
Now you can copy and paste the name of your print queue, which is listed in Step 4 of the Mobile Print page guide (below is a screenshot for your reference - you can&#039;t copy and paste this):&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint6queue.jpeg|border]]&lt;br /&gt;
&lt;br /&gt;
You do need to copy and paste the whole address line, including the bit I&#039;ve blurred out (I&#039;ve blurred my exact address out or you would be printing as me with my print credit!). Remember that you&#039;re not copying and pasting this line, you&#039;re using the line from the Mobile Print web page!&lt;br /&gt;
&lt;br /&gt;
The rest of the ICT instructions should work ok, you merely have to select that you&#039;re adding an &#039;&#039;&#039;HP&#039;&#039;&#039; printer and you want to use &#039;&#039;&#039;HP Universal Printing PCL 6&#039;&#039;&#039;. There is no need to print a test page.&lt;br /&gt;
&lt;br /&gt;
=== Gotchas ===&lt;br /&gt;
If you are in the habit of using Remote Desktop and the VPN to connect to your DIDE PC, then there is a setting which you should &#039;&#039;&#039;untick&#039;&#039;&#039; in your Remote Desktop connection settings screen:&lt;br /&gt;
&lt;br /&gt;
[[File:Printer3.jpg]]&lt;br /&gt;
&lt;br /&gt;
Otherwise you&#039;ll end up with your office printers connected to your home computer and it has been known to mess things up.&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Printing&amp;diff=14247</id>
		<title>Printing</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Printing&amp;diff=14247"/>
		<updated>2022-11-17T13:29:07Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Printing at Imperial College =&lt;br /&gt;
The print system is handled by HP themselves on behalf of the college. You should follow [https://www.imperial.ac.uk/admin-services/ict/self-service/computers-printing/printing-photocopying-and-scanning/install-print-drivers/ Imperial&#039;s Mobile Print instructions]. This page is a guide to follow while you&#039;re working through the ICT Mobile Print page.&lt;br /&gt;
&lt;br /&gt;
== I don&#039;t have time for this and just want to print something! ==&lt;br /&gt;
If you&#039;re in a rush and have to print right now, then email your document to [mailto:print@imperial.ac.uk print@imperial.ac.uk] from your Imperial email address. You may then go to any swipe printer and collect your document. Remember to delete the email from your Sent Items folder afterwards or you may be wasting mailbox space.&lt;br /&gt;
&lt;br /&gt;
== Advice for when following the Mobile Print instrucions ==&lt;br /&gt;
Most of you are Windows users so I&#039;ll go over the key steps here. The main ICT instructions are quite good if you pay close attention, but they are from an old version of Windows 10. My page here is a supplement in case you get stuck.&lt;br /&gt;
&lt;br /&gt;
Log in to the [https://www.imperial.ac.uk/admin-services/ict/self-service/computers-printing/printing-photocopying-and-scanning/install-print-drivers/ Mobile Print site] with your Imperial credentials and then select &#039;&#039;&#039;Driver Print&#039;&#039;&#039;. Note that this page will only work on campus.&lt;br /&gt;
&lt;br /&gt;
[[file:mobileprint1.jpeg|border]]&lt;br /&gt;
&lt;br /&gt;
Now select your operating system with the large icons at the bottom (you are most likely Windows):&lt;br /&gt;
&lt;br /&gt;
[[file:mobileprint2os.jpeg|border]]&lt;br /&gt;
&lt;br /&gt;
After this you get a couple of pages with only one option each (there used to be more). Go through these formalities and select the only option you have:&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint3option.jpeg|border]]&lt;br /&gt;
&lt;br /&gt;
We now get to a mildly tricky bit as we have to download the actual HP software for talking to the printers. There is a handy link on the Mobile Print page to the [https://ftp.hp.com/pub/softlib/software13/COL40842/ds-99374-24/upd-pcl6-x64-7.0.1.24923.exe HP FTP site] so click on that to download it.&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint4drivers.jpeg|border]]&lt;br /&gt;
&lt;br /&gt;
Once downloaded, double click on it to run it and press the &#039;&#039;&#039;Unzip&#039;&#039;&#039; button. Go through the installer as normal but make sure you select &#039;&#039;&#039;USB Mode - Plug and Play&#039;&#039;&#039; as your printer type. Leave the two text boxes at the bottom ticked.&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint5usb.png|border]]&lt;br /&gt;
&lt;br /&gt;
Now we get to add the actual print queue to your computer. From your start menu type &#039;&#039;&#039;printers&#039;&#039;&#039; and you&#039;ll see a menu item to add printers. Click on that and then select &#039;&#039;&#039;add a printer&#039;&#039;&#039;. It will have a think for a while and then show you some completely incorrect printers. As soon as you see the option &#039;&#039;&#039;my printer is not listed here&#039;&#039;&#039; click on that.&lt;br /&gt;
&lt;br /&gt;
[[File:Printernotlisted.png|border]]&lt;br /&gt;
&lt;br /&gt;
Now you can copy and paste the name of your print queue, which is listed in Step 4 of the Mobile Print page guide (below is a screenshot for your reference - you can&#039;t copy and paste this):&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint6queue.jpeg|border]]&lt;br /&gt;
&lt;br /&gt;
You do need to copy and paste the whole address line, including the bit I&#039;ve blurred out (I&#039;ve blurred my exact address out or you would be printing as me with my print credit!). Remember that you&#039;re not copying and pasting this line, you&#039;re using the line from the Mobile Print web page!&lt;br /&gt;
&lt;br /&gt;
The rest of the ICT instructions should work ok, you merely have to select that you&#039;re adding an &#039;&#039;&#039;HP&#039;&#039;&#039; printer and you want to use &#039;&#039;&#039;HP Universal Printing PCL 6&#039;&#039;&#039;. There is no need to print a test page.&lt;br /&gt;
&lt;br /&gt;
=== Gotchas ===&lt;br /&gt;
If you are in the habit of using Remote Desktop and the VPN to connect to your DIDE PC, then there is a setting which you should disable in your Remote Desktop connection settings screen:&lt;br /&gt;
&lt;br /&gt;
[[File:Printer3.jpg]]&lt;br /&gt;
&lt;br /&gt;
Otherwise you&#039;ll end up with your office printers connected to your home computer and it has been known to mess things up.&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Printing&amp;diff=14246</id>
		<title>Printing</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Printing&amp;diff=14246"/>
		<updated>2022-11-17T13:27:58Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Printing at Imperial College =&lt;br /&gt;
The print system is handled by HP themselves on behalf of the college. You should follow [https://www.imperial.ac.uk/admin-services/ict/self-service/computers-printing/printing-photocopying-and-scanning/install-print-drivers/ Imperial&#039;s Mobile Print instructions]. This page is a guide to follow while you&#039;re working through the ICT Mobile Print page.&lt;br /&gt;
&lt;br /&gt;
== I don&#039;t have time for this and just want to print something! ==&lt;br /&gt;
If you&#039;re in a rush and have to print right now, then email your document to [mailto:print@imperial.ac.uk print@imperial.ac.uk] from your Imperial email address. You may then go to any swipe printer and collect your document. Remember to delete the email from your Sent Items folder afterwards or you may be wasting mailbox space.&lt;br /&gt;
&lt;br /&gt;
== Advice for when following the Mobile Print instrucions ==&lt;br /&gt;
Most of you are Windows users so I&#039;ll go over the key steps here. The main ICT instructions are quite good if you pay close attention, but they are from an old version of Windows 10. My page here is a supplement in case you get stuck.&lt;br /&gt;
&lt;br /&gt;
Log in to the [https://www.imperial.ac.uk/admin-services/ict/self-service/computers-printing/printing-photocopying-and-scanning/install-print-drivers/ Mobile Print site] with your Imperial credentials and then select &#039;&#039;&#039;Driver Print&#039;&#039;&#039;. Note that this page will only work on campus.&lt;br /&gt;
&lt;br /&gt;
[[file:mobileprint1.jpeg|border]]&lt;br /&gt;
&lt;br /&gt;
Now select your operating system with the large icons at the bottom (you are most likely Windows):&lt;br /&gt;
&lt;br /&gt;
[[file:mobileprint2os.jpeg|border]]&lt;br /&gt;
&lt;br /&gt;
After this you get a couple of pages with only one option each (there used to be more). Go through these formalities and select the only option you have:&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint3option.jpeg|border]]&lt;br /&gt;
&lt;br /&gt;
We now get to a mildly tricky bit as we have to download the actual HP software for talking to the printers. There is a handy link on the Mobile Print page to the [https://ftp.hp.com/pub/softlib/software13/COL40842/ds-99374-24/upd-pcl6-x64-7.0.1.24923.exe HP FTP site] so click on that to download it.&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint4drivers.jpeg|border]]&lt;br /&gt;
&lt;br /&gt;
Once downloaded, double click on it to run it and press the &#039;&#039;&#039;Unzip&#039;&#039;&#039; button. Go through the installer as normal but make sure you select &#039;&#039;&#039;USB Mode - Plug and Play&#039;&#039;&#039; as your printer type. Leave the two text boxes at the bottom ticked.&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint5usb.png|border]]&lt;br /&gt;
&lt;br /&gt;
Now we get to add the actual print queue to your computer. From your start menu type &#039;&#039;&#039;printers&#039;&#039;&#039; and you&#039;ll see a menu item to add printers. Click on that and then select &#039;&#039;&#039;add a printer&#039;&#039;&#039;. It will have a think for a while and then show you some completely incorrect printers. As soon as you see the option &#039;&#039;&#039;my printer is not listed here&#039;&#039;&#039; click on that.&lt;br /&gt;
&lt;br /&gt;
[[File:Printernotlisted.png|border]]&lt;br /&gt;
&lt;br /&gt;
Now you can copy and paste the name of your print queue, which is listed in Step 4 of the Mobile Print page guide (below is a screenshot for your reference - you can&#039;t copy and paste this):&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint6queue.jpeg|border]]&lt;br /&gt;
&lt;br /&gt;
You do need to copy and paste the whole address line, including the bit I&#039;ve blurred out (I&#039;ve blurred my exact address out or you would be printing as me with my print credit!). Remember that you&#039;re not copying and pasting this line, you&#039;re using the line from the Mobile Print web page!&lt;br /&gt;
&lt;br /&gt;
The rest of the ICT instructions should work ok, you merely have to select that you&#039;re adding an &#039;&#039;&#039;HP&#039;&#039;&#039; printer and you want to use &#039;&#039;&#039;HP Universal Printing PCL 6&#039;&#039;&#039;. There is no need to print a test page.&lt;br /&gt;
&lt;br /&gt;
=== Gotchas ===&lt;br /&gt;
If you are in the habit of using Remote Desktop and the VPN to connect to your DIDE PC, then there is a setting which you should disable in your Remote Desktop connection settings screen:&lt;br /&gt;
[[File:Printer3.jpg|left]]&lt;br /&gt;
Otherwise you&#039;ll end up with your office printers connected to your home computer and it has been known to mess things up.&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Printing&amp;diff=14245</id>
		<title>Printing</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Printing&amp;diff=14245"/>
		<updated>2022-11-17T13:27:22Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Printing at Imperial College =&lt;br /&gt;
The print system is handled by HP themselves on behalf of the college. You should follow [https://www.imperial.ac.uk/admin-services/ict/self-service/computers-printing/printing-photocopying-and-scanning/install-print-drivers/ Imperial&#039;s Mobile Print instructions]. This page is a guide to follow while you&#039;re working through the ICT Mobile Print page.&lt;br /&gt;
&lt;br /&gt;
== I don&#039;t have time for this and just want to print something! ==&lt;br /&gt;
If you&#039;re in a rush and have to print right now, then email your document to [mailto:print@imperial.ac.uk print@imperial.ac.uk] from your Imperial email address. You may then go to any swipe printer and collect your document. Remember to delete the email from your Sent Items folder afterwards or you may be wasting mailbox space.&lt;br /&gt;
&lt;br /&gt;
== Advice for when following the Mobile Print instrucions ==&lt;br /&gt;
Most of you are Windows users so I&#039;ll go over the key steps here. The main ICT instructions are quite good if you pay close attention, but they are from an old version of Windows 10. My page here is a supplement in case you get stuck.&lt;br /&gt;
&lt;br /&gt;
Log in to the [https://www.imperial.ac.uk/admin-services/ict/self-service/computers-printing/printing-photocopying-and-scanning/install-print-drivers/ Mobile Print site] with your Imperial credentials and then select &#039;&#039;&#039;Driver Print&#039;&#039;&#039;. Note that this page will only work on campus.&lt;br /&gt;
&lt;br /&gt;
[[file:mobileprint1.jpeg|border]]&lt;br /&gt;
&lt;br /&gt;
Now select your operating system with the large icons at the bottom (you are most likely Windows):&lt;br /&gt;
&lt;br /&gt;
[[file:mobileprint2os.jpeg]]&lt;br /&gt;
&lt;br /&gt;
After this you get a couple of pages with only one option each (there used to be more). Go through these formalities and select the only option you have:&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint3option.jpeg]]&lt;br /&gt;
&lt;br /&gt;
We now get to a mildly tricky bit as we have to download the actual HP software for talking to the printers. There is a handy link on the Mobile Print page to the [https://ftp.hp.com/pub/softlib/software13/COL40842/ds-99374-24/upd-pcl6-x64-7.0.1.24923.exe HP FTP site] so click on that to download it.&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint4drivers.jpeg]]&lt;br /&gt;
&lt;br /&gt;
Once downloaded, double click on it to run it and press the &#039;&#039;&#039;Unzip&#039;&#039;&#039; button. Go through the installer as normal but make sure you select &#039;&#039;&#039;USB Mode - Plug and Play&#039;&#039;&#039; as your printer type. Leave the two text boxes at the bottom ticked.&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint5usb.png]]&lt;br /&gt;
&lt;br /&gt;
Now we get to add the actual print queue to your computer. From your start menu type &#039;&#039;&#039;printers&#039;&#039;&#039; and you&#039;ll see a menu item to add printers. Click on that and then select &#039;&#039;&#039;add a printer&#039;&#039;&#039;. It will have a think for a while and then show you some completely incorrect printers. As soon as you see the option &#039;&#039;&#039;my printer is not listed here&#039;&#039;&#039; click on that.&lt;br /&gt;
&lt;br /&gt;
[[File:Printernotlisted.png]]&lt;br /&gt;
&lt;br /&gt;
Now you can copy and paste the name of your print queue, which is listed in Step 4 of the Mobile Print page guide (below is a screenshot for your reference - you can&#039;t copy and paste this):&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint6queue.jpeg]]&lt;br /&gt;
&lt;br /&gt;
You do need to copy and paste the whole address line, including the bit I&#039;ve blurred out (I&#039;ve blurred my exact address out or you would be printing as me with my print credit!). Remember that you&#039;re not copying and pasting this line, you&#039;re using the line from the Mobile Print web page!&lt;br /&gt;
&lt;br /&gt;
The rest of the ICT instructions should work ok, you merely have to select that you&#039;re adding an &#039;&#039;&#039;HP&#039;&#039;&#039; printer and you want to use &#039;&#039;&#039;HP Universal Printing PCL 6&#039;&#039;&#039;. There is no need to print a test page.&lt;br /&gt;
&lt;br /&gt;
=== Gotchas ===&lt;br /&gt;
If you are in the habit of using Remote Desktop and the VPN to connect to your DIDE PC, then there is a setting which you should disable in your Remote Desktop connection settings screen:&lt;br /&gt;
[[File:Printer3.jpg|left]]&lt;br /&gt;
Otherwise you&#039;ll end up with your office printers connected to your home computer and it has been known to mess things up.&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Printing&amp;diff=14244</id>
		<title>Printing</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Printing&amp;diff=14244"/>
		<updated>2022-11-17T13:25:19Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Printing at Imperial College =&lt;br /&gt;
The print system is handled by HP themselves on behalf of the college. You should follow [https://www.imperial.ac.uk/admin-services/ict/self-service/computers-printing/printing-photocopying-and-scanning/install-print-drivers/ Imperial&#039;s Mobile Print instructions]. This page is a guide to follow while you&#039;re working through the ICT Mobile Print page.&lt;br /&gt;
&lt;br /&gt;
== I don&#039;t have time for this and just want to print something! ==&lt;br /&gt;
If you&#039;re in a rush and have to print right now, then email your document to [mailto:print@imperial.ac.uk print@imperial.ac.uk] from your Imperial email address. You may then go to any swipe printer and collect your document. Remember to delete the email from your Sent Items folder afterwards or you may be wasting mailbox space.&lt;br /&gt;
&lt;br /&gt;
== Advice for when following the Mobile Print instrucions ==&lt;br /&gt;
Most of you are Windows users so I&#039;ll go over the key steps here. The main ICT instructions are quite good if you pay close attention, but they are from an old version of Windows 10. My page here is a supplement in case you get stuck.&lt;br /&gt;
&lt;br /&gt;
Log in to the [https://www.imperial.ac.uk/admin-services/ict/self-service/computers-printing/printing-photocopying-and-scanning/install-print-drivers/ Mobile Print site] with your Imperial credentials and then select &#039;&#039;&#039;Driver Print&#039;&#039;&#039;. Note that this page will only work on campus.&lt;br /&gt;
&lt;br /&gt;
[[file:mobileprint1.jpeg]]&lt;br /&gt;
&lt;br /&gt;
Now select your operating system with the large icons at the bottom (you are most likely Windows):&lt;br /&gt;
&lt;br /&gt;
[[file:mobileprint2os.jpeg]]&lt;br /&gt;
&lt;br /&gt;
After this you get a couple of pages with only one option each (there used to be more). Go through these formalities and select the only option you have:&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint3option.jpeg]]&lt;br /&gt;
&lt;br /&gt;
We now get to a mildly tricky bit as we have to download the actual HP software for talking to the printers. There is a handy link on the Mobile Print page to the [https://ftp.hp.com/pub/softlib/software13/COL40842/ds-99374-24/upd-pcl6-x64-7.0.1.24923.exe HP FTP site] so click on that to download it.&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint4drivers.jpeg]]&lt;br /&gt;
&lt;br /&gt;
Once downloaded, double click on it to run it and press the &#039;&#039;&#039;Unzip&#039;&#039;&#039; button. Go through the installer as normal but make sure you select &#039;&#039;&#039;USB Mode - Plug and Play&#039;&#039;&#039; as your printer type. Leave the two text boxes at the bottom ticked.&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint5usb.png]]&lt;br /&gt;
&lt;br /&gt;
Now we get to add the actual print queue to your computer. From your start menu type &#039;&#039;&#039;printers&#039;&#039;&#039; and you&#039;ll see a menu item to add printers. Click on that and then select &#039;&#039;&#039;add a printer&#039;&#039;&#039;. It will have a think for a while and then show you some completely incorrect printers. As soon as you see the option &#039;&#039;&#039;my printer is not listed here&#039;&#039;&#039; click on that.&lt;br /&gt;
&lt;br /&gt;
[[File:Printernotlisted.png]]&lt;br /&gt;
&lt;br /&gt;
Now you can copy and paste the name of your print queue, which is listed in Step 4 of the Mobile Print page guide (below is a screenshot for your reference - you can&#039;t copy and paste this):&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint6queue.jpeg]]&lt;br /&gt;
&lt;br /&gt;
You do need to copy and paste the whole address line, including the bit I&#039;ve blurred out (I&#039;ve blurred my exact address out or you would be printing as me with my print credit!). Remember that you&#039;re not copying and pasting this line, you&#039;re using the line from the Mobile Print web page!&lt;br /&gt;
&lt;br /&gt;
The rest of the ICT instructions should work ok, you merely have to select that you&#039;re adding an &#039;&#039;&#039;HP&#039;&#039;&#039; printer and you want to use &#039;&#039;&#039;HP Universal Printing PCL 6&#039;&#039;&#039;. There is no need to print a test page.&lt;br /&gt;
&lt;br /&gt;
=== Gotchas ===&lt;br /&gt;
If you are in the habit of using Remote Desktop and the VPN to connect to your DIDE PC, then there is a setting which you should disable in your Remote Desktop connection settings screen:&lt;br /&gt;
[[File:Printer3.jpg|left]]&lt;br /&gt;
Otherwise you&#039;ll end up with your office printers connected to your home computer and it has been known to mess things up.&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Printing&amp;diff=14243</id>
		<title>Printing</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Printing&amp;diff=14243"/>
		<updated>2022-11-17T12:28:03Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Printing at Imperial College =&lt;br /&gt;
The print system is handled by HP themselves on behalf of the college. You should follow [https://www.imperial.ac.uk/admin-services/ict/self-service/computers-printing/printing-photocopying-and-scanning/install-print-drivers/ Imperial&#039;s Mobile Print instructions].&lt;br /&gt;
&lt;br /&gt;
== I don&#039;t have time for this and just want to print something! ==&lt;br /&gt;
If you&#039;re in a rush and have to print right now, then email your document to [mailto:print@imperial.ac.uk print@imperial.ac.uk] from your Imperial email address. You may then go to any swipe printer and collect your document. Remember to delete the email from your Sent Items folder afterwards or you may be wasting mailbox space.&lt;br /&gt;
&lt;br /&gt;
== Advice for when following the Mobile Print instrucions ==&lt;br /&gt;
Most of you are Windows users so I&#039;ll go over the key steps here. The main ICT instructions are quite good if you pay close attention, but they are from an old version of Windows 10. My page here is a supplement in case you get stuck.&lt;br /&gt;
&lt;br /&gt;
Log in to the [https://www.imperial.ac.uk/admin-services/ict/self-service/computers-printing/printing-photocopying-and-scanning/install-print-drivers/ Mobile Print site] with your Imperial credentials and then select &#039;&#039;&#039;Driver Print&#039;&#039;&#039;. Note that this page will only work on campus.&lt;br /&gt;
&lt;br /&gt;
[[file:mobileprint1.jpeg]]&lt;br /&gt;
&lt;br /&gt;
Now select your operating system with the large icons at the bottom (you are most likely Windows):&lt;br /&gt;
&lt;br /&gt;
[[file:mobileprint2os.jpeg]]&lt;br /&gt;
&lt;br /&gt;
After this you get a couple of pages with only one option each (there used to be more). Go through these formalities and select the only option you have:&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint3option.jpeg]]&lt;br /&gt;
&lt;br /&gt;
We now get to a mildly tricky bit as we have to download the actual HP software for talking to the printers. There is a handy link on the Mobile Print page to the [https://ftp.hp.com/pub/softlib/software13/COL40842/ds-99374-24/upd-pcl6-x64-7.0.1.24923.exe HP FTP site] so click on that to download it.&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint4drivers.jpeg]]&lt;br /&gt;
&lt;br /&gt;
Once downloaded, double click on it to run it and press the &#039;&#039;&#039;Unzip&#039;&#039;&#039; button. Go through the installer as normal but make sure you select &#039;&#039;&#039;USB Mode - Plug and Play&#039;&#039;&#039; as your printer type. Leave the two text boxes at the bottom ticked.&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint5usb.png]]&lt;br /&gt;
&lt;br /&gt;
Now we get to add the actual print queue to your computer. From your start menu type &#039;&#039;&#039;printers&#039;&#039;&#039; and you&#039;ll see a menu item to add printers. Click on that and then select &#039;&#039;&#039;add a printer&#039;&#039;&#039;. It will have a think for a while and then show you some completely incorrect printers. As soon as you see the option &#039;&#039;&#039;my printer is not listed here&#039;&#039;&#039; click on that.&lt;br /&gt;
&lt;br /&gt;
[[File:Printernotlisted.png]]&lt;br /&gt;
&lt;br /&gt;
Now you can copy and paste the name of your print queue, which is listed in Step 4 of the Mobile Print page guide (below is a screenshot for your reference - you can&#039;t copy and paste this):&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint6queue.jpeg]]&lt;br /&gt;
&lt;br /&gt;
You do need to copy and paste the whole address line, including the bit I&#039;ve blurred out (I&#039;ve blurred my exact address out or you would be printing as me with my print credit!). Remember that you&#039;re not copying and pasting this line, you&#039;re using the line from the Mobile Print web page!&lt;br /&gt;
&lt;br /&gt;
The rest of the ICT instructions should work ok, you merely have to select that you&#039;re adding an &#039;&#039;&#039;HP&#039;&#039;&#039; printer and you want to use &#039;&#039;&#039;HP Universal Printing PCL 6&#039;&#039;&#039;. There is no need to print a test page.&lt;br /&gt;
&lt;br /&gt;
=== Gotchas ===&lt;br /&gt;
If you are in the habit of using Remote Desktop and the VPN to connect to your DIDE PC, then there is a setting which you should disable in your Remote Desktop connection settings screen:&lt;br /&gt;
[[File:Printer3.jpg|left]]&lt;br /&gt;
Otherwise you&#039;ll end up with your office printers connected to your home computer and it has been known to mess things up.&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Printing&amp;diff=14242</id>
		<title>Printing</title>
		<link rel="alternate" type="text/html" href="https://mrcdata.dide.ic.ac.uk/wiki/index.php?title=Printing&amp;diff=14242"/>
		<updated>2022-11-17T12:24:20Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Printing at Imperial College =&lt;br /&gt;
The print system is handled by HP themselves on behalf of the college. You should follow [https://www.imperial.ac.uk/admin-services/ict/self-service/computers-printing/printing-photocopying-and-scanning/install-print-drivers/ Imperial&#039;s Mobile Print instructions].&lt;br /&gt;
&lt;br /&gt;
== I don&#039;t have time for this and just want to print something! ==&lt;br /&gt;
If you&#039;re in a rush and have to print right now, then email your document to [mailto:print@imperial.ac.uk print@imperial.ac.uk] from your Imperial email address. You may then go to any swipe printer and collect your document. Remember to delete the email from your Sent Items folder afterwards or you may be wasting mailbox space.&lt;br /&gt;
&lt;br /&gt;
== Advice for when following the Mobile Print instrucions ==&lt;br /&gt;
Most of you are Windows users so I&#039;ll go over the key steps here. The main ICT instructions are quite good if you pay close attention, but they are from an old version of Windows 10. My page here is a supplement in case you get stuck.&lt;br /&gt;
&lt;br /&gt;
Log in to the [https://www.imperial.ac.uk/admin-services/ict/self-service/computers-printing/printing-photocopying-and-scanning/install-print-drivers/ Mobile Print site] with your Imperial credentials and then select &#039;&#039;&#039;Driver Print&#039;&#039;&#039;. Note that this page will only work on campus.&lt;br /&gt;
&lt;br /&gt;
[[file:mobileprint1.jpeg]]&lt;br /&gt;
&lt;br /&gt;
Now select your operating system with the large icons at the bottom (you are most likely Windows):&lt;br /&gt;
&lt;br /&gt;
[[file:mobileprint2os.jpeg]]&lt;br /&gt;
&lt;br /&gt;
After this you get a couple of pages with only one option each (there used to be more). Go through these formalities and select the only option you have:&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint3option.jpeg]]&lt;br /&gt;
&lt;br /&gt;
We now get to a mildly tricky bit as we have to download the actual HP software for talking to the printers. There is a handy link on the Mobile Print page to the [https://ftp.hp.com/pub/softlib/software13/COL40842/ds-99374-24/upd-pcl6-x64-7.0.1.24923.exe HP FTP site] so click on that to download it.&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint4drivers.jpeg]]&lt;br /&gt;
&lt;br /&gt;
Once downloaded, double click on it to run it and press the &#039;&#039;&#039;Unzip&#039;&#039;&#039; button. Go through the installer as normal but make sure you select &#039;&#039;&#039;USB Mode - Plug and Play&#039;&#039;&#039; as your printer type. Leave the two text boxes at the bottom ticked.&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint5usb.png]]&lt;br /&gt;
&lt;br /&gt;
Now we get to add the actual print queue to your computer. From your start menu type &#039;&#039;&#039;printers&#039;&#039;&#039; and you&#039;ll see a menu item to add printers. Click on that and then select &#039;&#039;&#039;add a printer&#039;&#039;&#039;. It will have a think for a while and then show you some completely incorrect printers. As soon as you see the option &#039;&#039;&#039;my printer is not listed here&#039;&#039;&#039; click on that.&lt;br /&gt;
&lt;br /&gt;
[[File:Printernotlisted.png]]&lt;br /&gt;
&lt;br /&gt;
Now you can copy and paste the name of your print queue, which is listed in Step 4 of the Mobile Print page guide (below is a screenshot - you can&#039;t copy and paste this):&lt;br /&gt;
&lt;br /&gt;
[[File:Mobileprint6queue.jpeg]]&lt;br /&gt;
&lt;br /&gt;
You do need to copy and paste the whole address line, including the bit I&#039;ve blurred out (I&#039;ve blurred my exact address out or you would be printing as me with my print credit!). Remember that you&#039;re not copying and pasting this line, you&#039;re using the line from the Mobile Print web page!&lt;br /&gt;
&lt;br /&gt;
The rest of the ICT instructions should work ok, you merely have to select that you&#039;re adding an &#039;&#039;&#039;HP&#039;&#039;&#039; printer and you want to use &#039;&#039;&#039;HP Universal Printing PCL 6&#039;&#039;&#039;. There is no need to print a test page.&lt;br /&gt;
&lt;br /&gt;
=== Gotchas ===&lt;br /&gt;
If you are in the habit of using Remote Desktop and the VPN to connect to your DIDE PC, then there is a setting which you should disable in your Remote Desktop connection settings screen:&lt;br /&gt;
[[File:Printer3.jpg|left]]&lt;br /&gt;
Otherwise you&#039;ll end up with your office printers connected to your home computer and it has been known to mess things up.&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
</feed>