Seminário de Andamento de Mestrado: Douglas Eduardo Rosa
Título: Interface para programação concorrente em dispositivos móveis Android
Autor: DOUGLAS EDUARDO ROSA
Orientação:
- Gerson Cavalheiro, Orientador (PPGC-UFPel)
Banca Examinadora:
- André Du Bois (PPGC-UFPel)
- Julio Carlos Balzano de Mattos (PPGC-UFPel)
Data: 25 de Agosto de 2017
Hora: 14:00
Local: Sala 413
Resumo:
Título: Interface para programação concorrente em dispositivos móveis Android Autor: DOUGLAS EDUARDO ROSA Orientação: Gerson Cavalheiro, Orientador (PPGC-UFPel) Banca Examinadora: Julio Carlos Balzano de Mattos (PPGC-UFPel) Data: 25 de Agosto de 2017 Hora: 14:00 Local: Auditório da Reitoria, 4o Andar, Campus Porto Resumo: Assim como em outras plataformas computacionais, o desempenho de processamento nos dispositivos móveis esteve, inicialmente, relacionado à evolução tecnológica da produção de circuitos integrados, onde o aumento de frequência de operação dos processadores era o principal fator de ganho no desempenho computacional. A elevada dissipação de calor e consumo de energia em processadores com elevada frequência de operação foram impeditivos para que este paradigma continuasse evoluindo. Como alternativa, a tecnologia de multiprocessadores permitiu que o ganho em desempenho destes dispositivos continuasse evoluindo e, rapidamente este paradigma tornou-se padrão na produção de dispositivos móveis. Porém, a concepção intrinsecamente paralela dos multiprocessadores exigem que os recursos de processamento sejam utilizados de maneira efetiva pelas aplicações. Como consequência, existe uma maior complexidade de programação para estas arquiteturas, pois é responsabilidade do programador o controle e sincronização de tarefas, acesso à regiões de memória compartilhada e estratégias de escalonamento para distribuição de carga entre os recursos de processamento. Diversas ferramentas de programação concorrente para arquiteturas multiprocessadas – como Pthreads, OpenMP, Cilk Plus, C++11 e TBB – têm sido utilizadas com sucesso para a construção de aplicações multithread. Apesar da popularidade, poucas destas ferramentas são totalmente portadas para arquiteturas mobile, e destas, nenhuma possui uma interface de programação que contemple as particularidades dos dispositivos móveis. O principal objetivo deste projeto é a implementação de uma interface de programação concorrente voltada para dispositivos móveis Android. Onde as principais contribuições – e diferenças desta interface com as já existentes – se relacionam com as particularidades do ambiente mobile. Dentre os objetivos específicos destacamos: a criação uma interface de programação concorrente simples, que facilite a criação e sincronização de tarefas; a implementação de um sistema de escalonamento que permita controlar o uso das unidades de processamento disponíveis quando o nível de bateria do dispositivo estiver baixo, e ainda possibilite que tarefas sejam atribuídas a unidades de processamento de acordo com sua granulosidade, levando em consideração as diferentes frequências de operação dos cores do processador.