-
Data: 2012-03-02 00:35:15
Temat: Re: OpenMP - jest szybciej czy wolniej?
Od: "Jordan Szubert" <u...@j...us.to> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Dnia 01-03-2012 o 22:34:06 slawek <s...@h...pl> napisał(a):
> Procedura solve (napisana w Fortranie), według profilera, wykonuje się
> 2.43 mikrosekundy jako "single thread". Jeżeli jednak uruchomić program
> jako wielowątkowy (2 wątki, OpenMP), to profiler pokazuje około 1.21
> mikrosekundy. Problem jednak w tym że cały program, co zmierzyłem
> "ręcznie" zwykłym stoperem, a także przez CPU_TIME z wnętrza programu,
> wykonuje się wtedy nie krócej - ale aż 20 razy dłużej!
>
> Ciekawe: gprof stwierdza, że to co się zaoszczędziło na 2-gim wątku
> zostało zjedzone przez _gcc_deregister_frame, ale i tak - według
> profilera - cały program liczył się trochę krócej...
>
> Co to jest? Kiepska implementacja OpenMP? Urok systemu MS Windows XP ?
> (Komputer z fizycznie 2-ma rdzeniami i tyle właśnie wątków jest z
> OpenMP.)
>
> A może jest tak, że jak program jest uruchomiony jako jednowątkowy, to
> idzie na jednym rdzeniu i nikomu/niczemu nie pozwala sobie przerywać
> (prawie 100% obciążenia rdzenia), natomiast dwuwątkowo co chwila blokuje
> go sam system (obciążenie obu rdzeni jest jakieś takie połowiczne). I
> choć CPU-time jest - jak widzi to profiler - 3.2 sekundy - to wall-time
> jest niemal dwuminutowy?!
>
> Ma ktoś pomysł jak to rozruszać?
myślę, że może być tak, że dwurdzeniowy program poświęca dużo czasu na
przerzucanie danych między rdzeniami, a jednordzeniowy cały czas ma dane w
tym rdzeniu, co trzeba (bo jedynym)
może być coś innego, Fortrana ni OpenMP nie znam, nie wiem co twój kod
robić próbuje...
--
Jordan Szubert
Następne wpisy z tego wątku
- 02.03.12 01:17 Roman W
- 02.03.12 11:53 slawek
- 02.03.12 12:03 slawek
- 02.03.12 12:12 Arkadiusz Dymek
- 02.03.12 12:12 slawek
- 02.03.12 12:16 Edek Pienkowski
- 02.03.12 12:28 slawek
- 02.03.12 12:35 slawek
- 02.03.12 12:46 Edek Pienkowski
- 02.03.12 12:52 Edek Pienkowski
- 02.03.12 13:00 slawek
- 02.03.12 13:01 Paweł Kierski
- 02.03.12 13:02 Paweł Kierski
- 02.03.12 13:07 slawek
- 02.03.12 13:12 Edek Pienkowski
Najnowsze wątki z tej grupy
- 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
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
- Ada 2022 Language Reference Manual to be Published by Springer
Najnowsze wątki
- 2024-11-13 Filtr do pompy ruskiej
- 2024-11-12 Gdzie kosz?
- 2024-11-13 elektrycznie
- 2024-11-12 Jebane kurwa, kurwy.
- 2024-11-13 karta parkingowa
- 2024-11-13 Wl/Wyl (On/Off) bialy/niebieski
- 2024-11-12 I3C
- 2024-11-13 Kraków => DevOps Engineer (Junior or Regular level) <=
- 2024-11-13 Łódź => Senior SAP HANA Developer <=
- 2024-11-13 Zabrze => Senior PHP Symfony Developer <=
- 2024-11-13 Karlino => Konsultant wewnętrzny SAP (FI/CO) <=
- 2024-11-13 Kraków => QA Inżynier <=
- 2024-11-13 Żerniki => Dyspozytor Międzynarodowy <=
- 2024-11-13 Warszawa => Analityk Biznesowo-Systemowy <=
- 2024-11-13 Lublin => Delphi Programmer <=