Dissertação

{en_GB=Faster CPU emulation and dynamic Kernel compilation in Multi2Sim} {} EVALUATED

{pt=Eficiência energética é uma preocupação cada vez maior, tanto em dispositivos móveis como em computação de larga escala. Dispositivos móveis estão dependentes do uso de uma bateria, que tem de durar tempo suficiente para ser de uso prático, e as grandes instalações de servidores consomem grandes quantidades de electricidade, produzindo grandes quantidades de calor, que tem de ser dissipado. Dado que os métodos actuais de dimensionamento estão cada vez mais difíceis de aproveitar, é sensato explorar vias de melhoramento alternativas. No entanto, criar protótipos de hardware é caro e moroso. Ao contrário do hardware, o software é intrinsecamente maleável, e podemos aproveitar-nos disso para explorar desenhos alternativos antes de passar a prototipagem mais cara. Deste modo, estendemos o Multi2Sim, um simulador de CPUs e GPUs, para abordar algumas das suas deficiências. O Multi2Sim emula, entre outras arquitecturas, Southern Islands, uma arquitectura relativamente recente de GPUs, bem como fornece uma implementação de um runtime de OpenCL, um norma para computação heterogénea. Dado que uma implementação em RTL existe para a arquitectura Southern Islands, e que o Multi2Sim é o único simulador existente compatível com essa implementação, é um excelente candidato para prototipagem em derivados dessa arquitectura. Neste trabalho, damos ao Multi2Sim a capacidade de compilar novo software, coisa que deixou de ser possível quando a AMD descontinuou e indisponibilizou os seus drivers proprietários, dos quais o Multi2Sim dependia, e acelerámos a execução de partes ancilares à emulação do GPU., en=As more and more computers are used, power efficiency is a growing concern, for both mobile devices and large-scale server deployments. Batteries must last enough to be of practical use, and large-scale computing consumes large quantities of electricity and thus generates large amounts of heat. As such, it is important to improve power efficiency, both to reduce consumption and to increase computational capability within a power budget. As current scaling benefits in power efficiency are increasingly difficult to leverage, focusing on alternative lines of improvement can be fruitful. However, prototyping hardware is costly and morose. Unlike hardware, software is very malleable, and therefore we can exploit this property to more easily explore the design space before moving onto costlier prototyping. To this end, we extend Multi2Sim, a simulator of CPUs and GPUs, to address some of its shortcomings. Multi2Sim emulates, among others, the AMD Southern Islands microarchitecture, a relatively recent GPU architecture with an open-source RTL implementation, in addition to providing a runtime implementation for OpenCL, a standard for heterogeneous computing. Unfortunately, Southern Islands in Multi2Sim stopped in time when AMD deprecated its proprietary drivers, upon which Multi2Sim depended, and no new software could be run in it. In this work, we imbue Multi2Sim with the ability to compile new software, and modified its emulation capabilities to significantly speed-up execution ancillary to GPU emulation.}
{pt=Simulação, rastreio, GPGPU, CPU, compiladores, arquitecturas heterogéneas, en=Simulation, tracing, GPGPU, CPU, compilers, heterogeneous architecture}

Dezembro 4, 2019, 10:30

Publicação

Obra sujeita a Direitos de Autor

Orientação

ORIENTADOR

Pedro Filipe Zeferino Tomás

Departamento de Engenharia Electrotécnica e de Computadores (DEEC)

Professor Auxiliar

ORIENTADOR

Nuno Filipe Valentim Roma

Departamento de Engenharia Electrotécnica e de Computadores (DEEC)

Professor Auxiliar