Home

multicorearkitekturer

Multicorearkitektur är en datorkonstruktion där flera beräkningskärnor finns integrerade i en enda processorkrets och kan exekvera instruktioner parallellt. Genom att dela minne, cache och I/O-resurser möjliggör den ökad genomströmning och bättre energianvändning jämfört med enkärniga processorer vid vissa arbetsbelastningar.

Kärnorna kan vara lika eller olika i prestanda och ofta är de organiserade som en kopp/samhörighet inom

Två centrala begrepp är symmetric multiprocessing (SMP), där kärnorna har likvärdiga behörigheter och gemensamt minne, samt

Vanliga applikationer inkluderar vardagliga datorarbetsbelastningar, spel, vetenskapliga beräkningar och multimedia, där ökade kärnor bidrar till bättre

samma
chip.
En
gemensam
minnesstruktur
och
cache-kohesion
gör
att
varje
kärna
kan
få
snabb
tillgång
till
delade
data,
men
kräver
koherent
protokoll
som
MESI
för
att
undvika
dataraces
och
negativa
effekter
som
cache-missar.
Interconnecten
mellan
kärnorna
kan
vara
en
bus,
en
korsbar,
en
ring
eller
ett
nätverk
av
många
noder
(mesh/torus),
och
den
påverkar
latens
och
bandbredd
vid
kommunikation.
icke-enkla
minnesåtkomst
(NUMA)
som
ofta
uppstår
när
minnesresurser
är
organiserade
i
flera
zoner.
Genom
programvarustrategier
som
trådar,
OpenMP
eller
SIMD-sviter
kan
mjukvara
utnyttja
flera
kärnor.
Programmering
och
synkronisering
är
centrala
utmaningar
eftersom
overhead
och
minnesåtkomst
blir
begränsande
faktorer,
enligt
Amdahls
lag.
prestanda
utan
att
för
den
skull
förbruka
oproportionerligt
mycket
plats.
Framtiden
präglas
av
fortsatta
försök
till
energieffektivisering
och
heterogen
arkitektur
där
kärnor
kombineras
med
acceleratortyper
som
grafik-
eller
tensorenheter.