Uruchamianie programów z interfejsem graficznym na klastrze

Część aplikacji uruchamianych na serwerach CI TASK działa w trybie graficznym. Aby móc korzystać z ich interfejsu graficznego podczas pracy zdalnej, należy skorzystać z odpowiedniej metody przekierowania obrazu oraz z zasobów przeznaczonych do pracy interaktywnej.

W zależności od wymagań aplikacji dostępne są dwa sposoby pracy:

Wirtualny pulpit z akceleracją 3D

Dla aplikacji wymagających bardziej wydajnego środowiska graficznego, w szczególności wykorzystujących akcelerację sprzętową OpenGL lub zasoby GPU, na klastrze Tryton Plus dostępna jest usługa wirtualnego pulpitu.

Usługa działa na dedykowanych węzłach kolejki gui. Po zarezerwowaniu węzła użytkownik uruchamia na nim serwer VNC, a następnie łączy się z wirtualnym pulpitem za pomocą klienta VNC zainstalowanego na swojej stacji roboczej.

Uruchomienie sesji

  1. Zarezerwuj węzeł z kolejki gui.

    Na serwerze Tryton Plus wykonaj:

    salloc -p gui -n 1 -t 4:00:00

    W powyższym przykładzie węzeł zostanie zarezerwowany na maksymalnie 4 godziny.

  2. Zaloguj się na przydzielony węzeł GUI.

    Po przydzieleniu zasobów przez system kolejkowy należy zalogować się na węzeł wskazany w informacji zwróconej przez Slurm.

  3. Załaduj moduł obsługujący usługę VNC.

    Na węźle GUI wykonaj:

    module load trytonp/vnc_node_launcher/2.0
  4. Uruchom serwer VNC.

    start_vnc

    Po uruchomieniu polecenia w konsoli zostaną wyświetlone informacje niezbędne do zestawienia połączenia VNC.

  5. Połącz się z wirtualnym pulpitem.

    Na swojej stacji roboczej uruchom klienta VNC i zestaw połączenie zgodnie z informacjami wyświetlonymi przez polecenie start_vnc.

    Do uwierzytelnienia należy użyć swoich danych dostępowych do KDM.  Uwaga! Podczas nawiązywania połączenia klient VNC może wyświetlić ostrzeżenie dotyczące niezaufanego certyfikatu TLS. Jest to oczekiwane zachowanie wynikające z użycia certyfikatu typu self-signed, generowanego lokalnie na węźle. Należy zaakceptować to ostrzeżenie.

    Po poprawnym połączeniu dostępny będzie zdalny pulpit działający bezpośrednio na zarezerwowanym węźle GUI. Aplikacje uruchomione w tym środowisku mogą korzystać z lokalnych zasobów GPU węzła.

  6. Zakończenie sesji Po zakończeniu pracy należy zatrzymać serwer VNC:

    stop_vnc

    Następnie należy zakończyć sesję na węźle i zwolnić zarezerwowane zasoby.

    Ważne jest, aby nie pozostawiać nieużywanej sesji VNC ani aktywnej rezerwacji w kolejce gui, ponieważ zasoby tej kolejki są współdzielone przez użytkowników klastra.

Zasoby kolejki gui

Kolejka gui obejmuje 4 węzły przeznaczone do interaktywnej pracy z aplikacjami graficznymi.

Każdy węzeł wyposażony jest w:

  • CPU: 24 rdzenie, Intel Xeon E5-2670 v3 @ 2.30 GHz,
  • RAM: 384 GB,
  • GPU: 2 × NVIDIA Tesla K40c.

Węzły te są przeznaczone przede wszystkim do uruchamiania aplikacji wymagających zdalnego interfejsu graficznego i sprzętowej akceleracji grafiki.

Przekierowanie interfejsu graficznego aplikacji na lokalną stację roboczą - Linux

Przykład uruchomienia programu Fluent w trybie graficznym dla system Linux

ssh -X kdm.task.gda.pl
ssh -X trytonp
salloc --time 4:00:00 --partition interact
ssh -X $(scontrol show hostname $SLURM_NODELIST | head -n1)
module load trytonp/ansys/23.2
fluent -driver opengl

Przekierowanie interfejsu graficznego aplikacji na lokalną stację roboczą - Windows

Zalecamy użycie programu MobaXterm, który ma zaimplementowany serwer X niezbędny do przekierowania wyświetlania z węzła klastra. Posiada również wbudowanego klienta ssh, którego można użyć zamiast programu putty. Wersja "Home Edition" programu MobaXterm jest darmowa i można ją pobrać pod poniższym linkiem: https://mobaxterm.mobatek.net/download-home-edition.html

Po uruchomieniu sesji ssh w programie Mobaxterm należy wpisać identyczną sekwencję komend, jak dla systemu Linux:

ssh -X kdm.task.gda.pl
ssh -X trytonp
salloc --time 4:00:00 --partition interact
ssh -X $(scontrol show hostname $SLURM_NODELIST | head -n1)

W przypadku problemów z wyświetlaniem, należy się upewnić, że serwer X jest uruchomiony (ikonka w prawym, górnym rogu).