artykuły

Ile energii kosztują wielowątkowe zadania?

43
7 czerwca 2020, 14:01 Mateusz Brzostek

Podczas testowania nowych procesorów Comet Lake – Core i9-10900K i Core i7-10600K – byliśmy zaskoczeni tym, że nie dysponując nową techniką produkcji inżynierowie Intela zdołali zmieścić więcej rdzeni o szybszym taktowaniu w budżecie energetycznym podobnym do procesorów poprzedniej generacji. 10-rdzeniowy Comet Lake sprawiał wrażenie (nie poparte kalkulacjami), że jest bardziej efektywny energetycznie od Core i9-9900K. Najszybsze modele procesorów w prawie każdej serii rzadko przodują w efektywności energetycznej. Zwykle mają taktowanie przyspieszone do granic możliwości kosztem niewspółmiernie zwiększonego napięcia zasilania. Postanowiliśmy zweryfikować to wrażenie i sprawdzić, ile energii kosztuje wykonanie tych samych zadań na 10-rdzeniowym Comet Lake, 8-rdzeniowym Coffee Lake i 12-rdzeniowym Ryzenie.

Spis treści

Czy efektywność energetyczna jest ważna?

Dla przeciętnego użytkownika sama efektywność energetyczna nie ma dużego znaczenia, ale wynikające z niej cechy mogą być ważne. Koszt energetyczny różnych zadań wpływa na rachunki za prąd znacznie mniej, niż efektywne wykorzystanie czasu, w którym komputer jest włączony. Większość z nas stosunkowo rzadko obciąża procesor całkowicie. Komputery spędzają najwięcej czasu w stanie spoczynku albo małowątkowego, lekkiego obciążenia.

Efektywność energetyczna ma dla domowego użytkownika zupełnie inne znaczenie, niż w serwerach i centrach danych, których operatorzy mają często dość pracy dla bardzo dużej liczby procesorów. Jeśli procesor X pozwala wykonać jakąś porcję pracy kosztem pewnej porcji energii, a procesor Y pozwala wykonać tę samą pracę kosztem mniejszej porcji energii, to można sobie pozwolić na większą liczbę procesorów Y zamiast mniejszej liczby X. Wtedy w ramach tej samej infrastruktura zasilania i chłodzenia będzie można wykonać więcej obliczeń. W domowych komputerach mamy jeden procesor, i bardzo rzadko dość pracy, żeby zająć go całkowicie. Znacznie ważniejsza jest po prostu wydajność – chcemy krócej czekać na reakcję komputera, i tego zyskanego czasu nie można przeliczyć na dżule i watogodziny.

Energooszczędny procesor oznacza też prostszy i cichszy układ chłodzenia i potencjalnie mniejszą obudowę. W letnich miesiącach – chłodniejsze mieszkanie lub biuro, i łatwiejsze regulowanie temperatury za pomocą klimatyzacji. To jest prawie zawsze ważniejszym czynnikiem, ale nie zależy od efektywności energetycznej, tylko od maksymalnego poboru energii.

Przedstawiony tu eksperyment nie da Wam żadnych informacji, które bezpośrednio wpłyną na decyzje zakupowe: chcieliśmy raczej poszerzyć wiedzę nie tylko o nowych procesorach Intela, ale ogólnie o wszystkich wielordzeniowych procesorach. Głównym przedmiotem tego eksperymentu jest Core i9-10900K – 10-rdzeniowy, 20-wątkowy procesor z 20 megabajtami wspólnej dla wszystkich rdzeni pamięci podręcznej. Punktem odniesienia był Core i9-9900K, 8-rdzeniowy procesor wykonany w niemal identycznym procesie produkcyjnym, ale inaczej sortowany i zapakowany w inną obudowę, nieco mniej ułatwiającą odprowadzanie ciepła. Dodatkowo przetestowaliśmy Ryzena 9 3900X – ma 2 rdzenie więcej niż i9-10900K, jest o wiele tańszy i z pewnością nie jest najefektywniejszym energetycznie Ryzenem. Ma za to bardzo podobny limit mocy, co długotrwały limit mocy dla i9-10900K.

Modellimit mocyTDP
Core i9-10900K 250 W
56 sek.
125 W
nieograniczony czas
125 W
Core i9-9900K 210 W
28 sek.
95 W
nieograniczony czas
95 W
Ryzen 9 3900X 142 W
nieograniczony czas
105 W

Mechanizm sterowania taktowaniem w Ryzenie 9 3900X pozwala mu pobierać do 142 W przez nieograniczony czas, dopóki układ chłodzenia jest w stanie odprowadzić tyle ciepła i utrzymać temperature procesora poniżej pewnego progu. Procesory Intela (o ile zachowaliśmy ustawienia fabryczne) mogą pobierać więcej prądu przez ograniczony czas, nawet jeśli układ chłodzenia dobrze radzi sobie z odprowadzeniem bardzo dużej ilości ciepła. Wiele płyt głównych automatycznie zmienia limity energetyczne, ale w tym eksperymencie skupiłem się na sugerowanym przez Intela poziomie wydajności i prądożerności. W celu porównania z Core i9-9900K przetestowaliśmy i9-10900K również w drugiej konfiguracji: z identycznymi limitami mocy, co i9-9900K. Intel daje możliwość ustawienia Core i9-10900K w tryb o TDP wyznaczonym na 95 W, ale ten tryb jest dostępny tylko dla producentów komputerów. Nie możemy go włączyć w UEFI ani za pomocą programu Intel XTU, ale możemy uzyskać niemal ten sam efekt zmieniając ręcznie limity energetyczne. Spodziewamy się, że tak skonfigurowany 10-rdzeniowy procesor będzie w prawie każdym zadaniu oszczędniejszy od 8-rdzeniowego.

Zmierzyliśmy zużycie energii przez cały komputer i przez sam procesor podczas kilku wybranych zadań, które służą nam jako testy wydajności. Przedstawiliśmy wyniki na wykresach podobnych do tego:

Wykresy pokazują przybliżoną moc samego procesora i przybliżoną energię zużytą przez sam procesor podczas różnych testów wydajności. Na każdym wykresie test zaczyna się po 5 sekundach oczekiwania. Większość pokazanych testów kończy się tym szybciej, im wydajniejszy jest procesor. Na wykresie powyżej widać, że procesor ukończył kodowanie wideo w niecałe 90 sekund, pobierał ponad 200 W przez około 50 sekund i ok. 125 W przez resztę czasu i w sumie zużył na to nieco ponad 4 Wh (watogodziny – można porównać do pojemności baterii w laptopach!) energii.

Oprócz tego zmierzyliśmy zużycie energii całego komputera podczas tych samych zadań. Wykresy słupkowe pokazują zużycie energii w całym przedziale czasu pokazanym na wykresie liniowym – czyli całe pole pod wykresem, łącznie ze stanem bezczynności po zakończeniu benchmarka!

Przedział czasu, w jakim zmierzyliśmy całkowite zużycie energii został wybrany subiektywnie. Żaden inny wybór nie jest lepszy ani gorszy. Krótsze okno czasu pokazywało by niemal to samo, co typowe pomiary mocy w stanie ustalonym. Dłuższe okno zmniejszyłoby znaczenie wydajności procesora, bo zysk z ukończenia zadania szybciej zostałby „rozcieńczony” dłuższym okresem bezczynności. Żadne konkretne okno nie reprezentuje typowego scenariusza użytkowania – nikt z nas nie kompresuje plików dokładnie co trzy minuty, ani nie wyłącza komputera natychmiast po zakończeniu zadania. Przełożenie tych danych na rachunki za prąd jest i tak niemożliwe.

 

W innych artykułach znajdziecie informacje pomocne w zrozumieniu tego eksperymentu:

Strona:
legorasZobacz profil
Poziom ostrzeżenia: 0%
legoras2020.06.07, 14:34
20#1
Fajne te proce intela... takie zakłamane... TDP 125, a mogą ciągnąć 250, a co się będą. Pamiętam jak intel nabijał się z buldożerów ktore ciągły po 250W.. jak to możliwe że procesor moze ciągnąć 250?!.. a sami to teraz robią.
krzyyssZobacz profil
Poziom ostrzeżenia: 0%
krzyyss2020.06.07, 14:52
Fajny art, gratuluję i pomysłu i sposobu realizacji. Dobrze mieć świadomość, że optymalizacje można robić na wielu płaszczyznach. Można optymalizować koszt zakupu i patrzeć na wydajność/cena, można optymalizować do czasu, gdzie ów czas ma jakąś wartość finansową, a można i do efektywności energetycznej. W blaszakach nam to pewnie aż tak potrzebne nie jest, pewnie jest tylko ciekawostką, ale jakiś 'smak' tego, co robione przy wydajnych maszynach. Właściciele koparek chyba doktoraty mogliby robić z takich optymalizacji ;)
Aż mi się przypomniały zajęcia z optymalizacji procesów produkcyjnych, optymalizacje robione pod różne kryteria, właśnie typu czas/koszt/efektywność :)
lolek.oloZobacz profil
Poziom ostrzeżenia: 0%
lolek.olo2020.06.07, 16:27
Na stronie 4 i 5 brakuje wykresów ze zużyciem energii tylko podczas kodowania, kompresji, obliczania i symulacji. Tak jak to jest pokazane na stronie 3 'energia zużyta tylko w czasie renderowania'.
Szacując na podstawie wykresów 'raportowana moc' i 'zużyta energia' na wykonanie samego zadania, najmniej energii zużył 3900X. Ale to tak 'na oko'. Fajnie by było zobaczyć to na dedykowanym wykresie.
Stockfish to trochę osobna sprawa, tam wykres 'mln. pozycji na watogodzinę' pokazuje wydajność energetyczną w tym zadaniu. Ale tak jak pisze autor, to bez większego znaczenia, bo liczy się limit narzucony na CPU, a czas wykonania ma mniejsze znaczenie. Oczywiście są jakieś granice tego czasu wykonania. Bo np. jakiś stary Intel Atom, raczej nie podołał by zadaniu w akceptowalnym czasie. Tak przypuszczam, bo szczere mówiąc to nie mam prawie żadnej wiedzy na temat tego konkretnego zastosowania.
Edytowane przez autora (2020.06.07, 16:47)
blubajuZobacz profil
Poziom ostrzeżenia: 0%
blubaju2020.06.07, 16:39
-18#4
legoras @ 2020.06.07 14:34  Post: 1246694
Pamiętam jak intel nabijał się z buldożerów ktore ciągły po 250W.. jak to możliwe że procesor moze ciągnąć 250?!.. a sami to teraz robią.

Tyle że Intel pomimo tego poboru prądu jakąś tam moc obliczeniową ma w przeciwieństwie do buldożerów. Taki 10 rdzeniowy Buldożer ile by brał prądu? A jakby było z wydajnością?

Wiem, zaraz wyskoczysz z tekstem: Buldożerów nie ma od lat w sprzedaży. I co to za porównanie? Owszem, SkyLayków też nie powinno już być, gdyby nie próżność Intela. Przez co AMD już zaczyna windować ceny, bo nie czuje konkurencji, a zaczyna od płyt gł. Zapomnij że kupisz B550 w cenie B450 na premierę.

A teraz czekam na minusy :)
Edytowane przez autora (2020.06.07, 16:40)
lolek.oloZobacz profil
Poziom ostrzeżenia: 0%
lolek.olo2020.06.07, 16:54
15#5
blubaju @ 2020.06.07 16:39  Post: 1246698
legoras @ 2020.06.07 14:34  Post: 1246694
Pamiętam jak intel nabijał się z buldożerów ktore ciągły po 250W.. jak to możliwe że procesor moze ciągnąć 250?!.. a sami to teraz robią.

Tyle że Intel pomimo tego poboru prądu jakąś tam moc obliczeniową ma w przeciwieństwie do buldożerów. Taki 10 rdzeniowy Buldożer ile by brał prądu? A jakby było z wydajnością?

Wiem, zaraz wyskoczysz z tekstem: Buldożerów nie ma od lat w sprzedaży. I co to za porównanie? Owszem, SkyLayków też nie powinno już być, gdyby nie próżność Intela. Przez co AMD już zaczyna windować ceny, bo nie czuje konkurencji, a zaczyna od płyt gł. Zapomnij że kupisz B550 w cenie B450 na premierę.

A teraz czekam na minusy :)

W tym teście Centurion ma ustawiony limit energetyczny na 220W:

W tym teście 10900K ma ustawiony limit energetyczny na 125W:

Ale jak pokazuje ten wykres:

10900K potrafi krótkotrwale przekraczać 250W.
Jeszcze ciekawiej się robi gdy sprawdzimy ile energii potrzeba aby 10900K utrzymał deklarowane zegary turbo na wszystkich rdzeniach przy pełnym obciążeniu z wykorzystaniem AVX - https://www.tomshardware.com/reviews/intel...0k-cpu-review/2
Wówczas sam CPU pobiera 332W i nawet wydajne chłodzenie wodne nie wystarcza. Na takie coś pozwala Intel producentom(wyższe limity energetyczne) MoBo i nie traktuje tego jako oc:

AMD nawet w przypadku Centuriona z TDP 220W nie posunęło się do takiego 'szaleństwa energetycznego'.
Edytowane przez autora (2020.06.07, 17:05)
lolek.oloZobacz profil
Poziom ostrzeżenia: 0%
lolek.olo2020.06.07, 17:10
11#6
blubaju @ 2020.06.07 16:39  Post: 1246698
legoras @ 2020.06.07 14:34  Post: 1246694
Pamiętam jak intel nabijał się z buldożerów ktore ciągły po 250W.. jak to możliwe że procesor moze ciągnąć 250?!.. a sami to teraz robią.

Tyle że Intel pomimo tego poboru prądu jakąś tam moc obliczeniową ma w przeciwieństwie do buldożerów...

No to porównajmy wydajność wtedy:

Najszybszy i7 ~4% wydajniejszy od Centuriona(wydajność wielowątkowa).
Teraz:

3950X ~43% wydajniejszy od 10900K(wydajność wielowątkowa).

Zatem to Buldożer(seria FX) miał jakąś tam sensowną wydajność pomimo wysokiego poboru energii. Natomiast 10900K ma żałośnie niską wydajność pomimo wysokiego poboru energii.
Edytowane przez autora (2020.06.07, 17:18)
TabalanZobacz profil
Poziom ostrzeżenia: 0%
Tabalan2020.06.07, 17:18
-10#7
lolek.olo @ 2020.06.07 16:54  Post: 1246699

W tym teście Centurion ma ustawiony limit energetyczny na 220W:

W tym teście 10900K ma ustawiony limit energetyczny na 125W:

Ale jak pokazuje ten wykres:

10900K potrafi krótkotrwale przekraczać 250W.
Jeszcze ciekawiej się robi gdy sprawdzimy ile energii potrzeba aby 10900K utrzymał deklarowane zegary turbo na wszystkich rdzeniach przy pełnym obciążeniu z wykorzystaniem AVX - https://www.tomshardware.com/reviews/intel...0k-cpu-review/2
Wówczas sam CPU pobiera 332W i nawet wydajne chłodzenie wodne nie wystarcza. Na takie coś pozwala Intel producentom(wyższe limity energetyczne) MoBo i nie traktuje tego jako oc:

AMD nawet w przypadku Centuriona z TDP 220W nie posunęło się do takiego 'szaleństwa energetycznego'.
Cały twój post się rozbija o inny cytat z przytoczonego testu tomshardware:
'Intel set its official new PL2 watermark at a 250W TDP, which is double the 125W PL1 rating, and recommends that motherboard makers keep boost activity limited to 56 second bursts (Tau). However, motherboard vendors are free to exceed all of these limits at stock settings if they feel their product can handle the increased voltages, current, and heat.'

Czyli 250W jest zgodne ze specyfikacją, to jest PL2. Te >300W to już jest ustawione przez producenta płyty głównej, który ustawił jeszcze wyższe parametry pracy.
lolek.oloZobacz profil
Poziom ostrzeżenia: 0%
lolek.olo2020.06.07, 17:23
Tabalan @ 2020.06.07 17:18  Post: 1246701
lolek.olo @ 2020.06.07 16:54  Post: 1246699

W tym teście Centurion ma ustawiony limit energetyczny na 220W:

W tym teście 10900K ma ustawiony limit energetyczny na 125W:

Ale jak pokazuje ten wykres:

10900K potrafi krótkotrwale przekraczać 250W.
Jeszcze ciekawiej się robi gdy sprawdzimy ile energii potrzeba aby 10900K utrzymał deklarowane zegary turbo na wszystkich rdzeniach przy pełnym obciążeniu z wykorzystaniem AVX - https://www.tomshardware.com/reviews/intel...0k-cpu-review/2
Wówczas sam CPU pobiera 332W i nawet wydajne chłodzenie wodne nie wystarcza. Na takie coś pozwala Intel producentom(wyższe limity energetyczne) MoBo i nie traktuje tego jako oc:

AMD nawet w przypadku Centuriona z TDP 220W nie posunęło się do takiego 'szaleństwa energetycznego'.
Cały twój post się rozbija o inny cytat z przytoczonego testu tomshardware:
'Intel set its official new PL2 watermark at a 250W TDP, which is double the 125W PL1 rating, and recommends that motherboard makers keep boost activity limited to 56 second bursts (Tau). However, motherboard vendors are free to exceed all of these limits at stock settings if they feel their product can handle the increased voltages, current, and heat.'

Czyli 250W jest zgodne ze specyfikacją, to jest PL2. Te >300W to już jest ustawione przez producenta płyty głównej, który ustawił jeszcze wyższe parametry pracy.

Ale intel nie traktuje tego jako oc i nie powoduje to utraty gwarancji. Dodatkowo w tym teście zegary turbo Intela nie zostały przekroczone(~4,9GHz).
To pokazuje jak Intel swobodnie podchodzi do kwestii parametrów swoich CPU. Oczywiście oficjalnie wszystko jest ok. PL2 = 250W. Ale jak ktoś chce to ten CPU może nawet ponad 300W brać i intel nie ma nic przeciwko. Jego partnerzy biznesowi to wiedzą i dlatego na niektórych MoBo dają tak wysokie limity energetyczne.
lolek.oloZobacz profil
Poziom ostrzeżenia: 0%
lolek.olo2020.06.07, 17:38
16#9
Dla zainteresowanych tematem efektywności energetycznej:


Ja widać Intel przegrywa jeszcze mocniej niż w przypadku samej wydajności.
CPU ZEN2 są w tym momencie bezkonkurencyjne jeśli chodzi o efektywność energetyczną w wymagających/długich testach wielowątkowych.
Edytowane przez autora (2020.06.07, 17:43)
SundayUserZobacz profil
Poziom ostrzeżenia: 0%
SundayUser2020.06.07, 19:41
Jak zwykle rzeczowo i merytorycznie. Takie wpisy lubimy :)
Funkcja komentowania została wyłączona. Do dyskusji zapraszamy na forum.
1