O projeto InterSCity está em busca de alunos de mestrado para realizar pesquisas científicas avançadas em temas relacionados à Internet do Futuro e Cidades Inteligentes.
Esta chamada específica irá selecionar um candidato para realização de pesquisas em nível de mestrado na Universidade Federal do ABC (UFABC) em conjunto com os demais pesquisadores participantes do projeto.
A bolsa de estudos (CAPES) estará disponível para implementação imediata após a escolha do candidato.
Para mais informações acesse: http://professor.ufabc.edu.br/~e.francesquini/interscity/
Cidades inteligentes podem ser definidas como um conjunto de investimentos que melhora a qualidade de vida da população, permite o crescimento econômico, melhora o uso dos recursos naturais, etc. Contudo, avaliar propostas de soluções de problemas em cidades reais pode ser custoso devido a problemas políticos e financeiros. Simulações podem ser utilizadas como uma maneira mais barata para avaliar soluções para problemas relacionados ao tráfego e ao uso de recursos, por exemplo.
O InterSCSimulator é um simulador de fácil utilização para avaliação de cenários de tráfego de veículos e é capaz de simular milhões de agentes simultâneos. Contudo, ele ainda possui algumas restrições em sua escalabilidade que tornam seu uso limitado em contextos de grandes metrópoles como São Paulo e inutilizável em áreas maiores como a Macrometrópole Paulista e megalópoles.
O objetivo deste projeto de pesquisa é avaliar e adaptar metodologias de desenvolvimento paralelo para tornar o InterSCSimulator mais escalável e utilizável em simulações de regiões metropolitanas de larga escala. O trabalho será feito em dois frontes. O primeiro lida com o mecanismo do simulador propriamente dito e o segundo com o ambiente de execução (Erlang BEAM).
Projeto InterSCity - https://interscity.org/
Para informações escreva-nos! e.francesquini@ufabc.edu.br
A atual tecnologia na qual se baseiam as plataformas computacionais, DRAM, está chegando ao seu limite de escalabilidade e evolução. Um dos principais desafios é não haver técnicas para fabricar células de memória significativamente menores. Por esta razão, os projetistas de hardware voltaram a sua atenção a diversas tecnologias alternativas. Grande parte destas tecnologias têm, entretanto, uma característica comum: ao contrário da tecnologia DRAM, elas não são voláteis (NVM - non-volatile memory), ou seja, mantêm os dados mesmo na falta de energia. Um sistema computacional composto apenas por NVMs é conhecido como sistema com memória universal.
A utilização de máquinas com memória universal é desafiadora pois coloca em xeque muitas premissas sobre as quais a pilha de software atualmente utilizada foi concebida. O fato de tanto dados transientes quanto dados persistentes estarem armazenados da mesma maneira em uma NVM traz desafios de pesquisa que envolvem segurança de dados; técnicas de acesso e controle da memória; e otimização de aplicações, ambientes de execução, máquinas virtuais e sistemas operacionais.
Neste projeto de pesquisa exploraremos como as arquiteturas com memória universal podem ser empregadas e avaliaremos o seu uso no contexto segurança de dados, tolerância a falhas e interface com o usuário.
M.G. Palma, E. Francesquini, R. Azevedo. Simulação de Arquiteturas de Hardware com Memórias Não-Voláteis. Simpósio em Sistemas Computacionais de Alto desempenho (WSCAD), 2016.
Para informações escreva-nos! e.francesquini@ufabc.edu.br
Um stencil é um mapa que leva elementos em uma matriz n-dimensional a um novo valor baseando-se apenas no elemento e sua vizinhança. Um exemplo simples é um filtro gaussiano de imagem. Stencils são utilizados em diversas aplicações práticas como dinâmica dos fluidos computacional, processamento de sinais (convoluções) e resolução de equações diferenciais ordinárias (EDOs). Em particular, stencils e EDOs são utilizados em simulações para prospecção de poços de petróleo e gás, imageamentos médico e via satélite, previsão do tempo, dentre outras.
Em linguagens funcionais, comônadas definem estruturas que permitem efetuar computação utilizando contextos. Por exemplo, para extrair a média móvel de um Stream de dados podemos utilizar comônadas e criar apenas uma função que retorne a média para apenas um dos pontos da stream. A aplicação em toda a stream é feita de forma automática e, como cada aplicação independe das outras, é inerentemente paralelizável.
Neste projeto de pesquisa será feita a integração de técnicas de paralelismo para stencils com o conceito de comônadas, típico de linguagens funcionais. O objetivo é permitir que um programador de uma linguagem funcional possa (de uma maneira simples, eficiente e paralela) definir, executar e obter o resultado da execução de um stencil.
Para informações escreva-nos! e.francesquini@ufabc.edu.br ou folivetti@ufabc.edu.br