4 research outputs found

    Fast Matlab compatible sparse assembly on multicore computers

    Full text link
    We develop and implement in this paper a fast sparse assembly algorithm, the fundamental operation which creates a compressed matrix from raw index data. Since it is often a quite demanding and sometimes critical operation, it is of interest to design a highly efficient implementation. We show how to do this, and moreover, we show how our implementation can be parallelized to utilize the power of modern multicore computers. Our freely available code, fully Matlab compatible, achieves about a factor of 5 times in speedup on a typical 6-core machine and 10 times on a dual-socket 16 core machine compared to the built-in serial implementation

    RedBlue: cluster para pesquisa e ensino em Engenharia

    Get PDF
    Programas de computadores s?o muito utilizados para resolu??o de problemas complexos em engenharia. Atualmente, espera-se que um engenheiro saiba mais que apenas utiliz?-los, sendo esta habilidade muito valorizada no mercado de trabalho. Tal habilidade possibilita que profissionais consigam utilizar um maior conjunto de ferramentas para solucionar problemas. As simula??es computacionais, por exemplo, podem ser utilizadas como ferramenta de aquisi??o de conhecimento, permitindo que um profissional ou um estudante crie, teste e valide suas hip?teses. As simula??es tamb?m s?o utilizadas em pesquisas cient?ficas como alternativa a experimentos de dif?cil obten??o e na ind?stria para reduzir custos. Por?m, uma simula??o pode consumir mais recursos do que os dispon?veis em um computador, tornando seu tempo de execu??o invi?vel. Uma forma barata de se obter mais desempenho ? utilizando um cluster de computadores comuns. Dessa forma, seria poss?vel utilizar os laborat?rios de inform?tica dispon?veis para execut?-las. Entretanto, isso implicaria em conhecimentos aprofundados em computa??o paralela e/ou distribu?da por parte dos usu?rios, dificultado o desenvolvimento de aplica??es. Com o objetivo de minimizar o tempo de execu??o de simula??es complexas utilizando clusters e permitir que usu?rios com poucos conhecimentos em programa??o paralela e/ou distribu?da possam utiliz?-lo, este trabalho apresenta uma solu??o denominada ?plataforma RedBlue?. Essa plataforma recebe a aplica??o do usu?rio e a executa nos n?s do cluster de forma autom?tica e transparente para o mesmo. Para testar a plataforma desenvolvida foram realizados testes com redes neurais artificiais e com um algoritmo gen?tico simples, ambos buscando descobrir a melhor configura??o de par?metros para determinado problema. Utilizaram-se 60 m?quinas de um laborat?rio de inform?tica para testar a plataforma. Os resultados mostram que houve uma redu??o de at? 98% no tempo de execu??o do experimento com redes neurais e 99,3% para o experimento com o algoritmo gen?tico em compara??o a execu??o sequencial. Esses resultados indicam que a plataforma ? vi?vel para utiliza??o em laborat?rios de inform?tica, possibilitando uma redu??o consider?vel no tempo de execu??o de simula??es complexas. A plataforma ? aplic?vel a um n?mero flex?vel de computadores, ajustando-se ? capacidade dos laborat?rios. Al?m disso, pode ser utilizada como instrumento ?til ao ensino e pesquisa. Ressalta-se que a utiliza??o de simula??es computacionais para ensino e pesquisa contribui n?o apenas para a aprendizagem de conte?dos, mas tamb?m para o surgimento de habilidades necess?rias ao mercado de trabalho do engenheiro.Disserta??o (Mestrado Profissional) ? Programa de P?s-Gradua??o em Educa??o, Universidade Federal dos Vales do Jequitinhonha e Mucuri, 2017.Computer programs are commonly used to solve complex engineering problems, and it is expected from an engineer a more than hands-on experience in using these computer programs with the ability to develop them using a wide range of tools. Computational simulations, for instance, can be used as tools for knowledge acquisition allowing a professional or student to create, test and validate their hypotheses. Such simulations are used at an academic setting as an alternative to expensive experiments. However, a simulation can take more resources than those available in a single computer machine, rendering long execution times. To create a cluster of regular computers, such as the ones already available at computer labs, is a cheaper alternative to improve such execution times. One major drawback of this approach is that the user must be knowledgeable in parallel and distributed programming, which makes software development harder. To overcome such constraints, this work presents a solution named ?RedBlue platform?that receives and runs user?s applications over a computer cluster in an automatic, transparent manner. To test the RedBlue platform, we performed a set of tests via artificial neural networks and a simplified genetic algorithm, whose main purpose was to search for the best-suited parameter configurations for the application problem at hand. To test the platform, the experiments were run using 60 computer machines from a computer lab. This study has identified a reduction in execution times of 98% for neural networks, and a reduction of 99,3% for the genetic algorithm, and also shown that the platform is suited for real-world applications of simulations at computer labs. Furthermore, the platform accepts a variable number of computers, easily adaptable to different academic environments, such as research and training. Lastly, we have noted that computational simulations not only contribute to research and learning, but also to develop the required industry skills

    Adaptive simulation of turbulent flow past a full car model

    No full text
    corecore