Błąd w jądrze Windowsa obniża wydajność Threadripperów
Autor: Wedelek | 20:13
(16)
Od samego początku użytkownicy zgłaszali problemy z wydajnością Threadripperów WX w niektórych aplikacjach. Początkowo wydawało się, że jest to związane z budową modułową procesorów AMD i faktem, że jedynie połowa z bloków ma kontroler pamięci DDR4. Pozostałe komunikują się z RAMem za pomocą złącza Infinity Fabric. Okazało się jednak, że wydajność niektórych aplikacji jest wyraźnie wyższa w wersji dla systemu Linux niż dla Windowsa. To wzbudziło podejrzenia Wendella z Level One Techs oraz Jeremy’ego Collake’a z Bitsum, którzy zauważyli, że problem może tkwić gdzie indziej.
Po wielu próbach i wykluczeniu różnic wynikających z innego kodu aplikacji obaj panowie doszli do wniosku, że błąd tkwi w jądrze systemu Windows. To źle zarządza procesorami o bardzo dużej liczbie rdzeni i w rezultacie nieprawidłowo przypisuje zadania do poszczególnych wątków. Dzieje się tak pomimo funkcjonowania mechanizmu NUMA w takich programach jak Adobe Premiere, Indigo Renderer, Blender czy 7zip oraz w grach, jeśli użytkownik korzysta z GeForce’a. Problem nie dotyczy podsystemu pamięci, bo objawia się zarówno Threadripperze 2990WX z 4-kanałowym kontrolerem RAM jak i na EPYCu 7551, który dysponuje 8-kanałowym kontrolerem. Innymi słowy to nie AMD za niego odpowiada, tylko Microsoft.
Zwłaszcza, że po ręcznej zmianie funkcjonowania mechanizmu przypisywania wątków w Windows wydajność Threadripperów WX wzrasta do poziomu oferowanego na maszynach z Linuksem – czasami niemal 2x. Obaj Panowie stworzyli też narzędzie które pomaga wyeliminować opisywany problem. Nazywa się ono CorePrio i można je pobrać TUTAJ.
K O M E N T A R Z E
na układy nie ma rady (autor: Mario2k | data: 3/01/19 | godz.: 20:56) MS i Intel mają widać taki cichy układ zamknięty.
Raczej nikt nigdy w M$ nie spodziewał się, że pecety będą mieć tyle jajek (autor: Tig3r | data: 3/01/19 | godz.: 21:35) AMD przeciera szlaki. Pytanie to "czy i kiedy załatają?".
Mario2k (autor: kombajn4 | data: 3/01/19 | godz.: 21:35) jakbyś obejrzał wideo to byś wiedział że problem wziął się najprawdopodobniej stąd że żaden inny procesor wcześniej nie był tak zbudowany jak TR/EPYC czyli z 4 chipów połączonych na jednej płytce.
A cały problem sprowadza się do tego że Windows w swojej niezmierzonej mądrości odpala programy na jednym z 4 nodów czyli na 16 z 64 wątków po czym przerzuca obciążenie pomiędzy wszystkimi rdzeniami przez co wszystkie rdzenie na papierze są obciążone w 100%
Tig3r (autor: kombajn4 | data: 3/01/19 | godz.: 21:38) Ja tam w komentarzach napisałem ze mam nadzieję że to AMD załata bo jak się za to wezmą geniusze z Microsoftu to nie dość ze zejdzie im ze dwa lata, to jeszcze na końcu zrobią to pewnie tak że reszcie użytkowników pół windowsa przestanie działać.
dokładnie @kombajn4 (autor: Qjanusz | data: 4/01/19 | godz.: 08:39) autorska łatka na Win, lub przy wsparciu MSa (tak jak łatanie CPU Intela).
Ewentualnie dodana funkjonalność do Ryzen Master, chociaż to tak na prawdę Win powinien mieć w podstawach rozwiązany problem.
Nie powinno to długo potrwać, tym bardziej że geniusze z newsa stworzyli toola Coreprio.
btw... kolejny dowód na to, jak bardzo są przemyślane podstawy Linuxa, w porównaniu do wiecznie czerstwych okienek z telemetrią.
@4. (autor: Kenjiro | data: 4/01/19 | godz.: 08:43) Ciekawe, że przecież te błędy powinny być już widoczne na istniejących dawno temu procesorach serwerowych i być może były, tylko nikt się nie pochylił i nie porównywał Windowsa z Linuksem (także z tego powodu, że nie ma wielu programów, a niektóre dopiero od niedawna jak MS SQL).
A być może miały specyficzne "fixy" dla wybranych procesorów Intela.
Swoją drogą nie od dziś ludzie narzekają na scheduler Windowsa, który jest daleko w tyle za Linuksowym i zatrzymał się gdzieś w okolicach XP z poprawkami dla Visty i 7.
@Tig3r (autor: VP11 | data: 4/01/19 | godz.: 09:49) Bzdury
Wielordzeniowe maszyny z sumaryczna iloscia rdzeni wiekszej niz w procesorach AMD istnieja nie od dzisiaj. To wyrazna wina M$.
Ostatnio pisali ze niby to M$ poprawila wydajnosc w procesorach AMD ze wzgledu na modulowa budowe. Bzdura, potrafi dwa watki gry obciazyc do jednego modulu, przy tym nic innego nie obciaza wyraznie processor.
Czy moczal w tym Intel nie mam pojecia.
@VP11 (autor: Tig3r | data: 4/01/19 | godz.: 12:17) Gdzie ja napisałem że to nie wina M$? W konsumenckim windowsie nigdy tyle wątków nie było, więc CPU od AMD ujawniło niedostatki schedulera/kernela. IMHO jest szansa, że gdyby to Intel wypuścił takie procki (>32wątki) pierwszy to spadki wydajności dostałyby się właśnie jemu (Intelowi).
ciekawe czym to się różni (autor: Hitman | data: 4/01/19 | godz.: 13:28) od softu AMD Dynamic Local Mode..
Z tymi (autor: biuro74 | data: 4/01/19 | godz.: 14:18) AMD zawsze jest cos nie tak ;-) Pamietam AMD Dual Core Optimizer, ktory trzeba bylo wpierw zainstalowac, zeby Athlon 64 x2 chodzil dobrze. Teraz Threadripper. Albo poprawka na Letdown i Spectee, ktora uwala stare Athlony. Ja rozumiem, ze scheduler windowsowy ssie od zawsze i ze sa bledy Intela, niemniej taka zlosliwa przypadlosc staje sie powoli regula ;-)
@biuro74 (autor: Saturn64 | data: 4/01/19 | godz.: 14:49) Amd jest prekursorem pewnych rozwiązań, które dopiero sie upowszechniają. Tak było z AMD 64 gdzie w procesorze zawarto mostek północny i wprowadzono hypertransport. Teraz znowu w drugą stronę wydzielono same rdzenie i oddzielono od reszty architektury by ciąć koszty budowy wielordzeniowych procesorów. Intel jeszcze 2 lata temu posiadal ponad 90% rynku procesorów. Dlatego też M$ przygotowuje windowsa pod intela.
Problemem nie jest ilość wątków w CPU! (autor: Atak_Snajpera | data: 4/01/19 | godz.: 15:47) EPYC ustawiony w trybie UMA działa poprawnie na Windowsie. Problem jest gdy EPYC jest ustawiony w trybie NUMA. Wtedy jest zjazd w wydajności jak na 2990wx. Winny jest M$ i jego hinduscy programiści robiący za miskę ryżu. Koniec kropka. Te wasze usprawiedliwienia są żenujące biorąc pod uwagę że ten sam gówniany scheduler jest rówież w edycji Server gdzie aktywny tryb NUMA to oczywista oczywistość!
Błąd w jądrze Windowsa czy celowe działanie MS? (autor: maximus1 | data: 4/01/19 | godz.: 22:13) Jak wygląda sytuacja w przypadku procesorów intel z liczbą rdzeni >=32? Wie ktoś?
O czym to świadczy gdy zewnętrzna grupa napaleńców (autor: Mario1978 | data: 5/01/19 | godz.: 18:49) potrafi zrobić coś do poprawy czego MS nie śpieszno.
Jeżeli Intel posiadając w dalszym ciągu najlepszą litografię na rynku jaką jest 14nm nie jest w stanie w wielu sytuacjach zagrozić procesorom AMD już teraz a niedoróbki systemu operacyjnego Windows działają na korzyść Niebieskich to jak oni chcą przekonać do siebie ludzi gdy pojawi się Zen 2.
Tu pięknie pokazali w kilku testach jak mocno Windows niedomaga z TR 2990WX na tle Linux a ten program potrafi zwiększyć wydajność o 100% tam gdzie największy problem ma system Mircosoft. https://www.extremetech.com/...-2990wx-performance
Mario1978 (autor: pawel1207 | data: 10/01/19 | godz.: 01:14) tak samo mozna powiedziec ze grupa napalencow zrobila cos czego amd nie potrafilo zna czy napisac odpowiednij latki dla wlasnego proca i wyslac do msa :D zreszta rozwiazuje to tylko sprawe przydzielania watkow i to nie dokonca biorac pod uwage fatalne opuznienia w wx a niedorobiony podsystem pamieci i cache co wydaje sie jest pieta achillesowa przy kardzym procu jaki amd zaprojektuje :D nazwijmy to tak za wiele to nie zmieni aczkolwiek dobrze ze jest niemmniej wx sa skierowane do waskiej grupy odbiorcow nie bez powodu wx jest taki tani ..
D O D A J K O M E N T A R Z
Aby dodawać komentarze, należy się wpierw zarejestrować, ewentualnie jeśli posiadasz już swoje konto, należy się zalogować.