Investigadores do CiTiUS melloran o rendemento dos servidores poñendo a punto o acceso á memoria
luns, 26 de setembro do 2016
Os investigadores
do CiTIUS (Centro Singular de Investigación en Tecnoloxías da
Información da USC) veñen de amosar como mellorar o rendemento dos
servidores. E fixérono acadando unha importante taxa de
optimización sobre estas tecnoloxías a través dunha fórmula ben
concreta: a posta a punto do acceso á memoria. Estes logros foron a
base e o miolo dunha tese do centro de investigación compostelán.
Nela, máis en detalle, demóstrase como facer medrar até nun 70% o
rendemento dos servidores adicados a abordar a xestión de múltiples
tarefas ou usuarios.
Unha das claves do traballo, sinala o
CiTIUS está na disposición espacial dos elementos hardware nos
servidores, unha disposición que determina un papel moi relevante no
seu rendemento. Segundo explican fontes do centro compostelán, unha
característica deste tipo de equipos é que o acceso ao lugar onde
se almacenan os datos, ou sexa a memoria, é compartido. Isto quere
dicir, entre outras cousas, que todos os procesadores e os seus
núcleos poden acudir a ela en calquera momento para obter algún
dato. Porén, sinala o CiTIUS, “dependendo de como estea construído
internamente o servidor, algúns destes núcleos terán a capacidade
de acceder a unhas partes da memoria máis rápido que a outras”.
Estas miúdas diferenzas constitúen outra das bases fundamentais da
investigación, amais “dun eido de máximo interese científico”.
Por que? Pois pola súa estreita relación cunha circunstancial caída
no rendemento nas prestacións do servidores.
Segundo prosegue o centro compostelán,
é moi habitual que os sistemas operativos adoiten distribuír o
traballo dentro dun servidor en función dos núcleos dispoñíbeis,
gardando os datos na memoria sen prestar demasiada atención a que
núcleo os vai a empregar. Como consecuencia, este “desinterese”
polos tempos tempos de acceso ás distintas zonas de memoria “pode
significar unha redución moi significativa do rendemento,
incrementando así o tempo invertido na execución dos programas”.
Ao fío do devandito, o Grupo de
Arquitectura de Computadores do CiTIUS foi quen de establecer novos
modelos de rendemento para a súa aplicación en servidores, que
esencialmente contan con dúas vantaxes principais. Estas son: por
unha banda, amosan aos programadores o comportamento do seu código
(dándolles pescudas sobre como melloralo) e, pola outra, permiten
establecer estratexias orientadas á toma de decisións durante a
execución dun programa, co obxectivo de mellorar as súas
prestacións. Para iso desenvolveron unha ferramenta de propósito
específico, capaz de obter a información xerada polos contadores e
amosar os patróns de rendemento, en palabras do CiTIUS “de maneira
moi cómoda para o usuario e cunha baixa influencia no rendemento do
sistema”. O centro compostelán engade que esta mesma información
serviulles aos investigadores para dar forma a un “sistema de
migración de fíos,
que migra de maneira automática os threads
entre os distintos núcleos dos procesadores, co obxectivo de atopar
o mellor emprazamento para cada un e optimizar a súa execución en
tempo real, de forma transparente ao usuario”. E engade: “Este
sistema de migración recolle constantemente información sobre o
comportamento dos fíos, facendo uso dela co propósito de
identificar o núcleo que se atopa nas mellores condicións para
executar da maneira máis eficaz os fíos (ou os programas)”.
- Exterior do edificio do CiTIUS no Campus Sur de Santiago
O traballo, froito dunha tese de
doutoramento defendida recentemente no CiTIUS polo investigador Oscar
García, foi validado logo de avaliar a precisión do sistema de
migración de fíos con ensaios baseados nos NAS
Parallel Benchmarks, un banco de probas
deseñado por enxeñeiros da Axencia Espacial Estadounidense (NASA)
para medir o rendemento dos computadores.
Durante o proceso de validación
executáronse de maneira simultánea catro programas distintos nun
servidor con idéntico número de procesadores (simulando un suposto
no que catro usuarios se conectan á vez ao mesmo servidor). Desta
maneira, observouse que se todos os programas se executan en
procesadores que acceden aos seus datos da maneira máis eficiente
posíbel (lendo sempre da memoria máis axeitada), os procesos
desenvólvense mellor do que decote acontece cando o encargado do
reparto é o sistema operativo. .
As sucesivas probas demostraron como
neste tipo de situacións o sistema de migración de fíos
desenvolvido no CiTIUS conseguía mellorar o rendemento ata un 70%.
“Estes resultados”, sinala o centro compostelán, “de ser
integrados no sistema operativo, poderían mellorar notablemente o
rendemento en servidores con múltiples usuarios”. En palabras dos
autores da investigación, “o chimpo cualitativo apreciaríase
especialmente en casos como os servidores de Internet ou nos adicados
a problemas de simulación científica ou técnica, porque se trata
de contornas onde se executan programas con grande uso de memoria e
un considerábel número de fíos”.