Hur beräknar du processorhastighet på processorer med flera kärnor?

Nov 1, 2024
Hårdvara

Tillkomsten av ekonomisk konsumentkvalitet med flera kärnor väcker frågan för många användare: hur beräknar man effektivt den verkliga hastigheten för ett flerkärnigt system? Är ett 4-kärnigt 3Ghz-system verkligen 12Ghz? Läs vidare när vi undersöker.

Dagens Fråga & Svar-session kommer till oss med tillstånd av SuperUser - en underavdelning av Stack Exchange, en gruppdrivande gruppering av Q & A-webbplatser.

Frågan

SuperUser-läsaren NReilingh var nyfiken på hur processorhastigheten för ett flerkärnigt system faktiskt beräknas:

Är det korrekt att till exempel säga att en processor med fyra kärnor som vardera körs på 3GHz faktiskt är en processor som körs på 12 GHz?

Jag kom en gång in i ett "Mac vs. PC" -argument (som förresten INTE är fokus för detta ämne ... som var tillbaka på grundskolan) med en bekant som insisterade på att Mac-datorer bara annonserades som 1 GHz-maskiner eftersom de var dubbla -processor G4 som vardera körs vid 500 MHz.

Vid den tiden visste jag att det här var svindel av skäl som jag tror är uppenbart för de flesta, men jag såg bara en kommentar på den här webbplatsen om "6 kärnor x 0,2 GHz = 1,2 GHz" och det fick mig att tänka igen om det finns ett riktigt svar på detta.

Så detta är en mer eller mindre filosofisk / djup teknisk fråga om semantiken för klockhastighetsberäkning. Jag ser två möjligheter:

  1. Varje kärna gör faktiskt x beräkningar per sekund, så det totala antalet beräkningar är x (kärnor).
  2. Klockhastighet är snarare ett antal cykler som processorn går igenom inom en sekund, så länge alla kärnor körs med samma hastighet förblir hastigheten för varje klockcykel oavsett hur många kärnor som finns . Med andra ord, Hz = (core1Hz + core2Hz + ...) / kärnor.

Så vad är det rätta sättet att beteckna den totala klockhastigheten och, ännu viktigare, är det till och med möjligt att använda enkärnig hastighetsnomenklatur på ett flerkärnigt system?

Svaret

SuperUser-bidragsgivare Mokubai hjälper till att rensa upp saker. Han skriver:

Den främsta anledningen till att en fyrkärnig 3GHz-processor aldrig är lika snabb som en 12GHz-kärna är att göra med hur uppgiften som körs på den processorn fungerar, dvs enkeltrådad eller flertrådad. Amdahls lag är viktigt när du överväger vilka typer av uppgifter du kör.

Om du har en uppgift som till sin natur är linjär och måste göras exakt steg för steg som (ett helt enkelt program)

10: a = a + 1
20: Var 10: e

Då beror uppgiften mycket på resultatet av föregående pass och kan inte köra flera kopior av sig själv utan att korrumpera värdet på 'a' eftersom varje kopia skulle få värdet av 'a' vid olika tidpunkter och skriva tillbaka det annorlunda. Detta begränsar uppgiften till en enda tråd och därmed kan uppgiften bara köras på en enda kärna vid varje given tidpunkt, om den skulle köras på flera kärnor skulle synkroniseringsskada uppstå. Detta begränsar den till 1/2 av CPU-effekten i ett dubbelkärnsystem eller 1/4 i ett fyrkärnigt system.

Ta nu en uppgift som:

10: a = a + 1
20: b = b + 1
30: c = c + 1
40: d = d + 1
50: Var 10: e

Alla dessa rader är oberoende och kan delas upp i fyra separata program som det första och köras samtidigt, var och en kan effektivt utnyttja den fulla effekten av en av kärnorna utan synkroniseringsproblem, det är här Amdahls lag kommer in i det.

Så om du har en enda gängad applikation som gör brute force-beräkningar skulle den enda 12 GHz-processorn vinna händerna ner, om du på något sätt kan göra uppgiften uppdelad i separata delar och flertrådade kan de 4 kärnorna komma nära, men inte riktigt nå, samma prestanda, enligt Amdahls lag.

Det viktigaste som ett multi-CPU-system ger dig är lyhördhet. På en enda kärnmaskin som arbetar hårt kan systemet verka trögt eftersom det mesta kan användas av en uppgift och de andra uppgifterna körs bara i korta skurar mellan den större uppgiften, vilket resulterar i ett system som verkar trögt eller jävligt . På ett flerkärnigt system får den tunga uppgiften en kärna och alla andra uppgifter spelas på de andra kärnorna, vilket gör sina jobb snabbt och effektivt.

Argumentet "6 kärnor x 0,2 GHz = 1,2 GHz" är skräp i alla situationer utom när uppgifter är helt parallella och oberoende. Det finns ett stort antal uppgifter som är mycket parallella, men de kräver fortfarande någon form av synkronisering. Handbroms är en videokonverterare som är mycket bra på att använda alla tillgängliga processorer men det kräver en kärnprocess för att hålla de andra trådarna fyllda med data och samla in de data som de är färdiga med.

  1. Varje kärna gör faktiskt x beräkningar per sekund, så det totala antalet beräkningar är x (kärnor).

Varje kärna kan göra x-beräkningar per sekund, förutsatt att arbetsbelastningen är lämplig parallellt, på ett linjärt program är allt du har en kärna.

  1. Klockhastighet är snarare ett antal cykler som processorn går igenom inom en sekund, så länge alla kärnor körs med samma hastighet förblir hastigheten för varje klockcykel oavsett hur många kärnor som finns . Med andra ord, Hz = (core1Hz + core2Hz + ...) / kärnor.

Jag tycker att det är ett misstag att tänka att 4 x 3GHz = 12 GHz, om matematiken fungerar, men du jämför äpplen med apelsiner och summorna är helt enkelt inte rätt, GHz kan inte bara läggas samman för varje situation. Jag skulle ändra det till 4 x 3GHz = 4 x 3GHz.

Har du något att lägga till förklaringen? Ljud av i kommentarerna. Vill du läsa fler svar från andra tekniskt kunniga Stack Exchange-användare? Kolla in hela diskussionstråden här .

.post-innehåll .inmatningsfot

TopSolid Cam 7 And Multi-core Processors

Does CPU Clock Speed Actually Matter?

Windows 7 | How To Increase Your Processor's Speed

How To Check CPU Or Processor Speed & Type On Your PC

CPU Core Count Vs Clock Speed: What Matters More?


Hårdvara - Mest populära artiklar

Hur fungerar 3D-utskrift?

Hårdvara Nov 13, 2024

OBEHANDLAT INNEHÅLL Föreställ dig en robotstyrd varmlimspistol som använder plast istället för lim, och du har grunderna i en 3D-skrivare. Strängar av plast matas in i ett ..


Hur man rengör damm från din MacBook

Hårdvara Jul 13, 2025

Om din MacBook fungerar varmare än vanligt kan kylfläktarna och andra områden blockeras av damm, vilket kan hindra dem från att hålla hela maskinen sval. Så här rensar du din..


Vad är ”rätt att reparera” lagar och vad betyder de för dig?

Hårdvara Jan 20, 2025

Har du någonsin undrat varför det är så svårt att reparera en smartphone, dator eller spelkonsol själv? Det är ingen tillfällighet: företag gör dem så. Men tack vare lags..


Hur du rensar din Mac och installerar om macOS från Scratch

Hårdvara Dec 26, 2024

Är det dags att sälja eller ge bort din gamla Mac? Eller vill du bara ha en ny start för att städa upp din maskin? Så här tar du bort alla dina filer på ett säkert sätt och..


Så här ställer du in din onlinestatus på PlayStation 4

Hårdvara Jun 20, 2025

OBEHANDLAT INNEHÅLL Ibland, du vill att världen ska se dig spela spel . Ibland vill du bara spela ensam. Och dessa tider verkar det som om du kommer in på huvuds..


Ska du använda "viloläge" på din PlayStation 4 eller stänga av den?

Hårdvara Jul 10, 2025

OBEHANDLAT INNEHÅLL Sony uppmuntrar dig att använda "viloläge" på din PlayStation 4 istället för att stänga av den helt. Viloläge är lite som viloläge på din da..


Hur du utvidgar räckvidden för ditt Amazon Echo med en Voice Remote

Hårdvara Jun 20, 2025

OBEHANDLAT INNEHÅLL Alexa och Amazon Echo ger en fantastisk röststyrd personlig assistent och hårdvaruplattformskombination men även de känsliga mikrofonerna i Echo har sina ..


Från tipsboxen: DIY Flash Diffusers, hemgjorda Ethernet-testare och Metro UI i Windows 8

Hårdvara May 10, 2025

OBEHANDLAT INNEHÅLL En gång i veckan sammanfattar vi några av de bra tips som läsarna skickar in och delar med dem till alla. Den här veckan tittar vi på DIY-flashdiffusorer, hemg..


Kategorier