-
Data: 2011-01-18 11:25:33
Temat: Re: Programowanie wielowątkowe w architekturze NUMA
Od: Sebastian Kaliszewski <s...@r...this.informa.and.that.pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Fil wrote:
> Witam!
>
> Mam program wielowątkowy, który poprawnie pracuje na kompie (laptop):
> CPU: Intel i7 X920 2GHz, 16MB RAM (4 rdzenie + HT = 8 CPU logicznych w
> architekturze UMA), OS: Windows 7 64bit Prof.
>
> W programie odpalam 8 wątków (lub 16 wątków), które intensywnie
> korzystają ze wspólnej, dwuwymiarowej tablicy liczb rzeczywistych.
> Wszystkie wątki ładnie obciążają każdy z rdzeni w 100%. Można ustawiać
> dowolnie koligację na poszczególnych rdzeniach - śmiga aż miło.
>
> Następnie ten sam program odpalam w systemie:
> 8 x CPU: AMD Opteron 8493SE 2.8GHz , 64MB RAM (8 x 6 rdzeni = 48 CPU
> logicznych w architekturze NUMA, 8 węzłów po 6 CPU w każdym), OS:
> Windows Server 2008 R2 Enterprise (płyta Tyan n4250QE S4985 + M4985).
>
> I tu klapa. W programie odpalam 48 wątków, analogicznie jak wyżej. Wątki
> nie są przydzielane przez system do poszczególnych, logicznych CPU tylko
> (takie mam wrażenie) są przełączane pomiędzy CPU tak, jakby stanowiły
> program jednowątkowy. Czyli: po ustawieniu koligacji na 1 rdzeń mam
> obciążenie tego rdzenia na 100%, natomiast jak ustawię na 2 rdzenie to
> obciążenie rozkłada się po 50%, itd. Zatem obciążenie dla całego
> programu rozkładane jest pomiędzy rdzenie tak jakby był on jednowątkowy.
Cóś mi się wydawało, że w windzie (od 2000 lub XP) jest możliwość
przypisania CPU affinity per wątek. Choć mogę się kompletnie mylić bo
dawno tam nie zaglądałem.
> Czy zna ktoś na to receptę? Jedyne wyjście jakie przychodzi mi do głowy
> to przeprogramowanie algorytmu i dostosowanie go do NUMA, co nie będzie
> proste :(.
Jak duży masz working set? I jak insensywnie korzystasz z danych
(inaczej: jaki masz "bandwidth" per operacja i jak czasochłonna jest
taka operacja)[*]. Jak się w cache nie mieści i ma wymagania więcej niż
1 jedna nowa (z pamięci, nie cacheowana) liczba double na ok 200
podstawowych operacji FP), to bez rozrzucenia danych pomiędzy węzły
będzie wooolno.
> A przy okazji: może ktoś zna jakiś link do dobrej dokumentacji o
> programowaniu w NUMA pod Winde?
tu nie pomogę, ale chyba inni coś podwiedzieli
pzdr
\SK
--
"Never underestimate the power of human stupidity" -- L. Lang
--
http://www.tajga.org -- (some photos from my travels)
Następne wpisy z tego wątku
- 18.01.11 19:47 Fil
- 19.01.11 08:46 Mariusz Marszałkowski
- 19.01.11 10:54 Michoo
- 19.01.11 11:40 Jacek Czerwinski
Najnowsze wątki z tej grupy
- 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
- Press Release - AEiC 2023, Ada-Europe Reliable Softw. Technol.
- Ada-Europe - AEiC 2023 early registration deadline approaching
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2023
- Ile cykli zajmuje mnożenie liczb 64-bitowych?
Najnowsze wątki
- 2024-06-27 Re: Prywatny parking? Pierwsze 10 minut bezplatnie
- 2024-06-27 A co mnie to koooorwa obchodzi?
- 2024-06-28 nawigacja satelitarna
- 2024-06-28 SmartLife/Tuya i osuszanie -- mordowanie z zimną krwią...
- 2024-06-27 położyłem kafelki
- 2024-06-28 Łódź => International Freight Forwarder <=
- 2024-06-28 Łódź => Spedytor Międzynarodowy <=
- 2024-06-28 Gdańsk => Head of International Freight Forwarding Department <=
- 2024-06-28 Sopot => Team Leader E-Commerce for Foreign Markets <=
- 2024-06-28 Warszawa => Senior React Native Developer <=
- 2024-06-28 Warszawa => Frontend Developer (React) <=
- 2024-06-28 Warszawa => Software .Net Developer <=
- 2024-06-28 Warszawa => Frontend Developer (React) <=
- 2024-06-28 Warszawa => Programista Full Stack .Net <=
- 2024-06-28 Warszawa => Frontend Developer (React) <=