Table of Contents
Opis
MATLAB je programska i numerička računalna platforma koja se koristi za analizu podataka, razvoj algoritama i stvaranje modela. Inženjeri i znanstvenici širom svijeta koriste MATLAB za niz aplikacija, u industriji i akademskoj zajednici, uključujući duboko učenje i strojno učenje, obradu signala i komunikacije, obradu slike i videa, sustave upravljanja, testiranje i mjerenje, računalne financije i računalnu biologiju.
Warning |
---|
Srce ne pruža uslugu korištenja MATLAB Parallel Servera korisnicima bez licencije. |
Na superračunalu Supek dostupan je MATLAB Parallel Server. MATLAB Parallel Server omogućava skaliranje MATLAB programa sa vašeg računala na Supek superračunalo. Za korištenje MATLAB Parallel Server-a potrebno je imati vlastitu licenciju za korištenje.
Verzije
Verzija MATLAB Parallel Servera mora biti kompatibilna sa tj. jednaka verziji MATLAB-a iz koje pokrećete posao. Ukoliko se vaša verzija MATLAB-a ne nalazi na popisu, potrebno je poslati upit za postavljanje potrebne verzije na computing@srce.hr.
Verzija | Supek | Padobran | Vrančić |
---|---|---|---|
2023b |
Licencija i konfiguracija
Za korištenje MATLAB Parallel Servera na Supeku potrebno je omogućiti komunikaciju između Vašeg poslužitelja mrežne licencije i pristupnih poslužitelja Supek-a. Mrežni upravitelj licenci koristi 2 TCP port-a za komunikaciju sa poslužiteljim na kojem se pokreće MATLAB Parallel Server. Portove koje koristi mrežni upravitelj licencija moguće je provjeriti na samom poslužitelju licencija ili u datoteci licencije (license.lic ili license.dat).
Prije korištenja aplikacije MATLAB Parallel Server na Supeku potrebno je:
- Dostaviti IP adresu Vašeg poslužitelja mrežne licencije i port-ove koje upravitelj licencija koristi na computing@srce.hr,
- Na poslužitelju mrežnih licencija otvoriti port-ove koje upravitelj koristi prema IP adresama pristupnih poslužitelja Supeka (161.53.2.37 i 161.53.2.36),
- Kopirati datoteku MATLAB licencije "license.lic",na Supek na lokaciju "$HOME/.matlab/<verzija_matlaba>_licenses/license.lic",
- Prilagoditi uzglavlje datoteke license.lic prema uputama koje ćete dobiti sa computing@srce.hr,
- Raspakirati datoteku matlab_supek.zip (datoteku šalje computing@srce.hr) koja će postaviti profil Supeka na računalu na kojem se pokreće MATLAB,
- Datoteku raspakirati na lokaciji koju ispisuje naredba userpath u MATLAB-u,
- Pokrenuti naredbu configCluster u MATLAB-u → upisati korisničko ime koje vam je dodjeljeno za spajanje na Supek.
- Prilikom pokretanje prvog posla (MATLAB sam otvara prozor) dodati lokaciju datoteke ssh privatnog ključa i lozinke (ako je definirana). Privatni ključ mora odgovarati javnom djelu ključa za pristup Supeku koji ste učitali koristeći web aplikaciju https://computing.srce.hr.
Note |
---|
Za korake 1. i 2. obratite se vašem mrežnom/MATLAB administratoru. |
Konfiguraciju je potrebno napraviti samo jednom.
Postavljanje profila
Pokretanjem configCluster (korak 5. poglavlja Licencija i konfiguracija) naredbe postavljen je profil klastera Supek. Poslovi će se nakon ove naredbe pokretati na Supeku ako nije definirano drugačije.
Postavke profila moguće je pregledati odabirom u izborniku MATLAB-a:
Home → Parallel → Create and Manage Clusters → Supek <verzija>
Note |
---|
Zadano ("default") izvođenje poslova na lokalnom računalu moguće je (vratiti) zadavanjem "Processes" klaster profila ("Set as Default"). |
Postavke profila definiraju parametre poslova koji se podnose na Supeku. Postavke je moguće mijenjati pritiskom na tipku "Edit".
Neke od važnijih postavki profila:
Postavka | Opis |
---|---|
NumWorkers | Maksimalan broj paralelnih procesa jednog posla:
|
NumThreads | Broj dretvi po jednom procesu:
|
AdditionalProperties (SCHEDULER PLUGIN) | |
AdditionalSubmitArgs | Dodatna linija kod podnošenja posla:
|
GPUs | Broj grafičkih procesora:
|
Mem | Količina memorije po jednom chunk-u:
|
Upravljanje poslovima
klaster.Jobs - ispisuje popis svih poslova (lokalno)
delete(klaster.Jobs) - briše sve poslove i datoteke poslova (lokalno)
Podnošenje i upravljanje poslovima
Na Supeku je omogućeno pokretanje samo "batch" MATLAB Parallel Server poslova.
Warning |
---|
Interaktivi poslovi koji se pokreću sa naredbom parpool nisu omogućeni na Supeku! |
Prije okretanja poslova potrebno je stvoriti objekt tipa "cluster" sa naredbom parcluster:
Code Block | ||
---|---|---|
| ||
c = parcluster |
Note |
---|
Naredba parcluster bez argumenata stvara "cluster" objekt iz zadanog (default) "cluster" profila |
Podnošenje poslovia
klaster.Jobs - ispisuje popis svih poslova
Pregled poslova
Podnesi posao na 15 radnika (16 CPU jezgara)
job= klaster.batch('mywave', 'Pool', 15)