Skip to content

Running persistent processing jobs

Persistent processing jobs allow the user to run a job in a shell and quit the shell without terminating the process. It will run in the background until the job completes or the user decides to terminate it. The program we recommend people to use is tmux!

tmux

tmux is a newer alternative to screen. The same approach is used - connect to the remote system, start a tmux session, start the job, disconnect from the tmux session, and log-out.

start session | tmux

disconnect from session | <ctrl-b d> (control b + "d")

re-connect to existing session | tmux a

check for existing sessions | tmux ls

quit tmux session | exit

example tmux file transfer

localsys> ssh [meyer@xtal200.harvard.edu](mailto:meyer@xtal200.harvard.edu)

connect to remote system

crystal> tmux # start tmux session

crystal> scp -r -p meyer@remote_site:~/data/ ~/data/ # start data transfer

crystal> <ctrl-b d> # disconnect from tmux session

crystal> logout # disconnect from remote system

localsys> # all done

example tmux computational job

localsys> ssh [meyer@xtal200.harvard.edu](mailto:meyer@xtal200.harvard.edu)

connect to remote gateway system

crystal> ssh abacus # connect to your workstation; replace abacus with the name of your workstation

abacus> tmux # start tmux session

abacus> ./data_processing_script.sh # start processing data

abacus> <ctrl-b d> # disconnect from tmux session

abacus> logout # disconnect from workstation

crystal> logout # disconnect from gateway system

localsys> # all done

For more information, see the tmux homepage.