-
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
- Alg. kompresji LZW
- 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??
Najnowsze wątki
- 2025-02-17 Kraków => MS Dynamics 365BC/NAV Developer <=
- 2025-02-17 Chrzanów => Programista NodeJS <=
- 2025-02-17 Warszawa => Node.js / Fullstack Developer <=
- 2025-02-17 Białystok => System Architect (Java background) <=
- 2025-02-17 Białystok => Solution Architect (Java background) <=
- 2025-02-17 Gliwice => Team Lead / Tribe Lead FrontEnd <=
- 2025-02-17 Gdańsk => PHP Developer <=
- 2025-02-17 Warszawa => Senior ASP.NET Developer <=
- 2025-02-17 Gliwice => Business Development Manager - Network and Network Security
- 2025-02-17 Mińsk Mazowiecki => Area Sales Manager OZE <=
- 2025-02-17 Odśnieżanie samochodu
- 2025-02-17 Katowice => Regionalny Kierownik Sprzedaży (OZE) <=
- 2025-02-17 Dęblin => JavaScript / Node / Fullstack Developer <=
- 2025-02-17 Pompiarze...
- 2025-02-16 PV teraz