Execução a pedido de tarefas em Recursos Remotos - Feiteira, Pedro Miguel Duarte (2021)
As áreas de investigação das ciências e engenharias necessitam de uma grande capacidade de processamento, que permita encontrar soluções para diversos problemas de elevada complexidade, como o cálculo de fórmulas complexas e a realização de simulações. Tal capacidade não se consegue obter através de um computador pessoal. Assim, esta classe de problemas foi migrada para novos sistemas de computação como clusters e, mais recentemente, para a computação em nuvem. Estes sistemas, para além de oferecerem a computação desejada, requerem que os seus utilizadores possuam conhecimento na área de informática, para efetuar a sua gestão. Posto isto, podemos concluir que estes foram desenvolvidos apenas para otimizar o desempenho de execuções, não oferecendo uma usabilidade simplificada, para serem aproveitados por utilizadores inexperientes (como matemáticos, biólogos, entre outros). Esta dissertação teve como objetivo a realização de um sistema que permita, tirando partido das propriedades dos recursos remotos, a utilizadores inexperientes usufruirem destes, na realização das suas execuções e não tendo outra preocupação, para além do pedido realizado ao sistema e dos seus resultados. A Solução Proposta oferece uma arquitetura em paralelo, que abstrai os detalhes dos recursos, oferecendo funcionalidades para automatização de reserva e lançamento de computações em recursos remotos com os respetivos dados. Para a avaliação da Solução Proposta, foram realizadas análises funcionais e de desempenho para averiguar o momento em que a Solução, passa a ser uma mais-valia para o utilizador. No desempenho foi testado o impacto provocado pelas comunicações realizadas aos recursos remotos e a partir de que instante, este impacto passa despercebido. Foram analisadas algumas métricas de desempenho e, por fim, foi utilizado um problema realista para demonstrar o comportamento do sistema desenvolvido.