-
Data: 2011-01-16 16:47:06
Temat: Programowanie wielowątkowe w architekturze NUMA
Od: Fil <f...@p...onet.pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]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.
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 :(.
A przy okazji: może ktoś zna jakiś link do dobrej dokumentacji o
programowaniu w NUMA pod Winde?
Fil.
Następne wpisy z tego wątku
- 16.01.11 17:45 Michoo
- 16.01.11 18:10 Fil
- 16.01.11 18:25 Michoo
- 16.01.11 19:22 Fil
- 16.01.11 22:07 A.L.
- 18.01.11 11:25 Sebastian Kaliszewski
- 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
- "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)
- 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?
Najnowsze wątki
- 2025-03-29 Re: Kompensacja mocy biernej przy 230VAC
- 2025-03-29 Ostrów Wielkopolski => Konsultant Wdrożeniowy Comarch XL/Optima (Ksi
- 2025-03-29 Łożysko ślizgowe - jaki olej
- 2025-03-29 Re: Kompensacja mocy biernej przy 230VAC
- 2025-03-29 Warszawa => NMS System Administrator <=
- 2025-03-29 Warszawa => Laravel PHP Developer <=
- 2025-03-29 Re: Kompensacja mocy biernej przy 230VAC
- 2025-03-29 Warszawa => Java Full Stack Developer (Angular2+) <=
- 2025-03-29 Warszawa => Specjalista rekrutacji IT <=
- 2025-03-28 A gdyby to był elektryk?
- 2025-03-28 Współczesny falomierz
- 2025-03-28 Rzeszów => WEBCON Developer <=
- 2025-03-28 Szczecin => Specjalista ds. public relations <=
- 2025-03-28 Warszawa => Staż w dziale Sprzedaży B2B <=
- 2025-03-28 Warszawa => MENA New Business Manager <=