System Windows 10 wyraźnie zbuntował się przeciwko współpracy z 24-rdzeniowym procesorem, bo ten chciał wszystko robić w ekspresowym tempie.
Chcesz kompilować przeglądarkę Chrome, więc kupujesz porządny komputer za niemałe pieniądze. Stawiasz na wysokiej klasy SSD (by osiągnąć pożądaną szybkość i być pewnym niezawodności), montujesz 64 GB pamięci operacyjnej, która powinna dobrze współpracować z 24-rdzeniowym/48-wątkowym procesorem, a na koniec instalujesz aktualny system operacyjny do zastosowań wszelakich, czyli Windows 10. Okazuje się, że ten ostatni krok każe zapomnieć o wysokiej wydajności.
Historia nie jest fikcją, lecz autentyczną sytuacją, w jakiej znalazł się Bruce Dawson z bloga Random ASCII. Odkrył on, że komputer kompletnie nie radzi sobie ze współpracą z systemem Windows 10 (a może raczej należałoby napisać, że to „Dziesiątka” nie poradziła sobie z tak mocnym sprzętem). Jak napisał sam autor: „to nie jest tak, że mam 24-rdzeniowy procesor i nie mogę ruszyć myszką, lecz mam 24-rdzeniowy procesor i DLATEGO nie mogą ruszyć myszką”.
Problem polegał na tym, że podczas kompilowania Chrome’a komputer zwalniał tak bardzo, że dochodziło do poważnych zacięć. Dawson zaczął więc szukać jego źródła. Pierwszy pomysł: zbyt duże obciążenie rdzeni. To nie był jednak dobry trop, bo szybko okazało się, że najczęściej nie przekracza ono nawet 50 proc. Bliższe przyjrzenie się temu, jak zachowują się poszczególne procesy (których środowisko kompilacji Chrome zawsze stara się uruchomić jak najwięcej) przyniosło jednak rozwiązanie zagadki.
Winowajcą okazała się funkcja NtGdiCloseProcess, która blokuje na pewien czas zamykane procesy. Każdy zamykany proces walczył o dostęp do funkcji i musiał czekać na swoją kolej. A że tak potężny procesor pozwala stworzyć tak wiele procesów, Windows 10 nie radził sobie z natłokiem pracy i wydajność malała z minuty na minutę, z czasem skutecznie uniemożliwiając normalne korzystanie z komputera.
Co ciekawe, Dawson przeprowadził dodatkowy eksperyment na laptopie z WIndows 10 i czterordzeniowym procesorem oraz prawie dziesięcioletniej maszynie z czterordzeniowym procesorem Intel Core 2 Q8200 i systemem Windows 7. Efekt? Na tej drugiej procesy tworzyły się oczywiście wyraźnie wolniej, ale za to ich niszczenie (w przeciwieństwie do konkurenta) przebiegało bez żadnych problemów – równolegle. Wygląda więc na to, że coś niedobrego stało się podczas tworzenia „Dziesiątki”.
Microsoft wie już o tym problemie i zapowiada jego dogłębną analizę. Jego programiści już teraz pracują podobno nad tym, by szczegółowo zrozumieć, co dokładnie poszło nie tak. Pozostaje mieć nadzieję, że efektem tych działań rzeczywiście będzie eliminacja błędu, który sprawia, że dziś Windows 10 nie jest systemem dla mocnych komputerów.
Źródło: Random ASCII. Foto: pholies/Pixabay (CC0)
Komentarze
31Nie wiem czy to problem z architekturą PC czy Windowsem, ale od początku (czasów komputerów PC XT /AT) coś jest nie tak...
istota problemu to kolejkowanie przy zamykaniu procesów. Teraz zastanówcie sie ile ten ktoś kto wadł na pomysł by jego maszyna tworzyła nadprogramową ilosc procesów i je zabijała jednoczenie musiał się nad tym naprawcować.
Jaki z niego musi byc programista który nie potrafi po tym co opisał zrozumiec istoty problemu który sam sobie stworzył.
To że procesor ma 24 rdzenie nie jest problemem windowsa ani na odwrót. Problemem jest to że na tych 24 rdzeniach rozrzucił procesy których ilosc potrafi sie na tym procesorze w takim tempie otworzyć. Do ich zabicia po prostu potrzeba okreslonego czasu.
Istota całej tej historii jest zabawny opis sytuacji zrobiony przez tego ludka który to media podłapały niesamowicie szybko i juz tworzy sie kolejna historia która ma nam pokazać że windows 10 nie jest w stanie obsłuzyc 24 rdzeniowego procesora bo ten jest dla niego za szybki.
Pieknie wydumana bzdura.
Od dzis ludzie zaczną się skarzyc ze mają na 8, 16 , 24,48 rdzeniowych procesorach dokładnie te same problemy nonstop podczas oglądania rzecz jasna youtuba i benchmarka.
Małpy z Micro pewnie już robią nadgodzinki i łatają te dziury.