JupyterHUB

Access link: https://hpc.troja.mff.cuni.cz:8000/.

  • JupyterHUB provides immediate access to the cluster. No need to install anything.
  • Drag & Drop supported for file upload.
  • Any paritions of the cluster can be accessed through this service.

Quick start

Fig.1

  1. Login: Use the access link above and click on Sign in with Charles University.
  2. Resource Selection:
    • Partition: Use edu for teaching/testing (3-hour limit); use departmental/specialized partitions for research.
    • Memory/CPU: Default is 2 GB RAM and 2 CPUs (1 core). Default units are MB.
    • Other Options: Use -A <account_name> in Other SLURM options if accessing a project or a course partition.
  3. Usage: Click on the tool you want to use
    • Tools: Basic tools such as Python3, Gnuplot, Mathematica, Bash and many other specialized applications.
    • Files: Supports drag-and-drop for uploads. For downloads, right-click and select Copy Download link.
  4. Closing Session: You must end the session in the JupyterHUB control panel (File/Hub Control Panel). Simply logging out keeps the remote session running until the wall-time expires.

Issues

  • See below for a list of possible issues.
  • Report issues at Mattermost: channel JupyterHUB and The Virtual Learning Environment. You can also use it to communicate with others working on the cluster. You may also contact the cluster admin.

Uploading files from your computer

You can copy files easily by drag & drop from a folder on your PC. This avoids the need to use scp and the command line. Fig.1

Downloading files to your computer

To download a file from the cluster to your PC right-click on the file and select Copy Download link from the menu. Then copy-paste this address into a new tab of your browser. This will download the file to your PC. Fig.1


Detailed instructions

1. Login

  • Use the Access link above.
  • Start by clicking on the Sign in with Charles University.

Fig.1

  • Complete the standard CAS log-in procedure.
  • If you are already logged in via OAuth from CAS you will be logged in automatically.

2. Selecting the computing resources

Fig.1

Default resources

  • A single physical core (equivalent of 2 CPUs in the SLURM scheduling system)
  • 2 GB of RAM
  • 2 hours of wall time in edu partition.

The edu partition is meant primarily for education (students) and testing. If you want to do some serious calculation or code development, please use a different partition.

Possible issues

  • Launching your job may take up to a minute on priority partitions, it may be slower on low priority partition (ffa*). If the resources don't become available in 10 minutes your session will be timed out and you have to try again. The same is true if you request resources that are not available on the cluster.

  • If lots of pending in queue messages and then the message Spawn failed: timeout appears after requesting a node, it means that the nodes for the edu partition are full and/or reserved for teaching. You can try using ffa, ffa-short or your department partition if there are resources available.

  • Note that some applications may require more than the default resources to start, e.g. LangFlow. If your application fails to launch, try increasing the resources.

  • Don't forget that if you specify memory resources without units that the default is megabytes.

Resource details:

  • Partition: edu partition should be used for teaching and small short experiments, it is limited to 3h but with higher priority. Department / project partitions should be used if you want to do longer / larger calculations, but you have to be included in the account associated with that partition.

  • Time: maximal walltime for your session, you can use the format hh:mm:ss or d-hh. Please be aware of the time limit of the corresponding partition. For edu the time limit is 3 hours.

  • Memory: most nodes on the cluster (and all nodes in the edu partition) have 496 GB RAM available, but 2 GB should be enough for many applications. Default units are megabytes. Different units can be specified using the suffix [K|M|G|T].

  • CPUs per task: unless other options are specified, cores on the cluster have 2 CPUs (SLURM counts SMT threads as CPUs), and you cannot access only part of the core. Maximum CPUs for most nodes is 128 (2 processors per node, 32 cores per processor, 2 threads per core)

  • Reservation: enter only when you have the reservation code (obtained from your lecturer or admin). These will be typically used to secure resources for the duration of a lecture.

  • Other SLURM options: if you are using a partition corresponding to an account it is recommended to add -A account_name to these parameters. You can also specify other resources (GPUs) or features - for details see our SLURM manual or the sbatch manual. For edu partition you can leave this field empty.

Starting your session will fail in case your requested resources lie outside of the limits of the partition or a machine with such parameters doesn't exist in that partition. The message can read e.g.:

Spawn failed: sbatch: error: The limit for edu partition is 3 hours! sbatch: error: Batch job submission failed: Requested time limit is invalid (missing or exceeds some limit)

In this case you requested a session longer than the time limit of 3h for jobs in edu.

When you hit the Start button the system will put your job in the queue and you'll see the message

Pending in queue...

Your job will start as soon as the requested resources become available. You'll see the message Pending in queue... repeatedly until the job starts. If you don't want to wait (someone else has taken the resources), you can abort the current session and attempt to launch a job with a different (smaller) resource request or in a different queue.

3. Starting your application

Once your session has successfully started, you can start using any of the preinstalled tools and applications.

Fig.1

  • Other kernels can be installed either locally (i.e. by you in your own home directory) or centrally upon request. The full list of supported kernels is available here.
  • Many libraries for python can be installed into your user space (home). To install e.g. the networkx library enter pip install networkx into your python cell.
  • You can access the command line interface (bash) by clicking on the Terminal app and use it as a web-based terminal for interacting with the cluster.
  • Be aware that the application does not show hidden files (this option has to be enabled in the configuration).

Installing specific applications

Julia

Global installations for Julia are not well supported. Instead there is a simple script install-julia that you can run in the bash terminal (access via the Terminal app). It will install Julia with the default paths and add the Jupyter kernel to your JupyterHUB.

Agentic research: Biomni Web and Claude Science

Biomni Web and Claude Science can also be opened from your JupyterHUB session. They are not installed globally; each user installs a small launcher into their own user space and restarts their JupyterHUB server. See Agentic platforms for research for the details.

4. Closing the session

Fig.1

  • Navigate to the JupyterHUB control panel (File/Hub Control Panel), and click on Stop My Server. This will cancel your JupyterHUB session in the SLURM scheduling system and disconnect your browser from the cluster.
  • Clicking on Log Out in the File menu will only log you out from the web interface, while your session (SLURM job) remains running on the cluster. You can login later and continue working as long as your session (job) remains alive on the cluster.
  • Your session will be terminated automatically when its walltime exceeds the Time you specified in the resources selection.