-
Data: 2009-09-18 16:53:48
Temat: Re: Hyper Threading
Od: Wojciech Jaczewski <w...@o...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]mgk wrote:
>> Dowolne operacje przy HT wykonują się quasi-równolegle. Z grubsza
>> intuicyjnie można to opisać tak, że procesor w kolejnych cyklach
>> wykonuje na przemian instrukcje dwóch wątków, i są to zupełnie dowolne
>> instrukcje.
>
> No tak, ale czy wykonywanie na przemian trwa 2 razy dluzej? :) czy
> jest to rownolegle.
Procesor ma - przykładowo - trzy jednostki obliczeń zmiennoprzecinkowych,
trzy jednostki stałoprzecinkowych i kilka jednostek spełniających inne
funkcje.
Jeśli mamy na przykład fragment programu wykonujący obliczenia
zmiennoprzecinkowe takie, że do wykonania kolejnej operacji potrzebny jest
wynik poprzedniej, a jednocześnie nie ma w tej sekwencji skoków
warunkowych, to taki wątek będzie w stanie dać zajęcie tylko jednej
jednostce zmiennoprzecinkowej. Dwie pozostałe jednostki zmiennoprzecinkowe
może wtedy wykorzystać drugi wątek.
Podobnie będzie, jeśli się trafi, że jeden wątek akurat zapragnął wykonywać
operacje zmiennoprzecinkowe, drugi - stałoprzecinkowe.
Z kolei zmniejszanie wydajności wskutek HT wynika z tego, że każdy wątek
potrzebuje korzystać z pamięci, często z całkowicie różnych obszarów. Poza
tym, że daną przepustowość pamięci trzeba rozdzielić na dwa wątki, zwiększy
się prawdopodobieństwo, że oczekiwany blok pamięci nie znajduje się w cache
procesora.
Nie wiem, czy istnieje jakakolwiek reguła pomagająca oszacować, na ile
przyda się w danym wypadku HT. Niestety jak zwykle jedynie słuszną jest
rada: zmierzyć.
Następne wpisy z tego wątku
- 18.09.09 16:56 Wojciech Jaczewski
- 20.09.09 18:17 mgk
- 21.09.09 06:17 Mariusz Marszałkowski
- 23.09.09 11:30 Mariusz Marszałkowski
- 24.09.09 07:40 mgk
- 24.09.09 08:53 Mariusz Marszałkowski
- 25.09.09 07:49 mgk
- 25.09.09 10:14 Mariusz Marszałkowski
- 26.09.09 08:17 mgk
- 26.09.09 11:53 Mariusz Marszałkowski
- 27.09.09 19:13 mgk
- 28.09.09 10:20 Mariusz Marszałkowski
Najnowsze wątki z tej grupy
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
Najnowsze wątki
- 2024-11-25 Karty przedpłacone (podarunkowe) Google Play - pytanie do korzystających
- 2024-11-26 wina Tóska
- 2024-11-26 Rewolucja/Rewelacja!
- 2024-11-25 grupa ożyła ;)
- 2024-11-24 Być jak Clint
- 2024-11-24 Rura kanalizacja konceptu Franke = problem
- 2024-11-25 Wrocław => Lead Java EE Developer <=
- 2024-11-25 Warszawa => Business Development Manager - Network and Network Securit
- 2024-11-25 Kraków => Programista Full Stack (.Net Core) <=
- 2024-11-25 Lublin => Senior PHP Developer <=
- 2024-11-25 Karlino => Konsultant wewnętrzny SAP (FI/CO) <=
- 2024-11-25 Warszawa => ECM Specialist / Consultant <=
- 2024-11-25 Katowice => Regionalny Kierownik Sprzedaży (OZE) <=
- 2024-11-25 Warszawa => Senior Frontend Developer (React + React Native) <=
- 2024-11-25 Lublin => Inżynier Serwisu Sprzętu Medycznego <=