[[breakout]]

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
breakout [2018/12/27 09:30]
beckmanf [Running long jobs]
breakout [2020/10/05 15:20]
dke update system summary
Line 11: Line 11:
   * Intel X540-T2 10GB Base-T Ethernet Netzwerkanschluss   * Intel X540-T2 10GB Base-T Ethernet Netzwerkanschluss
   * 4 x NVIDIA Geforce GTX 1080 mit GP104 Pascal, 2560 Cores, 8 GB RAM   * 4 x NVIDIA Geforce GTX 1080 mit GP104 Pascal, 2560 Cores, 8 GB RAM
-  * Debian Linux Jessie, NVIDIA Cuda, Torch +  * Debian Linux Jessie 
-  * NVidia Treiber ​410.78 +  * NVidia Treiber ​450.80.02 
-  * Kernel ​3.16.51-3 +  * Kernel ​4.9.0-13 
-  * Cuda 10+  * Cuda 10, Cuda 8 
 +  * Tensorflow, Torch 
 +  * Docker 19.03.13, Nvidia-docker
  
 ===== Nutzungshinweise ===== ===== Nutzungshinweise =====
Line 150: Line 152:
 </​code>​ </​code>​
  
-Now you can start a program. You can leave the tmux session (and the program) running when you type CTRL-b d. This will detach you from the tmux session. Then you can logout from you ssh session and keep everything running on the breakout. ​The you can login to breakout via ssh again. You can reattach to tmux with+Now you can start a program. You can leave the tmux session (and the program) running when you type CTRL-b d. This will detach you from the tmux session. Then you can logout from you ssh session and keep everything running on the breakout. ​Then you can login to breakout via ssh again. You can reattach to tmux with
  
 <​code>​ <​code>​
Line 156: Line 158:
 </​code>​ </​code>​
  
-Then you should see the output from your running program.+You should see the output from your running program.
  
 === kerberos - keep your file system alive === === kerberos - keep your file system alive ===
Line 162: Line 164:
 When you login to the breakout via your RZ account, then your home directory is mounted on the breakout from the RZ file server via nfs. When you logout from the breakout, then your home directory is unmounted after 5 minutes if you have no job still running. If you have a job running, e.g. via tmux or a job in the background then your home directory remains mounted. ​ When you login to the breakout via your RZ account, then your home directory is mounted on the breakout from the RZ file server via nfs. When you logout from the breakout, then your home directory is unmounted after 5 minutes if you have no job still running. If you have a job running, e.g. via tmux or a job in the background then your home directory remains mounted. ​
  
-If you leave a job running for more than about 10 hours you get errors when you try to access files in your home directory. The reason is that the mounting process requires an authentification ​which is done via the kerberos service. When you login to the breakout with your password, then you automagically receive a kerberos ticket which is derived from the login credentials. This is required by the automounter of your home directory - without a kerberos ticket the nfs server does not allow the access to your files. When I run the pytorch example [[#Running the imagenet training]], then this takes about 5 days. After approximately 10 hours runtime I receive the following bus error message+If you leave a job running for more than about 10 hours you get errors when you try to access files in your home directory. The reason is that the mounting process requires an authentication ​which is done via the kerberos service. When you login to the breakout with your password, then you automagically receive a kerberos ticket which is derived from the login credentials. This is required by the automounter of your home directory - without a kerberos ticket the nfs server does not allow the access to your files. When I run the pytorch example [[#Running the imagenet training]], then this takes about 5 days. After approximately 10 hours runtime I receive the following bus error message
  
 <​code>​ <​code>​
Line 199: Line 201:
 </​code>​ </​code>​
  
-The kerberos ticket lifetime 10h and the renew time is 24h. So after 18:28:43 you cannot access your home directory anymore. You can apply for a new ticket with longer lifetime and a longer renew time with "​kinit"​.+The kerberos ticket lifetime ​is 10h and the renew time is 24h. So after 18:28:43 you cannot access your home directory anymore. You can apply for a new ticket with longer lifetime and a longer renew time with "​kinit"​.
  
 <​code>​ <​code>​
Line 206: Line 208:
 </​code>​ </​code>​
  
-This applies ​for ticket lifetime of 2 days and a renew time of 7 days. You can check the result with klist again.+In the example above you apply for ticket lifetime of 2 days and a renew time of 7 days. You can check the result with klist again.
  
 <​code>​ <​code>​
 beckmanf@breakout:​~$ klist beckmanf@breakout:​~$ klist
-Ticket cache: FILE:/tmp/krb5cc_12487+Ticket cache: FILE:/tmp/krb5cc_12487_ssddef
 Default principal: beckmanf@RZ.HS-AUGSBURG.DE Default principal: beckmanf@RZ.HS-AUGSBURG.DE
  
Line 217: Line 219:
  renew until 03.01.2019 08:30:05  renew until 03.01.2019 08:30:05
 </​code>​ </​code>​
 +
 +The kerberos ticket lifetime is still only 10h but the renew time is now seven days.
 +
 +== Renew a kerberos ticket ==
 +
 +To get a new kerberos ticket you have to provide your password. But you can renew your ticket and extend the lifetime without a password until the maximum renew time expires. You must have a valid non-expired ticket when you start the renew process. In the example above you would have to do the renew until 18:30:09. You can renew with "kinit -R". You do not need a password to do that.
 +
 +== Start a job with automatic kerberos ticket renew ==
 +
 +You can do the ticket renew process automatically. When you start a job with "​krenew",​ then your existing kerberos ticket will be copied to a new ticket cache location and the renew process is automatically done until the renew time expires or the job is done. The ticket cache is copied because the kerberos cache that you received at login (here: /​tmp/​krb5cc_12487_ssddef) will be deleted at logout. To start the example from pytorch imagenet training, this would be done like this:
 +
 +<​code>​
 +krenew python -- main.py --gpu=2 -a resnet18 /​fast/​imagenet
 +</​code>​
 +
 +If you do this inside a tmux session, then you can detach and logout. The job will run for up to seven days. When you login later you can check the status of the jobs kerberos ticket again with klist. You have to provide the filename of the jobs ticket cache.
 +
 +<​code>​
 +klist /​tmp/​krb5cc_12487_ftXjk0
 +</​code>​
 +
 +In my example the new cache name from krenew was /​tmp/​krb5cc_12487_ftXjk0. ​
 +
 +== Login via Public Key Authentication ==
 +
 +When you login via Public Key Authentication,​ then you do not receive a new kerberos ticket. If you do not have a valid kerberos ticket, then you cannot access "​$HOME/​.ssh/​authorized_keys"​ and you are falling back to default password login and receive a new kerberos ticket. If you did the login via Public Key, then your "​klist"​ will not show any kerberos ticket because that is active from some other login session. However you can still run "​kinit"​ and receive a new kerberos ticket. That will be stored in the default kerberos ticket cache location at "/​tmp/​krb5cc_<​uid>"​. ​
 ==== PyTorch ==== ==== PyTorch ====
  
Line 308: Line 336:
 </​code>​ </​code>​
  
-The training takes about 5 days on the breakout. Refer to "Running long jobs" ​to see how you can run that long jobs on the breakout. +The training takes about 5 days on the breakout. Refer to [[#Running long jobs]] to see how you can run that long jobs on the breakout.
  
 ==== Bauingenieure - Photoscan ==== ==== Bauingenieure - Photoscan ====
  • breakout.txt
  • Last modified: 2022/03/26 17:38
  • by beckmanf