Nu har väl utvecklingen av mjukvara gått så långt att man faktiskt kan tjäna en del prestanda på att ha fler riktiga kärnor?
Till viss del är programvara idag bättre på att använda flera kärnor än tidigare. Men i grunden är de flesta interaktiva program, d.v.s. de flesta som används på skrivbordet, begränsade av hur snabbt det kan reagera på input från användaren och sådana program är i princip alltid begränsade av latens, inte totalt beräkningskraft. I sådana program är det trivialt att utnyttja högre enkeltrådprestanda, det översätts direkt till en bättre upplevelse, medan högre total beräkningskraft i form av flera kärnor sällan ger något alls (det kan faktiskt minska prestanda i vissa lägen om man drar in fler kärnor).
I grunden kommer detta från att ljusets hastighet verkar ha en övre gräns, så innan någon lurar ut hur vi får bättre snurr på ljuset är det inte jättemycket att hoppas på.
Här är det väldigt viktigt att hålla isär fallet där CPU-trådar delar lägsta nivå cache (vilket är fallet i Hyperthreading) och när de inte gör det. Finns en rad interaktiva program som i praktiken mycket väl kan utnyttja båda CPU-trådarna i samma kärna men som kanske inte alls får någon boost av att använda flera kärnor. Orsaken här är att kommunikationslatens mellan två "hypertrådar" är i praktiken noll medan det är en icke-försumbar kostnad att kommunicera mellan CPU-trådar som kanske bara delar sista-nivå cache eller i värsta fall bara RAM.
För den stora massan som använder datorn som arbetsredskap är därför en maskin med två snabba kärnor + SMT i en klar majoritet av fallen snabbare än en maskin med fyra lite långsammare kärnor (framförallt om SMT saknas). Spel verkar ändå ha kommit till en punkt där fyra kärnor ger en fördel, men en låst i5 på säg 3,5 GHz kommer i nästan alla lägen vara långsammare än en upplåst i3 på >4,2 GHz.
Min gissning är att man Intel skrotar modeller utan HT i Coffy Lake, tror det blir i3 med två kärnor, i5 med fyra kärnor och i7 med sex kärnor. Alla modeller kommer då att ha HT. Effekten av Hyperthreading har ökat för varje generation, framförallt i heltalsintesiva applikationer (vilket är en klar majoritet av vad program använder, tyvärr tenderar de flesta benchmarks att testa flyttal och där är inte effekten av HT lika stor).
För t.ex. kompilering och liknande är de högst klockade Skylake i3 i princip jämna med de lägst klockade i5 modellerna. Och då är kompilering något som rent teoretisk skalar linjärt med antal CPU-trådar, i praktiken finns ändå en del serialiseringspunkter i form av I/O och samt länkning. Just fall som I/O där CPU-kärnor tenderar att "stalla" då I/O är väldigt långsamt jämfört med rena CPU-beräkningar är en av de fall där SMT ser störst vinst.
Care About Your Craft: Why spend your life developing software unless you care about doing it well? - The Pragmatic Programmer