You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 11 Next »

Opis

Mathematica je komercijalni softver za matematičko računanje, simboličko i numeričko računanje, programiranje, vizualizaciju i analizu podataka. Ovaj softver omogućuje korisnicima da rade sa širokim spektrom matematičkih funkcija i formula, te ih primijene u različitim područjima kao što su matematika, fizika, kemija, biologija, financije, inženjerstvo i druge znanstvene discipline.

Verzije

VerzijaModulRedSupekPadobranVrančić
13.2.1scientific/mathematica/13.2.1cpu(tick) (error) (error) 
13.3.0scientific/mathematica/13.3.0cpu(tick) (error) (tick) 

Službena dokumentacija

Licenca i korištenje (Supek)

Srce ima na raspolaganju 28 takozvanih "floating seat" ili "plivajućih" licenci. Ovaj tip licenciranja omogućava pristup Mathematica softvera većem broju korisnika, ali ograničava broj istovremenih korisnika tj. instanci Mathematica-e na 28. Osim 28 plivajućih licenci, računanje je ograničeno na ukupno 224 "Subkernels-a". Subkerneli su pomoćni procesi koji se pokreću kako bi se omogućilo korištenje distribuirano ili paralelno računanje. Broj subkernela koje koji se koriste u jednom poslu odgovara broju zatraženih CPU jezgara.


Broj dostupnih licenci i subkernela na Supek-u je podložan promjenama u budućnosti a korisnici mogu provjeriti trenutno stanje sa naredbom:

qstat -Bf


Ovom naredbom moguć je:

Pregled ukupno dostupnih licenci na Supek-u
resources_available.math_cpu = 224 --> Broj subkernela
resources_available.math_lic = 28  --> Broj licenci

i

Pregled licenci trenutno u upotrebi na Supeku
resources_assigned.math_cpu = 32  --> Broj subkernela
resources_assigned.math_lic = 4  --> Broj licenci


Broj slobodnih licenci u trenutku provjere jednak je razlici ukupno dostupnih i licenci trenutno u potrebi. Za gore naveden primjer, broj slobodnih licenci iznosio bi 24, tj. 192 subkernela.

Podnošenje posla

U uzglavlju skripte za podnošenje posla OBAVEZNO je navesti dodatna 2 parametra math_lic i math_cpu.

math_lic - broj licenci koje rezervirate sa pokretanjem posla (Uvijek 1!)

math_cpu - broj subkernela koje rezervirate sa pokretanjem posla. Ovaj broj mora odgovarati broju jezgara zatraženih sa parametrom select=broj jezgara.

OBAVEZNO

math_lic=1

Primjer

Primjer u nastavku sastoji se od PBS skripte za podnošenje posla (test.pbs) i Mathematica skripte (hpc_test.wl) koje se moraju nalaziti u istom direktoriju da bi posao bio uspješno izvršen. Resursi i rezervacija licence (test.pbs) zatražena je po uputama iz poglavlja "Podnošenje posla".

Naredbe iz skripte hpc_test.wl izvršiti će mathematica. Sa prve dvije linije pokreće se broj subkernela koji odgovara broju zatraženih jezgara sa parametrom select (u ovom slučaju 8). Nastavak skripte izvršiti će 2 iste naredbe sa jednom bitnom razlikom. Naredbom ParallelTable računanje će se izvršiti na 8 jezgara dok će se u slučaju naredbe Table računanje izvršiti na 1 jezgri.

Zahtjev broja jezgara izveden je samo sa select parametrom. Takvom definicijom posla, PBS_NODEFILE varijabla sadrži popis svih dodijeljenih jezgara (na jednom ili više čvorova) te će se u uvijek pokrenuti odgovarajući broj subkernela.

test.pbs
#PBS -N test_math
#PBS -q cpu
#PBS -l select=8
#PBS -j oe
#PBS -l math_lic=1
#PBS -l math_cpu=8

cd ${PBS_O_WORKDIR}
module load scientific/mathematica/13.2.1
 
math -script hpc_test.wl
hpc_test.wl
h = ReadList[Environment["PBS_NODEFILE"], "String"];
Map[LaunchKernels[KernelConfiguration[#,"KernelCommand" -> "/apps/scientific/mathematica/13.2.1/Executables/wolfram"]]&, h]

t=AbsoluteTiming[Table[Length@FactorInteger[10^50+i], {i,20}]]
Print["Vrijeme racunanja na jednoj jezgri=", t]
t=AbsoluteTiming[ParallelTable[Length@FactorInteger[10^50+i], {i,20}]]
Print["Vrijeme racunanja na osam jezgra=", t]

CloseKernels[]


Korištenje (Vrančić)

Mathematica je dostupna u interaktivnom modu putem Mathematica GUI-a na Vrančiću.

Pokretanje Mathematica virtualnog poslužitelja

Prvi korak je pokretanje virtualnog poslužitelja iz unaprijed pripremljene slike naziva mathematica-rocky-9 (Compute → Instances → Launch Instance → Source → mathematica-rocky-9). Više o upravljanjem virtualnim poslužiteljima pročitajte na poveznici.

Sigurnosna grupa

Nakon stvaranja virtualnog poslužitelja potrebno je napraviti i dodati sigurnosnu grupu kako bi virtualni poslužitelj mogao pristupiti poslužitelju mathematica licenci.

Stvaranje sigurnosne grupe

Upravljanje sigurnosnim grupama moguće je odabirom opcije "Security Groups" u "Network" padajućem izborniku.

Pritiskom na dugme "Create Security Group" otvoriti će se novi prozor u kojem je potrebno upisati proizvoljan naziv sigurnosne grupe (npr. mathematica).

Postavke sigurnosne grupe

Nakon što je sigurnosna grupa napravljena potrebno ju je konfigurirati pritiskom na dugme "Manage Rules" te zatim "Add Rule".

Polja za pravilo sigurnosne grupe ispunjavaju se sa idućim vrijednostima:

  • Rule - Custom TCP Rule
  • Description - proizvoljan opis
  • Direction - Ingress
  • Open Port - Port
  • Port - 16286
  • Remote - CIDR
  • CIDR - 161.53.0.232










  • No labels