Hvad er en multi-core processor? (med billeder)
En multi-core processor er et integreret kredsløb, der bruger to eller flere individuelle processorer eller kerner til at håndtere data. Kernerne kan fastgøres til et integreret kredsløb eller inkorporeres i separate matriser i en chip-pakke. Hver kerne har sin egen cache, og hver har en separat kapacitet til at behandle data.
Fordelen ved en multi-core processor er øget hastighed. En traditionel, single-core processor lagrer nogle data i sin cache, og når data uden for cachen er påkrævet, skal de hentes fra andre steder som RAM-hukommelse. Når dette sker, sænker processorhastigheden til den maksimale hastighed på RAM eller anden lagerenhed. Denne hastighed er normalt meget langsommere end den maksimale processorhastighed.
Multikerneprocessorer er hurtigere, fordi hver kerne kan håndtere sin egen datastrøm. Mens multi-core-processorer stadig selektivt cache-data og henter ikke-cache-data fra andre lagerpladser, kan den ekstra kerne eller kerner fortsætte med at udføre kommandoer og modtage information ved normal processorhastighed, mens en anden processor henter nødvendige information fra langsom lagringsenheder. På denne måde behøver ikke hele systemet at bremse, mens data hentes.
En multi-core processor er især værdifuld til multitasking, hvor mere end et program hver serverer sit eget datasæt til behandling. De separate datastrømme kan håndteres af forskellige kerner, hvilket øger den samlede behandlingshastighed. For at et enkelt softwareprogram kan drage fordel af multikerneteknologi, skal det have samtidig multitrådteknologi (SMT), der giver det mulighed for at sende parallelle sæt instruktioner til de flere kerner, der skal bruges.
Den første kommercielt tilgængelige multi-core processor var dual-core processor. Der er også multi-core processorer med fire, seks og otte kerner. Mange bundkort er imidlertid ikke i stand til at håndtere disse mange kerner. Multikernesystemer kan være homogene ved anvendelse af alle identiske kerner eller heterogene ved anvendelse af ikke-identiske kerner.
Selvom multi-core processorer er beregnet til at øge den samlede hastighed og ydeevne, drager ikke alle programmer fordel af multi-core processeringsteknologi. Mange programmer og endda nogle operativsystemer mangler den SMT, der er nødvendig for at bruge mere end en behandlingskerne. Operativsystemer, der bruger multi-core-behandling er ikke altid designet til at maksimere multi-core-behandlingspotentiale, så den fulde behandlingsevne ofte ikke bliver realiseret.
En multi-core processor har en tendens til at producere mere varme end en single-core processor, hvilket skaber varmestyringsudfordringer. Mængden af varme produceret af en processor har en tendens til at stige eksponentielt med hver ekstra kerne. Høje temperaturer kan medføre, at processorer overophedes, hvilket skaber driftsproblemer og sikkerhedsrisici. Processorproducenter har været nødt til at investere betydelig tid og teknologi i at skabe løsninger til de termiske udfordringer, der præsenteres af multikerneprocessorer.