HT to technologia sprzętu a nie oprogramowania.pascalPL pisze:HT to jednostka wirtualna i dobrze pracuje jedynie z aplikacjami, które są pisane specjalnie do współpracy z HT (np. M$ office).
Już z samego faktu, że jest to wbudowane w procesor wynika, że to nie może być nic wirtualnego.
Zasadniczo jest to przetwarzanie dwóch równoległych wątków na jednym rdzeniu.
Działa to oczywiście wolniej od dwóch oddzielnych rdzeni, ale wcale nie tak dużo wolniej jakby można było pomyśleć w pierwszej chwili.
Po pierwsze dwa razy wolniej jest tylko wtedy, gdy dane są w pamięci cache.
Jak trzeba coś ściągać z ramu, a tym bardziej dysku, to różnica w wydajności maleje drastycznie.
Czy rdzeń HT będzie wydajniejszy od tradycyjnego jednowątkowego, to zależy faktycznie od oprogramowania.
Ale tu nie chodzi już o HT konkretnie, tylko o wielowątkowość ogólnie.
Źle napisany program będzie trwonił bez sensu cykle drugiego rdzenia.
Jeśli to dwa odrębne rdzenie, to mała strata, jeśli rdzeń HT to może faktycznie spaść wydajność procesu na którym Ci zależy, chociaż ogólnie procesor wolniejszy wcale nie jest.
Ale jest i sytuacja odwrotna, kiedy zapchasz wątek.
Najlepiej widać to porównując ze starym jednordzeniowym Pentium.
Na Atomie robię przykładowo jeden mulący program i oglądam trzy filmy na raz.
Na jednordzeniowym Pentium robię tylko mulący program i nie mogę myszą poruszyć ....
A na Linuksie to zacząć trzeba od tego, czy kernel jest do obsługi SMP skonfigurowany ...
.