-
Data: 2012-03-03 12:49:11
Temat: Re: OpenMP - jest szybciej czy wolniej?
Od: "slawek" <s...@h...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]
Użytkownik "Roman W" <b...@g...pl> napisał w wiadomości grup
dyskusyjnych:17879294.84.1330773260414.JavaMail.geo-
discussion-forums@vbbfy7...
> On Saturday, March 3, 2012 10:13:08 AM UTC, slawek wrote:
>> Właśnie w tym cały wic:
>>
>> 1. OpenMP "podręcznikowo" stosuje się tak:
>>
>> !$omp parallel do
>> do i = 1,N
>> ! ... robota do wykonania
>> end do
>> !$omp end parallel do
>>
>> tymczasem narzut na utworzenie wątków jest paskudnie duży i opłaca się
>
> To, skoro masz do zrownoleglenia prosta petle, olej Open MP i tworz watki
> samemu? W C++ moglbys uzyc np. boost::threads. Latwe w uzyciu i tanie.
Więc właśnie dojrzałem do olania.
Mam dużo rachowania na liczbach zespolonych, ma to działać pod
Uniksem/Linuksem/? (co tam gdzie się znajdzie), ma to w miarę możliwości
używać wielu CPU (tzn. 2048 rdzeni na ten przykład), ma być
łatwe-proste-przyjemne (jeden plik źródłowy), z bibliotek to niech używa
lapack/blas/itp. a i to może lepiej nie, bo i po co?
Wybór padł na Fortran, bo dość łatwo go znaleźć na mainframesach (zwykle są
ze 3-4 kompilatory do wyboru). Oczywiście (?) nie Fortran 77, bo nie chce mi
się liczyć do 73. A po lekturze książki Krzyżanowskiego "Obliczenia
inżynierskie i naukowe. Skuteczne, szybkie, efektowne", Wydawnictwo Naukowe
PWN, 2011, http://www.mimuw.edu.pl/~przykry/ przyszło mi do głowy, że jak
już jest gotowy (tzn. działa, ale sam problem który jest nim rozwiązywany
"ewoluuje", np. udało mi się rozwiązać niezły jego kawałek analitycznie, co
stwarza zupełnie nowe możliwości) program, to dodanie współbieżności a'la
OpenMP jest trywialne i - co najważniejsze - da się zrobić standardowo w
Fortranie. Bez niszczenia tego, co jest.
I niestety, wydaje się że cała koncepcja OpenMP jest w tej chwili po prostu
błędna. Podobne do moich problemy są dość często spotykane - program z
OpenMP działa wolniej niż bez. A skoro działa wolniej - to nie ma
najmniejszego sensu używać. Bo i po co używać czegoś, co wymaga dodatkowej
roboty i od programisty, i od komputera - a nic w zamian nie daje?!
I jeszcze jedno - OpenMP z GCC 4.6 obciąża rdzenie 20% do 30%. OpenMP jakie
daje Microsoft (w MS Visual Studio Professional 2010) jest znacznie
wydajniejsze: obciążenie idzie do 100% na każdym rdzeniu. Ale i tak program
z OpenMP osiągnął wydajność... 50% wydajności programu bez OpenMP. I
dlatego - jeżeli nie będzie postępu - OpenMP jest chybione.
To już wolę PBS i uruchomić endziesiąt instancji mojego programu - każda z
innym zestawem danych. Też jest równolegle, a nawet prościej - nie trzeba
nic w programie zmieniać.
A jak będę się nudził, to raczej spróbować na GPU/CUDA niż drążyć OpenMP.
Zwłaszcza iż OpenMP nie wiadomo jak obsługuje I/O i takie tam.
Następne wpisy z tego wątku
- 03.03.12 12:57 slawek
- 03.03.12 13:12
- 03.03.12 13:32 slawek
- 03.03.12 14:39
- 03.03.12 15:08 slawek
- 03.03.12 15:44 Edek Pienkowski
- 03.03.12 15:49 Edek Pienkowski
- 03.03.12 15:53
- 03.03.12 16:12 slawek
- 03.03.12 16:29 Edek Pienkowski
- 03.03.12 21:29
- 03.03.12 21:33 M.M.
- 03.03.12 23:13 slawek
- 04.03.12 05:46 M.M.
- 04.03.12 10:29 Roman W
Najnowsze wątki z tej grupy
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
- C++. Podróż Po Języku - komentarz
- "Wuj dobra rada" z KDAB rozważa: Choosing the Right Programming Language for Your Embedded Linux Device
- Nowa ustawa o ochronie praw autorskich - opis problemu i szkic ustawy
- 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)
Najnowsze wątki
- 2025-05-08 Warszawa => Senior Node.js Developer (doświadczenie z framework Nest.
- 2025-05-07 Wielki smog w Watykanie
- 2025-05-07 Polscy czołgiści najlepsi w międzynarodowych zawodach na Łotwie!!!
- 2025-05-07 Znaki wewnętrzne
- 2025-05-07 Czujnik nacisku
- 2025-05-07 Wielki smog w Watykanie Nadal palą węglem w piecach
- 2025-05-07 Kraków => Business Development Manager - Network and Network Security
- 2025-05-07 Białystok => Team Lead Data Engineer (obszar Snowflake) <=
- 2025-05-07 Białystok => Team Lead Data Engineer (Snowflake) <=
- 2025-05-07 Warszawa => IT Recruiter <=
- 2025-05-07 Żerniki => Dyspozytor Międzynarodowy <=
- 2025-05-07 Szczecin => Key Account Manager IT <=
- 2025-05-07 Wrocław => Konsultant wdrożeniowy Comarch XL (Logistyka, WMS, Produk
- 2025-05-07 Warszawa => Senior Node.js Developer (Nest.js framework) <=
- 2025-05-07 Ekstradycja Sebastiana M