Tutorial de Instalação e Configuração do MPI no Windows e no Linux

Tutorial de Instalação e Configuração do MPI no Windows e no Linux

(Parte 1 de 2)

Álvaro Vinicius Pereira Borges

Douglas Chagas

Mariana de Oliveira Rocha Sósthenes Oliveira Lima

Tutorial de Instalação e Configuração do MPI nos Sistemas Operacionais Linux e Windows

Trabalho apresentado ao curso de bacharel em Ciência da Computação, para obtenção parcial de nota referente à disciplina de Sistemas Distribuídos, sob a orientação do Professor Dr. Marcelo Lisboa.

1. Introdução

Message Passing Interface (MPI) [4] é um padrão para comunicação de dados em computação paralela. Existem várias modalidades de computação paralela, e dependendo do problema que se está tentando resolver, pode ser necessário passar informações entre os vários processadores ou nodos de um cluster, e o MPI oferece uma infra-estrutura para essa tarefa.

No padrão MPI, uma aplicação é constituída por um ou mais processos que se comunicam, acionando-se funções para o envio e recebimento de mensagens entre os processos. Inicialmente, na maioria das implementações, um conjunto fixo de processos é criado. Porém, esses processos podem executar diferentes programas. Por isso, o padrão MPI é algumas vezes referido como MPMD (multiple program multiple data). Elementos importantes em implementações paralelas são a comunicação de dados entre processos paralelos e o balanceamento da carga. Dado o fato do número de processos no MPI ser normalmente fixo, neste texto é enfocado o mecanismo usado para comunicação de dados entre processos. Os processos podem usar mecanismos de comunicação ponto a ponto (operações para enviar mensagens de um determinado processo a outro). Um grupo de processos pode invocar operações coletivas (collective) de comunicação para executar operações globais. O MPI é capaz de suportar comunicação assíncrona e programação modular, através de mecanismos de comunicadores (communicator) que permitem ao usuário MPI definir módulos que encapsulem estruturas de comunicação interna.

O objetivo de MPI é prover um amplo padrão para escrever programas com passagem de mensagens de forma prática, portátil, eficiente e flexível. MPI não é um IEEE ou um padrão ISO, mas chega a ser um padrão industrial para o desenvolvimento de programas com troca de mensagens.

2. Instalação e Configuração As etapas para instalação e configuração do MIPCH de forma detalhada.

2.1 Requisitos do Sistema: A Instalação do MIPCH para o Sistema Operacional Windows requer o seguinte:

- WindowsNT4/2000/XP Professional ou Server (Win9x/ME não suporta). - Habilitar a conexão socket TCP/IP entre todos os hosts conectados. (além de desabilitar o firewall do Windows) - Microsoft Developer Studio .NET 2003 ou superior

- Microsoft Platform SDK

Para utilizar a instalação padrão é necessário estar logado no sistema como administrador para ter privilégios de execução do setup. Uma conta “teste” foi criada com privilégios de administrador.

Duas (02) máquinas, ambas com o Sistema Operacional Windows XP, foram configuradas para rodar executarem o processo paralelo proposto.

2.2 Download

Na webpage <http://w.mcs.anl.gov/research/projects/mpi/mpich1/mpich-nt/> deve-se baixar o arquivo “mpich.nt.1.2.5.exe”.

2.3 Instalação

Executar o arquivo “mpich.nt.1.2.5.exe”, e deixar selecionada todas as opções defaults. Foi instalada a versão Microsoft Visual Studio 2008 para o debug do programa na linguagem C.

3. Configuração

A etapa a seguir deve ser feita caso a instalação tenha sido feita em mais de uma máquina.

1. Ferramenta de Configuração:

Iniciar-> Programas-> MPICH-> mpd-> MPICH Configuration tool

2. No programa devemos adicionar os hosts na opção “add” ou em “select”, como pode ser visualizado na figura abaixo:

3. Clique em “apply” para aplicar a configuração. Esta opção salva uma lista de hosts no registro do Windows a partir do qual “mpirun” pode chamar os nomes quando precisar selecionar hospedeiros para enviar processos.

4. Clique em OK para sair.

4. Exemplo

Existem aplicações prontas no diretório C:\Arquivos de programas\MPICH\mpich\Examples\basic. Para configurarmos um processo distribuído escolhemos um dos arquivos exemplos e debugamos o código, seguindo os passos a baixo:

1. Abrir arquivo “cpi.c”que está no diretório, com o programa Microsoft Studio Visual C++ : C:\Arquivos de programas\MPICH\SDK\Examples\nt\Basic\cpi.c

2. Construir o Debug alvo da CPI projeto 3. Copiar o executável que foi gerado através do debug MPICH \ SDK \ Examples \ nt \ basic \ Debug \ cpi.exe para um diretório compartilhado ou para o mesmo lugar em todas as máquinas em seu cluster.

Por exemplo, copiar “cpi.exe” para C:\Documents and Settings\All Users\Documentos\ cpi.exe sobre todos os nós.

4. Abrir a janela do Programa MPICHConfiguration e adicionar os hosts conectados e devidamente configurados com MPI, como explicado na seção 3 deste relatório.

5. Devemos Abrir a janela GUImpirun e adicionar o diretório onde se encontra o executável e selecionar o número de processos.

Para melhor visualização selecionar a execução em outra janela e clicar em “execute”. Para melhor visualização selecionar a execução em outra janela e clicar em “execute”.

Linux DEBIAN 5 – kernel 2.6.26 (Máquina Virtual - VMWare Workstation 6.5.0)

1. Instalação e Configuração As etapas para instalação e configuração do MIPCH de forma detalhada.

A Instalação e configuração do MIPCH para o Sistema Operacional Debian requer os seguintes arquivos:

- cpp;

- lib6c-dev.

Para utilizar a instalação e configuração padrão é necessário estar logado no sistema como usuário “root” ou com os privilégios necessários. Sendo feita em todos os hosts conectados e devidamente configurados, com o mesmo usuário e senha.

2.4 Download

O download pode ser feito através do comando abaixo: # apt-get install gcc cpp libc6 libc6-dev g77 g++

2.5 Instalação

Devemos extrair os arquivos baixados para o diretório destino, compilar e instalar. Além de adicionar o local de instalação no PATCH. Por default no diretório /usr/local/bin bash e sh: export PATH=/home/you/mpich2-install/bin:$PATH csh e tcsh: setenv PATH /home/you/mpich2-install/bin:$PATH

3. Configuração

A etapa a seguir deve ser feita em cada máquina. No nosso caso, (02) máquinas.

1. Primeiramente devemos criar os usuários com o comando: #adduser user 2. Editar o arquivo abaixo e configurar em todas as máquinas conectadas: #vi /etc/hosts

//acrescentar o IP e o nome da máquina e apagar a linha 127.0.0.1 192.168.0.1 debian1 192.168.0.2 debian2

3. Para a comunicação das máquinas devemos configurar o SSH:

Para o ssh não pedir senha devemos proceder da seguinte forma: - gerar a chave # ssh-keygen -t dsa -b 1024

(Parte 1 de 2)

Comentários