• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 128
  • 35
  • 12
  • Tagged with
  • 175
  • 118
  • 47
  • 45
  • 42
  • 33
  • 30
  • 24
  • 23
  • 23
  • 21
  • 20
  • 20
  • 19
  • 17
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
101

Uma estratégia de testes isócrona para diagnóstico hierárquico distribuído

Brawerman, Alessandro 25 October 2010 (has links)
No description available.
102

Uma ferramenta de apoio ao gerenciamento de desenvolvimento de software distribuído

Pedras, Maria Edith Villela 08 February 2011 (has links)
Resumo: O desenvolvimento de software cada vez mais complexo, envolvendo a empresa e a Internet, exige um controle rápido e seguro do desenvolvimento de projetos. Com sistemas cada vez mais sofisticados e integrados, envolvendo áreas que requerem distribuição, adquirir ferramentas de apoio ao gerenciamento e desenvolvimento de software é uma necessidade. Ao tratar de software distribuído, a situação se torna mais complexa pela inexistência de ferramentas específicas de apoio ao desenvolvimento de software distribuído, principalmente com a abordagem de tratamento dos aspectos gerenciais. Planejar e organizar as atividades, controlar e verificar se as atividades estão sendo executadas de acordo com o planejado, dentre outros, são elementos importantes no gerenciamento de projeto e desmerece-los pode contribuir para o fracasso dos projetos. No software distribuído, também deve haver controle em termos de compartilhamento de recursos, abertura, concorrência, independência de escala, tolerância a falhas, transparência e estado compartilhado. Dentro deste cenário, surge a necessidade de tratar os aspectos gerenciais no desenvolvimento de software distribuído, que culmina com a elaboração da ferramenta de apoio ao gerenciamento de desenvolvimento de software distribuído, DIMANAGER. A ferramenta DIMANAGER teve como suporte para sua construção: a análise de ferramentas de apoio ao desenvolvimento de software disponíveis no mercado, as características do software distribuído e a abordagem de aspectos gerenciais. É importante salientar que a ferramenta DIMANAGER é dinâmica, e mostra ao Gerente de Projeto a situação atual do projeto, com o objetivo de auxiliá-lo no acompanhamento e na tomada de decisão através da comparação entre o planejado e o executado, verificando a situação de cada atividade assim como das equipes envolvidas, dispersas geograficamente.
103

Hidra

Gomes, Everaldo 29 November 2010 (has links)
Resumo: A integridade dos documentos armazenados em dispositivos eletrônicos no longo prazo é garantida pelo arquivamento digital. Comumente, as redes Peer-to-Peer (P2P) são utilizadas nessa tarefa, pois elas permitem a construção de sistemas escaláveis e tolerantes á falhas. Além disso, técnicas de replicação e auditoria dos objetos armazenados são utilizadas na contenção das ameaças à integridade dos dados. Neste trabalho é proposto o modelo de arquivamento digital confiável Hidra, que utiliza algumas premissas inicialmente propostas por Vignatti[1][2]: o arquivamento digital ´e distribuído, utilizando máquinas com confiabilidades distintas; uma confiabilidade desejada, informada para cada documento, é garantida através de replicação; e através das múltiplas hashes de um documento são determinadas as máquinas que podem ser selecionadas para receber réplicas. Hidra utiliza uma nova estratégia de seleção de repositórios para a inserção de réplicas e propõe um novo procedimento de auditoria periódica responsável pela verificação da integridade e recuperação das réplicas falhas com o passar do tempo. Um protótipo não-funcional foi implementado num simulador de redes P2P e os resultados experimentais da inserção e auditoria dos documentos digitais são apresentados na avaliação do modelo.
104

Uma Abordagem para Seleção de Equipes Tecnicamente Qualificadas para Implementação de Projetos de Software Vinicius Souza dos Santos

Santos, Vinicius Souza dos 11 February 2014 (has links)
Made available in DSpace on 2015-05-14T12:36:49Z (GMT). No. of bitstreams: 1 arquivototal.pdf: 4670372 bytes, checksum: 4a27df26b20a2ccb05b5f1cbbcc66103 (MD5) Previous issue date: 2014-02-11 / Coordenação de Aperfeiçoamento de Pessoal de Nível Superior - CAPES / Due to the current needs and high demand for software products with more quality, various approaches for software development have been proposed. Among such approaches, Software Product Line has emerged as a promising approach for improving software quality and reducing costs and development time due to its high capacity for promoting software reuse. As another promising approach, Distributed Software Development has been adopted by organizations as a consequence of globalization, making possible to find skilled software professionals and more attractive costs in organizations spread throughout the world. By adopting such approaches together, domain experts can be found in several outsourcing or even insourcing software development teams around the world. However, even adopting such approaches to improve the software quality, is not possible to guarantee the software quality if software development teams do not have the necessary and specific knowledge to implement each module. So, a key question arises: which teams are more technically qualified to develop each module identified in a software project? Considering only ten software development teams and ten software modules, it is possible to identify 1010 combinations of modules and teams, in other words, 10.000.000.000 possible arrangements. Clearly, this is a complex process to be done by project managers based on their experience, since a large number of combinations can be identified with a relatively small number of teams and software modules. Thus any ad-hoc decision making can be complex, inefficient and error-prone. In order to provide support for recommending qualified global software teams in Software Product Line projects, this dissertation presents a decision support approach that identifies a set of technically qualified software development teams for each software module. To achieve such a goal, the proposed approach is based on technical requirements of software modules and technical capabilities of software development teams. The proposed approach is structured in four stages. The first stage is intended to produce an artifact that represents the technical requirements expected to develop each software module. Based on such requirements, the second stage is intended to represent the technical capabilities of all candidate software development teams. Then, the third stage aims to define a policy that guides the selection of such teams. Finally, the fourth stage maps the information collected in earlier stages into a fuzzy logic algorithm and performs the selection of technically qualified teams. As output, for each software module, a recommendation is generated that indicates a set of candidate teams that have the most appropriate technical skills to implement the software module / Devido às necessidades atuais e grande demanda de produtos de software com cada vez mais qualidade, várias abordagens para desenvolvimento de software foram desenvolvidas. Entre estas, as Linhas de Produtos de Software surgiram como uma abordagem promissora para a melhoria da qualidade de software e redução de custos e prazos devido a sua alta capacidade de reúso. Outra abordagem promissora que tem sido adotada pelas organizações, como consequência da globalização, é o Desenvolvimento Distribuído de Software, pois a partir dela é possível encontrar mão de obra qualificada e custos mais atrativos em empresas espalhadas pelo mundo. Ao adotar conjuntamente essas abordagens, especialistas de domínio podem ser encontrados em várias equipes terceirizadas ou mesmo equipes de subsidiárias ou filiais de todo o mundo. Todavia, mesmo utilizando-se de abordagens que visam melhorar a qualidade dos produtos de software criados, não se pode garantir a qualidade dos mesmos se as equipes não possuírem os conhecimentos necessários e específicos para implementação dos diversos módulos de software. Assim, surge uma questão primordial: quais equipes são tecnicamente mais qualificadas para desenvolver cada módulo identificado num projeto de software? Considerando apenas dez equipes e dez módulos de software, é possível identificar 1010 combinações entre módulos e equipes, ou seja, 10.000.000.000 de arranjos possíveis. Claramente, esse é um processo complexo para ser realizado pelo gerente de projetos utilizando apenas sua experiência, uma vez que um grande número de combinações pode ser identificado com um número relativamente pequeno de equipes e módulos de software. Assim, qualquer decisão ad-hoc tomada pode ser complexa, ineficiente e sujeita a erros. A fim de fornecer suporte para escolha de equipes distribuídas de desenvolvimento de software, podendo inclusive o projeto estar integrado em um cenário de Linha de Produtos de Software, este trabalho apresenta uma abordagem de apoio à decisão que identifica um conjunto de equipes qualificadas tecnicamente para o desenvolvimento de cada módulo de software, baseado em requisitos técnicos dos módulos e capacidades técnicas das equipes. A abordagem proposta está estruturada em quatro etapas. A primeira tem a intenção de produzir um artefato que representa os requisitos técnicos esperados para desenvolver cada módulo de software. Com base em tais exigências, a segunda etapa tem por objetivo representar as capacidades técnicas de todas as equipes candidatas. Em seguida, a terceira etapa visa à definição de uma política que rege a seleção de equipes. Por fim, a quarta etapa cruza as informações coletadas nas fases anteriores em um algoritmo de lógica fuzzy e realiza a seleção das equipes. Como saída, para cada módulo de software é gerado uma recomendação que indica o conjunto de equipes candidatas que possuem as qualificações técnicas mais adequadas para implementar os módulos de softwares segundo a política de seleção adotada
105

A benchmark suite for distributed stream processing systems / Um benchmark suite para sistemas distribuídos de stream processing

Bordin, Maycon Viana January 2017 (has links)
Um dado por si só não possui valor algum, a menos que ele seja interpretado, contextualizado e agregado com outros dados, para então possuir valor, tornando-o uma informação. Em algumas classes de aplicações o valor não está apenas na informação, mas também na velocidade com que essa informação é obtida. As negociações de alta frequência (NAF) são um bom exemplo onde a lucratividade é diretamente proporcional a latência (LOVELESS; STOIKOV; WAEBER, 2013). Com a evolução do hardware e de ferramentas de processamento de dados diversas aplicações que antes levavam horas para produzir resultados, hoje precisam produzir resultados em questão de minutos ou segundos (BARLOW, 2013). Este tipo de aplicação tem como característica, além da necessidade de processamento em tempo-real ou quase real, a ingestão contínua de grandes e ilimitadas quantidades de dados na forma de tuplas ou eventos. A crescente demanda por aplicações com esses requisitos levou a criação de sistemas que disponibilizam um modelo de programação que abstrai detalhes como escalonamento, tolerância a falhas, processamento e otimização de consultas. Estes sistemas são conhecidos como Stream Processing Systems (SPS), Data Stream Management Systems (DSMS) (CHAKRAVARTHY, 2009) ou Stream Processing Engines (SPE) (ABADI et al., 2005). Ultimamente estes sistemas adotaram uma arquitetura distribuída como forma de lidar com as quantidades cada vez maiores de dados (ZAHARIA et al., 2012). Entre estes sistemas estão S4, Storm, Spark Streaming, Flink Streaming e mais recentemente Samza e Apache Beam. Estes sistemas modelam o processamento de dados através de um grafo de fluxo com vértices representando os operadores e as arestas representando os data streams. Mas as similaridades não vão muito além disso, pois cada sistema possui suas particularidades com relação aos mecanismos de tolerância e recuperação a falhas, escalonamento e paralelismo de operadores, e padrões de comunicação. Neste senário seria útil possuir uma ferramenta para a comparação destes sistemas em diferentes workloads, para auxiliar na seleção da plataforma mais adequada para um trabalho específico. Este trabalho propõe um benchmark composto por aplicações de diferentes áreas, bem como um framework para o desenvolvimento e avaliação de SPSs distribuídos. / Recently a new application domain characterized by the continuous and low-latency processing of large volumes of data has been gaining attention. The growing number of applications of such genre has led to the creation of Stream Processing Systems (SPSs), systems that abstract the details of real-time applications from the developer. More recently, the ever increasing volumes of data to be processed gave rise to distributed SPSs. Currently there are in the market several distributed SPSs, however the existing benchmarks designed for the evaluation this kind of system covers only a few applications and workloads, while these systems have a much wider set of applications. In this work a benchmark for stream processing systems is proposed. Based on a survey of several papers with real-time and stream applications, the most used applications and areas were outlined, as well as the most used metrics in the performance evaluation of such applications. With these information the metrics of the benchmark were selected as well as a list of possible application to be part of the benchmark. Those passed through a workload characterization in order to select a diverse set of applications. To ease the evaluation of SPSs a framework was created with an API to generalize the application development and collect metrics, with the possibility of extending it to support other platforms in the future. To prove the usefulness of the benchmark, a subset of the applications were executed on Storm and Spark using the Azure Platform and the results have demonstrated the usefulness of the benchmark suite in comparing these systems.
106

Distributed data analysis over meteorological datasets using the actor model

Sanchez, Jimmy Kraimer Martin Valverde January 2017 (has links)
Devido ao contínuo crescimento dos dados científicos nos últimos anos, a análise intensiva de dados nessas quantidades massivas de dados é muito importante para extrair informações valiosas. Por outro lado, o formato de dados científicos GRIB (GRIdded Binary) é amplamente utilizado na comunidade meteorológica para armazenar histórico de dados e previsões meteorológicas. No entanto, as ferramentas atuais disponíveis e métodos para processar arquivos neste formato não realizam o processamento em um ambiente distribuído. Essa situação limita as capacidades de análise dos cientistas que precisam realizar uma avaliação sobre grandes conjuntos de dados com o objetivo de obter informação no menor tempo possível fazendo uso de todos os recursos disponíveis. Neste contexto, este trabalho apresenta uma alternativa ao processamento de dados no formato GRIB usando o padrão Manager-Worker implementado com o modelo de atores fornecido pelo Akka toolkit. Realizamos também uma comparação da nossa proposta com outros mecanismos, como o round-robin, random, balanceamento de carga adaptativo, bem como com um dos principais frameworks para o processamento de grandes quantidades de dados tal como o Apache Spark. A metodologia utilizada considera vários fatores para avaliar o processamento dos arquivos GRIB. Os experimentos foram conduzidos em um cluster na plataforma Microsoft Azure. Os resultados mostram que nossa proposta escala bem à medida que o número de nós aumenta. Assim, nossa proposta atingiu um melhor desempenho em relação aos outros mecanismos utilizados para a comparação, particularmente quando foram utilizadas oito máquinas virtuais para executar as tarefas. Nosso trabalho com o uso de metadados alcançou um ganho de 53.88%, 62.42%, 62.97%, 61.92%, 62.44% e 59.36% em relação aos mecanismos round-robin, random, balanceamento de carga adaptativo que usou métricas CPU, JVM Heap e um combinado de métricas, e o Apache Spark, respectivamente, em um cenário onde um critério de busca é aplicado para selecionar 2 dos 27 parâmetros totais encontrados no conjunto de dados utilizado nos experimentos. / Because of the continuous and overwhelming growth of scientific data in the last few years, data-intensive analysis on this vast amount of scientific data is very important to extract valuable scientific information. The GRIB (GRIdded Binary) scientific data format is widely used within the meteorological community and is used to store historical meteorological data and weather forecast simulation results. However, current libraries to process the GRIB files do not perform the computation in a distributed environment. This situation limits the analytical capabilities of scientists who need to perform analysis on large data sets in order to obtain information in the shortest time possible using of all available resources. In this context, this work presents an alternative to data processing in the GRIB format using the well-know Manager-Worker pattern, which was implemented with the Actor model provided by the Akka toolkit. We also compare our proposal with other mechanisms, such as the round-robin, random and an adaptive load balancing, as well as with one of the main frameworks currently existing for big data processing, Apache Spark. The methodology used considers several factors to evaluate the processing of the GRIB files. The experiments were conducted on a cluster in Microsoft Azure platform. The results show that our proposal scales well as the number of worker nodes increases. Our work reached a better performance in relation to the other mechanisms used for the comparison particularly when eight worker virtual machines were used. Thus, our proposal upon using metadata achieved a gain of 53.88%, 62.42%, 62.97%, 61.92%, 62.44% and 59.36% in relation to the mechanisms: round-robin, random, an adaptive load balancing that used CPU, JVM Heap and mix metrics, and the Apache Spark respectively, in a scenario where a search criteria is applied to select 2 of 27 total parameters found in the dataset used in the experiments.
107

Computação distribuída aplicada ao cálculo de propriedades físicas de clatratos de carbono e sacarose

Cassol, Luciano Azevedo January 2013 (has links)
Em diversas instituições universitárias existem centenas ou milhares de computadores que costumam ser subutilizados. Esses computadores não apresentam toda sua capacidade processamento aproveitada, ficando em grande parte do tempo em estado ocioso ou até mesmo desligados. Frequentemente, grupos de pesquisas dessas mesmas instituições possuem aplicações que necessitam de um grande poder de processamento. A fim de suprir essa necessidade esses grupos acabam tendo de investir na aquisição de computadores de grande porte ou clusters de computadores. Muitas dessas aplicações são do tipo Bag-of-Tasks, isto é, são praticamente independentes, não havendo necessidade de comunicação entre as tarefas. Desta forma, poderiam ser executadas perfeitamente em um ambiente de grade, que pode ser construído a partir de recursos ociosos já existentes nessas instituições. Dentro deste enfoque, decidiu-se pela construção de uma grade institucional na Universidade de Caxias do Sul (UCS). Essa grade foi utilizada para a realização de simulações computacionais de materiais (clatratos de carbono e sacarose). Diversas fases hipotéticas do carbono tiveram suas propriedades calculadas por meio de simulações computacionais, em distintas aproximações. No entanto, em geral não há na literatura simulações computacionais de boa qualidade dos espectros vibracionais (Raman e de absorção no infravermelho) destas fases de carbono, o que torna essencialmente impossível sua identificação em amostras reais. A disponibilidade de melhores recursos de hardware/software e novos funcionais de troca e correlação (e a eventual inclusão de interações do tipo van der Waals), bem como a possibilidade do cálculo do espectro vibracional, constituem elementos que poderão contribuir significativamente para estabelecer uma ponte entre os resultados das simulações computacionais e resultados experimentais obtidos com amostras reais. O cálculo ab initio sistemático das propriedades físicas de diferentes fases reais e hipotéticas do carbono, poderá inclusive guiar a realização de experimentos visando a síntese das fases mais promissoras do ponto de vista de suas propriedades. Foram estudados neste trabalho os clatratos C46 e Li8C46 e a sacarose. Os clatratos são materiais com propriedades físicas de grande potencial para a realização de aplicações tecnológicas. Esses clatratos de carbono, até este trabalho, não tiveram suas rotas de síntese estabelecidas. Neste trabalho foi feita a otimização da estrutura e o cálculo do espectro vibracional dos clatratos C46 e Li8C46. A previsão dos espectros de Raman e infravermelho pode auxiliar na descoberta desses materiais. No estudo das propriedades vibracionais do clatrato Li8C46 foi observada a necessidade da revisão de resultados encontrados na literatura. Para a sacarose foram comparados os resultados de simulação computacional realizados neste trabalho com resultados experimentais já disponíveis sobre o efeito de altas pressões (até 14 GPa) sobre os modos vibracionais deste composto. Foi observado um aumento nas frequências com o aumento da pressão, para os modos associados a vibrações CH, CO e CC, conforme o esperado. Por outro lado, a banda associada ao OH não-ligado da sacarose deslocou-se para frequências mais baixas, indicando a formação de uma ligação de hidrogênio induzida por pressão. O comportamento geral do espectro de infravermelho sob pressão foi completamente reversível com a diminuição da pressão, revelando a estabilidade da sacarose até 14 GPa, em condições quase hidrostáticas. / In many universities there are hundreds or thousands of computers whose computational power is not fully utilized. These computers use to stay idle or even turned off most of the time. Often, the research groups of these institutions deal with applications that require lots of processing power. With the intent of solving this need, these groups end up buying high performance computers or computer clusters. Many of these applications are Bag-of- Tasks applications, that is, they are almost independent and have no need to communicate with each other. This makes it possible for the applications to run without problems in a computational grid. Such environment can be built using the available resources at those institutions. Within this approach it was decided to build/develop an institutional computer grid in the Universidade de Caxias do Sul (UCS). This grid has been used to run computer simulations of materials(carbon clathrate and sucrose). Various hypotetical carbon structures had their properties calculated by means of computer simulations using different approaches. However, there are no good quality simulation in literature for vibrational spectra (Raman and infrared absorbance) the computer simulations for those carbon structures, which makes their identification essentially impossible in real samples. The availability of better hardware/software resources and the new exchange-correlation functionals (and the possible inclusion of van der Waals interactions), as well as the possibility of calculating the vibrational spectra, constitute elements that may contribute significantly to establish a bridge between the results of computer simulations and the experimental results obtained from real samples. The systematic ab initio calculation of the physical properties from different real and hypotetic carbon stages may guide the execution of experiments for the synthesis of the most promissing stages from the point of view of its properties. The carbon clathrates C46 and Li8C46, along with sacarose, were subjected to study in this work. The clathrates are materials with physical properties of great potential for technologial applications. Those carbon clathrates, until this work, did not have their synthesis routes established. In the present work the structure optimization and the calculation of the C46 and Li8C46 clathrates vibrational spectrums was done. The prediction from the Raman spectrums and infrared can help in the discovery of these materials. In the study of the vibrational properties of Li8C46 clathrate, it has been observed the need to review the results found in literature. For sucrose the results of computational simulation found on this work were compared to the experimental results already available for the effect of high pressure (up to 14 GPa) on the vibrational modes. It has been observed an increase in the frequency with increasing pressure for the bands assigned to the modes CH, CO and CC, as expected. On the other hand, the band associated to the non-bonded OH from the sucrose has shifted to lower frequencies, indication the formation of a hydrogen pressured induced bond. The general behaviour of the infrared spectra under pressure was completly reversible upon pressure release, revealing the stability of sucrose up to 14 GPa, in nearly hydrostatic conditions.
108

Performance modeling of MapReduce applications for the cloud / Modelagem de desempenho de aplicações mapreduce para a núvem

Izurieta, Iván Carrera January 2014 (has links)
Nos últimos anos, Cloud Computing tem se tornado uma tecnologia importante que possibilitou executar aplicações sem a necessidade de implementar uma infraestrutura física com a vantagem de reduzir os custos ao usuário cobrando somente pelos recursos computacionais utilizados pela aplicação. O desafio com a implementação de aplicações distribuídas em ambientes de Cloud Computing é o planejamento da infraestrutura de máquinas virtuais visando otimizar o tempo de execução e o custo da implementação. Assim mesmo, nos últimos anos temos visto como a quantidade de dados produzida pelas aplicações cresceu mais que nunca. Estes dados contêm informação valiosa que deve ser obtida utilizando ferramentas como MapReduce. MapReduce é um importante framework para análise de grandes quantidades de dados desde que foi proposto pela Google, e disponibilizado Open Source pela Apache com a sua implementação Hadoop. O objetivo deste trabalho é apresentar que é possível predizer o tempo de execução de uma aplicação distribuída, a saber, uma aplicação MapReduce, na infraestrutura de Cloud Computing, utilizando um modelo matemático baseado em especificações teóricas. Após medir o tempo levado na execução da aplicação e variando os parámetros indicados no modelo matemático, e, após utilizar uma técnica de regressão linear, o objetivo é atingido encontrando um modelo do tempo de execução que foi posteriormente aplicado para predizer o tempo de execução de aplicações MapReduce com resultados satisfatórios. Os experimentos foram realizados em diferentes configurações: a saber, executando diferentes aplicações MapReduce em clusters privados e públicos, bem como em infraestruturas de Cloud comercial, e variando o número de nós que compõem o cluster, e o tamanho do workload dado à aplicação. Os experimentos mostraram uma clara relação com o modelo teórico, indicando que o modelo é, de fato, capaz de predizer o tempo de execução de aplicações MapReduce. O modelo desenvolvido é genérico, o que quer dizer que utiliza abstrações teóricas para a capacidade computacional do ambiente e o custo computacional da aplicação MapReduce. Motiva-se a desenvolver trabalhos futuros para estender esta abordagem para atingir outro tipo de aplicações distribuídas, e também incluir o modelo matemático deste trabalho dentro de serviços na núvem que ofereçam plataformas MapReduce, a fim de ajudar os usuários a planejar suas implementações. / In the last years, Cloud Computing has become a key technology that made possible running applications without needing to deploy a physical infrastructure with the advantage of lowering costs to the user by charging only for the computational resources used by the application. The challenge with deploying distributed applications in Cloud Computing environments is that the virtual machine infrastructure should be planned in a way that is time and cost-effective. Also, in the last years we have seen how the amount of data produced by applications has grown bigger than ever. This data contains valuable information that has to be extracted using tools like MapReduce. MapReduce is an important framework to analyze large amounts of data since it was proposed by Google, and made open source by Apache with its Hadoop implementation. The goal of this work is to show that the execution time of a distributed application, namely, a MapReduce application, in a Cloud computing environment, can be predicted using a mathematical model based on theoretical specifications. This prediction is made to help the users of the Cloud Computing environment to plan their deployments, i.e., quantify the number of virtual machines and its characteristics in order to have a lesser cost and/or time. After measuring the application execution time and varying parameters stated in the mathematical model, and after that, using a linear regression technique, the goal is achieved finding a model of the execution time which was then applied to predict the execution time of MapReduce applications with satisfying results. The experiments were conducted in several configurations: namely, private and public clusters, as well as commercial cloud infrastructures, running different MapReduce applications, and varying the number of nodes composing the cluster, as well as the amount of workload given to the application. Experiments showed a clear relation with the theoretical model, revealing that the model is in fact able to predict the execution time of MapReduce applications. The developed model is generic, meaning that it uses theoretical abstractions for the computing capacity of the environment and the computing cost of the MapReduce application. Further work in extending this approach to fit other types of distributed applications is encouraged, as well as including this mathematical model into Cloud services offering MapReduce platforms, in order to aid users plan their deployments.
109

Transversal I/O scheduling for parallel file systems : from applications to devices / Escalonamento de E/S transversal para sistemas de arquivos paralelos : das aplicações aos dispositivos

Boito, Francieli Zanon January 2015 (has links)
Esta tese se concentra no escalonamento de operações de entrada e saída (E/S) como uma solução para melhorar o desempenho de sistemas de arquivos paralelos, aleviando os efeitos da interferência. É usual que sistemas de computação de alto desempenho (HPC) ofereçam uma infraestrutura compartilhada de armazenamento para as aplicações. Nessa situação, em que múltiplas aplicações acessam o sistema de arquivos compartilhado de forma concorrente, os acessos das aplicações causarão interferência uns nos outros, comprometendo a eficácia de técnicas para otimização de E/S. Uma avaliação extensiva de desempenho foi conduzida, abordando cinco algoritmos de escalonamento trabalhando nos servidores de dados de um sistema de arquivos paralelo. Foram executados experimentos em diferentes plataformas e sob diferentes padrões de acesso. Os resultados indicam que os resultados obtidos pelos escalonadores são afetados pelo padrão de acesso das aplicações, já que é importante que o ganho de desempenho provido por um algoritmo de escalonamento ultrapasse o seu sobrecusto. Ao mesmo tempo, os resultados do escalonamento são afetados pelas características do subsistema local de E/S - especialmente pelos dispositivos de armazenamento. Dispositivos diferentes apresentam variados níveis de sensibilidade à sequencialidade dos acessos e ao seu tamanho, afetando o quanto técnicas de escalonamento de E/S são capazes de aumentar o desempenho. Por esses motivos, o principal objetivo desta tese é prover escalonamento de E/S com dupla adaptabilidade: às aplicações e aos dispositivos. Informações sobre o padrão de acesso das aplicações são obtidas através de arquivos de rastro, vindos de execuções anteriores. Aprendizado de máquina foi aplicado para construir um classificador capaz de identificar os aspectos espacialidade e tamanho de requisição dos padrões de acesso através de fluxos de requisições anteriores. Além disso, foi proposta uma técnica para obter eficientemente a razão entre acessos sequenciais e aleatórios para dispositivos de armazenamento, executando testes para apenas um subconjunto dos parâmetros e estimando os demais através de regressões lineares. Essas informações sobre características de aplicações e dispositivos de armazenamento são usadas para decidir a melhor escolha em algoritmo de escalonamento através de uma árvore de decisão. A abordagem proposta aumenta o desempenho em até 75% sobre uma abordagem que usa o mesmo algoritmo para todas as situações, sem adaptabilidade. Além disso, essa técnica melhora o desempenho para até 64% mais situações, e causa perdas de desempenho em até 89% menos situações. Os resultados obtidos evidenciam que ambos aspectos - aplicações e dispositivos de armazenamento - são essenciais para boas decisões de escalonamento. Adicionalmente, apesar do fato de não haver algoritmo de escalonamento capaz de prover ganhos de desempenho para todas as situações, esse trabalho mostra que através da dupla adaptabilidade é possível aplicar técnicas de escalonamento de E/S para melhorar o desempenho, evitando situações em que essas técnicas prejudicariam o desempenho. / This thesis focuses on I/O scheduling as a tool to improve I/O performance on parallel file systems by alleviating interference effects. It is usual for High Performance Computing (HPC) systems to provide a shared storage infrastructure for applications. In this situation, when multiple applications are concurrently accessing the shared parallel file system, their accesses will affect each other, compromising I/O optimization techniques’ efficacy. We have conducted an extensive performance evaluation of five scheduling algorithms at a parallel file system’s data servers. Experiments were executed on different platforms and under different access patterns. Results indicate that schedulers’ results are affected by applications’ access patterns, since it is important for the performance improvement obtained through a scheduling algorithm to surpass its overhead. At the same time, schedulers’ results are affected by the underlying I/O system characteristics - especially by storage devices. Different devices present different levels of sensitivity to accesses’ sequentiality and size, impacting on how much performance is improved through I/O scheduling. For these reasons, this thesis main objective is to provide I/O scheduling with double adaptivity: to applications and devices. We obtain information about applications’ access patterns through trace files, obtained from previous executions. We have applied machine learning to build a classifier capable of identifying access patterns’ spatiality and requests size aspects from streams of previous requests. Furthermore, we proposed an approach to efficiently obtain the sequential to random throughput ratio metric for storage devices by running benchmarks for a subset of the parameters and estimating the remaining through linear regressions. We use this information on applications’ and storage devices’ characteristics to decide the best fit in scheduling algorithm though a decision tree. Our approach improves performance by up to 75% over an approach that uses the same scheduling algorithm to all situations, without adaptability. Moreover, our approach improves performance for up to 64% more situations, and decreases performance for up to 89% less situations. Our results evidence that both aspects - applications and storage devices - are essential for making good scheduling choices. Moreover, despite the fact that there is no scheduling algorithm able to provide performance gains for all situations, we show that through double adaptivity it is possible to apply I/O scheduling techniques to improve performance, avoiding situations where it would lead to performance impairment.
110

DIMI : um disseminador multicast de informações para a arquitetura ISAM / DIMI: A mlticast information disseminator for the ISAM architecture

Moraes, Maurício Coutinho January 2005 (has links)
O projeto ISAM apresenta uma plataforma para o desenvolvimento e a execução de aplicações pervasivas. O ambiente de execução proposto na arquitetura ISAM, denominado ISAMpe (ISAM pervasive environment), foi concebido para ser implantado em escala global, com elevado número de componentes. Esses componentes podem ser móveis ou fixos e podem apresentar limitações em seus recursos computacionais. Muitas das aplicações pervasivas que podem ser executadas no ISAMpe têm necessidade de um serviço de disseminação capaz de distribuir informações de um produtor para um grande número de consumidores. Esta dissertação apresenta um serviço de disseminação de informações para a arquitetura ISAM, denominado DIMI (Disseminador Multicast de Informações). O DIMI apresenta uma arquitetura de multicast no nível de aplicação. O DIMI propõe um algoritmo de formação da topologia de disseminação que tem o objetivo de alcançar maior escalabilidade pelo alívio de sobrecarga em participantes específicos do canal, durante os momentos em que houver um grande número de novos consumidores querendo iniciar o consumo simultaneamente. No seu ambiente-alvo, o ISAMpe, o DIMI também oferece suporte à desconexão planejada, permitindo que dispositivos computacionais com limitações de conectividade participem da disseminação, e ainda oferece suporte à mobilidade de usuários. A topologia de comunicação do DIMI adapta-se às condições da rede física subjacente a ela, de acordo com critérios específicos da aplicação que utilizar o serviço. Os resultados obtidos com a simulação de alguns aspectos do funcionamento do DIMI e com a execução do protótipo do mesmo validam os argumentos usados para justificar a necessidade e a forma de construção do serviço. / The ISAM project presents a platform to the development and to the execution of pervasive applications. The execution environment proposed by the ISAM architecture, named ISAMpe (ISAM pervasive environment) was conceived to be deployed on global scale, having a large number of components. These components may be mobile or static and may present computational resource limitations. Many of the pervasive applications that may be executed on the ISAMpe need a dissemination service capable of distribute information from one producer to many consumers. This dissertation presents a information dissemination service for the ISAM architecture, named DIMI (Multicast Information Disseminator - Disseminador Multicast de Informações). DIMI presents an application-level multicast architecture. DIMI proposes an algorithm to create the dissemination topology which objective is to achieve scalability through the relief of overload on specific participants of the channel, during the moments where many new consumers want to start consumption simultaneously. Inside its target-environment, DIMI also offer support to user mobility and to planned disconnection, allowing resource limited computational devices to be participants of the dissemination. DIMI's dissemination topology adapt itself to the conditions of fabric network, accordingly to applications' criteria. The results obtained with the simulation of some DIMI's characteristics and with prototipation validate the arguments used to justify the necessity and the way of construction of the service.

Page generated in 0.0563 seconds