|
|
Student Intro
Code of Practice
Human Relationships
Security
General information on research
General Usage of Our Beowulf Cluster
Linux and Command-Line Utilities
X11 Forwarding
Handling TAR-files
Firefox Problem Tied with NFS and lightening
Riken
UniversityCluster
Programming
General Programming
Fortran and Python
HPC
Gnuplot
Tgif
GPU
Problem Solving
Running MPI Code
FDTD-related
Skills for presentation and technical report writing and Viva
LaTeX
Word document handling
To BSc and MSc Students
Living in Manchester
Accommodation Hunting and USS
Fumie's availability
Code of Practice
Human Relationships
When you talk to Fumie
either during the meeting or in non-meeting hours, you
should clearly show Fumie your
own understanding of the problem. Fumie will
not judge you for your mistakes but support you and correct your
understanding. You should share your research understanding and problems.
You
should not act as you understand everything if you do not. Ultimately,
when it comes to research you and Fumie are co-workers. We stand at the same
level and you should treat Fumie as your collaborator.
Thus I expect students to
- have good English communication skills
- be brave enough to share his/her weak points with me
- update me very frequently in person without setting a weekly meeting( most of students just pop in to my room. I set weekly meetings when I realised that the student is likely to fail to progress)
- ask me ANY silly questions so that students do not waste their precious time by browsing the internet to find an answer
- write down all the skills/techniques absorbed from me in order to improve himself/herself in an efficient manner
- follow my advice and discuss any plan of the change of the action with me prior to taking the action so that students do not move to a wrong direction and waste their time
Security
In the past there were some incidents involving access to various machines in
our cluster and entering permission-unprotected directories as well as viewing
files whose owner was different from the accessing person.
The cluster administrator is capable of tracking all actions of all
users. Ignorance and lack of Unix system knowledge will not be considered as
an excuse for violating these security rules.
Unless you execute the parallel computing programs in our computer cluster or
belong to the cluster service providers you are expected to login and use only
your own machine and access only your own or shared files.
Increased security constrains put more burden on the cluster
administrator. Therefore, students demonstrating strong Unix skills might be
asked to help the senior cluster administrators due to the current staff
shortage.
Your university card can be activated
to enter the Sackville street building
after 17:00 on weekdays and all day long on weekends
by swiping your card. If you need to access
the building during these time slots,
please give Fumie your card number so that
Fumie can ask john.ashton-2@manchester.ac.uk
to activate your card.
General information on research
When you face your research problems
- Define the problem & gather as much information as possible
- Formulate a theory of what is going on and why
- Work out some ways to test the theory
- If the test data supports the theory, work out a solution based on the theory
- If the test data disproves the theory, formulate a new theory and repeat steps 3 & 4
The following reference will give you the overview of the research
General Usage of Our Beowulf Cluster
Linux and Command-Line
Utilities
The Key F1 raises the window under the mouse.
The Key F2 lowers the window under the mouse.
The Key F3 iconizes the window under the mouse.
The Key F4 kills the window under the mouse.
Linux as all Unix systems is famous for the powerful command line utilities it
offers. Refer to the following articles if you have little knowledge
about
Linux
,
LinuxPlusShell
and
Command-line interface.
Please go through
Online Introduction to Unix
to acquire the minimum skills on Unix.
Then go through
Linux Shell
Scripting Tutorial.
Refer to the openSUSE 10.3 Reference for the introduction to the important
Linux commands and secure network operations.
Reading entire Chapters 19 and 36 is strongly advisable:
19: Working with the Shell |
pp. 271-296 |
36: SSH-Secure Network Operations |
pp. 589-596 |
The most important reference Sections are:
19.3: Important Linux Commands |
pp. 280-290 |
36.2: The ssh Program |
p. 590 |
36.3: spc-Secure Copy |
p. 590 |
Refer to the Wikipedia article below for a list of frequently used Unix commands.
Bash is a command-line interpreter provided with the majority of Linux
distributions. It allows you to execute the command-line utilities and
programs:
If you face the bash message "command not found" your shell did not
recognise the command you executed. It might occur because of the incorrect
spelling of command name, e.g. "gfrtran" instead of "gfortran". In the
other case the executed command might not be present in your system or you do
not have sufficient user rights to run it.
X11 Forwarding
The following IP addresses are available in our cluster.
They are all 64 bits machines.
The IP address inside the bracket "()"
is the old IP address before we moved to
the Engineering Building. So when you see the sentence which involves the old IP addresses please obtain the new IP address using the list below.
10.109.248.74(130.88.154.12) at FSR
10.207.80.147(130.88.116.20) at Hossein
10.109.248.66(130.88.116.21) at Yang
10.109.248.85(130.88.116.38) at FSR
10.109.248.69(130.88.116.50) at FSR
10.109.248.84(130.88.116.55) at Zherui
10.109.248.64(130.88.116.69) at Fatma
10.109.248.63(130.88.116.70) at Shokooh
10.109.248.88(130.88.116.141) at SFR
10.109.248.65(130.88.116.233) at Qiyuan
10.109.248.87(130.88.116.225) at FSR
10.109.248.86(130.88.116.27) at FSR
10.109.248.75(130.88.154.14) at FSR
10.109.248.71(130.88.118.141) at FSR
10.109.248.73(130.88.118.133) at FSR
10.109.248.72(130.88.154.197) at FSR
10.109.248.70(130.88.108.137) at FSR
10.109.248.61(130.88.154.90) at FSR
The machine
130.88.154.90
is the NFS server and
/home is NFS-mounted
in our cluster apart from Sun workstations.
/home is daily backed up.
Therefore
please do not run any computation and
do not store the data which can be
reproduced by the simple computation under the home directories.
Only source code, shell scripts, reading materials, LaTex files,
figures for publication should be stored under your home
directories.
Please use
130.88.118.141 when your computation requires less than 64 GB of memory
130.88.118.133 when your computation requires more than than 64 GB of memory
130.88.154.197 when your computation requires more than 96 GB of memory
130.88.108.137 when your computation requires more than 128 GB of memory
The most of the computation should be done under
the local directories such as
/local ,
/scratch ,
/scratch1 ,
/scratch2 ,
/scratch3 ,
/media/
on each machine.
You should find the location and spare space for computation
on each machine by running
df -ha
If your code is heavy in data I/O then please use
internal hard drive such as /local
and store the data in the external hard drive
and delete the data in the internal hard drive
when you stop using the data in the internal hard drive.
The code for ladies is 1966#
The code for B30c is 3765
The code for the room next to B30c for coffee is 1824.
The code for E24 is 1965 for fridge and microwaves.
The code for E20 is C2854.
The code for E23 is 0258.
The codefor E16 is C1982
The codefor E17 is 2406
The code for E1 is 3419.
The code for E6 is 0710.
The code for D45a is 6601#
The code for D45b is 4419#
The code for Rm 2.49 in Kilburn building is C3470Y
for spiral binding.
The code for B21 (top of the steps, opposite B22d) is C1983
When you compile your program using Makefile on
the dual core machines
please use make -j2 .
On 130.88.154.177 , you
can use make -j4 .
If a computer has "X" cores, then
you can use make -jX
for the fast compilation.
A short step-by-step guide explaining how to export graphical output from a
remote Linux machine to your local Linux computer.
If you face difficulties in accessing the world (such as bbc.co.uk from firefox or google-chrome) in Engineering
Building due to the static IP,
then please follow the guidance
Guidance for KDE users
or
Guidance for Gnome users
Handling TAR-files
Compressing and decompressing data to and from TAR-file archives:
For very strong compression:
tar -cJvf <archive_name> <file_list>--remove-files |
tar -cJvf archive.xz file1.txt file2.txt --remove-files |
Here --remove-files
means you delete the files when you put them into the tar file. This is
very slow in process but quite strong in compression rate.
For strong compression:
tar -cjvf <archive_name> <file_list> |
tar -cjvf archive.tar.bz2 file1.txt file2.txt |
For compression less than bzip2 but faster:
tar -zcvf <archive_name> <file_list> |
tar -zcvf archive.tar.gz file1.txt file2.txt |
For compression less than bzip2 but faster than zcvf , which is
recommended to use for the data collection from Riken:
tar -zcf <archive_name> <file_list> |
tar -zcf archive.tar.gz file1.txt file2.txt |
This command will compress two files into an archive. You may also use common Unix wildcards and type "*" or "file?.txt" to compress all files in the directory or all files with a variable single symbol value.
Follow the command below to decompress a TAR-archive file into a current directory:
tar -xjvf <archive_name> |
tar -xjvf archive.tar.bz2 |
tar -zxvf <archive_name> |
tar -zxvf archive.tar.gz |
Firefox Problem Tied with NFS and lightening
Home directories in our cluster are mounted via NFS and backed up daily. NFS
might cause problems running Firefox web browser on a certain machine. Please
follow the steps below to restart Firefox:
cd ~/.mozilla/firefox/<letter_sequence>.default
ls -lrt lock to find the machine's IP address where you run Firefox at the moment
rm lock to delete the lock
- Login to the machine where you were running Firefox
- Find the process number which is related to Firefox
kill all processes associated with Firefox on that particular machine
Please perform the following to reduce the workload of the system:
- run
firefox
- Find
tools
- select
add-ons
- search
noscript
- install
noscript
Riken
For the journal and conference publication
please put an acknowledge section with the sentence of
" \section*{Acknowledgement}
This work was completed in part with
HOKUSAI-GreatWave Computer System at
RIKEN.
\url{ http://i.riken.jp/download/sites/2/HOKUSAI_system_overview_en.pdf } .
"
For scientific presentation
please select an appropriate logo from
Logos and Photos
.
Prior to have an access to Riken's supercomputers, please read
first four PDF files of
Users Guide
and
Software
and
System Overview
and
Usage Policy
and
Operation Summary
and
Future Plan
and decide
which system you are going to use for your
computation based on the problems you are going to deal with
and work out the job submission scripts.
The programming language are
the way to tune your code
explained in
Manual
which is taken from
https://hokusai.riken.jp/ .
It is extremely important for you to
test your job submission script
with a small test program
in order to make sure that you
run your jobs at
the backend,
not at the frontend.
You are not supposed to enter or put or delete any files at
/home/fumie/.ssh .
You should not attempt anything new on Greatwave without discussing it with Fumie first.
If you have any questions/problems in using Riken,
please fill
Inquiry form
and send it to Fumie which will be checked by Fumie
and forwarded to Riken.
Login to Riken
-
ssh to 10.109.21.47 with the
username of riken. Please obtain the password from Fumie.
The usual port number ( not the standard 22)
should be used. If this IP address does not work
please contact Fumie.
- Run
sudo /usr/local/bin/rikenssh 1 or
sudo /usr/local/bin/rikenssh 2 or
sudo /usr/local/bin/rikenssh 3 or
sudo /usr/local/bin/rikenssh 4 .
The number of
1 ,
2 ,
3 , and
4 specify the login node at the front-end.
When you run screen or tmux
at the front end, it is best to stick to one of these 4 numbers
for you to re-login.
- This command ask you to put a password. Please
get the password from Fumie in person.
- You will find yourself at
/home/fumie
at the front end of Hokusai system.
The default shell of this user account is bash.
When you prefer tcsh , then run tcsh
in the x-terminal.
File copy from our cluster to Hokusai
In this section, we assume fileA is
your tar file which you want to send to Riken.
If you do not know tar , then
please read through
Handling TAR-files
- From your local computer where you did the test-run,
transfer
fileA to 10.109.21.47
by running
scp -P 22111 -C -r fileA riken@10.109.21.47:/rikendata/.
- Login to 10.109.21.47 using
ssh -XC -p 22111
- In the x-terminal where you logged into 10.109.21.47,
run
sudo /usr/local/bin/scptoriken fileA
to send fileA to Hokusai system
-
In the x-terminal where you logged into 10.109.21.47,
login to Hokusai system. In the Hokusai system,
go to the data directory by running
cd /home/fumie/data
- You will find your
fileA
at /home/fumie/data in the Hokusai system
- In the Hokusai system, produce your own directory under
/home/fumie/data
such as /home/fumie/data/yourusername
- Run
mv /home/fumie/data/fileA /home/fumie/data/yourusername/yourappropriatedirectory/. in Hokusai. Here,
please make sure that this is mv , NOT cp !
Only subdirectories ( not files) should exist at
/home/fumie/data in Hokusai.
File copy from Hokusai to our cluster
In this section, we assume fileB is
your tar file which you want to send from Riken.
If you do not know tar , then
please read through
Handling TAR-files
- Login to 10.109.21.47 using
ssh -XC
- In the x-terminal where you logged into 10.109.21.47,
you run
xterm -fa monospace-18 &
to create your second x-window. The x-window where you
logged into 10.109.21.47 is called the first x-window in
this section.
- In the first x-window, login to Riken
and run
cd /home/fumie/data; ln -s /home/fumie/data/yourusername/yourappropriatedirectory/fileB . in Hokusai
- In the second x-window,
run
sudo /usr/local/bin/scpfromriken fileB
and run cd /rikendata
- In the second x-window, you will find
/rikendata/fileB
and run
scp -P 22111 -C -r /rikendata/fileB
yourusername@your.local.machine.IP:/your/local/directory/. Here,
never use mv . After the data transfer,
in this second x-window, run rm /rikendata/fileB
- In the first x-window, run
rm /home/fumie/data/fileB
- In the first x-window,
remove all the data you produced in Riken immediately and then
exit .
Your old files in Riken are available at
/home/fumie/ricc_data and /home/fumie/ricc_home
These two directories are in the read-only system and you need to
copy the necessary files into
/home/fumie/data/yourowndirectory/appropriatedirectory
in Hokusai.
Run the serial jobs in Hokusai
- Login to Riken
- Run
pjshowrsc
in order to check the resources availability and decide
which cluster you want to use based on your needs and the load of each cluster in Hokusai
- Go to your directory by
cd /home/fumie/data/yourowndirectory/appropriatedirectory
- Decide which cluster you use: If your job is less than 96GB of memory
then please use MPC.
- Compile your program at the frontend
with the compiler options appropriate for your needs as follows
- On ACSL (Application Computing Server with Large Memory )
-
module load intel
- Produce a
Makefile which performs
the compilation of ifort filename.f90
Your Fortran code should not have
write(100,*)a .
Instead you should use format the data output.
Run man ifort to identify the compiler
options and add them to your Makefile
and make clean; make
- On MPC
-
module load sparc
- Produce a
Makefile which performs
the compilation of frtpx filename.f90
Run man frtpx to identify the compiler
options and add them to your Makefile
and make clean; make
- Produce a job submission script as follows
and tweak the parameters and options based on your needs
- On ASCL
cat g00-username.sh
#!/bin/sh
#------ pjsub option --------#
#PJM -L rscunit=gwacsl
#PJM -L rscgrp=batch
#PJM -L vnode=1
#PJM -L vnode-core=1
#PJM -L vnode-mem=30Gi
#PJM -L elapse=23:59:00
#PJM -j
export OMP_NUM_THREADS=1
time ./a.out -Wl,-T
- On MPC
cat g00-username.sh
#!/bin/sh
#------ pjsub option --------#
#PJM -L rscunit=bwmpc
#PJM -L rscgrp=batch
#PJM -L vnode=([core=1][core-mem=100Mi])
#PJM -L elapse=23:59:00
#PJM -j
export OMP_NUM_THREADS=1
time ./a.out -Wl,-T
- Run your job at the backend by submitting
the job via
pjsub g00-username.sh for example.
Please make sure that the job script name has your name
by replacing username with yours; otherwise
the jobs are killed by Fumie.
- Check your job status via
pjstat
and if needed, kill the job via
pjdel jobID .
Run the OpenMP jobs in Hokusai
- Login to Riken
- Run
pjshowrsc
in order to check the resources availability and decide
which cluster you want to use based on your needs and the load of each cluster in Hokusai
- Go to your directory by
cd /home/fumie/data/yourowndirectory/appropriatedirectory
- Decide which cluster you use: If your job is less than 32GB of memory
then please use MPC.
- Compile your program at the frontend
with the compiler options appropriate for your needs as follows
- On ASCL
-
module load intel
- Produce a
Makefile which performs
the compilation of ifort -parallel -qopenmp filename.f90
Your Fortran code should not have
write(100,*)a .
Instead you should use format the data output.
Run man ifort to identify the compiler
options and add them to your Makefile
and make clean; make
- On MPC
-
module load intel
- Produce a
Makefile which performs
the compilation of ifort -parallel -qopenmp filename.f90
Run man ifort to identify the compiler
options and add them to your Makefile
and make clean; make
- Produce a job submission script as follows
and tweak the parameters and options based on your needs.
The parameter
core-mem ,presented in the following
examples of the job submission script,
can be changed to node-mem .
When you use node-mem ,
you have to set the memory size
to the total memory size required by your job.
- On ASCL
cat g00-username.sh
#!/bin/sh
#------ pjsub option --------#
#PJM -L rscunit=gwacsl
#PJM -L rscgrp=batch
#PJM -L vnode=1
#PJM -L vnode-core=32
#PJM -L core-mem=5Gi
#PJM -L elapse=23:59:00
#PJM -j
export OMP_NUM_THREADS=32
time ./a.out -Wl,-T
- On MPC
cat g00-username.sh
#!/bin/sh
#------ pjsub option --------#
#PJM -L rscunit=bwmpc
#PJM -L rscgrp=batch
#PJM -L vnode=1
#PJM -L vnode-core=11
#PJM -L core-mem=900Mi
#PJM -L elapse=23:59:00
#PJM -j
export OMP_NUM_THREADS=8
time ./a.out -Wl,-T
- Run your job at the backend by submitting
the job via
pjsub g00-username.sh for example.
Please make sure that the job script name has your name
by replacing username with yours; otherwise
the jobs are killed by Fumie.
- Check your job status via
pjstat
and if needed, kill the job via
pjdel jobID .
Run the MPI jobs in Hokusai
- Login to Riken
- Run
pjshowrsc
in order to check the resources availability and decide
which cluster you want to use based on your needs and the load of each cluster in Hokusai
- Go to your directory by
cd /home/fumie/data/yourowndirectory/appropriatedirectory
- Compile your program at the frontend
with the compiler options appropriate for your needs as follows
- On MPC
- run
module load sparc
- Produce a
Makefile which performs
the compilation of mpifrtpx -Kquickdbg filename.f90
Run man mpifrtpx to identify the compiler
options and add them to your Makefile
and make clean; make
- Produce a job submission script as follows
and tweak the parameters and options based on your needs.
- On MPC using many nodes and many cores per node
cat g00-username.sh
#!/bin/sh
#------ pjsub option --------#
#PJM -L rscunit=bwmpc
#PJM -L rscgrp=batch
#PJM -L vnode=(core=10)
#PJM --mpi proc=10
#PJM -L elapse=20:00:00
#PJM -j
#---------------Program execuation---------#
mpirun ./a.out -wl,-T
- On MPC using many nodes and one core per node
cat g00-username.sh
#!/bin/sh
#------ pjsub option --------#
#PJM -L rscunit=bwmpc
#PJM -L rscgrp=batch
#PJM -L node=10
#PJM --mpi proc=10
#PJM -L elapse=20:00:00
#PJM -j
#---------------Program execuation---------#
mpirun ./a.out -wl,-T
- Run your job at the backend by submitting
the job via
pjsub g00-username.sh for example.
Please make sure that the job script name has your name
by replacing username with yours; otherwise
the jobs are killed by Fumie.
- Check your job status via
pjstat
and if needed, kill the job via
pjdel jobID .
Run the Python with tensorflow or PyTorch jobs in Hokusai
- Login to Riken
- Run
pjshowrsc
in order to check the resources availability and decide
which cluster you want to use based on your needs and the load of each cluster in Hokusai
- Go to your directory by
cd /home/fumie/data/yourowndirectory/appropriatedirectory
- IF NEEDED, install necessary software/libraries such as
wget https://www.python.org/ftp/python/3.6.4/Python-3.6.4.tgz
tar zxf Python-3.6.4.tgz
cd Python-3.6.4
mkdir build; cd build
../configure --prefix=$HOME/local/python3 --with-tcltk-includes="-I/$HOME/local/python3/include" --with-tcltk-libs="-L/$HOME/local/python3/lib -ltcl8.6 -ltk8.6"
make ; make install
export PATH=$HOME/local/python3/bin:$PATH
export LD_LIBRARY_PATH=$HOME/local/python3/lib:$LD_LIBRARY_PATH
pip3 install numpy
pip3 install http://download.pytorch.org/whl/cu90/torch-0.4.0-cp36-cp36m-linux_x86_64.whl
pip3 install torchvision
pjsub --interact -L rscunit=bwmpc
export PATH=$HOME/local/python3/bin:$PATH
export LD_LIBRARY_PATH=$HOME/local/python3/lib:$LD_LIBRARY_PATH
cd $HOME/data/chao/download/
pip3 install ./nibabel-2.2.1-py2.py3-none-any.whl
export LD_LIBRARY_PATH=$HOME/local/python3/lib:$LD_LIBRARY_PATH
wget https://developer.nvidia.com/compute/cuda/9.0/Prod/local_installers/cuda_9.0.176_384.81_linux-run
sh cuda_9.0.176_384.81_linux-run
export PATH=$HOME/local/cuda-9.0/bin:$PATH
tar zxf cudnn-9.0-linux-x64-v7.1.tgz
cp ./cuda/include/cudnn.h /home/fumie/local/cuda-9.0/include/
cp ./cuda/lib64/libcudnn* /home/fumie/local/cuda-9.0/lib64/
chmod a+r /home/fumie/local/cuda-9.0/include/cudnn.h
chmod a+r /home/fumie/local/cuda-9.0/lib64/libcudnn*
export LD_LIBRARY_PATH=$HOME/local/cuda-9.0/lib64:$LD_LIBRARY_PATH
pip3 install tensorflow-gpu
module unload python
unset PYTHONPATH
module load anaconda
conda create --name py2 python=2
source activate py2
conda install keras==2.1.3
- Test your code from frontend by running jobs at the backend
by running
pjsub --interact -L rscunit=gwacsg,rscgrp=interact_gpu -x gpu_per_vnode=1
export PATH=$HOME/local/cuda-9.0/bin:$HOME/local/python3/bin:$PATH
export LD_LIBRARY_PATH=$HOME/local/cuda-9.0/lib64:$HOME/local/python3/lib:$LD_LIBRARY_PATH
python3
import torch
torch.cuda.is_available()
from tensorflow.python.client import device_lib as _device_lib
for x in _device_lib.list_local_devices():
- Produce a job submission script as follows
and tweak the parameters and options based on your needs.
- On MPC for CPU version using many nodes and many cores per node
cat g00-username.sh
#!/bin/sh
#------ pjsub option --------#
#PJM -L rscunit=bwmpc
#PJM -L rscgrp=batch
#PJM -L vnode-core=1
#PJM -L vnode-mem=100Mi
#PJM -L elapse=20:00:00
#PJM -j
#---------------Program execuation---------#
export OMP_NUM_THREADS=1
export PATH=$HOME/local/python3/bin:$PATH
export LD_LIBRARY_PATH=$HOME/local/python3/lib:$LD_LIBRARY_PATH
python3 ./pytorch_CV.py
- On ASCL for CPU version using 1 node
cat g00-username.sh
#!/bin/sh
#------ pjsub option --------#
#PJM -L rscunit=gwacsl
#PJM -L rscgrp=batch
#PJM -L vnode=1
#PJM -L vnode-core=2
#PJM -L vnode-mem=40Gi
#PJM -L elapse=23:59:59
#PJM -j
#---------------Program execuation---------#
export PATH=$HOME/local/python3/bin:$PATH
export LD_LIBRARY_PATH=$HOME/local/python3/lib:$LD_LIBRARY_PATH
python3 ./pytorch_CV.py
- On ACSG for GPU version using 1 node
cat g00-username.sh
#!/bin/sh
#----- pjsub option -------#
#PJM -L rscunit=gwacsg
#PJM -L rscgrp=gpu
#PJM -L vnode=1
#PJM -L vnode-core=17
#PJM -L vnode-mem=58800Mi
#PJM -x gpu_per_vnode=1
#PJM -L elapse=23:59:59
#PJM -j
#---------------Program execuation---------#
export PATH=$HOME/local/python3/bin:$HOME/local/cuda-9.0/bin:$PATH
export LD_LIBRARY_PATH=$HOME/local/python3/lib:$HOME/local/cuda-9.0/lib64:$LD_LIBRARY_PATH
python3 ./pytorch_rk.py
- Run your job at the backend by submitting
the job via
pjsub g00-username.sh for example.
Please make sure that the job script name has your name
by replacing username with yours; otherwise
the jobs are killed by Fumie.
- Check your job status via
pjstat
and if needed, kill the job via
pjdel jobID .
UniversityCluster
Contribution from Miss Fatma Eltashani
In order to access the computational facility
within the University of Manchester,
please send an email with your request to
its-ri-team@manchester.ac.uk
with the title of "Guidance and advice"
explaining the computational resources
you need.
The detailed procedure is
-
send email to
its-ri-team@manchester.ac.uk
with the content of
Hi
I would like to get an
access to csf for machine
learning calculation
My IT username is YourUserName
YourUserName is something
like zzalszfc
-
When
support-portal@manchester.ac.uk
gives you an access to csf
send email to
its-ri-team@manchester.ac.uk
with the content of
Hi I am writing to you to request access to the free at point access to the Nvidia GPU in the CSF cluster. My IT username is YourUserName
-
Run
ssh -XC -l zzalszfc -p 22 10.99.203.51
or
ssh -XC -l zzalszfc -p 22 10.99.203.52
or
ssh -XC -l zzalszfc -p 22 csf3.itservices.manchester.ac.uk
to login. Here you should change zzalszfc
to your IT username
-
Run
cd scratch
and start job submission.
Scratch is where you will be submitting your jobs. Now, you might notice that not all python
libraries you need are already installed. To do that, you need to create a condo environment. First, you need to
-
Run
module load apps/anaconda3/5.2.0
and
module load tools/env/proxy
-
Create your empty environment by running
conda create -n test_env
-
Activate your empty environment by running
source activate test_env
Here you should see the name of the environment before your username such in:
(test_env) [username@hlogin2 [csf3] ~]$
-
Install/uninstall any package you want using
either pip3 such as
pip3 install pandas
or conda such as
conda install pandas
conda remove pandas
-
When you installed all your packages and
ready to exit the environment, run
conda deactivate test_env
-
IF you need to delete the environment
then, run
conda remove -n test_env --all
-
Create a job submission script
fumie.sh such as
#!/bin/bash --login
#$ -cwd
#$ -l nvidia_v100=1
module load apps/anaconda3/5.2.0
source activate test_env
python3 /mnt/iusers01/eee01/mbgm3fe2/scratch/fatma_code.py
conda deactivate test_env
Here
nvidia_v100
refers to the number
of GPU cards you would like to use.
The number is either 1 or 2.
The python3 line should refer to the location where your python file is located.
-
Submit your job by running
qsub fumie.sh
-
Check your job status by running
qstat
-
When the job is finished, you'll
see that two new files are created:
fumie.sh.txt.o?????
fumie.sh.txt.e?????
which are the output and error messages, respectively
-
When you use UK Biobank
please go through
https://ri.itservices.manchester.ac.uk/csf3/software/tools/ukbiobank/
and then within CFS3
cd /mnt/data-sets/ukbiobank/full-release/
to see/read the data.
There is information on the data at
/mnt/data-sets/ukbiobank/full-release/ukb_genetic_file_description.txt
Prior to the data access,
you need to get an approval of the data access from UK biobank
and then send an email to
its-ri-team@manchester.ac.uk
saying
"
Dear ITS RI Team
I am in the group of Fumie Costen who hold the
access to the full data (Tier 3) of UK Biobank.
I have an approval of the data access from
UK Biobank as you can see in the forwarded email below.
Please add me to the dataset-ukbiobank-full Unix group and
create a RDS-ssh account for me.
Best regards,
"
Programming
Use a text editor emacs for the
programming activity. The information on
emacs is
reference file
General Programming
For the introduction to the basic programming concepts and style.
Programming skills are acquired in practise and experimentation. Do not rely
on pure book reading or asking people about each error message.
Programming as well as LaTeX typesetting and shell scripting involves debugging of your code so that
you can compile the program without errors and obtain the expected result.
By facing and tackling the error messages from compilers you actually learn
the techniques for programming. When you are stuck with the compilation or
receive strange error messages, which you can not fix, you can produce a
little program which mimics your current problem in the large production code.
It is much simpler to debug and fix the "extracted code". Once you make it
work you can transfer the problem solution to the major code.
If you still can not solve the problem, search for the exact error message on the Internet using Google. This activity will also give you an extra knowledge around your problem.
Please do not ask other students in the group to solve your programming
problems unless you tried all the above methods. If you need to ask a question
be as specific as possible. Respect other people's time since all of us work
under tight schedules.
Fortran and Python
In order to start learning Python
you may want to start with
Python introduction
GNU Fortran compiler gfortran is used in our cluster. Prior to running
any program code, it has to be compiled. Here are some links which will help
you further:
The wrap-up script mpif90 binds gfortran and mpich to
provide a convenient complication tool for the distributed memory architecture
programs.
Use mpif90intel instead of mpif90 if you need to test compile your code with the Intel Fortran compiler.
The 32-bit machines in our cluster are also suitable for running parallel programs.
Output to stdout and stderr is not printed out immediately after
calling the print statement in GNU Fortran. Instead the output is
buffered (which results in output delays) unless the program believes the
output is done to a terminal. To force immediate output from your program you
have to use the call flush statement in the code straight after the
program action, e.g.:
c = a + b
print *, ";c: ", c
call flush
d = a * b
print *, "d: ", d
call flush
Extra attention should be paid to the following points:
- when your code is under the development, gfortran option
-fbounds-check should be used for compilation
-
put "IMPLICIT NONE" at each program including the subroutines
- ALL the variables are defined and initialised
- do not presume a variable retains its value between invocations of
a procedure unless it has the SAVE attritubute
- the USE of modules is encouraged; the use of INCLUDE is okay
for variable declaration but not for including blocks of executable
statements within a code
- for F90 codes, the INTENT of each subprogram's dummy argument should
be explicitly declared
High Performance Computing
As for the information on HPC, please take a quick look at
HPC history slides
and
HPC history handout
As for the information on OpenMP, please take a quick look at
OpenMP
Gnuplot
gnuplot is used in our cluster for
data visualisation.
Please do go through
Gnuplot practice
in order to acquire the minimum skills you need for our research.
The data which you need to do the practice is
data for Gnuplot practice.
These are offered by
Source of Gnuplot practice.
When you put
load '/software/FDTDstandard/gnuplot/2Dgnuaxis'
before you run
plot [][] '....' w l
you will get a much more fantastic figure from gnuplot than usual.
When you put
load '/software/FDTDstandard/gnuplot/3Dgnuaxis'
before you run
splot [][][] '....' u 1:2:3 w l
you will get a much more fantastic figure from gnuplot than usual.
Tgif
If you import some image into tgif environment,
what you need to do to produce a pdf file is
- In
tgif environment,file -> print/export format->select EPSI
- file -> print
- In a x-terminal,
epstopdf something.eps
which will produce something.pdf
When you need to decorate the figures produced
in gnuplot you can do
-
set terminal tgif solid
-
set output 'test.obj'
-
plot 'test'
to obtain a tgif file.
When you do not need to decorate the figures produced
in gnuplot you can do
-
set terminal png
-
set output 'test.png'
-
plot 'test'
or
-
set terminal postscript eps enhanced color font 'Helvetica,10'
-
set output 'test.ps'
-
plot 'test'
If you need to install tgif in Mac OS, then
please see
Tgif installation in Mac
GPU
In order to understand GPGPU,
please read
GPU intro 1
and
GPU intro 2
and
GPU intro 3 .
In order to understand CUDAFortran , please read
Fortran
and
Portland .
For optimisation, please read
Optimisation 1 ,
Optimisation 2
or
Optimisation 2 ,
and
documentation by NVIDIA .
Kepler Architecture
is also very informative.
Compilation in Riken: Contribution from Mr. Loukas Xanthos
- Make sure that every file that contains CUDA fortran code,
has the extension
.cuf .
For other languages, see the man pages of pgf90 compiler
by $ man pgf90
- Run
$ module load cuda
- Produce a
Makefile which performs the
compilation of
pgf90 -ta=tesla:cc35 -tp=haswell-64 -Mpreprocess -Minfo -Mcuda=kepler+ -fast -o prog cudaFortranSource.cuf
and compile the file cudaFortranSource.cuf .
-ta is target accelerator (GPU) architecture
and
-tp is target CPU architecture.
you may do a $pgf90 -fast -help
in order to see what -fast
does.
For the rest parameters, you may consult the manual of PGI Fortran.
Job submission in Riken: Contribution from Mr. Loukas Xanthos
- Job submission script
CUDA jobs that use GPUs run at the ACSG (ACS with GPU) cluster.
An ACSG node has 4 GPU cards and they are controlled to
run only one job at one time.
You should submit to gpu
resource group and specify -x gpu_per_vnode option to use GPU(s).
Thus, the structure of the batch script needed for the job submission to the ACSG is the following:
cat go-gpu-project-loukas.sh
#!/bin/sh
# Great-Wave HOKUSAI
#------ pjsub option --------#
#PJM -L rscunit=gwacsg
#PJM -L rscgrp=gpu
#PJM -L vnode=1
#PJM -L vnode-core=8
#PJM -x gpu_per_vnode=1
# Merge the standard error
#PJM -j
# Modify as needed
#PJM -L elapse=1:00:00
time ./prog
## End of file go-gpu-project-loukas.sh
- Job submission
Add the job to the execution queue by running
$ pjsub go-gpu-project-loukas.sh
- Job checking:
To see the stats use the
pjstat command.
To delete a job use the pjdel command.
Problem Solving
The best way to approach a problem is to decompose it into smaller simpler
parts. Decide on what parts you can solve, which tools you are going to use
for a solution. Then think and write a draft algorithm for your solution. It
can be made on paper. Afterwards you can start implementing it using the tools
you have chosen. It is always a good idea to implement the algorithm in
smaller chunks. Where each chunk is performing a specific function of the main
algorithm. You can always write a very basic program testing a specific tool
or algorithm functionality. If your prototype works correctly you can increase
its functionality and integrate into the main program.
To solve the file opening and reading problem in Fortan, decompose it into
simpler tasks:
- generating target file name,
- opening target file,
- reading data required,
- closing target file
All of those tasks can be written as 4 separate Fortran code. Afterwards
you can put it all together into one main code. Finally, you may address the
loop issue-and wrap the 4 functions up with a triple loop for i ,
j , and k
values.
As a rule of thumb try to search for problem solutions on the Internet using
Google. This is the quickest way to find answers. Extract the error message of
your code, paste it in Google and search for answers. Finding information on
your own will make you learn and remember. It is much better for you, than me
telling you the answer straight away.
Running MPI Code
When you need to learn MPI
please go through
http://staff.cs.manchester.ac.uk/~fumie/internal/MPI/
Before running a parallel program with MPI an MPI service (daemon) has to be
launched. Running on the background this daemon provides Message Passing
functionality to your programs.
Prior to do any MPI activity, you have to do the following(just once
only when you join our cluster)
$USERNAME has to be changed to
your own username to carry out the following procedure.
Step 1
echo " MPD_SECRETWORD=treta " > /home/$USERNAME/.mpd.conf |
Step 2
chmod 700 /home/$USERNAME/.mpd.conf |
Starting an MPI daemon:
This daemon has to be started on each machine, where you intend to execute parallel program. All MPI daemons have to be connected to each other. This daemon ring connection is set up using the port number and IP address of the first machine, where "mpd" runs. This computer is called "MPI-host".
Find out port number and machine name of mpd-host:
The output is the following:
<mpd_host_name>_<port> (<IP_address>) |
130-88-154-30_20115 (130.88.154.30) |
Extract port number, e.g. 20115 and IP address, e.g. 130.88.154.30.
Login to another machine in the cluster using SSH:
ssh -XC -l <username> -p 22111 <IP_address> |
ssh -XC -l maxim -p 22111 130.88.154.30 |
Copy files/directories to another machine in the cluster using SCP:
scp -P 22111 -C -r -p <filenameYouWantCopy>
<username>@<IP_address>:<directoryname> |
scp -P 22111 -C -r -p /home/fumie/testdir tadashi@130.88.154.25:/local/tadashi/. |
Enter your password on SSH prompt. Now you have to start MPI daemon on this machine using port number and IP address extracted from the MPI-host.
mpd -h <IP_address> -p <port> |
mpd -h 130.88.154.30 -p 20115 |
The procedure mentioned above can be automated using
/software/64/bin/initRing written by Mr.
Philip Clapham.
Step 1
~/mpd.hosts
should have
the ipaddresses of slave/client machines you
would like to use for computation.
~/mpd.hosts should not have the ipaddress of the host
machine.
Step 2
Login to the host machine
Step 3
Run /software/64/bin/initRing
The MPI environment is ready. Time to compile a parallel code. Compiling MPI code involves calling of a wrapper script "mpif90". This script launches ordinary Fortran compiler (gfortran), but also links the code with MPI libraries.
mpif90 <source> -o <executable> |
As an example,
mpif90 source_code.F90 -o executable_code |
This name of the code can be anything of course.
This command will compile a Fortran source code source_code.F90 into an executable file called executable_file .
To run a parallel code on a number of processors write:
mpiexec -n <proc_number> <executable> |
mpiexec -n 2 ./executable_file |
In general you should keep your program source code in your home directory because it will be backed up every day. Designate a different output directory to e.g.
/local/<user_name>/<prog_name>/ |
/local/maxim/fdtd/ |
Specifying a local output directory will force your code to use the hard drive of a certain machine only. Using the home directory for output will synchronising the data files between all machines of the cluster and considerably slow down other people's computers. Please refrain from doing this.
The IBM Redbook on "Practical MPI Programming" is a recommended reading.
The most important Chapters are:
1: Introduction to Parallel Programming |
pp. 1-10 |
2: Basic Concepts of MPI |
pp. 11-40 |
Appendix B: Frequently Used MPI Subroutines Illustrated |
pp. 161-206 |
Although the environment setting and program compilation are strongly site-dependent, you can get a flavour of parallel programming by reading the following information:
FDTD_related
How many timesteps you need to calculate ?
If the frequency range of interest is from f1 Hz to f2 Hz,
the FDTD calculation has to be done much more than
5/(f1 * delta_t) timesteps.
Thus if you get N timesteps from the FDTD calculation
and assess the accuracy in the frequency domain,
you can take the frequency range starting
more than 1/(N * delta_t) Hz.
Skills for presentation and technical report
writing and Viva
Presentation is the activity to
give(present) the audience your knowledge as a gift,
not to speak about your idea which is speech.
- Attract the audience at the first page of
the slide by showing the aim and the outline of the talk
- Keep your eye contact with the audience
confidently
- Use main and second title on each slide
- Smile to make the mood relaxed
- Slow down your talk
so that the audience have time to guess what happens next
- Make your conclusion concise
- Go through
good presentation
good talk
terrible talk
Online Introduction to Unix
- Attract readers with the title of your
report.
- Make the structure of your report
crystal clear.
- Use as figures and tables
as much as possible to support
understanding of readers.
- Produce the logical and accurate sentenses
(not spoken English).
- Check your English using
ispell
and
plagiarism checker .
- Conclude your report with concise statements.
- Review the basics and every single formula of your work
and how to utilise them prior to viva.
- Define any words in the Thesis.
- Make sure you understand the question clearly before you answer.
If necessary, clarify the content of the question which you are
supposed to answer.
- Do not attempt the questions which you don't know and be honest.
Otherwise you might come across as untrustworthy to your examiner.
-
Do not agree with every statement the examiner makes.
Defend your work. Make sure the conclusions that the examiner draws from each question/section are correct.
- The story of your Thesis should flow nicely and the contribution
should be clear.
- Have your journal paper published prior to your Viva
- Have a consistent values for variables in a PhD thesis
and a good reason for the particular value
LaTeX
Prior to writing your report, you need to be able
to write English properly.
If you are not good at writing English,
please attend
Academic Writing Classes .
Google-chrome and firefox have a function to check the fundamental
English grammar mistakes by installing an add-on of
grammarly .
The basic guideline on the technical report writing
and
The best method for presentation of research results
and
The key points for journal writing
are very useful stuff to read before you gain good amount of experience in writing technical report.
Please check the marking schemes thoroughly prior to your writing.
Prior to present your manuscript to me, please go through
a check list for your manuscript preparation .
Another very comprehensive and extensive guidance on
technical writing in English is
Academic Phrasebank .
If you do need a proof-reading company
the following is used by my previous students
and did a good job
-
http://www.proofredit.com/
-
serviceessay@gmail.com Jon Sutcliffe
You do not have to worry about the formatting as LaTex does the formatting based on
your style file such as muthesis.cls .
In order to compile the Latex source code in the cluster in our research group,
you just need to run
pdflatexfull report.tex or just pdflatexfull report
Apparently the University now (Sep 2017) requires students to include a word count in the table of contents. So please use one of
\documentclass[12pt,MSc,wordcount]{muthesis}
\documentclass[12pt,MRes,wordcount]{muthesis}
\documentclass[12pt,PhD,wordcount]{muthesis}
Please see more details at
http://studentnet.cs.manchester.ac.uk/resources/latex/
An article on Wikipedia gives a short introduction on
LaTeX — a document markup language extensively used in a scientific domain.
Wikipedia also holds an entire LaTeX
textbook
which you can browse by topics.
There's a University LaTeX users list. If you're interested, send an email from your University email account to LISTSERV@listserv.manchester.ac.uk with the body text "subscribe latex-users".
The referencing is one of the very important part of
your documentation.
Please use the reference abbreviation based on
List of IEEE Transactions
and
IEEE Editorial Style Manual.
Movie can be included in LaTeX beamer as follows:
-
Include the lines
\mode<article>{
\usepackage{fullpage,hyperref,flashmovie}
}
\usepackage{media9}
in your latex source code
-
Copy
/software/sl6.3/noarch-software/atbegshi.sty
/software/sl6.3/noarch-software/infwarerr.sty
/software/sl6.3/noarch-software/ltxcmds.sty
into your directory which has your slide latex file exists
-
Convert your images to avi format via
convert *.ppm %03d.png
ffmpeg -f image2 -r 8 -i %03d.png input.avi
-
Convert your movie to swf format via
ffmpeg -i input.avi -r 6000 output.swf
The value of 6000 can be changed depending on the desired speed of
your movie (the higher the value, the faster the movie).
-
Call the movie like
\begin{frame}{1D FDTD Simulation}
\begin{center}
\includemedia[activate=onclick, width=\linewidth,height=0.6\linewidth]{}{wave.swf}
\end{center}
\end{frame}
inside your Latex source code (see
Media 9 Package )
-
Compile the latex file as usual using
pdflatexfull
-
View the pdf file using
acroread
which has to be version 9.4.1 under Unix/Linux.
You can copy the template of this type of presentation
from the cluster
/software/FDTDstandard/latexslidemovie
-
In order to produce the movie,
copy files
/software/FDTDstandard/TadashiMursoftMPI/output_FDTD-2d-xy-3-*.f90
/software/FDTDstandard/TadashiMursoftMPI/output_FDTD-2d-yz-3-*.f90
/software/FDTDstandard/TadashiMursoftMPI/output_FDTD-2d-xz-3-*.f90
/software/FDTDstandard/TadashiMursoftMPI/qualitymovieshell
/software/FDTDstandard/TadashiMursoftMPI/movieshell
/software/FDTDstandard/TadashiMursoftMPI/showshell
/software/FDTDstandard/TadashiMursoftMPI/pgm2ppm.f
into the directory of your FDTD code.
qualitymovieshell is the 2D image movie production and
it needs pgm2ppm which is from pgm2ppm.f (gfortran -O4 -o pgm2ppm
pgm2ppm.f )
movieshell is the low-quality but quick movie production
in 2D. showshell is the quick movie production in 1D.
-
If you need to produce a movie in gif format, just run
convert -resize 200x400 -delay 0.2 *.ppm test.gif
Movie can be sent to our collaborator as follows:
-
Go to
https://www.youtube.com/
-
Press
sign in
which is moving to gmail account login
-
Do not login to your own gmail account but click
sign in with a different account
-
Click
add account
-
Login as
parallel.electro@gmail.com
with the password of
Huygen's
-
Select
Fumie's Group
-
Click
Video
-
Click
Upload
-
Select
unlisted
,not
public
,
and upload your movie
-
Click
done
and copy the web-link indicated
-
Send the web-link to our collaborators
by email
In order to delete the movie:
-
Go to
https://www.youtube.com/
-
Login as
parallel.electro@gmail.com
with the password of
Huygen's
-
Select
Fumie's Group
-
Click
my channel
-
Click
video
-
Click the movie you would like to delete
-
Click
video manager
and
edit
and select
delete
Word Document handling
In the cluster there is a command of ooffice
and you can handle some of the word documents.
However it is difficult to convert
the doc files into pdf file.
The way around is as follows:
-
run
google-chrome
-
open your gmail accont
-
send an email to your gmail account with
the word file as an attachment
-
click "edit with google sheets", the
mark at the most right handside
-
click File -> download as -> select pdf
-
go to
/home/youruserame/Downloads to
find the pdf file
To BSc and MSc Students
Practical skills such as the operating system, programming and documentation
language knowledge are not going to be forced by Fumie
unless your work has a
significant impact on the mainstream of our research.
In this case, you can learn Unix, Fortran, LaTeX and shell-scripting
including the command-line utilities such as
awk ,
sed ,
tgif and
gnuplot
independently.
If you are given an account in our cluster,
you can run graphical programs remotely
from any of the computers in our cluster.
If your home computer runs
Mac OS X, install XQuartz
and run Applications > Utilities > XQuartz.app
Right click on the XQuartz icon in the dock and select
Applications > Terminal . This should bring up a new xterm terminal windows.
In this xterm windows,
ssh -XC -l yourusername -p 22111 IPaddress-of-a-computer-in-our-cluster
If your home computer runs Windows
install the Xming and putty software
and run Xming
and then run putty and enter
the IP address, and set the connection type to SSH
and enable X11 forwarding (Connection > SSH > X11)
and then put your username and passwd.
For students in EEE, the risk assessment form is
assessment
form.
You need to change the name of the student to your name obviously.
Officially the signature of your supervisor and the student
should be placed in the form. However, in reality,
many people just attach the form at the end of
report without any signatures.
As for the technical writing, please see
LaTeX section.
For MSc students, the binding information is in
handbook
and
guideline
For BSc students in EEE, there are
two major assessments prior to the final report.
One is the progress report whose previous
marking sheet is
EEE UG progress report marking scheme.
The other is the e-poster
whose example is
EEE UG e-poster example.
Its previous
marking sheet is
EEE UG poster marking scheme.
For BSc students, the Latex style files for final report is in
3rd year UG Latex Template.
The final report and the viva coincide toward the end of April.
The previous description of the viva procesure is
EEE UG Viva Guidance note for staff.
Please make sure that you take two hard copies of
your executive summary with you at your viva.
The previous marking scheme of the viva is
EEE UG Viva marking sheet.
EEE MSc marking scheme for oral presentation
is nothing to do with the UG viva but it has some
useful information on the oral presentation.
The previous marking sheet for the EEE UG final report is
EEE UG Marking sheet for final report by the second marker
and
EEE UG Marking sheet for final report by the supervisor.
Some typical comments for the final report are
EEE UG typical comments for final report
For MSc students, the Latex style files for final report is in
MSc Latex Template.
When you tar -jxvf MScLatexTemplate.tar.bz2
you will find a directory called MScreport .
The directory has three main Latex files
of initial.tex , progressreport.tex ,
and final.tex
For MSc students in Computer Science,
initial.tex
is the template for the initial report.
Its previous marking scheme is
CS MSc Marking scheme for Initial Report.
progressreport.tex
is the template for the progress report in Computer Science
and for feasibility report in EEE.
Its previous marking scheme for Computer Science is
CS MSc Marking scheme for Progress Report
and its actual form is
CS MSc Marking form for Progress Report.
Its previous marking scheme for EEE is
EEE MSc Marking scheme for Feasibility Report.
The feasibility report and the oral presentation
tend to coincide.
The marking scheme for the oral presentation is
EEE MSc marking scheme for oral presentation.
final.tex
is the template for the MSc thesis.
Its previous marking scheme for Computer Science is
CS MSc Marking scheme for MSc thesis .
Its previous marking scheme for EEE is
EEE MSc Marking scheme for MSc thesis .
Those who are in Computer Science, please run
cp muthesis-CS.cls muthesis.cls
prior to the compilation of
final.tex
Those who are in EEE, please run
cp muthesis-EEE.cls muthesis.cls
prior to the compilation of
final.tex
It it important to
make best use of command.tex
and fumieall.bib
for the short cut for the mathematical variables
and for the proper reference production.
Prior to present your manuscript to Fumie, please go through
a check list for your manuscript preparation .
Accommodation Hunting and USS
Via the Accommodation Office at the University. This is the expensive but easiest option. You just need to go to the Office in person. It is located in the University Place building on Oxford road. Ask people for directions. University owned halls of residence are well maintained and provide central location and pastoral support. Also in halls you will have an opportunity to meat people from all over the world. Another benefit of the University hall is that the hall contract is a package deal. You will not have to worry about the Internet, water and electricity bills. Everything is provided by the University without any headache. But the drawback of the University hall might be a slightly higher price and
noise by other residential students.
List of all university halls with prices:
http://www.manchester.ac.uk/undergraduate/accommodation/list/
Pick the city centre location. It is closer to our office. George Kenyon Hall, Grosvenor Street Building, Opal Hall, Bowden Court, Ronson Hall and Grosvenor Place are recommended.
As for USS,
from
http://www.staffnet.manchester.ac.uk/human-resources/current-staff/pensions/faqs/
membership in each pension scheme is automatic unless you choose to opt out. If you do not want to remain, please contact the Pensions Office for a form to opt out.
Pensions office contact information:
http://www.staffnet.manchester.ac.uk/human-resources/current-staff/pensions/contact-us/
Manchester Student Homes. Privately owned, but University recommended accommodation. The University checks the flats and landlords before suggesting their flats and rooms to students. This option is relatively safe, but you might need a fried to share a flat or house with. Also you will have to sign contracts with electricity, water and internet provider companies. This might require some time to arrange. You may see the Manchester Student Homes offers online:
http://www.manchesterstudenthomes.com/
Student Village Manchester. Private company providing accommodation in central location, but possibly cheaper than the University-owned halls. They also provide packaged (all inclusive) contracts. No separate contracts for water, electricity and internet.
http://www.mcrstudents.com/
Gumtree. A universal website to advertise flat or room rentals. It is unpredictable. You can find a good deal, but also get into trouble with an unpleasant landlord:
http://manchester.gumtree.com/
International Society of the Univeristy. You may visit the Society and look on their notice board for flat or room rentals. Also ask at the counter. These are very friendly people. There might be many international students looking for a flatmate there.
http://www.internationalsociety.org.uk/
Fumie's availability
I shall be available during
13:00-14:00 at https://zoom.us/j/96695299971 Meeting ID: 966 9529 9971
during the week
except Friday at the moment
News
Afnan's PhD viva was super-quick, less than 2 hours
and went very well. Many congratulations to Afnan, all the
hard work paid off. Bit of rest and a big feast to move on to the next journal paper
is what she needs now :-)
Survey
login https://mbclick.manchester.ac.uk/
choose "mobile side" even when you are in front of a desktop PC or a
laptop or a tablet or ...
choose an institution as *Demo*, not the University of Manchester
put "342" in the survey id
click join and select join a *survey* , not a session
fill the form
click "submit"
Lecture theatre
Press screen
Choose LectermPC
Press Display on the left
Press mainpage
Press visualiser
Press Display on the right
Press mainpage
|