Projetos

Exploração do Paralelismo em Aplicações de Processamento de Stream Relevantes para a Indústria Tecnológica

Status : Em andamento
Natureza : Pesquisa
Duração :
Instituições : PUCRS
Patrocinadores : FAPERGS

Grande parte das aplicações do mundo real podem ser caracterizadas como um fluxo contínuo de processamento. São as chamadas aplicações de processamento de stream. Elas estão presentes em diversos segmentos da indústria tecnológica, colaborando para o surgimento de soluções inovadoras que agregam valor aos produtos que têm alto impacto na vida cotidiana das pessoas. De modo geral, as que mais precisam da exploração do paralelismo podem ser categorizadas em: I) aplicações de processamento de imagem, video e áudio que normalmente realizam operações de codificação, reprodução, filtro, captura, etc.; II) aplicações de backup, compressão e deduplicação em dados armazenados e recebidos de diferentes fontes (sensores e aparelhos mobile, monitoramento de pacientes e sistemas, registros de log, etc.); e III) aprendizado de máquina profundo (Deep Learning) que envolve o reconhecimento de padrões e informações em vídeos, áudio, imagens e em outras bases de dados. Dentro deste contexto, algumas aplicações requerem uma latência baixa e uma alta vazão. Na maior parte das aplicações de stream, estes requisitos só podem ser atendidos através da exploração do paralelismo. Diante disso, o projeto tem como objetivo a exploração do paralelismo em um conjunto de aplicações de processamento de stream do mundo real usando a linguagem específica de domínio SPar. Ela foi criada pela equipe do grupo de pesquisa GMAP da PUCRS com a finalidade de simplificar a exploração do paralelismo em aplicações de stream. Além de contribuir para melhorar o desempenho das aplicações de stream, este projeto ajudará a validar a SPar em um ambiente real.

Uma DSL para Aplicações MapReduce em Sistemas Multi-Core Baseada em Anotações

Status : Em andamento
Natureza : Pesquisa
Duração :
Instituições : PUCRS
Patrocinadores : CNPq

A programação paralela tem sido um grande desafio para muitos desenvolvedores de aplicação. Uma forma de explorar o paralelismo de dados é usar o padrão MapReduce, do qual surge o termo aplicações MapReduce. A popularidade deste padrão cresceu com o aumento massivo de dados e ele tem sido amplamente usado, especialmente em ambientes distribuídos nesta última década. Mais recentemente, a utilização do MapReduce também começou a ser explorada em ambientes de memória compartilhada (multi-core). O maior desafio neste cenário é o suporte de abstrações de alto nível para este tipo de aplicação. Enquanto que as soluções do estado da arte atual abstraem detalhes para o programador de sistemas, os desenvolvedores de aplicação possuem dificuldade em lidar com detalhes atrelados à programação paralela. Podemos destacar a implementação do próprio padrão MapReduce, do balanceamento de carga e das customizações orientadas a otimização do desempenho para arquitetura alvo. Outro problema é a utilização de diretivas de compilação ou extensões de linguagem que não são parte da linguagem hospedeira padrão, pois possuem uma sintaxe própria e pouco familiar ao que o desenvolvedor de aplicação está acostumado a trabalhar. O objetivo deste projeto é propor uma abordagem de abstração diferente e especializada. Para isso, a proposta é a criação de uma linguagem específica de domínio interna baseada em anotações do padrão C++17, apoiando desenvolvedores de aplicações MapReduce com abstrações de mais alto nível e familiares ao seu ambiente de desenvolvimento.

Avaliação de uma Linguagem Específica de Domínio para Paralelismo de Stream

Status : Concluído
Natureza : Pesquisa
Duração : 2016-2017
Instituições : PUCRS
Patrocinadores : FAPERGS

Aplicações baseadas em stream se tornaram amplamente utilizadas nos últimos anos. A grande maioria delas necessita de respostas imediatas com alta vazão no processamento dos elementos do stream. Alguns exemplos são processamento de vídeo e imagem, análise de dados em tempo real, aplicações de rede, simulações e sistemas reativos. Neste contexto, apresentamos a SPar que é uma linguagem específica de domínio embarcada na linguagem C++ para realizar o paralelismo de stream. Ela apresenta uma nova abordagem, permitindo que usuários com pouco conhecimento em programação paralela possam, usando apenas cinco atributos e dois tipos de anotações, anotar e identificar no código sequencial a região de paralelismo. Além disso, o compilador da SPar é usado para gerar um código paralelo que suporta os sistemas multicore. No entanto, ainda é necessário realizar uma avaliação mais ampla do seu desempenho em aplicações reais, bem como experimentos de software para medir o esforço de programação em relação aos frameworks do estado da arte. Em vista disso, o objetivo deste projeto é implementar diferentes tipos de aplicações e comparar com os demais frameworks o esforço e o desempenho da SPar. As contribuições esperadas são: (I) novos resultados do desempenho da SPar para otimização da geração de código; (II) informações sobre o esforço necessário com o intuito de melhorar a interface com o programador; (III) descoberta de novas aplicações de stream e limitações da SPar.

Um Compilador para Geração Automática de Código Paralelo em Aplicações MapReduce

Status : Concluído
Natureza : Pesquisa
Duração : 2016-2017
Instituições : PUCRS
Patrocinadores : FAPERGS

Visando melhoria de performance, simplicidade e escalabilidade no processamento de dados amplos, o Google propôs o padrão paralelo MapReduce. Este padrão tem sido implementado de variadas formas para diferentes níveis de arquitetura, alcançando resultados significativos com respeito a computação de alto desempenho. No entanto, desenvolver código otimizado com tais soluções requer conhecimento especializado na interface e na linguagem de programação de cada solução. Durante a dissertação de mestrado de um membro do GMAP (Grupo de Modelagem de Aplicações Paralelas) foi criada uma interface unificada de programação MapReduce que ofereceu regras de transformação de código que permitem partir de uma linguagem de alto nível e gerar soluções otimizadas para arquiteturas de memória compartilhada e distribuída. A interface proposta é capaz de evitar perdas de performance uma vez que a geração através das regras apresentou resultados similares à aplicações paralelizadas manualmente, enquanto alcança uma redução de código e esforço de programação que aumenta a produtividade do desenvolvedor. Este projeto tem como objetivo dar continuidade a esta pesquisa a partir do desenvolvimento de um gerador de código para realizar automaticamente as transformações e realizar melhorias na interface através do estudo de outras ferramentas atuais como Spark, Storm e Flink..

Elasticidade Automática em Aplicações MapReduce para Nuvens Computacionais

Status : Em andamento.
Natureza : Pesquisa
Duração : 10 Meses
Instituições : PUCRS
Patrocinadores : PUCRS

Com a facilidade de acesso à internet, a quantidade de dados produzida tem aumentado significativamente, principalmente nos últimos 10 anos. The Zettabyte Era, é uma pesquisa realizada pela Cisco, que mostra um estudo e projeção sobre os dados criados na internet. O histórico abordado pela pesquisa, mostra que em 1992, 100GB de dados eram criados por dia. Em 2013, essa quantidade era em torno de 28,875 GB por segundo. E para 2018, a projeção para a quantidade de dados criadas é de 50,000 GB por segundos. Esse aumento de dados é uma ideia que já está amadurecida na área da computação, por isso, empresas e diversos grupos de pesquisas vem trabalhando com o objetivo de criar mecanismos para entender e coletar maiores informações que são geradas na internet. Atualmente, o padrão MapReduce é um destes mecanismos utilizados para processamento de grandes volumes de dados. Na maioria dos casos, os mecanismos como MapReduce necessitam de um grande poder computacional, e empresas necessitam investir financeiramente nestes recursos. Com objetivo de evitar esse alto custo financeiro, as empresas têm um olhar positivo para a computação em nuvem, sendo um modelo de oferta de serviço bem exercido no meio comercial. O modelo de computação em nuvem permite que os recursos computacionais provisionados sejam selecionados pelo usuário de acordo com a sua necessidade. A cobrança por utilizar este serviço é realizada de acordo com o uso, sendo pela demanda ou necessidade da aplicação utilizada. Uma característica importante nos ambientes de nuvem é a possibilidade de aplicar elasticidade, podendo aumentar ou diminuir os recursos de acordo com a demanda. Este aspecto motiva a proposta de criação de um mecanismo, que forneça elasticidade automática em tempo de execução para aplicações MapReduce. Dessa forma, os recursos podem ser provisionados dinamicamente de acordo com a necessidade do usuário, permitindo um processamento mais eficiente comuso inteligente da infraestrutura do provedor de serviços e pagando somente pelo o que foi usado. Isso facilitará para o cliente do serviço de nuvem executar suas aplicações MapReduce sem precisar se preocupar com a alocação de recursos, que será realizada por uma middleware. Este middleware proposto realizará uma análise dos recursos necessários e fará a alocação automaticamente, sem necessitar de intervenção do usuário, facilitando não só a execução do software, mas também o processo de desenvolvimento, considerando que atualmente o cliente precisa utilizar as APIs do OpenStack para poder usufruir da elasticidade que as nuvens oferecem. O projeto está propondo a criação de um middleware que forneça o aprovisionamento automático de recursos computacionais (memória, armazenamento e processamento) para aplicações MapReduce na ferramenta de computação em nuvem OpenStack.

Avaliação Comparativa do Desempenho de uma Interface de Programação Paralela Orientada a Padrões

Status : Concluído
Natureza : Pesquisa
Duração : 2014 - 2015
Instituições : PUCRS
Patrocinadores : CAPES, FAPERGS

Com o objetivo de abstrair detalhes de programação paralela e orientar desenvolvedores ao uso de padrões para o modelagem das aplicações, foi criada uma linguagem específica de domínio nomeada DSL-POPP. O principal objetivo é aumentar a produtividade dos programadores e reduzir o esforço na paralelização de aplicações para arquiteturas multi-core. Outro fator importante é o desempenho, o qual também não pode ser comprometido significativamente neste cenário. Neste sentido, esta pesquisa buscou realizar uma avaliação e um comparativo do desempenho da DSL-POPP em relação as tradicionais interfaces de programação paralela para arquiteturas multi-core. Por exemplo, Pthreads, OpenMP, FastFlow, TBB e Cilk. Diferentemente, a interface foi construída para fornecer esqueletos relativos aos padrões Mestre/Escravo e Pipeline. Assim, o usuário apenas escolhe o padrão adequado para modelar sua aplicação e os preenche com código sequencial. Ao compilar o programa com o compilador da DSL-POPP, código paralelo é automaticamente gerado. A avaliação do desempenho foi realizada usando aplicações de diferentes domínios. Cada uma delas foi implementada a partir da sua versão sequencial e posteriormente executada em uma máquina com processador multi-core. Os resultados de desempenho mostraram que a DSL-POPP não teve perdas significativas, mostrando que a geração de códio e a abstração criada são eficientes. Mesmo que as perdas foram pequenas, o resultado é positivo, pois avaliações anteriores sobre o esforço demostram um ganho significativo.

Programação Paralela e Alto Desempenho Voltados para Ambientes de Computação em Nuvem

Status : Concluído
Natureza : Pesquisa
Duração : 2014 - 2015
Instituições : Pontifícia Universidade Católica do Rio Grande do Sul
Patrocinadores : CAPES, FAPERGS

As características essenciais da computação em nuvem são a virtualização e a abstração. A virtualização é a principal facilitadora no gerenciamento de computação em nuvem e possibilita que um único hardware execute vários sistemas operacionais simultaneamente. Existem vários métodos de operação de virtualização: emulação, virtualização completa, paravirtualização e virtualização a nível de sistema operacional. Na construção dos ambientes de computação em nuvem é possível formar ecossistemas que determinam os modelos de serviços de uma nuvem, que são os modelos IaaS (Infrastructure as a Service), PaaS (Platform as a Service) e SaaS (Software as a Service). Os objetivos do projeto são abordar a programação paralela no cenário de computação em nuvem e verificar se o desempenho de aplicações que rodam em um determinado hardware é mantido ao migrar para um ambiente em nuvem. Para isso, foi implantada uma nuvem privada com a ferramenta OpenNebula sobre o virtualizador KVM. As instâncias virtuais foram criadas com o sistema operacional ubuntu server. Posteriormente, foram executadas as suítes do NPB (Nasa Parallel Benchmark) que exploraram os cenários de memória compartilhada e distribuída nos ambientes de nuvem e nativo. Após a coleta dos logs de execução, foi utilizada a abordagem estatística para analisar o quão foram significativas as diferenças entre os ambientes. Os resultados demostraram que o desempenho das aplicações paralelas é significativamente afetado quando as aplicações paralelas são migradas para a nuvem.

Uma Linguagem Específica de Domínio para Visualização de Grandes Volumes de Dados

Status : Em andamento
Natureza : Pesquisa
Duração : 2015 - Atual (12 meses)
Instituições : PUCRS
Patrocinadores : CAPES, FAPERGS

Na última década a produção de dados em todo o planeta cresceu de forma exponencial . Estes dados, possuem uma origem muito diversificada posto que a quantidade de agentes produtores de dados cresce com o uso da tecnologia. Exemplos de produtores de quantidades massivas de dados são redes sociais, simulações, sensores, registro de ligações telefônicas e informações sobre atividades de clientes. A análise destes dados pode fornecer informações para construção de conhecimento sobre tendências e comportamentos e auxiliar nas tomadas de decisões, no ambiente corporativo, científico e acadêmico. Ocorre que a análise destes dados em forma bruta é complexa, e em alguns casos inviável devido ao grande volume. Neste contexto, a utilização de técnicas de visualização torna-se uma alternativa para auxiliar na percepção destes dados. O uso de diferentes formas de visualização fornece ao analisador um modo de apresentação dos dados que favorece a percepção, já que utiliza gráficos e imagens para representar os dados. É comprovado que a utilização de imagens e formas de representação visual facilitam a percepção humana. Neste caso o processamento de imagens é realizado em paralelo pelo sistema de percepção humana, ao contrário de dados em forma de texto, que ficam limitados ao processo sequencial de leitura. Existem visualizações que possuem um processo de criação complexo, pois necessitam de programação. A visualização quando aplicada sobre uma quantidade massiva de dados acrescenta a complexidade de paralelização ou otimização, tanto na sua geração como para suportar interações. Isso se torna uma tarefa difícil para usuários, cientistas de áreas pouco contempladas pela computação e leigos no desenvolvimento de visualizações já que é necessário se preocupar com o gerenciamento de uma grande quantidade de dados, além da visualização e da programação em si. Linguagens Específicas de Domínio (ou Domain-Specific Languages - DSL) são linguagens que procuram resolver um domínio de problema particular. As DSLs vêm sendo utilizadas no contexto da aplicação ou para a geração de técnicas de visualização. Já que permitem a criação simplificada, fornecem uma interface de alto nível que abstrai detalhes de programação e, algumas, incluem o paralelismo. Isso reduz o esforço e o tempo necessário para a geração de uma visualização. No entanto, fica aberta em aberto a possibilidade de criação de uma DSL que atenda aos seguintes requisitos: possuir uma interface de fácil utilização pelo usuário que não possui conhecimentos avançados em programação; permitir a criação de visualizações de maneira rápida e fácil; utilize grandes volumes de dados. Este projeto visa abordar o processamento de grande volume de dados em paralelo e a inserção de diferentes tipos de visualizações na DSL. O objetivo é de identificar e desenvolver visualizações que podem ser adicionadas na linguagem fazendo um estudo dos tipos de visualizações disponíveis e mais utilizados. Com isso, será possível a validação da linguagem proposta, avaliando o tempo de processamento dos dados e o esforço de programação.

DSL-POPP - Domain-Specific Language for Pattern-Oriented Parallel Programming

Status : Concluído
Natureza : Pesquisa
Duração : 2012 - 2013
Instituições : PUCRS
Patrocinadores : CAPES, FAPERGS

Este projeto tem por finalidade colaborar no desenvolvimento da DSL-POPP. Esta é uma Linguagem Específica de Domínio para Programação Orientada a Padrões Paralelos, a qual oferece ao programador uma interface de alto nível. A principal contribuição é a avaliação do esforço e desempenho em diferentes aplicações sintéticas. Os resultados demonstraram que a DSL-POPP reduziu o esforço na paralelização de aplicações sem comprometer o desempenho.

GREEN-GRID - Computação de Alto Desempenho Sustentável

Status : Ativo
Natureza : Pesquisa
Duração : 2010 - Atual
Instituições : UFRGS, PUCRS, UFPEL, UFSM
Patrocinadores : CNPQ, FAPERGS

    A recente conscientização da importância do custo energético dos sistemas computacionais não condiz com a crescente demanda por recursos computacionais cada vez mais poderosos. Se de um lado diferentes segmentos da sociedade da informação necessitam de tratamento automatizado de seus processos, por outro, o aumento da frequência de relógio das CPUs está se tornando impossível devido ao custo de energia associado ao seu incremento. A solução que tem sido proposta pelos fabricantes é a introdução do paralelismo nas próprias CPUs (chips multi-cores, e em breve many-cores), bem como o uso de recursos computacionais voluntários (volunteer computing) ou agregados por meio de Grades Computacionais. Ambas soluções permitem maximizar a taxa de utilização dos seus recursos de hardware, aumentando assim a capacidade de processamento sem aumentar o custo energético. Este contexto de processamento consciente do custo energético está associado ao Green Computing, ou Computação Sustentável, como tratado neste texto. A presente proposta apresenta o grupo de trabalho em Computação Sustentável formado por quatro grupos de trabalho distribuídos em quatro Instituições de Ensino Superior do Estado do Rio Grande do Sul, a saber: a Universidade Federal do Rio Grande do Sul, a Universidade Federal de Pelotas, a Universidade Federal de Santa Maria e a Pontifícia Universidade Católica do Rio Grande do Sul. Os parceiros propõem unir suas competências para a criação de uma infra-estrutura de Grade Computacional para Computação Sustentável, baseada na exploração de recursos sub-utilizados (e.g. laboratórios ociosos nos turnos noturnos) e em processadores multi-cores de baixo custo energético. As atenções da pesquisa estarão voltadas às questões relacionadas ao suporte de execução de aplicações sobre esta infra-estrutura, havendo também preocupação de desenvolvimento de ferramentas de apoio ao desenvolvimento de aplicações para esta infra-estrutura considerando o requisito de computação sustentada.

Computação de Alto Desempenho com Programação Híbrida para Aplicações Reais

Status : Concluído
Natureza : Pesquisa
Duração : 2010 - Atual
Instituições : PUCRS
Patrocinadores : PUCRS

    Diversas áreas do conhecimento apresentam cada vez mais aplicações que necessitam de respostas rápidas extraídas da computação de um grande volume de dados. Podem ser citadas como exemplo áreas como Meteorologia (previsão do tempo), Física (simulações com alta carga computacional), Bioinformática (data-mining de cadeia de proteínas), Computação Gráfica (representação de volumes tridimensionais), etc. O processamento paralelo aparece como alternativa viável para melhorar o desempenho de tais aplicações, fato este proporcionado pelo custo relativamente pequeno para a aquisição de um ambiente paralelo com poder computacional elevado. Este poder computacional aumenta significativamente na medida em que cresce a utilização de clusters de máquinas multiprocessadas (arquitetura híbrida). No entanto, a utilização de técnicas convencionais de programação paralela não é suficiente para que seja extraído todo poder de processamento deste tipo de arquitetura. Nesse cenário, este projeto justifica-se pela necessidade de investigação de novas metodologias para programação adequada de ambientes de alto desempenho híbridos, abrangendo práticas de programação, análise de características da aplicação alvo e formas de avaliar a qualidade da implementação híbrida. Com isto, pesquisadores de diversas áreas do conhecimento serão beneficiados, uma vez que pesquisar e conhecer todos estes aspectos trata-se de uma fase que, geralmente, despende tempo nas implementações.

Resolução de Sistemas Lineares Esparsos com Computação Verificada em Ambientes de Alto Desempenho

Status : Ativo
Natureza : Pesquisa
Duração : 2010 - Atual
Instituições : PUCRS
Patrocinadores : CNPQ, FAPERGS

    A presente proposta de pesquisa está focada na utilização de técnicas de computação de alto desempenho para acelerar a resolução de Sistemas de Equações Lineares (SELAS) esparsos de grande porte que utilizem a Computação Verificada para garantir a correta representação numérica dos resultados obtidos.

HPVC - Computação Verificada de Alto Desempenho

Status : Concluído
Natureza : Cooperação Internacional
Duração : 2008 - 2009
Instituições : PUCRS, USP, Universidade de Karlsruhe, Universidade de Wuppertal
Patrocinadores : CAPES, DAAD

   O objetivo deste projeto é de investigar novas técnicas de otimização que permitam acelerar o processo de rasterização de documentos previamente renderizados através do desenvolvimento de estratégias para alocar um conjunto de RIPs baseada na análise do perfil dejobs com conteúdo PDF (Portable Document Format). As principais dificuldades estão relacionadas à identificação de uma estratégia para assegurar o processamento dos jobs tirando o máximo proveito da capacidade do ambiente de impressão distribuído através de políticas de escalonamento de jobs. É necessário ainda assegurar que a prioridade dos jobs seja mantida e que o Provedor de Serviços de Impressão tenha flexibilidade para submeter pequenos jobsdurante o processamento de jobs maiores.

PROPRIO - Análise de Perfil para Instrumentação de Rasterização Paralela Otimizada

Status : Concluído
Natureza : Cooperação com Empresa
Duração : 2008 - 2009
Instituições : PUCRS, HP Brasil, HP Laboratory Pallo Alto, UFPE
Patrocinadores : HP Brasil

   O objetivo deste projeto é de investigar novas técnicas de otimização que permitam acelerar o processo de rasterização de documentos previamente renderizados através do desenvolvimento de estratégias para alocar um conjunto de RIPs baseada na análise do perfil de jobs com conteúdo PDF (Portable Document Format). As principais dificuldades estão relacionadas à identificação de uma estratégia para assegurar o processamento dos jobs tirando o máximo proveito da capacidade do ambiente de impressão distribuído através de políticas de escalonamento de jobs. É necessário ainda assegurar que a prioridade dos jobs seja mantida e que o Provedor de Serviços de Impressão tenha flexibilidade para submeter pequenos jobsdurante o processamento de jobs maiores.

FOP/MAUI - Alto Desempenho na Composição de Layouts para Impressão de Dados Variáveis

Status : Concluído
Natureza : Cooperação com Empresa
Duração : 2007 - 2007
Instituições : PUCRS, HP Brasil, HP Laboratory Pallo Alto, UFPE
Patrocinadores : HP Brasil

Este projeto pretende investigar a utilização de técnicas de alto desempenho para acelerar o processo de composição de layouts para impressão de dados variáveis. O maior desafio da pesquisa proposta neste projeto é conseguir produzir uma ferramenta auto-configurável capaz de identificar o melhor ambiente para renderização de um documento em função de suas características descritas no seu formato.

ADR-VDP - Técnicas de Alto Desempenho para a Renderização de Documentos XSL-FO para VDP

Status : Concluído
Natureza : Cooperação com Empresa
Duração : 2006 - 2006
Instituições : PUCRS, HP Brasil, HP Laboratory Pallo Alto, UFPE
Patrocinadores : HP Brasil

    O principal objetivo deste projeto está diretamente relacionado à criação de uma ferramenta robusta, portável, escalável e com boa usabilidade para a renderização em paralelo de documentos VDP em ambientes de impressão industrial, (i.e., ambientes que precisem de alta vazão na renderização de documentos). A utilização de técnicas de construção de programas de alto desempenho dentro do contexto da área de Engenharia de Documentos pode ser considerada um segundo aspecto inovador desta pesquisa. O maior desafio da pesquisa proposta neste projeto é conseguir conduzir o processo de refinamento e investigação das otimizações a serem feitas na ferramenta FOP paralela de forma eficiente para que a mesma resulte em um produto concluído, testado e com desempenho satisfatório.

GerpavGrid - Sistema Distribuído de Apoio a Investimentos de Conservação e Manutenção dos Pavimentos das Vias Públicas

Status : Concluído
Natureza : Pesquisa e Desenvolvimento
Duração : 2005 - 2006
Instituições : PUCRS, PROCEMPA, UFCG
Patrocinadores : FINEP

    A Secretaria Municipal de Obras e Viação (SMOV), através da Supervisão de Conservação e Vias Urbanas, órgão responsável pela conservação e manutenção das vias públicas da cidade, tem se deparado nos últimos anos com a crescente necessidade de metodologias e sistemas gerenciais atualizados para o desempenho eficiente das suas funções institucionais. Tal fato decorre, por exemplo, da grande expansão das demandas de serviços, conseqüência da expansão urbana acelerada, e das próprias soluções adotadas para responder a tal expansão, como é o caso, por exemplo, da maior utilização de revestimentos asfálticos. Por outro lado, ocorre ao mesmo tempo uma forte retração do poder público, às voltas com enormes restrições orçamentárias, e com cobranças cada vez mais acentuadas da sociedade por maior eficiência na indicação quanto às opções para utilização dos recursos públicos. Neste contexto, surgiu a demanda por um sistema que acompanhasse e fiscalizasse a utilização dos recursos públicos no que se refere ao controle da malha viária urbana. O sistema alvo deste projeto tem uma alta demanda computacional por efetuar cálculos de indicadores de conservação sobre parte da extensão do eixo de um logradouro, denominado arco. O arco é caracterizado como o trecho entre dois pontos de mudança de característica, interrupção ou partição de um logradouro. Existem, aproximadamente, 32 mil arcos cadastrados em Porto Alegre. Além disto, diversas simulações podem ser feitas projetando as condições destes arcos ao longo do tempo (variando a evolução do fluxo de veículos, fatores climáticos, etc.) de forma a permitir um aporte de recursos de forma mais eficiente.

SDE-FED - Simulação da Dinâmica de Elétrons em um Dispositivo FED Utilizando o Método de Elementos de Contorno

Status : Concluído
Natureza : Cooperação com Empresa
Duração : 2005 - 2005
Instituições : PUCRS, HP Brasil, UNICAMP
Patrocinadores : HP Brasil

    Este projeto visa o desenvolvimento de um software de alto desempenho para simulação da dinâmica de elétrons em dispositivos FED que seja robusto e que forneça principalmente dados em uma boa concordância com os resultados experimentais obtidos, a fim de auxiliar o entendimento de características desejáveis para o dispositivo final, bem como auxiliar na modelagem de novas geometrias para a construção destes dispositivos.

CAP - Centro de Pesquisa e Desenvolvimento de Aplicações Paralelas

Status : Concluído
Natureza : Cooperação com Empresa
Duração : 2003 - 2006
Instituições : PUCRS, HP Brasil
Patrocinadores : HP Brasil

    O Centro de Pesquisa e Desenvolvimento de Aplicações Paralelas (CAP - PUCRS/HP Brasil) dedica-se ao estudo de técnicas e metodologias de computação de alto desempenho aplicadas no desenvolvimento de soluções para aplicações de computação intensiva. O projeto CAP possue duas linhas principais de pesquisa: (a) suporte de técnicas paradesign de programas paralelos e (b) desenvolvimento de aplicações de alto desempenho para arquiteturas de memória distribuídas. (a) Suporte de técnicas para design de programas paralelos não são diretamente relacionados às soluções paralelas do problema fornecido, mas eles oferecem alternativas para simplificar e otimizar o processo de desenvolvimento de programas paralelos. Neste cenário, a equipe CAP está interessada em tópicos de pesquisa como: (I) Modelagem analítica de programas paralelos utilizando Stochastic Automata Networks(SAN); (II) Verificação formal de propriedades de programas paralelos e distribuídos utilizandoObjects-Based Graph Grammars (GGBO); (III) Algoritmos de balanceamento de carga para aplicações dinâmicas irregulares sobre plataformas de memória distribuídas; (IV) Metodologias estruturais de testes para programas paralelos. (b) O desenvolvimento de aplicações paralelas para categorias diferentes de arquitetura de memória distribuídas, como clusters heterogêneos ou grades computacionais, é outra linha de pesquisa principal da equipe CAP. Nosso foco é o desenvolvimento de novos algoritmos e/ou programas de alto desempenho para problemas científicos ou industriais utilizando o paradigma de programação mensagem passada. Recentemente, o grupo CAP tem trabalhado nas soluções paralelas para as aplicações a seguir: (I) Ferramenta de renderização de documentos para impressoras de alta velocidade (FOP -Formatting Objects Processor); (II) Visualização de dados médicos para diagnósticos baseados em imagens; (III) Simulação da trajetória dos elétrons no Campo de Emissão dos Displays.

GMAP © - 2017 - PUCRS - Todos os direitos reservados.