Proposta de Dissertação de Mestrado
Modelagem Computacional, UFJF
Título da Proposta de Dissertação:
Emprego de Múltiplas GPUs para Acelerar Simulações do Sistema Imunológico Humano
Palavras-Chave:
GPGPU, Sistema Imunológico Humano, Computação Paralela e Distribuída, Imunologia
Computacional.
Disciplinas do Mestrado Correlatas a esta Proposta:
Introdução à Modelagem Matemática, Computação em Ambientes Distribuídos, Métodos
Numéricos.
Resumo:
Um dos sistemas mais importantes presentes nas mais diversas e distintas formas de vida é o
sistema imunológico (ou sistema imune). Seu papel primário é o de identificar e exterminar
uma ampla gama de agentes patogênicos externos, que tentam invadir os organismos vivos,
causando-lhes danos que podem ser irreversíveis, levando-os à morte. A compreensão do
sistema imunológico é, portanto, essencial. Entretanto, a sua grande complexidade e a
interação entre seus muitos componentes, nos mais diversos níveis, tornam a tarefa
extremamente complexa. Uma ferramenta que pode ser de grande auxílio para o
entendimento do funcionamento deste sistema é a modelagem matemática-computacional.
Trabalhos anteriores [1] propuseram modelos para reproduzir a dinâmica de uma doença
infecciosa em parte do sistema imunológico, o chamado Sistema Imunológico Inato. Para
isso foram utilizados sistemas de equações diferenciais parciais. Basicamente, o sistema de
equações diferenciais parciais reproduz os principais fenômenos que ocorrem em uma seção
microscópica do tecido, incorporando dois processos muito importantes, difusão e
quimiotaxia, para descrever o movimento das células, reproduzindo a ordem de chegada das
células ao local de infecção e os fenômenos envolvidos na estimulação e supressão da
resposta imune.
Em um primeiro momento percebe-se um alto custo computacional ao realizar simulações
neste modelo, o que levou ao desenvolvimento de uma versão paralela [2] desenvolvida em
CUDA [3]. Nesta versão, grande parte da aplicação é executada na placa gráfica de um
computador (GPU) por várias threads de maneira simultânea, de forma que cada uma seja
responsável pelos cálculos em um ponto específico do espaço do tecido. Como o número de
threads que podem ser alocadas varia de dispositivo para dispositivo, o tamanho do tecido
a ser simulado será limitado pelo máximo de threads que a placa gráfica comporta. Apesar
desta limitação, esta implementação possibilitou uma significativa redução nos tempos de
simulação, alcançando em alguns casos, melhora de 72 vezes em relação à versão inicial do
código.
Contudo esta melhoria ainda pode ser aprimorada com o uso de várias GPUs de modo
simultâneo. Logo, mais threads podem ser alocadas e a limitação quanto ao tamanho do
tecido a ser simulado passa a não existir mais. Para que isso seja possível, será necessário
que estes computadores colaborem entre si, dividindo o espaço inicial do tecido em
subespaços que serão de responsabilidade de cada GPU. Realizando os cálculos desses
subespaços em cada GPU e posteriormente reagrupando-os, teremos o tecido completo.
Como essas placas de vídeo muitas vezes estão localizadas em computadores distintos,
existe a necessidade de se estabelecer comunicação durante a execução. A comunicação
pode ser realizada, por exemplo, utilizando o padrão MPI para a troca de mensagens.
O objetivo deste trabalho é desenvolver uma versão paralela de um modelo anteriormente
proposto para simular o funcionamento do sistema imune inato [1] que seja capaz de ser
executada em várias GPUs simultaneamente, de modo que cada GPU contribua localmente
para o cálculo do tecido como um todo. Ao final, espera-se que o tempo de execução da
simulação reduza ainda mais do que o observado em trabalhos anteriores [2].
[1] Pigozzo, A.B., Macedo, G.C., dos Santos, R.W., Lobosco, M.: Implementation of a
computational model of the innate immune system. In: ICARIS, pp. 95–107, 2011.
[2] Rocha, P.A.F., Xavier, M.P., Pigozzo, A.B., Quintela, B.M., Macedo, G.C., dos Santos,
R.W., Lobosco, M.: A Three-Dimensional Computational Model of the Innate
Immune System. In: ICCSA, pp. 691-706, 2012.
[3] Kirk, D., Hwu, W.: Massively Parallel Processors: A Hands-on Approach. Morgan
Kaufmann, 2010.
[4] Bartocci, E., Cherry, E.M., Glimm, J., Grosu, R., Smolka, S.A., Fenton, F.H.: Toward
Real-time Simulation of Cardiac Dynamics. In: CMSB, pp. 103-112, 2011.
Multidisciplinariedade:
A proposta envolve pesquisas tanto na área de sistemas computacionais, mais
especificamente na área de computação de alto desempenho, quanto na área de modelagem
matemática utilizada na representação do sistema imunológico humano.
Produção Esperada:
2 artigos em conferências e/ou periódicos internacionais.
Aluno:
Micael Peters Xavier.
Disciplinas cursadas pelo aluno:
Introdução à Modelagem Matemática
Métodos Matemáticos
Algoritmo e Estruturas de Dados
Introdução aos Métodos Discretos
Computação em Ambientes Distribuídos
Métodos Numéricos
Eletrofisiologia Computacional
Método dos Elementos Finitos
Orientador:
Marcelo Lobosco
Principal Área de Pesquisa do Orientador e a Relação desta com a
Proposta de Dissertação:
Computação Paralela e Distribuída, Imunologia Computacional.
Coorientador:
Rodrigo Weber dos Santos
Principal Área de Pesquisa do Coorientador e a Relação desta com a
Proposta de Dissertação:
Computação Paralela e Distribuída, Modelagem Computacional.
Download

Proposta de Dissertação de Mestrado Modelagem Computacional