Publicação
Estudo de viabilidade de paralelização de códigos de análise de dados em PROOF
| Resumo: | Esta dissertação surge no contexto das análises de dados gerados pelo LHC (Large Hadron Collider), do esperado crescimento do volume de dados produzidos depois da atualização de 2013-2014 e do atual paradigma pseudo-paralelo destas aplicações no LIP-Minho (Laboratório de Instrumentação e física experimental de Partículas, delegação Minho). O trabalho surgiu como um estudo da utilização do PROOF (Parallel ROOT Facilities) como plataforma para habilitar a extração automática de paralelismo nas aplicações de análises de dados do LIP-Minho. Na consideração que as análises em estudo têm uma estrutura semelhante que é susceptível de ser paralelizada, partimos de um caso de estudo para a familiarização e experimentação do ambiente PROOF. Face às dificuldades de adaptação da aplicação para utilização do sistema PROOF, desenvolvemos e testamos uma nova estrutura de classes, chamada event, que pode eliminar uma série de problemas na fase de desenvolvimento. Esta proposta é suportada por um gerador de código esqueleto de aplicações deste tipo, o makeEvent. Os testes efetuados comprovam a possibilidade de usar a estrutura event como alternativa à API TSelector, sem perda de desempenho e com a possibilidade de alcançar speedups superlineares no ambiente de cluster utilizado. No caso de códigos de análise de dados com alguma dimensão e complexidade, o processo de adaptação para um modelo compatível com o sistema PROOF pode ser uma tarefa morosa e exigente que pode não ser trivial. Por este motivo, propomos como trabalho futuro a criação de uma biblioteca que trate das tarefas habituais no processo de análise dos dados. Prevê-se também que a aplicação makeEvent permita a seleção apenas dos branches utilizados na classe event, reduzindo significativamente o tempo de execução de análises de dados que carregam desnecessariamente todos os branches de uma tree. A conclusão a que chegamos é a da viabilidade da utilização da estrutura event, e consequentemente do makeEvent, como uma alternativa possível para a extração de paralelismo automático das análises de dados em estudo, recorrendo à plataforma PROOF. |
|---|---|
| Autores principais: | Silva, Rafael Caldeira |
| Assunto: | Paralelismo Análise de dados PROOF |
| Ano: | 2014 |
| País: | Portugal |
| Tipo de documento: | dissertação de mestrado |
| Tipo de acesso: | acesso aberto |
| Instituição associada: | Universidade do Minho |
| Idioma: | português |
| Origem: | RepositóriUM - Universidade do Minho |
| Resumo: | Esta dissertação surge no contexto das análises de dados gerados pelo LHC (Large Hadron Collider), do esperado crescimento do volume de dados produzidos depois da atualização de 2013-2014 e do atual paradigma pseudo-paralelo destas aplicações no LIP-Minho (Laboratório de Instrumentação e física experimental de Partículas, delegação Minho). O trabalho surgiu como um estudo da utilização do PROOF (Parallel ROOT Facilities) como plataforma para habilitar a extração automática de paralelismo nas aplicações de análises de dados do LIP-Minho. Na consideração que as análises em estudo têm uma estrutura semelhante que é susceptível de ser paralelizada, partimos de um caso de estudo para a familiarização e experimentação do ambiente PROOF. Face às dificuldades de adaptação da aplicação para utilização do sistema PROOF, desenvolvemos e testamos uma nova estrutura de classes, chamada event, que pode eliminar uma série de problemas na fase de desenvolvimento. Esta proposta é suportada por um gerador de código esqueleto de aplicações deste tipo, o makeEvent. Os testes efetuados comprovam a possibilidade de usar a estrutura event como alternativa à API TSelector, sem perda de desempenho e com a possibilidade de alcançar speedups superlineares no ambiente de cluster utilizado. No caso de códigos de análise de dados com alguma dimensão e complexidade, o processo de adaptação para um modelo compatível com o sistema PROOF pode ser uma tarefa morosa e exigente que pode não ser trivial. Por este motivo, propomos como trabalho futuro a criação de uma biblioteca que trate das tarefas habituais no processo de análise dos dados. Prevê-se também que a aplicação makeEvent permita a seleção apenas dos branches utilizados na classe event, reduzindo significativamente o tempo de execução de análises de dados que carregam desnecessariamente todos os branches de uma tree. A conclusão a que chegamos é a da viabilidade da utilização da estrutura event, e consequentemente do makeEvent, como uma alternativa possível para a extração de paralelismo automático das análises de dados em estudo, recorrendo à plataforma PROOF. |
|---|