Jak wspomniano, masz system dwurdzeniowy z 2 wątkami na rdzeń.
Jest to sprzedawane przez Intel jako hyperthreading i zostało wykonane na różne sposoby przez lata przez różnych producentów.
Aby wyjaśnić to w najprostszej formie, każdy rdzeń procesora składa się z „rdzenia” i różnych architektur wokół tego rdzenia, które przechowują informacje o stanie i procesie dla każdego wątku. Rdzeń z jednym wątkiem ma architekturę umożliwiającą przechowywanie jednocześnie informacji o stanie o wartości 1 wątku, a rdzeń z hiperwątkiem przechowuje dwa odrębne zestawy informacji o stanie, umożliwiając jednoczesne działanie dwóch oddzielnych procesów, o ile wymagają one różnych części rdzenia ( co prawdopodobnie ma miejsce, ponieważ rdzeń składa się z wielu jednostek z wielu różnych typów jednostek przetwarzania).
Aby uprościć sposób postrzegania procesora przez system, każdy nadpis jest postrzegany jako osobny procesor, dlatego dwurdzeniowy, 2-wątkowy procesor na rdzeń pojawia się jako procesor czterordzeniowy.
Możliwe jest także, że system operacyjny użyje funkcji Core-parking (funkcja w nowszych procesorach Intel), która pozwala systemowi zawiesić połowę rdzenia z wielowątkowością, tak że gdy nie jest wymagana dodatkowa zdolność do hiperwątkowania, wydajność pojedynczego wątku jest zwiększany, ponieważ rdzeń nie współdzieli już swojej pamięci podręcznej w dwóch wątkach i może teraz całkowicie poświęcić pamięć podręczną na jednym wątku.
Powodem jest hyperthreading , który obsługuje twój procesor. Hyperthreading nie jest odpowiednikiem dodatkowego procesora, ale może naprawdę zwiększyć wydajność aplikacji wielowątkowych. Dla każdego fizycznie występującego rdzenia procesora system operacyjny adresuje dwa procesory wirtualne i w miarę możliwości dzieli obciążenie między nimi.
źródło
Rzeczy są o wiele bardziej skomplikowane niż w czasach, gdy jedna instrukcja procesora na jeden cykl zegara.
Dla każdej instrukcji istnieje teraz potok składający się z kilku kroków. Słyszałem aż 41, choć to było dawno temu i nie mam pojęcia, jak wyglądają obecne potoki procesorów. Wiem, że jeśli potok jest wystarczająco długi, możesz rozpocząć nową instrukcję w dół potoku przed zakończeniem ostatniej instrukcji, czasami w tym samym cyklu zegarowym, tak aby twój pojedynczy rdzeń skutecznie wykonywał dwie rzeczy naraz.
Jest jednak sztuczka. Nie można tego użyć do przyspieszenia tempa, w jakim procesor żuje instrukcje z określonego programu. W grę wchodzi problem poprawności: kolejna instrukcja może zależeć od dotychczas nieokreślonego wyniku poprzedniej instrukcji. Aby skorzystać z długiego rurociągu bezpiecznie , chip zaprezentuje dwa oddzielne rdzenie procesora do planującego system operacyjny i alternatywne instrukcje wysłane do każdego rdzenia tak, że dwie instrukcje do tego samego „rdzenia” nigdy nie są w rurociągu w tym samym czasie. W ten sposób możemy być pewni, że wszelkie instrukcje wykonywane jednocześnie nie będą ze sobą kolidować. Nazywa się to hyperthreading .
Warto tutaj zauważyć, że chociaż hyperthreading może znacznie zwiększyć ilość pracy, jaką dostajesz z procesora, nie jest tak dobry jak posiadanie tak dużej liczby rdzeni fizycznych. W zależności od obciążenia pracą może to oznaczać jedynie 15% poprawę lub nawet 40% poprawę. W niektórych okolicznościach możesz nawet chcieć wyłączyć tę funkcję, aby pozostałe rdzenie miały pełny wyłączny dostęp do pamięci podręcznej L1 / L2 dla tego rdzenia (czasami dzieje się tak w przypadku dedykowanych serwerów baz danych).
Gdy twój układ reklamuje się jako mający 2 rdzenie z 4 wątkami, oznacza to, że jest to dwurdzeniowy procesor, który obsługuje hyperthreading.
źródło
Spójrz na tę stronę wywiadowczą - zawiera wiele animacji pokazujących, jak hyperthreading przyspiesza twoje zadania.
To
Utilization of Processor Resources
najlepsza animacja, spójrz na nią i kliknij przycisk „postęp”.źródło
Mówiąc prościej, odpowiedź brzmi tak. Każdy rdzeń procesora może obsługiwać dwa niezależne wątki, więc łącznie 4. Ale to nie znaczy, że ma taką samą wydajność jak czterordzeniowe procesory jednowątkowe. praktycznie wydajność dwurdzeniowego procesora dwurdzeniowego jest niższa niż wydajność czterordzeniowego procesora jednordzeniowego. Jak AMD Phenom X4.
źródło