artykuły

Wycinanie jąder: czy wielordzeniowe procesory mają sens?

118
18 grudnia 2006, 11:05 Ryszard Sobkowski

Wiele – to znaczy dwa?

Okazuje się, jak widzieliśmy na przykładzie Sony Vegas 7, że niektóre „wielowątkowe” aplikacje w rzeczywistości przystosowane są do korzystania co najwyżej z dwóch jąder obliczeniowych. Przykładem może być Quake 4 z patchem umożliwiającym korzystanie z wieloprocesorowej konfiguracji SMP.

Jak widać, zwiększanie liczby aktywnych rdzeni obliczeniowych w systemie nie tylko nie przyspiesza działania programu, lecz wręcz przeciwnie – przy dwóch jest on najlepszy... Wielowątkowy patch Quake’a jest przy tym napisany na tyle elegancko, że na konfiguracji jednoprocesorowej nie daje się po prostu włączyć.

Co ciekawe, jednowątkowa wersja Quake 4 odczuwa wyraźny, choć niewielki zysk, działając na konfiguracjach wieloprocesorowych.

Ale patch obsługi SMP do Quake’a 4 był pisany na chybcika, możemy więc wybaczyć pewne anomalie zachowań. Popatrzmy na coś przemyślanego. Kolejna gra, zaliczana do wielowątkowych i przystosowana do wykorzystywania konfiguracji wielordzeniowych to Oblivion, który...

... wyraźnie przyspiesza na dwóch rdzeniach, by następnie na czterech – zwolnić.

W najnowszym, wielowątkowym WinRAR 3.62 pierwsze podwojenie liczby rdzeni przynosi 30-procentowy skok wydajności, drugie – na poziomie 25 procent. Trzecie przyniosłoby zapewne kolejne około 20 procent przyspieszenia, ale na razie nie dysponujemy konfiguracją, która pozwoliłaby to sprawdzić.

Gorsze wrażenie robi kodek DivX 6.2 - nominalnie wielowątkowy. Jak jest w praktyce z jego wielowątkowością?

Okazuje się, że nienajlepiej...O ile przejście z jednego na dwa rdzenie przynosi imponujacy skok wydajności, to dalsze zwiększanie liczby jader obliczeniowych nie przynosi efektownych rezultatów. Ciekawie zachowuje się natomiast kodek XviD 1.2.

Dwa rdzenie przynoszą mu zauważalny wzrost wydajności, a dalsze zwiększanie ich liczby też nie pozostaje bez śladu...

O niektórych wielowątkowych aplikacjach można więc śmiało powiedzieć, że w rzeczywistości zoptymalizowano je na pracę w środowisku dwuprocesorowym. I nic ponadto!

3