2 research outputs found
Performance analysis of Deep Learning applications on general purpose processors
RESUMEN: Las aplicaciones de Deep Learning se han extendido de manera significativa en los últimos años, obligando incluso a crear nuevas tecnologías específicas para este campo (TPU). Por ello, los fabricantes de procesadores de propósito general se ven en la necesidad de mejorar sus productos para que sean competentes. Y es ahí donde surge la necesidad de encontrar una herramienta que sea capaz de realizar un análisis del rendimiento del sistema. Haciendo más fácil entender las interacciones entre el hardware y software y facilitando las labores de optimización y desarrollo. En este trabajo se ha diseñado una herramienta, de nombre DL-Prof, para evaluar el rendimiento de los procesadores de propósito general cuando se ejecutan aplicaciones de Deep Learning. Desde el punto de vista software se ha trabajado con los entornos de desarrollo más habituales en DL. Para ello, se ha hecho uso de los contadores existentes en este tipo de hardware de propósito general. La herramienta se ha validado de manera exhaustiva y se han realizado experimentos sobre aplicaciones de Deep Learning donde se ha demostrado la utilidad de la herramienta.ABSTRACT: Deep Learning applications have expanded significantly in recent years, even forcing the aparition of new technologies specific to this field (TPU). Therefore, manufacturers of general-purpose processors find it necessary to improve their products to make them proficient. And that is where the need arises to find a tool that is capable of performing an analysis of the performance of the system. Making it easier to understand the interactions between hardware and software and facilitating optimization and development tasks. In this work, a tool, called DL-Prof, has been designed to evaluate the performance of general-purpose processors when running Deep Learning applications. From a software point of view, we have worked with the most common development environments in DL. To do this, the existing counters in this type of general-purpose hardware has been used. The tool has been extensively validated and experiments have been carried out on Deep Learning applications, where the usefulness of the tool has been demonstrated.Grado en Ingeniería Informátic
Enabling system survival across hypervisor failures
Dissertação de mestrado em Engenharia Eletrónica Industrial e ComputadoresEmbedded system’s evolution is notorious and due to the complexity growth,
these systems possess more general purpose behaviour instead of its original single
purpose features. Naturally, virtualization started to impact this matter. This
technology decreases the hardware costs since it allows to run several software
components on the same hardware. Although virtualization begun as a pure software
layer, many companies started to provide hardware solutions to assist it.
Despite ARM TrustZone technology being a security extension, many developers
realized that it was possible to use this extension to support development
of hypervisors. With TrustZone, hypervisors can ensure one of the most important
features in virtualization: isolation between guests. However, this hardware
technology revealed some vulnerabilities and since the whole system is TrustZone
dependent, the virtualization can be compromised.
To address this problem, this thesis proposes an hybrid software/hardware
mechanism to handle failures of TrustZone-based hypervisors. By using the processor’s
abort exceptions and hash keys, this project detects system malfunctions
caused by imperfect designs or even deliberate attacks. Additionally, it provides
a restoration model by checkpoints which allows a system recovery without major
throwbacks. The implemented solution was deployed on TrustZone-based LTZVisor,
an open-source and in-house hypervisor, and the revealed results are appealing.
With a 6.5% memory footprint increase and in the worst case scenario, an
increment of 23% in context switching time, it is possible to detect secure memory
invasions and recover the system. Despite of the hypervisor memory footprint
increment and latency addition, the reliability and availability that the system
bring to the LTZVisor are unquestionable.A evolução dos sistemas embebidos é notória e, devido ao aumento da sua complexidade,
estes sistemas cada vez mais possuem um comportamento de propósito
geral, em vez das suas características originais de propósito único. Naturalmente,
a virtualização começou a ter impacto sobre este meio, uma vez que permite executar
vários componentes de software no mesmo hardware, diminuindo os custos de
hardware. Embora a virtualização tenha começado como uma camada de software
pura, muitas empresas começaram a fornecer soluções de hardware para auxiliá-lo.
Apesar da TrustZone ter sido projetada pela ARM para ser uma extensão
de segurança, muitos desenvolvedores perceberam que era possível usá-la para
suporte ao desenvolvimento de hipervisores. Com a TrustZone, os hipervisores
podem garantir uma das premissas mais importantes da virtualização: isolamento
entre hóspedes. No entanto, esta tecnologia de hardware revelou algumas vulnerabilidades
e, sendo todo o sistema dependente da TrustZone, a virtualização pode
ficar comprometida.
Para solucionar o problema, esta tese propõe um mecanismo híbrido de software/
hardware para lidar com as falhas em hipervisores baseados em TrustZone.
Usando as excepções do processador e chaves de hash, este projecto detecta defeitos
no sistema causados por imperfeições no design e também ataques intencionais.
Além disso, este fornece um modelo de restauração por pontos de verificação,
permitindo uma recuperação do sistema sem grandes retrocessos. A solução foi
implementada no LTZVisor, um hipervisor em código aberto e desenvolvido no
ESRG, sendo que os resultados revelados são satisfatórios. Com um aumento de
6,5% da memória usada e um incremento, no pior caso, de 23% no tempo de
troca de contexto, é possível detectar invasões de memória segura e recuperar o
sistema. Apesar do incremento de memória do hypervisor e da adição de latência,
a confiabilidade e a disponibilidade que o sistema oferece ao LTZVisor são
inquestionáveis