Differences

This shows you the differences between the selected revision and the current version of the page.

ipar:modelo 2007/12/24 17:43 ipar:modelo 2007/12/24 17:45 current
Line 6: Line 6:
-==== O framework ====+===== O framework =====
O **ipar** gerencia a chamada de tarefas em nodos do cluster segundo uma lista criada pela aplicação a ser paralelizada (esta será chamada de apenas de aplicação no decorrer do texto). A aplicação consiste de um programa escrito em Java que deve seguir uma estrutura bem definida. Quando o ipar é iniciado, este executa um shell script que deve conter a chamada do clall da aplicação que tiver a função main. Esta estrutura será descrita na seção //Aplicação a ser paralelizada//. O **ipar** gerencia a chamada de tarefas em nodos do cluster segundo uma lista criada pela aplicação a ser paralelizada (esta será chamada de apenas de aplicação no decorrer do texto). A aplicação consiste de um programa escrito em Java que deve seguir uma estrutura bem definida. Quando o ipar é iniciado, este executa um shell script que deve conter a chamada do clall da aplicação que tiver a função main. Esta estrutura será descrita na seção //Aplicação a ser paralelizada//.
-=== Estrutura Básica ===+==== Estrutura Básica ====
Tem uma estrutura básica organizada da seguinte forma: Tem uma estrutura básica organizada da seguinte forma:
Line 42: Line 42:
De tempos em tempos este vector com as tarefas deve ser gravado em arquivo para que se possa monitorar o status do processamento De tempos em tempos este vector com as tarefas deve ser gravado em arquivo para que se possa monitorar o status do processamento
-=== Algorítmo: ===+==== Algorítmo: ====
início início
Line 57: Line 57:
-==== Aplicação a ser paralelizada ====+===== Aplicação a ser paralelizada =====
Deve ter no mínimo 3 métodos: //inicia(); finaliza(); executa(parametros)// Deve ter no mínimo 3 métodos: //inicia(); finaliza(); executa(parametros)//
Line 67: Line 67:
Qualquer um dos métodos acima, após concluir sua computação, deve fazer uma conexão rmi retornando os resultados de suas computações para o gerente. Apenas uma conexão rmi deve ser realizada por cada computação, e após ela ser feita o programa deve ser finalizado. Qualquer um dos métodos acima, após concluir sua computação, deve fazer uma conexão rmi retornando os resultados de suas computações para o gerente. Apenas uma conexão rmi deve ser realizada por cada computação, e após ela ser feita o programa deve ser finalizado.
-=== Descrição dos métodos ===+==== Descrição dos métodos ====
**Método //inicia()//** **Método //inicia()//**
Line 105: Line 105:
No caso de redistribuíção de tarefas será subentendido que a tarefa foi concluída com exito e foi quebrada em outras subtarefas. No caso de redistribuíção de tarefas será subentendido que a tarefa foi concluída com exito e foi quebrada em outras subtarefas.
-=== O que pode ser uma tarefa ===+==== O que pode ser uma tarefa ====
Um exemplo de tarefa seria uma figura ao qual deve ser aplicado um algorítmo. Portanto o método "inicia" pode particionar uma determinada imagem em várias subimagens para poder computar cada uma em um nodo diferente. Desta maneira o nome de cada subimagem pode ser a tarefa, logo quando o "gerente" distribuir as tarefas ele vai passar o seu nome para o método executa. depois de todas as tarefas terem sido executadas, o método "finaliza" é chamado para computar os resultados parciais que devem obrigatoriamente estarem armazenados em arquivos. Um exemplo de tarefa seria uma figura ao qual deve ser aplicado um algorítmo. Portanto o método "inicia" pode particionar uma determinada imagem em várias subimagens para poder computar cada uma em um nodo diferente. Desta maneira o nome de cada subimagem pode ser a tarefa, logo quando o "gerente" distribuir as tarefas ele vai passar o seu nome para o método executa. depois de todas as tarefas terem sido executadas, o método "finaliza" é chamado para computar os resultados parciais que devem obrigatoriamente estarem armazenados em arquivos.
-=== Modelo de implementação do Programa a ser paralelizado ===+==== Modelo de implementação do Programa a ser paralelizado ====
Recent changes RSS feed Creative Commons License Donate Driven by DokuWiki