
High Performance and Efficient Systems
Grupo de Pesquisa em Arquitetura de Computadores, Segurança & Criptografia.
Todos os tópicos que abrangem as grandes áreas de arquitetura de computadores e compiladores são bem vindos. Podemos trabalhar em vários níveis de abstração, desde o algoritmo e sistema até o dispositivo e unidades funcionais. Trabalhos em dispositivos reais como em simulados, estudos em arquiteturas atuais como o desenvolvimento de novas arquiteturas.
Caso tenha interesse em propor um novo tópico de pesquisa, super correlato aos tópicos atuais, ou não, entre em contato.
Computação de alto desempenho é agregar poder computacional, seja por aceleradores como GPUs ou apenas multicore/manycore, de maneira que o sistema final possa resolver problemas computacionais de grande escala (ou extremamente complexos).
Aplicações científicas, por exemplo, precisam resolver problemas cada vez maiores e mais difíceis. Por outro lado, aplicações como carros autônomos precisam processar uma grande quantidade de dados, de sensores e câmeras, em tempo real.
Entre os principais tópicos, podemos listar os seguintes:
Desenvolver soluções de paralelismo e confiabilidade em nível de software, sem desenvolver um hardware novo, pode ser um desafio. Parte desse desafio se encontra em entender o que o compilador está fazendo com a sua solução. Em vez de brigar com o compilador, podemos aprimorar e automatizar algumas soluções diretamente no compilador.
Algumas soluções, como enrobustecimento seletivo (selective hardening), podem ser descartadas pelo compilador que considera redundância como algo indesejável. Compiladores que estão cientes (aware) de alguns desafios de paralelismo e confiabilidade são escassos. Um supercomputador não pode se preocupar apenas com o desempenho, mas mesclar consumo energético e confiabilidade nas decisões de otimização.