Nahajate se tukaj

Wolfram Mathematica

Na sestavu je nameščena Wolfram Mathematica, ki omogoča hkratno :

  • 100 uporabnikov oziroma procesov Mathematica ali MathKernel za nadzor
  • in 800 podprocesov  Sub Mathematica in Sub MathKernel za računanje

kar kahko uporabniki preverijo z ukazom monitorlm. Uporabniki lahko Mathematico poganjajo interaktivno tako, da se najprej preselijo na vozlišče z ukazom node in tako pridobijo 24 lokalnih jeder. Uporaba mathematice na prijavnem vozlišču prelog ni zažjeljena. Primer zagona:

[leon@viz ~]$ module load Mathematica/13.0.0
[leon@viz ~]$ LD_PRELOAD= srun -N 1 --partition=rome --mem=0 --x11 --pty mathematica
Job <3105> is submitted to default queue .

V primeru, da nas Mathematica vpraša za aktivacijo  izberemo Other ways to activate in nato Connect to a network licence server za katerega napišemo viz.hpc ali prelog.fs.uni-lj.si v primeru namestitve in uporabe na osebnem računalniku FS (izven HPCFS).

Uporabniki FS lahko uporabijo licenčni strežnik prelog.fs.uni-lj.si tudi za lokalne namestitve Mathematice. Ker je licenčni strežnik omejen na IP številke FS, je potrebno izjeme (domači statični IPji) vnesti ročno ali uporabiti OpenVPN dostop do preloga.

Primerjalni test

Na enem od vozlišč je bil izveden Mathematica Mark 8 test, ki kaže naslednjo zmogljivost:

Paralelno procesiranje

Če 24 procesnih niti na vozlišču ne zadošča, lahko uporabimo dodatna vozlišča z nastavitvijo Parallel prreferences. Priporoča se integracija sestava z naslednjimi nastavitvami:

Pri naprednih nastavitvah je potrebno nastaviti še vmesnik (Network interface) saj na prelogu obstaja več mrežnih vmesnikov in je potrebno pravilno izbrati prelog kot head node (10.0.2.100). Popraviti je potrebno tudi pot do Kernel program: saj je napačno privzeto 7.0 namesto 10.0 za Mathematico 10.0.

Možno je tudi delo na prelogu tako, da lokalna jedra izklopimo ali omejimo na en proces ali dva, vse ostale pa poganjamo na oddaljenih jedrih. Primer:

Večje število jeder (nad 100) lahko povzroči težave pri vzpostavljanju bsub -K povezav in se lahko zgodi, da zaradi "timeouta" pade delotna povezava. Priporoča se postopno zaganjanje jeder in ne hkratno (Launch All).

Primer ParallelTable

Paralelno procesiranje v Mathematici je možno tako, da pripravimo funkcije, ki jih nato poženemo na več jedrih. V praksi pa nam je paraleliyacija lahko v pomoč takoj, ko opazimo, da nekatere funkcije kot je Plot vzamejo preveč časa in jih raje tabeliramo. Naslednji primer iz fizike plazme kaže, da že za eno točko funkcije W potrebujemo par minut in nato celotno funkcijo paraleliziramo glede na željeno število točk.