Hi, my name is Diogo Basto, I am 24 years old and study Informatics and Computing Engineering at Faculdade de Engenharia da Universidade do Porto. I am a cheerful and ambitious person, aiming to always improve myself and help others do so as well.
I am currently a volunteer at NIAEFEUP, a student group that allows students to do fun projects on their free time, mostly with the intent of helping the academic community. I also enjoy playing electric guitar and computer games.
You can find my CV here.
My main areas of interest are:
- Parallel Computing
- Artificial Inteligence
- Backend Web Development
Here is a selection of my most relevant work:
Timetable selector is a reboot of previous student's projects based on the old SIGARRA timetable pages. The SIGARRA revamp broke those projects and NIAEFEUP took upon itself to remake another selector working with the new SIGARRA.
UNI is a game based on UNO developed by a team at NIAEFEUP over a weekend for the FEUP welcome week presentation. The game is a distributed web aplication, where the game runs on a nodeJS server, a web page presents the card last played to all the players and a web page shows the respective player's hand.
My duty was to produce the web page (we chose HTML over an app to broaden our player base) where each player could see his hand and play through clicks on the page.
Pay As You Go
This was a project for Deloitte on the LGP course. The aim of the project was to provide a web and mobile platform where drivers could make insurance simulations based on their driving details obtained by a GPS service.
I was the project manager and my work was mostly done on the backend with ASP.NET and C#.
Guess me out
Guess me out was a project for the LDSO course. It was an online game for Android with Ruby on Rails serving the games.
Third Place ONI 2009
Throughout High School I participated in several programming contests, mostly using C and C++, after I found my passion for programming.
My greatest achievements were third place at National Olympiad in Informatics and bronze medal at the 2009 Ibero-American Informatics Contest by Correspondence
Interference Aware Scheduling for Cloud Computing
Computing services is a growing industry in the last decade with a increasingly broader audience. Scientific organizations use these giant computational infrastructures to provide their collaborators computational power that their personal computers do not have, reducing task execution times like satellite photos compilation from several days to a few hours. In order to house more services and have shorter response times it is necessary to study system flaws and primary delayers and fix them. This report targets task scheduling in HPC networks and study virtualization technologies and the problem of interference between virtual machines. Through task allocation in hosts that minimize interference effects, execution time reduction allow the same resources to execute a bigger number of tasks in the same period of time. For demonstration purposes, the SimGrid platform is used to compare results of the proposed algorithm against standard industry algorithms.
A indústria de serviços computacionais está em crescente desde a última década com uma atração de público cada vez mais geral. As organizações científicas utilizam estas infraestruturas computacionais gigantes para disponibilizarem aos seus colaboradores poder computacional que as suas máquinas não possuem, reduzindo o tempo de execução de tarefas como compilação de fotos de satélites de vários dias para poucas horas. Para poder albergar cada vez mais serviços e ter tempos de resposta mais rápidos é necessário estudar as falhas do sistema e principais causadores de atrasos e corrigi-los. Este relatório aborda a área de escalonamento de tarefas em redes computacionais de alto rendimento e estuda tecnologias de virtualização e o problema de interferências entre máquinas virtuais. Através de alocações de tarefas em nós que minimizem o efeito de interferência, a redução do tempo de execução de tarefas permite aos mesmos recursos executar um maior número de tarefas no mesmo período de tempo. Para efeitos de demonstração de resultados é utilizada a plataforma SimGrid e comparado os resultados do algoritmo proposto contra algoritmos já aplicados na indústria.