CIOProgramowaniePolecane tematy

Jaki procesor i do jakich zastosowań dobrać najlepiej?

Rywalizacja w segmencie procesorów x86 trwa w najlepsze i w zasadzie nie pozostaje nic innego jak tylko sięgnąć po przekąski, wygodnie usiąść i patrzeć co będzie dalej. Wyścig toczy się na ilość rdzeni, taktowanie, wielkość pamięci podręcznej, pobór mocy a w końcu też na cenę. Dwa obozy, czerwony i niebieski od lat starają się przekonać nas do swoich rozwiązań w co najmniej trzech kategoriach: centra danych, zastosowania profesjonalne i produkt typowo konsumencki.

Jaki procesor i do jakich zastosowań dobrać najlepiej?

Zanim przyjrzymy się konkretnym argumentom technologicznym, zastanówmy się jakie cechy procesora będą najbardziej atrakcyjne dla każdego z wymienionych segmentów. W centrach danych, w tym tych działających w modelu chmury, dominują serwery, które powinny serwować największą możliwą moc obliczeniową przy najmniejszym koszcie. Nie bez znaczenia jest tutaj wszechobecna wirtualizacja i to nie tylko ta, którą znamy od ponad 10 lat na poziomie systemów operacyjnych, ale przede wszystkim ta zapewniająca środowiska kontenerowe.

Dlaczego w data center liczy się dziś liczba wątków procesora i cache?

To właśnie ten ostatni model, zakładający podział dużych, monolitycznych aplikacji na małe, szybkie i niezwykle elastyczne mikrousługi spowodował, że z perspektywy przetwarzania danych najbardziej zależy nam na ilości wątków procesora. Ta zaś liczba jest bardzo mocno powiązana z ilością rdzeni jakie oferuje dany CPU. Oczywiście problem wydajności nie jest jednowymiarowy choćby z tego powodu, że kolejnym istotnym parametrem jest szybkość taktowania rdzeni procesora, wyrażana dzisiaj w GHz. W tym momencie można zadać sobie pytanie czy warto wyposażyć serwer w więcej rdzeni wolniejszych, czy w mniej, ale szybszych. Niestety jedyna prawdziwa odpowiedź na to pytanie brzmi: „to zależy”.

Można pokusić się o stwierdzenie, że w dużych centrach danych, szczególnie tych, serwujących środowiska chmurowe, jednak to ilość rdzeni ma największe znaczenie. Zasadność takiej tezy wydaje się potwierdzać fakt, iż w aplikacje nowej generacji samodzielnie się wyskalują, jeśli zajdzie taka potrzeba. Górne ograniczenie w postaci szybkości taktowania rdzenia nie będzie dla ich całościowej wydajności takie istotne. Pamiętać jednak należy, że nie jest to zasada i zawsze trzeba rozważyć do czego CPU będzie wykorzystywany.

Warto poruszyć jeszcze jeden problem, z którym borykają się producenci CPU. Są nim błędy sprzętowe. Bardzo głośno i szeroko komentowane przypadku błędów Sectre i Meltdown, których konsekwencją były poprawki w systemach operacyjnych spowalniających ich działanie. Wszystko dlatego, że błędy, które wykorzystano do budowy złośliwych kodów tkwią głęboko w architekturze procesorów. Być może można stwierdzić, że w przypadku AMD jest ich mniej, jednak z pewnością nie są wolne od wszystkich wad. Warto i o tym pomyśleć wybierając platformę, czy to do domu, czy do centrum danych.

Kolejnym podawanym przez producenta parametrem jest jego pamięć podręczna (cache). Szerzej nad technicznym aspektem tego komponentu pochylimy się w dalszej części, jednak już teraz upraszczając można stwierdzić, że pamięć ta pomaga procesorowi szybciej komunikować się z pamięcią RAM. Wygląda na to, że i ten parametr może być istotny dla centrów danych, w których konsoliduje się duże ilości aplikacji. To dlatego, że im większy współczynnik konsolidacji, czyli maszyn wirtualnych lub kontenerów na pojedynczym fizycznym serwerze, tym najczęściej więcej pamięci i danych musi obsłużyć CPU. Pamięć podręczna w tym procesie przydaje się jak dla nas ludzi powietrze.

Zużycie prądu a konkretne zastosowania procesorów

Ostatnim przytoczonym tutaj aspektem, który w dużych instalacjach serwerowych ma, a przynajmniej powinien mieć kolosalne znaczenie to energooszczędność. Kluczowe parametry to pobór prądu oraz maksymalna ilość wydzielanego ciepła, określana jako TDP (Thermal Design Power). Oczywistym wydaje się, że przy dużej skali, każda oszczędność prądu i ciepła (czyli znowu prądu w postaci klimatyzatorów) w pojedynczym CPU zwróci się w postaci mniejszych rachunków i lepszego klimatu. Te ostatnią wartość ciężko dzisiaj przeceniać.

Nieco inaczej sytuacja może przedstawiać się w zastosowaniach profesjonalnych, innych niż masowe, standardowe maszyny wirtualne czy kontenery. Tam, gdzie jest przetwarzany obraz, dźwięk, gdzie wykonuje się operacje matematyczne, obróbkę sygnałów może się okazać, że dobranie właściwego balansu między ilością rdzeni a ich szybkością będzie bardziej istotne i jednocześnie będzie bardziej zależne od konkretnych zastosowań. Pisząc o tym segmencie rynku wyobrażam sobie np. bardzo silne stacje robocze wykorzystywane przez grafików czy projektantów i to właśnie w zależności od konkretnego scenariusza należy optymalnie wybrać jednostkę centralną. Można też się pokusić o przypuszczenie, że dla takich zastosowań nieco mniej liczy się z poborem prądu (a szkoda!). Wynikać to może z faktu, iż ostatecznym rozrachunku stawia się na komfort pracy a potencjalne oszczędności z zastosowań energooszczędnych zapewne nie przyniosą wymiernych efektów finansowych.

Wpływ wyboru procesora na koszty licencji

Zanim przejdziemy do segmentu konsumenckiego warto wspomnieć o jeszcze jednym kluczowym aspekcie, jaki trzeba wziąć pod uwagę wybierając CPU. Jest nim model licencjonowania produktów, które będą na nich zainstalowane. Producenci oprogramowania oczywiście zauważyli, że stosowany od wielu lat model liczenia procesorów jest dla nich nieatrakcyjny, ponieważ przy tak wielkiej mocy obecnych CPU niejednokrotnie wystarczy jeden procesor zamiast 8 niegdyś używanych. Naturalnie zmniejsza to dochody. Większość dużych, znanych firm zmienia model licencjonowania na rdzeń, dopasowując rzecz jasna ceny tak, aby przynosiły one stosowne korzyści. Oczywiście jest wiele modeli licencjonowania, jak choćby zyskująca na popularności subskrypcja, jednak w tym momencie chciałbym jedynie podkreślić na tym przykładzie, że model licencjonowania zdecydowanie należy brać pod uwagę. Szczególnie do zastosowań masowych i profesjonalnych.

Kolejnym podawanym przez producenta parametrem jest jego pamięć podręczna (cache). Upraszczając, pamięć ta pomaga procesorowi szybciej komunikować się z pamięcią RAM. Wygląda na to, że i ten parametr może być istotny dla centrów danych, w których konsoliduje się duże ilości aplikacji. To dlatego, że im większy współczynnik konsolidacji, czyli maszyn wirtualnych lub kontenerów na pojedynczym fizycznym serwerze, tym najczęściej więcej pamięci i danych musi obsłużyć CPU. Pamięć podręczna w tym procesie przydaje się jak dla nas ludzi powietrze.

Wszystkie wymienione tu mechanizmy zupełnie zmieniają znaczenie, gdy przejdziemy do segmentu konsumenckiego. Chociaż jest on najdalej biznesu, to właśnie tutaj znajdziemy najwięcej ciekawostek technologicznych. Z drugiej strony może jeszcze warto na moment zastanowić się, czy stwierdzenie „najdalej biznesu” jest właściwe, szczególnie w obecnym czasie pandemii COVID-19. Producenci gier i ich dystrybutorzy prześcigają się promocjami, a niektórzy wręcz cyklicznie rozdają je za darmo. Studia tworzące rozrywkę wideo w tych trudnych czasach rosną i wypuszczają nowe produkcje zarabiając przy tym niejednokrotnie ogromne pieniądze. Co więcej, praktycznie każda platforma umożliwia strumieniowanie rozgrywki do sieci i co może się wydać niektórym – zwłaszcza wychowanych na komputerach 8-mio bitowych – nieco dziwne. Są tysiące chętnych, aby czyjeś rozgrywki oglądać. Czy to nie biznes? Często większy niż nam się wydaje.

Procesor wykorzystywany w home office

Wracając zatem do segmentu konsumenckiego i parametrów CPU dla niego istotnych odważę się zacząć od ceny. Wyłączając entuzjastów gier i wszelkiego rodzaju podkręcania sprzętu lwia część z nas patrzy na najlepszy stosunek wydajności do ceny. Aby nie powiedzieć, że najpierw myślimy o tej drugiej. W pracy codziennej procesor nie jest rozpatrywany w pierwszej kolejności. Znacznie bardziej liczy się ilość pamięci czy szybki dysk SSD. Pewien wyjątek mogą stanowić rozwiązania mobilne, gdyż w przypadku komputerów przenośnych długość czasu pracy na baterii staje się kluczowym parametrem. Zazwyczaj jednak nie analizujemy szczegółowo parametrów procesora, a sprawdzamy dane katalogowe producenta całości komputera i te porównujemy do siebie wybierając sprzęt.

W zastosowaniach konsumenckich mniej liczy się również liczba rdzeni, choć oczywiście nie pozostaje ona bez znaczenia. Wynika to z faktu, że rzadziej użyjemy ich wszystkich efektywnie. Jeśli lubimy montować filmy, obrabiać zdjęcia to z pewnością szybciej sięgniemy po całą moc procesora i jego wielowątkowe możliwości. W zastosowaniach biurowych większej różnicy nie odnotujemy. I tak wszystko byłoby może proste, gdyby nie… gry! Od wielu lat słyszę znajomych rodziców, którzy proszą o radę w wyborze komputera dla dziecka do szkoły. Zarzekają się, że sprzęt jest potrzebny tylko do celów edukacyjnych. Tkwiących w tym błędnym przekonaniu staram się odesłać po radę do kogoś innego. Wcześniej czy później złamią się i pozwolą, aby po zrobieniu wszystkich lekcji pociecha mogła sobie po prostu pograć. I tutaj właśnie okazuje się, że wszystko przestaje działać. Pierwsza sprawa to takiej rozrywce to karta graficzna a konkretnie proces GPU. Ogromna większość procesorów CPU posiada już taki komponent. Chociaż do naprawdę przyjemnej dla oka animacji jeszcze daleko i w żaden sposób osiągi wbudowanych GPU czy APU nie zachwycą entuzjastów, to warto zwrócić i na ten aspekt uwagę. Może się okazać, że do podstawowej rozrywki wystarczy karta zintegrowana w procesorze głównym.

Konteneryzacja, zakładająca podział dużych, monolitycznych aplikacji na małe, szybkie i niezwykle elastyczne mikrousługi spowodował, że z perspektywy przetwarzania danych najbardziej zależy nam na ilości wątków procesora. Ta zaś liczba jest bardzo mocno powiązana z ilością rdzeni jakie oferuje dany CPU. Oczywiście problem wydajności nie jest jednowymiarowy choćby z tego powodu, że kolejnym istotnym parametrem jest szybkość taktowania rdzeni procesora, wyrażana dzisiaj w GHz. W tym momencie można zadać sobie pytanie czy warto wyposażyć serwer w więcej rdzeni wolniejszych, czy w mniej, ale szybszych. Niestety jedyna prawdziwa odpowiedź na to pytanie brzmi: „to zależy”.

Jeśli już mówimy o entuzjastach gier, to warto pamiętać, że choć interesują ich raczej karty graficzne z najwyższej półki, to jednak zbyt wolny procesor centralny może skutecznie podcinać skrzydła karcie za ponad 6000 zł. Nie mówiąc już o tym, że szczęśliwy posiadacz takowej karty raczej na za wolny procesor nawet nie spojrzy… z zasady. W przypadku entuzjastów wydaje się nieistotna cena, pobór prądu, ilość wytwarzanego ciepła. Rozsądek właściwie schodzi na drugi plan. Liczy się obsługa nowszej magistrali PCIe, szybsze taktowanie pamięci, a wydzielane ciepło ma znaczenie tylko w aspekcie podkręcenia CPU do maksymalnych jego możliwości. Wymaga to oczywiście ogromnego radiatora lub po prostu bloku wodnego, ale czego się nie robi… dla wyniku. No właśnie, w tym segmencie użytkowników – entuzjastów wszelkiego rodzaju pomiary i porównania to sprawa honoru. To nic, że oko ludzkie widzi ok 25 klatek na sekundę – zawsze 110 jest lepsze niż 90, prawda? I nie było by w tym może nic złego, gdyby nie fakt, że producenci procesorów bardzo lubią sprytnie wykorzystywać te wyniki do budowania wizerunku.

Nieustająca rywalizacja AMD z Intelem

Mając już pewnie przegląd istotnych cech procesorów, czas przejść właśnie do ich producentów. Dla niewtajemniczonych, obóz czerwonych to AMD, a niebieskich to Intel. Autorem architektury x86 jest ten drugi, ale dzisiaj już chyba mało kto o tym myśli, a oba zespoły oferują bardzo odmienne konstrukcje. W zamierzchłych czasach mogliśmy kupić procesory linii 286, 386 czy 486 obu tych producentów i nie różniły się one prawie niczym, jednak dzisiaj jest zupełnie inaczej. W między czasie mieliśmy już hegemonię Intela, który po prostu był zawsze szybszy, bardziej energooszczędny i wydzielał mniej ciepła. AMD przez długi czas było kojarzony dużą ilością ciepła, dużym zapotrzebowaniem na prąd i słabszymi wynikami. Wygrywał ceną, czym zdobywał niemałą rzeszę entuzjastów pogniewanych na Intela właśnie za politykę cenową.

Wszystko zmieniło się, kiedy koncern AMD przejął ATI – producenta wydajnych procesorów graficznych – GPU. To od tego czasu przyjęło się mówić o AMD „czerwoni”, głównie z uwagi na barwy przejmowanej firmy o odmienne, zielone barwy jej głównego konkurenta, czyli Nvidia. Zieloni na ten moment wiodą prym w rywalizacji GPU, ogłaszając co roku nową, jeszcze szybszą technologię kart graficznych. W segmencie graczy – entuzjastów nie mają sobie równych. Pamiętajmy jednak, że są inne zastosowania dla GPU, od koparek krypto walut przez konsole wideo aż do przetwarzania sygnałów i sztucznej inteligencji. Segment konsoli do gier bardzo dobrze obrazuje strategię AMD, które niekoniecznie, przynajmniej na ten moment, chce dostarczać najszybsze na świecie GPU. Za to łącząc mocny procesor centralny CPU i naprawdę wydajną karę graficzną w jednym układzie – APU (Accelerated Processing Unit) AMD wykonał świetny ruch. Wielu graczy bowiem wybierze tą platformę z kuriozalnego powodu – wysokiej ceny kart „zielonych”. Zjawisko optymalizacji wydajności do ceny jeszcze bardziej widać w konsolach. Czołowi producenci, czyli Microsoft i Sony postawili na platformę AMD zarówno w kwestii CPU jak i GPU. Programiści, czy chcą czy nie muszą zoptymalizować kod tak, aby gra działała bardzo dobrze, gdyż nie będzie tutaj możliwości wymuszenia na użytkowniku zmiany karty graficzną. Wszyscy będą mieli takie same układy w swoich konsolach, a przynajmniej zawsze tak było. Wydaje się zatem, że decyzje liderów tego segmentu potwierdzają trafność strategii AMD.

Wprawdzie procesory Intela wciąż wygrywają w różnego rodzaju testach, jeśli spojrzymy na gry, ale to nie jest przewaga druzgocąca i topnieje ona w oczach, gdy tylko potrzebujemy wielu wątków, do innych zastosowań. Przy tym Intel po raz kolejny odgrzewa wprowadzoną lata temu architekturę Skylake. Coraz szybsze taktowanie, trochę więcej pamięci podręcznej, coraz więcej prądu i… za każdym razem nowa podstawka. Zatem jeśli drogi użytkowniku chcesz nowy procesor, kup również nową płytę główną. Tymczasem podstawka AM4 jest obecna na rynku od 4 lat i już teraz zapowiedzi AMD potwierdzają, że nowe procesory z linii Ryzen 4000 będą z nią kompatybilne. Wprawdzie wymagać będą w miarę nowej platformy, jak choćby X570 czy B550, ale to zawsze lepiej niż zmuszanie klienta do wymiany połowy PC.

Generalnie należy stwierdzić, że seria AMD Ryzen w architekturze ZEN2 wywróciła rynek procesorów do góry nogami. Ryzen 9 3900X zaspokoi nawet najbardziej wymagających przy cenie znacznie bardziej rozsądnej od proponowanej przez „niebieskich”. Choć Intel i9 pozostaje królem wydajności szczególnie w syntetycznych testach. Z pewnością kupią go wszyscy Ci, którzy celebrują swoje pomiary wydajności i potrafią się z nich cieszyć, jednak czy to wystarczy, żeby mieć większy udział w rynku? Na dodatek już w blokach startowych czeka AMD Ryzen 4000 zapowiadany na koniec 2020 roku, podczas gdy Intel odświeżył niedawno linię i9, pozostając jednak przy architekturze Skylake. Chociaż i9-1900K pozostaje najlepszym procesorem do gier, oferując 10 rdzeni taktowanych 3,7GHz, to jednak współczynnik TDP jest na poziomie 125W. To oznacza, że przy zmianie z dowolnej platformy Intel na najnowszą, będzie trzeba zmienić nie tylko płytę główną, ale zapewne wentylator i zasilacz. To są skutki zastosowania litografii 14nm. To właśnie ona implikuje lepszą wydajność przy mniejszym wydzielaniu ciepła. A tutaj AMD osiągnęło 7nm już w lipcu 2019 roku. Przy tym „czerwoni” wspierają PCIe 4.0 i szybsze taktowanie pamięci DDR4. Obaj producenci chcą już na stałe do swoich układów wprowadzić tryb turbo, czyli czasowe zwiększenie prędkości przy zwiększonym zapotrzebowaniu na moc obliczeniową. Przypomina to nieco przycisk turbo na obudowach komputerów PC/286 prawda? Zasada podobna tyle, że działa automatycznie.

Jakby tego było mało, w segmencie procesorów profesjonalnych i serwerowych w zakresie wydajności prym wiedzie AMD Ryzen Threadripper. Warty prawie 17 tys. złotych model 3990X posiada 64 rdzenie taktowane 2.9GHz. Pamięć podręczna to 288MB. Oczywiście Intel również proponuje swoje wersje ekstremalne, przeznaczone dla gniazda 2066. To bardzo drogie i bardzo wydajne procesory, które na pewno sprawdzają się w rozwiązaniach profesjonalnych czy półprofesjonalnych. Widać jednak, że w tym segmencie Intelowi delikatnie mówiąc, na pewno nie jest łatwo. Ponadto Intel nie ma sensownej odpowiedzi na procesory GPU AMD ani też Nvidia. Powstaje zatem pytanie, która strategia będzie lepsza w dłuższej perspektywie. Wszak AMD walczy na wielu frontach i jedynie w wielowątkowych procesorach CPU wydaje się zyskiwać wyraźną przewagę. Czy udźwigną tyle wyzwań w jednym czasie?

Procesory w systemach pamięci masowych

Wiadomo też, że procesory Intel są wybierane przez producentów macierzy dyskowych do swoich kontrolerów, gdzie ich moc zaczęła odpowiadać nie tylko za ilość generowanych IOPS z podsystemu dyskowego, ale również za metody redukcji danych w locie. Kompresja i de-duplikacja danych stała się przedmiotem pożądania każdego klienta i producenta systemów pamięci masowych. Zadanie to spada przede wszystkim na procesory w kontrolerach. Stąd liczba rdzeni i w tym zastosowaniu stała się tak ważna.

Na koniec warto poruszyć jeszcze jeden problem, z którym borykają się producenci CPU. Są nim błędy sprzętowe. Bardzo głośno i szeroko komentowane przypadku błędów Sectre i Meltdown, których konsekwencją były poprawki w systemach operacyjnych spowalniających ich działanie. Wszystko dlatego, że błędy, które wykorzystano do budowy złośliwych kodów tkwią głęboko w architekturze procesorów. Być może można stwierdzić, że w przypadku AMD jest ich mniej, jednak z pewnością nie są wolne od wszystkich wad. Warto i o tym pomyśleć wybierając platformę, czy to do domu, czy do centrum danych.

Taką decyzję podjął jeden z liderów rynku elektroniki użytkowej – Apple – ogłaszając na konferencji WWDC 2020 przejście w komputerach na własne procesory na bazie ARM. Procesory z linii A, stosowane i rozwijane przez Apple od wielu lat w iPhone’ach i iPadach są w istocie szybsze od wielu stosowanych MacBookach czy Macach. Nie mają też tylu błędów i są bardzo dopracowane. Zawierają zaawansowane technologie, również w zakresie zarządzania mocą obliczeniową dzięki zastosowaniu rdzeni szybszych i wolniejszych. Ich ogromną wydajność potwierdzono poprzez prezentację szybkości działania narzędzi Microsoft, Adobe czy rozwiązań własnych Apple, czyli Finalcut.

Wydaje się, że największym wyzwaniem dla Apple stanowi proces migracji na nową platformę, ale na to gigant z Cupertino wydaje się być dobrze przygotowanym, o czym mam nadzieję napisać już w krótce. Tymczasem czekamy na realizację obietnic Intela i AMD. Jedno jest pewne – końcówka roku zapowiada się bardzo ciekawie.

Krzysztof Waszkiewicz,
architekt

Tagi

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *