Você está na página 1de 33

Efficient Operating System Scheduling for Performanc

e-Asymmetric Multi-core Architecture


Authors:
Tong Li, Dan Baumberger, David A.
Koufaty, and Scott Hahn
[Systems Technology Lab, Intel Corporation]

Source:
2007 ACM/IEEE conference on
Supercomputing

contorno
Introduccin
Para la programacin de Arquitectura Rendimien

to-asimtrica
Evaluacin
Conclusin

Introduccin

Durante la prxima dcada, esperamos ver los pro

cesadores con decenas e incluso cientos de ncleo


s en unchip.
Reenviar defensores de la investigacin las arquite
cturas multi-ncleo rendimientoasimtrico.
same instruction set
core1
core2
core3

core4

different performance characteristics

Cores in the same processor can


have different performance

Introduccin (cont.)
Programadores desistemas operativosasumen tra

dicionalmente hardware homogneo y no trabajan


directamente bien en arquitecturas asimtricos.
En este trabajo se presentaAMPS(Asymmetricprog
ramador de varios procesadores)que soporta de
manera eficiente tanto SMP- y arquitecturas de ren
dimiento asimtrico de estiloNUMA.

contorno
Introduccin
Para la programacin de Arquitectura Rendimien

to-asimtrica
Evaluacin
Conclusin

Para la programacin de Arquitectura R


endimiento-asimtrica
Modelos de ejecucin de cola:
Distribuidomodelo de ejecucin de colas
Centralizadomodelo de ejecucin de colas
Polticas de planificacin:
Polticasde rosca dependiente
Polticasde hilo independiente

La programacin para un rendimiento as


imtrico Arquitectura (cont.)
Mtricas de optimizacin:
Actuacin
Justicia
repetibilidad
Tres componentes de AMPS:
Balanceo de carga asimtrica-conscientes
Programacin ms rpida de ncleo primera
La migracin NUMA

Asimtrica-Aware equilibrio de carga


Amplificadores depotenciade computacin centra

laproximadautilizandofrecuencias dencleo.
Ccuantificarpotencia de clculo de mineral

Definir unapotenciadeclculo reducidoncleo'scomoP.


Dejar que el ncleo confrecuenciams bajatienep =1.
Dejar que el ncleo tengaFveces

mayorfrecuencia tienen
P = FS,dondeSes unfactordeescalayS<1.

En nuestro modelo asimtrico, una unidad de tiem

po en un ncleo conP = xequivalente axunidades


de tiempo en un ncleo conP =1.

Asimtrica-Aware equilibrio de carga (co


nt.)
Osesconvencionalesdefinen lacarga

de un ncleo
que es el nmero de procesos en su cola de ejecuci
n, es decir,ejecutar longitud de lacola.
Balanceo de carga
Para cualquier ncleo con escalado depotenciaP,definir s

ucarga reducidocomoL,dondeL = (longitud de gestin de


colas /P).
SeaLmaxsea la carga mxima escalado en el sistema.
SeaLminser lacargamnimareducidoenel sistema.
Definir un sistema asimtrico que est equilibradodecarga
siLmax-Lmin1.
9

Asimtrica-Aware equilibrio de carga (co


nt.)
Ex1:
P=2

L=1.5
P=1 L=3 P=1 L=3 P=1 L=2

Not
loadbalance
d

Lmax Lmin = 1.5


Core 0

Core 1

Core 2

Core 3

Ex2:
P=2

L=2
P=1 L=2 P=1 L=2 P=1 L=2

Loadbalance
d

Lmax Lmin = 0
Core 0
10

Core 1

Core 2

Core 3

Ms rpido-Core-Primera Programacin
Programacin ms rpida de ncleo primera perm

ite a las discusiones que seejecuten en los ncleos


ms potentescada vez que seutilizan bajo-(es deci
r,L<1).
Better performance!
Ex:

11

Ms rpido-Core-Primera Programacin
(cont.)
Ms rpido-Core-primer algoritmo
Paraun hilo de nueva creacin, AMPScalcular la nu

eva cargaaescalapara cada ncleo suponiendo qu


e el hilo se ejecutan enl.
Elijael ncleo con lacarga a escalamnimapara ini
ciar elnuevohilo.
Si contina elempate,elegirelms rpidoncleo.

12

Migracin NUMA-Aware
Cuandoun hilo migra a un nuevo ncleo, incurre e
nerror decachobligatoria.
Por lotanto,los programadores del sistema operat

ivo generalmenteevitanlas migracionesa menos q


ue la carga del sistema es considerablemente dese
quilibrado.
Carga asimtrica-conscientesAMPS'sequilibrio nat
ural permite a los hilos paramigrar a los ncleos m
s rpidoscuando estninfrautilizados.

13

SMP (Symmetric Multi-Processin


g)
Core
0

Core
1

Core
2

Core
3

Memory Controller

DRAM

14

DRAM

DRAM

NUMA (Non-Uniform Memory Access)

Core
0

Core
1

Memory
Controller

DRAM

DRAM

Node 0

15

Core
2

Scalable
Interconne
ct
DRAM

DRAM

Core
3

Memory
Controller

DRAM

Node 1

DRAM

NUMA-Aware Migracin (Cont.)


Los experimentosmuestran que la sobrecarga aso
ciada con la migracin de un hilo esinsignificantee
n sistemasSMP,pero puede serimportante en los s

istemasNUMA.
Por lo tanto, extendemos AMPS conlas polticas de
migracinNUMA.

16

NUMA-Aware Migracin (Cont.)


Cmo determinar si la migracin es probable bene

ficioso o no?
Prediccin por encima de migracin

El seguimiento delos conjuntosde hilosde trabajopara ay

udar a examinar las condiciones.


Desde el seguimiento deconjuntos de residenteses much
o ms fcil que los conjuntos de trabajo, AMPS seguimient
o del conjunto residente de cada hiloen cada nodo.

17

NUMA-Aware Migration (Cont.)


algoritmo de prediccin
Cuando unhilo Tmigra formadel

ncleodeAaBncl
eo,nuestro algoritmo predice la sobrecarga migraci
n a ser alta sitodaslas siguientes condiciones sonver
daderas.
Un ncleo central y B estn en diferentes nodos.
Un cdigo est en un nodo para el que el hilo T tiene
elvalordelcontadormximo RSS(tamano del conjun
to residente) en comparacin con otros nodos.
El valor RSS contador del hilo T para elnodode ncleo
A'sesmayor que la LLC(Ultima nivel de cach) el tam
ano de la base B.
18

NUMA-Aware Migration (Cont.)


Las polticas de migracin hilo
La poltica siempre
La poltica del mismo nodo
La poltica de RSS

19

Outline
Introduccin
Para la programacin de Arquitectura Rendimien

to-asimtrica
Evaluacin
Conclusin

20

Evaluation
Hemos implementado AMPS en elncleo de Lin

ux 2.6.16y utilizar la modulacin de la CPU para


emular el rendimiento asimtrico en sistemas S
MP y NUMA.

21

Evaluation (Cont.)
Para emular el reloj de la CPU, asumirncle

os parafuncionar al 50% de sus ciclos de trab


ajo completosque hacen lgicamente susfre
cuencias 50% ms bajosque el resto de los n
cleos.

Most
ver-subscribe
time in parallel
the system
phases
with
and
more
a small
threads
fraction
than
incores
sequential phases
22

SMP Evaluation
Performance
1.44
Median: 1.16

23

SMP Evaluation (cont.)


Justicia
72%

25%

24

88%

SMP Evaluation (cont.)


repetibilidad

Stock Linux may schedules a thread


on a faster core in one run but on a
slow core in another.

25

AMPS schedules threads to


faster
cores whenever possible.

SMP Evaluation (cont.)


Software de arriba de Migracin

26

AMPS introduces a large number of extra


migrations; however, they only result in
negligible amounts of overhead in terms of
runtime.

SMP
Evaluation
(cont.)
AMPS introduce un gran nmero de
migraciones
adicionales;sin
Hardware
Migration Overhead
embargo, slo dan lugar a cantidades
insignificantes de sobrecarga en
trminos de tiempo de ejecucin.

27

proporciones se pierda de la
instruccin TLB, los datos TLB y el
cach de traza con la accin de
Linux y AMPS son casi idnticos
entre s
debido a la obtencin previa de
hardware ser ms eficaz con AMPS,
reduciendo as
el nmero de L2 se pierde.

NUMA Evaluation
Evaluamos AMPS para dos configuraciones NUM

A:

NUMA-1:
8 ncleos ms rpidosen losnodos2ylos restantes 24 n

cleos son ncleos de ducha.


ConfiguracionesRepresent deasimetra de todo elsistem
a.

NUMA-2:
cada unode los 8 nodos contiene 1 ncleo ms rpido.
Representanconfiguraciones deasimetradentro de unzc

alo.

28

La poltica siempre se comporta mucho peor que el original


de Linux para la mayora de los puntos de referencia,
debido a los gastos generales de migracin significativas
La poltica del mismo nodo que ofrece prestaciones de
cerca de stock Linux
El RSS conduce AMPS para superar a Linux de stock por cada punto
Performance
de referencia
con aceleraciones que van desde 1.02 a 2.61

NUMA Evaluation (Cont.)

Sin embargo, Ammp y Galgel obtener buenas


aceleraciones porque tienen pequeos
conjuntos de trabajo por cada hilo y
frecuentes migraciones tienen poco impacto
29

NUMA Evaluation (Cont.)


poltica para lograr el mejor desempeo
Overhead la RSS
migracin
entre las tres polticas.

30

Poltica de RSS constrie las migraciones de los puntos de


referencia con grandes conjuntos de trabajo, pero permite ms
migraciones para Ammp y Galgel, cuyos conjuntos de trabajo
son relativamente pequeos

Outline
Introduccin
Para la programacin de Arquitectura Rendimien

to-asimtrica
Evaluacin
Conclusin

31

Conclusion
En este trabajo sepropone elplanificadorAMPS siste

ma operativoquegestiona de forma eficiente tanto


SMP- yprestacionesdelacocina NUMAarquitectura
s asimtricos.
AMPS es fcil deimplementar,ya que requieremodif
icaciones puntuales a lossistemas operativosexiste
ntesyno hay cambios en lasaplicaciones.
La evaluacin demostrque AMPS mejora social Lin
ux parasistemas asimtricosen tres aspectos: el ren
dimiento, la equidad yla repetibilidad de lasmedicio
nes de rendimiento.
32

Thanks for your Attention!

Você também pode gostar