-
Data: 2012-03-11 07:54:43
Temat: Re: OpenMP - pewnie, że szybciej (aka "zagadka" rozwiązana)
Od: Karol Y <k...@o...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]> Jak będziesz już trochę starszy, to w _twoim_ słowniku pojawią się takie
> zwroty jak: "nie warto, bo i tak nikt za to nie zapłaci"; "nie będziemy
> tego robić, bo przekroczylibyśmy termin"; "nie trzeba, bo to co już mamy
> wystarczy"; "nie zajmujemy się tym, bo zakończyliśmy ten projekt".
Jakby było tak nie warto, to byś nie drążył wątku o ponad 80 postach.
> W pewnym wieku, jak się jest młodym (i naiwnym), to wydaje się ludziom,
> że dadzą radę zrobić wszystko... i to jeszcze w tym tygodniu. Z czego to
> wynika?
Nie wiem, za stary już jestem ;-)
> Podsumowując: OpenMP nie jest zbyt dobre do zrównoleglania prostych
> obliczeń trwających mniej niż 1 ms per wątek. Wniosek: w danej sytuacji
> algorytm szeregowy jest lepszy niż algorytm równoległy. Oczywiście
> wersja szeregowa algorytmu równoległego jest jeszcze gorsza od obu. BTW,
> obejrzałem sobie Thurst'a i... - to niezupełnie ta bajka - jeżeli już to
> CUDA BLAS/LAPACK.
Nic nie jest dobre do tego. Jak jedna pętla trwa mniej to należy problem
zaadresować szerzej. Utworzenie wątku kosztuje, procesu jeszcze więcej.
No to wymyślili pule. Ale nawet tutaj przydzielanie kodu i przerzucanie
argumentów między kontekstami też kosztuje. Zrównolegla się możliwie
największe kroki, które da się wykonywać jednocześnie. Jeżeli napiszesz,
że to właśnie ta pętelka, to albo podzielić ilość kroków na ilość
wątków* i każdemu dać swoją część albo jednak trzeba rozważyć
zrównoleglenie np. dwóch zadań niż kroków jednego zadania - suma
summarum wyjdzie sensowniej.
* jeżeli właśnie to robiłeś (nie znam C i nie wiem jak deklaracje OpenMP
są interpretowane), to najwyraźniej synchronizacja albo wchodzenie do
ogródka sąsiada miałeś zwalone.
--
Mateusz Bogusz
Następne wpisy z tego wątku
Najnowsze wątki z tej grupy
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
Najnowsze wątki
- 2025-02-06 PROGRAM DOPŁAT DO AUT ELEKTRYCZNYCH TO ABSURD. ZA ŚRODKI Z KPO KUPIMY NIEMIECKIE I CHIŃSKIE AUTA
- 2025-02-05 ceny OC
- 2025-02-05 Re: ceny OC
- 2025-02-05 Re: ceny OC
- 2025-02-07 Smar do video
- 2025-02-06 Litowe baterie AA Li/FeS2 a alkaliczne
- 2025-02-07 Gliwice => Business Development Manager - Network and Network Security
- 2025-02-07 Warszawa => System Architect (Java background) <=
- 2025-02-07 Warszawa => System Architect (background deweloperski w Java) <=
- 2025-02-07 Warszawa => Solution Architect (Java background) <=
- 2025-02-07 Gliwice => Ekspert IT (obszar systemów sieciowych) <=
- 2025-02-07 Lublin => Programista Delphi <=
- 2025-02-07 Warszawa => Architekt rozwiązań (doświadczenie w obszarze Java, AWS
- 2025-02-07 Dęblin => Node.js / Fullstack Developer <=
- 2025-02-07 Bieruń => Spedytor Międzynarodowy (handel ładunkami/prowadzenie flo