Niestabilność termiczna procesora może wystąpić w rdzeniu wewnętrznym (który jest zaprojektowany do pracy w wyższych temperaturach niż, powiedzmy, pamięć podręczna L2) lub w zewnętrznym procesorze. Gdyby procesor był nadprzewodnikiem termicznym, wszystko byłoby w tej samej temperaturze i to nie miałoby znaczenia.
Zwykle ciepło jest usuwane z całej powierzchni pokrytej radiatorem i jest generowane głównie w rdzeniu (rdzeniach), a w mniejszym stopniu w sprzęcie pomocniczym, w zależności od szybkości zużycia energii na jednostkę objętości (lub powierzchni, ponieważ architektura procesora jest w zasadzie płaski).
Zwiększenie napięcia i częstotliwości procesora powoduje zwiększenie wytwarzania ciepła w rdzeniu . Jeśli ten wzrost, pomniejszony o usunięte ciepło w stanie ustalonym, spowoduje, że temperatura będzie zbyt wysoka dla rdzenia, to nie ma znaczenia, ile rdzeni zostanie wyłączonych - te nadal włączone ulegną awarii. Lub po pewnym czasie zawiodą z powodu elektromigracji .
Jeśli temperatura jest bezpieczna dla rdzenia, zauważysz, że temperatura na zewnątrz rdzenia jest nadal podnoszona w górę, ponieważ nadmiar ciepła przesiąka z rdzenia do grzywki (na czerwonym zdjęciu na czerwono i żółto).
Może się więc zdarzyć, że gdy rdzeń jest poniżej swojej temperatury krytycznej, nadal podnosi temperaturę grzywki powyżej tolerancji temperatury grzywki. Wtedy coś na marginesie działa nieprawidłowo i cały procesor staje się „niestabilny”, nawet jeśli same rdzenie nadal znajdują się w bezpiecznej strefie.
Ponieważ ciepło w grzywce pochodzi (również) ze wszystkich rdzeni, sekcji hiperwątkowania itp., Wyłączenie tych funkcji zmniejsza to ciepło i może utrzymać grzywkę stabilną.
W tym przypadku nawet rodzaj wykonywanego kodu może wpływać na wytwarzanie energii; tak, że możesz mieć awarie podczas uruchamiania tego samego kodu skompilowanego z lub bez, np. obsługa SSE3. W rzeczywistości nawet wybór kolejności instrukcji może być istotny i istnieją badania w tym zakresie .