UNIVERSIDADE CATÓLICA DO SALVADOR CURSO DE BACHARELADO EM INFORMÁTICA DEPARTAMENTO DE INFORMÁTICA PARALELIZAÇÃO DE UM MÉTODO ITERATIVO DE RECONCILIAÇÃO DE DADOS UTILIZANDO CLUSTERS DE PC S MURILO DO CARMO BORATTO Salvador 2002
MURILO DO CARMO BORATTO PARALELIZAÇÃO DE UM MÉTODO ITERATIVO DE RECONCILIAÇÃO DE DADOS UTILIZANDO CLUSTERS DE PC S Monografia apresentada apresentada ao Departamento ao de Departamento Informática do de curso Informática de Informática do curso da Universidade de Informática Católica da Universidade do Salvador Católica como requisito do Salvador parcial como para requisito a obtenção parcial do para grau de a obtenção do grau de Bacharel em Bacharel em Informática sob a orientação Informática sob a orientação do Profº do Josemar Prof. Josemar Rodrigues Rodrigues de Souza. de Souza. Salvador 2002
UNIVERSIDADE CATÓLICA DO SALVADOR Grão-Chanceler: Dom Geraldo Majella Agnelo Reitor: Prof. José Carlos Almeida da Silva Diretor do Curso de Informática: Prof. Luis Gonzaga Marques Coordenador do Curso de Informática: Prof. Geraldo Dias de Brito Chefe do Departamento de Informática: Prof. Josemar Rodrigues de Souza 005.43 B726p Boratto, Murilo do Carmo, 1977- Paralelização de um método iterativo de reconciliação de dados utilizando clusters de PC s / Murilo do Carmo Boratto.--- Salvador-Ba, 2002. 63f.; 30 cm. Monografia (graduação) Curso de Bacharelado de Informática da Universidade Católica do Salvador, 2002. Referências e Anexos. 1. Programação de Computadores. 2. Programação paralela. I. Titulo.
CERTIFICADO Certifico que a presente memória o projeto de titulo PARALELIZAÇÃO DE UM MÉTODO ITERATIVO DE RECONCILIAÇÃO DE DADOS UTILIZANDO CLUSTERS DE PC S, foi realizada sob minha direção por Murilo do Carmo Boratto, constituindo o projeto final do Curso de Bacharelado em Informática da Universidade Católica do Salvador. Salvador, 19 de Dezembro de 2002 Josemar Rodrigues de Souza CURSO DE BACHARELADO EM INFORMATICA UNIVERSIDADE CATÓLICA DO SALVADOR
AGRADECIMENTOS Agradeço ao meu Orientador, Professor Josemar Rodrigues de Souza, pela colaboração e estimulo para a realização deste trabalho. Aos meus co-orientadores André Rebouças, pelo ajuda na implementação e na estruturação do projeto, e ao Professor Ricardo Kalid que contribuiu com os seus conhecimentos de engenharia. Agradeço também aos meus amigos, e em especial Karina Franca, Leandro Coelho, Rodrigo Borges, Priscila e a Linda Carla, que contribuíram de forma direta ou indireta para a realização desse projeto. E a minha família, que apesar de estar longe, sempre esteve em meu coração. Muito obrigado, a todos. Murilo Boratto
RESUMO Um dos maiores desafios da indústria é coexistir pacificamente com o meio ambiente em períodos de escassez de recursos hídricos. A baixa disponibilidade de água como matéria prima nos processos químicos e a exigência cada vez maior por um ambiente mais saudável tem impulsionado as indústrias a implantar programas de reutilização de efluentes líquidos, com o objetivo de preservar os recursos hídricos naturais. Dentro do propósito de avaliar alternativas para um melhor uso da água em uma planta industrial, este projeto apresenta a paralelização de um algoritmo de Reconciliação de dados, utilizando cluster de PC s. Sendo realizada uma analise comparativa de desempenho para as implementações serial e paralela do mesmo. A Reconciliação de dados tem como principal funcionalidade a minimização do erro relativo associado a cada medida de vazão de água expresso em um cálculo de balanço material. Como o algoritmo basea-se em operações básicas da álgebra linear, sua paralelização consiste na divisão de tarefas em pequenos fragmentos, sendo distribuídos em vários processadores e processados paralelamente. Palavras Chave: Computação Paralela, Reconciliação de dados, MPI, Processos Químicos, Efluentes líquidos, Balanço Material, HNOW. +nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
ABSTRACT One of the greatest challenges for the chemical industry is to coexist peacefully with the environment during periods of water insufficiency. The high scarcity of water, which is a fundamental raw material in chemical processes, has issued an increasing demand of this raw material; furthermore, it has pushed industries to establish programs with the sole purpose of preserving the natural sources of water. This project have a purpose of evaluating alternatives for a better usage of water in an industrial plant presents; parallel distribution through gathering of data, utilizing a cluster of PC s. This way, a comparative analysis of performance, for the serial and parallel implementations, is carried out. The gathering of data has the primary purpose of minimizing relative error associated with each measure of water flow output, expressed in a basic calculation of the material balance. Since the algorithm is based on simple operations of linear algebra, its dispersion consists in the division of tasks in small fragments, which are then distributed in various processors in a distributed environment. Keywords: Parallel Computing, Reconciliation of data, MPI, Chemical Process, Waste Water, Material Balance, HNOW.
SUMÁRIO LISTA DE FIGURAS -------------------------------------------------------------------------------- 9 LISTA DE TABELAS ------------------------------------------------------------------------------- 10 LISTA DE FÓRMULAS E GRÁFICOS---------------------------------------------------------- 11 INTRODUÇÃO ---------------------------------------------------------------------------------------- 12 CAPÍTULO 1 - TÓPICOS BÁSICOS SOBRE OS PROCESSOS INDUSTRIAIS NA INDÚSTRIA PETROQUÍMICA 15 1.1 A ÁGUA NA INDÚSTRIA PETROQUÍMICA ---------------------------------------------- 15 1.2 PROCESSOS DE TRAMENTO DE ÁGUA ----------------------------------------------- 16 1.3 EFLUENTES LÍQUIDOS NA INDÚSTRIA PETROQUÍMICA ------------------------ 16 1.4 BALANÇO MATERIAL ------------------------------------------------------------------------- 17 1.5 TECNOLOGIAS LIMPAS ---------------------------------------------------------------------- 19 CAPÍTULO 2 - TÉCNICAS PARA OTIMIZAÇÃO DO ALGORITMO DE RECONCILIAÇÃO DE DADOS 20 2.1 PROCESSAMENTO PARALELO ----------------------------------------------------------- 20 2.2 MESSAGE PASSING INTERFACE (MPI) ------------------------------------------------ 20 2.3 CLUSTER DE PC S ---------------------------------------------------------------------------- 21 CAPÍTULO 3 - RECONCILIAÇÃO DE DADOS - MÉTODO ITERATIVO DE CÁLCULO DE ESTIMAÇÃO DA MELHOR MEDIDA 24 CAPÍTULO 4 - CARACTERIZAÇÃO E IMPLEMENTAÇÃO DO ALGORITMO DE RECONCILIAÇÃO DE DADOS 4.1 CARACTERIZAÇÃO DO PROBLEMA ----------------------------------------------------- 36 4.2 ANÁLISE DO ALGORITMO SERIAL ------------------------------------------------------- 37 4.2.1 Uso de variáveis pré-compiladas --------------------------------------------------- 37 4.2.3 O uso de arquivo para inicialização dos dados na matriz de vazões --- 38 36
4.2.4 Operações Matriciais Utilizadas ---------------------------------------------------- 38 4.3 ANÁLISE DOALGORITMO PARALELO -------------------------------------------------- 40 CAPÍTULO 5 - RESULTADOS E CONCLUSÕES DO PROJETO 43 5.1 RESULTADOS OBTIDOS -------------------------------------------------------------------- 43 5.2 CONCLUSÕES ---------------------------------------------------------------------------------- 46 REFERÊNCIAS --------------------------------------------------------------------------------------- 48 GLOSSÁRIO ------------------------------------------------------------------------------------------ 50 APÊNDICE --------------------------------------------------------------------------------------------- 51