Prethodna tema :: Sljedeća tema |
Autor/ica |
Poruka |
venovako Forumaš(ica)
Pridružen/a: 07. 11. 2002. (22:46:38) Postovi: (2F9)16
|
|
[Vrh] |
|
venovako Forumaš(ica)
Pridružen/a: 07. 11. 2002. (22:46:38) Postovi: (2F9)16
|
Postano: 23:33 pet, 7. 10. 2011 Naslov: |
|
|
Tri napomene u vezi zadaće:
Kompleksni broj [tt]z[/tt] je zapisan u datoteci kao [tt](Re(z),Im(z))[/tt], npr. (1.0,-2.6).
Kod matričnog množenja trebate ZGEMM rutinu.
MKL koristite s opcijom -mkl=sequential a ne -mkl=parallel! Iako bi i druga opcija trebala raditi, u čemu je stvar:
Opcija -mkl=parallel ne znači da MKL koristite iz paralelnog programa,
nego da MKL paralelizira operaciju (npr. zgemm) "iznutra"!
Vama to ne treba, jer može biti kontraproduktivno ("višak" paralelizacije na koji niste računali stvorit će iste probleme s resursima kao i svako pokretanje previše dretvi u odnosu na broj dostupnih procesora).
Paralelni MKL najčešće se koristi u 2 slučaja:
1) Za sekvencijalne programe, da iskoriste više jezgara bez ikakve intervencije u kodu (do na kompajliranje).
2) Za pažljivo pisane paralelne programe, koji zauzmu jezgre koje stave na raspolaganje MKLu. O tome će jos biti priče kod MPI programiranja.
Tri napomene u vezi zadaće:
Kompleksni broj z je zapisan u datoteci kao (Re(z),Im(z)), npr. (1.0,-2.6).
Kod matričnog množenja trebate ZGEMM rutinu.
MKL koristite s opcijom -mkl=sequential a ne -mkl=parallel! Iako bi i druga opcija trebala raditi, u čemu je stvar:
Opcija -mkl=parallel ne znači da MKL koristite iz paralelnog programa,
nego da MKL paralelizira operaciju (npr. zgemm) "iznutra"!
Vama to ne treba, jer može biti kontraproduktivno ("višak" paralelizacije na koji niste računali stvorit će iste probleme s resursima kao i svako pokretanje previše dretvi u odnosu na broj dostupnih procesora).
Paralelni MKL najčešće se koristi u 2 slučaja:
1) Za sekvencijalne programe, da iskoriste više jezgara bez ikakve intervencije u kodu (do na kompajliranje).
2) Za pažljivo pisane paralelne programe, koji zauzmu jezgre koje stave na raspolaganje MKLu. O tome će jos biti priče kod MPI programiranja.
|
|
[Vrh] |
|
venovako Forumaš(ica)
Pridružen/a: 07. 11. 2002. (22:46:38) Postovi: (2F9)16
|
|
[Vrh] |
|
bozidarsevo Forumaš(ica)
Pridružen/a: 17. 09. 2008. (10:15:01) Postovi: (1D1)16
Spol:
Lokacija: Samobor
|
|
[Vrh] |
|
GCOX Forumaš(ica)
Pridružen/a: 24. 10. 2006. (12:43:03) Postovi: (A8)16
Spol:
Lokacija: SPLIT_ZAGREB
|
|
[Vrh] |
|
venovako Forumaš(ica)
Pridružen/a: 07. 11. 2002. (22:46:38) Postovi: (2F9)16
|
Postano: 18:29 pon, 24. 10. 2011 Naslov: |
|
|
[quote="GCOX"]Jeli je ispravno uzeti za pretpostavku da je na Fermiju validan parametar 1<=P <=450??
P.S. Fermi vrti >=10000 dretvi pa eto sad znan i odgovor na svoje pitanje...[/quote]
Vas zanimaju hard i soft vrijednosti limita [tt]RLIMIT_NPROC[/tt] za običnog korisnika.
Više možete saznati funkcijom [tt]getrlimit[/tt] (pogledajte manual) iz programa
( primjer: http://titan.fsb.hr/~venovako/nastava/PMF-MO/ParAlg12/1/vj/01/prc_lim.c )
ili komandom [tt]ulimit -u[/tt] za soft, odnosno [tt]ulimit -Hu[/tt] za hard limit is shell-a.
Ukratko: kao obični korisnik možete istovremeno imati pokrenuto ukupno onoliko threadova kolika je trenutna vrijednost soft limita.
Soft limit možete povećati najviše do hard limita, iz programa funkcijom [tt]setrlimit[/tt], ili komandom [tt]ulimit -Su novi_soft_limit[/tt] iz shell-a.
P.S. Za zadaću ne morate toliko komplicirati, smijete pretpostaviti neku razumnu gornju ogradu (npr. 1024 threada je OK, ali 3 threada nije OK ograda).
GCOX (napisa): | Jeli je ispravno uzeti za pretpostavku da je na Fermiju validan parametar 1⇐P ⇐450??
P.S. Fermi vrti >=10000 dretvi pa eto sad znan i odgovor na svoje pitanje... |
Vas zanimaju hard i soft vrijednosti limita RLIMIT_NPROC za običnog korisnika.
Više možete saznati funkcijom getrlimit (pogledajte manual) iz programa
( primjer: http://titan.fsb.hr/~venovako/nastava/PMF-MO/ParAlg12/1/vj/01/prc_lim.c )
ili komandom ulimit -u za soft, odnosno ulimit -Hu za hard limit is shell-a.
Ukratko: kao obični korisnik možete istovremeno imati pokrenuto ukupno onoliko threadova kolika je trenutna vrijednost soft limita.
Soft limit možete povećati najviše do hard limita, iz programa funkcijom setrlimit, ili komandom ulimit -Su novi_soft_limit iz shell-a.
P.S. Za zadaću ne morate toliko komplicirati, smijete pretpostaviti neku razumnu gornju ogradu (npr. 1024 threada je OK, ali 3 threada nije OK ograda).
|
|
[Vrh] |
|
Mas Forumaš(ica)
Pridružen/a: 18. 10. 2008. (11:22:20) Postovi: (53)16
Spol:
|
|
[Vrh] |
|
venovako Forumaš(ica)
Pridružen/a: 07. 11. 2002. (22:46:38) Postovi: (2F9)16
|
Postano: 17:35 uto, 25. 10. 2011 Naslov: |
|
|
Moguće je svaki četvrtak prije ili poslije nastave, osim ako se ne kaže suprotno.
Najava je poželjna da se zna koga se čeka.
Podsjećam da trebate poslati kod zadaće prije obrane.
Molim da, prilikom najave, odaberete jedan od termina:
13:00, 13:15, 13:30, 13:45 ili nakon nastave.
Kako bi i drugi kolege vidjeli što je slobodno, stavite obavijest o odabranom terminu na ovaj topic.
Za 27.10. je termin 13:45 zauzet.
Također, 2 studenta su se najavila za nakon nastave, pa ćete trebati ponešto pričekati.
Moguće je svaki četvrtak prije ili poslije nastave, osim ako se ne kaže suprotno.
Najava je poželjna da se zna koga se čeka.
Podsjećam da trebate poslati kod zadaće prije obrane.
Molim da, prilikom najave, odaberete jedan od termina:
13:00, 13:15, 13:30, 13:45 ili nakon nastave.
Kako bi i drugi kolege vidjeli što je slobodno, stavite obavijest o odabranom terminu na ovaj topic.
Za 27.10. je termin 13:45 zauzet.
Također, 2 studenta su se najavila za nakon nastave, pa ćete trebati ponešto pričekati.
|
|
[Vrh] |
|
venovako Forumaš(ica)
Pridružen/a: 07. 11. 2002. (22:46:38) Postovi: (2F9)16
|
|
[Vrh] |
|
|