Pub Date : 2019-11-12DOI: 10.5753/wscad_estendido.2019.8702
Marcio N.P. Silva, Aline P. Nascimento, Alexandre da Costa Sena
Duas abordagens distintas podem ser adotadas para aumentar o desempenho das aplicações paralelas em uma arquitetura de alto desempenho: (i) ferramentas de auto-tuning; (ii) tornar ou criar aplicações que consigam se adaptar ao ambiente disponı́vel. Enquanto a primeira solução requer que o programador adapte sua aplicação a ferramenta e execute um profiling do ambiente, a segunda estratégia é mais complexa, pois necessita que o cientista seja capaz de criar aplicações com algum grau de autonomia. Assim, este trabalho propõe e avalia uma estrategia para ajustar dinamicamente a quantidade de theads de aplicações iterativas OpenMP. Os resultados obtidos mostram a viabilidade da estratégia proposta, que foi capaz de executar a aplicação para o problema de leilão eficientemente.
{"title":"Ajuste Dinâmico de Threads para Execução Eficiente de Aplicações Iterativas OpenMP","authors":"Marcio N.P. Silva, Aline P. Nascimento, Alexandre da Costa Sena","doi":"10.5753/wscad_estendido.2019.8702","DOIUrl":"https://doi.org/10.5753/wscad_estendido.2019.8702","url":null,"abstract":"Duas abordagens distintas podem ser adotadas para aumentar o desempenho das aplicações paralelas em uma arquitetura de alto desempenho: (i) ferramentas de auto-tuning; (ii) tornar ou criar aplicações que consigam se adaptar ao ambiente disponı́vel. Enquanto a primeira solução requer que o programador adapte sua aplicação a ferramenta e execute um profiling do ambiente, a segunda estratégia é mais complexa, pois necessita que o cientista seja capaz de criar aplicações com algum grau de autonomia. Assim, este trabalho propõe e avalia uma estrategia para ajustar dinamicamente a quantidade de theads de aplicações iterativas OpenMP. Os resultados obtidos mostram a viabilidade da estratégia proposta, que foi capaz de executar a aplicação para o problema de leilão eficientemente.","PeriodicalId":280012,"journal":{"name":"Anais Estendidos do Simpósio em Sistemas Computacionais de Alto Desempenho (WSCAD)","volume":"115 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-11-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123979131","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2019-11-12DOI: 10.5753/wscad_estendido.2019.8697
G. Costa, F. Cabral, C. Osthoff
Esse trabalho apresenta um estudo comparativo entre diferentes técnicas de paralelização utilizadas para aumentar o desempenho do método numérico HOPMOC para resolução de equações diferenciais parciais hiperbólicas de problemas de convecção-difusão. O objetivo é avaliar os ganhos de duas estratégias desenvolvidas à partir da versão original do código, com o intuito de diminuir os tempos gastos em barreiras de sincronização, e compará-las entre si. Além disso o trabalho traz um novo estudo em relação às outras publicações envolvendo o HOPMOC: a análise da relação entre Spin Time e CPU Time para comprovar a eficiência das estratégias desenvolvidas.
{"title":"Otimização do Método HOPMOC 1D com auxílio das ferramentas Intel Parallel Studio","authors":"G. Costa, F. Cabral, C. Osthoff","doi":"10.5753/wscad_estendido.2019.8697","DOIUrl":"https://doi.org/10.5753/wscad_estendido.2019.8697","url":null,"abstract":"Esse trabalho apresenta um estudo comparativo entre diferentes técnicas de paralelização utilizadas para aumentar o desempenho do método numérico HOPMOC para resolução de equações diferenciais parciais hiperbólicas de problemas de convecção-difusão. O objetivo é avaliar os ganhos de duas estratégias desenvolvidas à partir da versão original do código, com o intuito de diminuir os tempos gastos em barreiras de sincronização, e compará-las entre si. Além disso o trabalho traz um novo estudo em relação às outras publicações envolvendo o HOPMOC: a análise da relação entre Spin Time e CPU Time para comprovar a eficiência das estratégias desenvolvidas.","PeriodicalId":280012,"journal":{"name":"Anais Estendidos do Simpósio em Sistemas Computacionais de Alto Desempenho (WSCAD)","volume":"6 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-11-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124910168","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2019-11-12DOI: 10.5753/wscad_estendido.2019.8696
W. Castro, M. Heinen, Bruno Neves
Dentro do campo de Inteligências Artificiais, as Redes Neurais Artificiais (RNA) recebem destaque pela capacidade de aprender através de processos de treinamento e sua pluralidade de aplicações, que vão desde a classificação de padrões até o cálculo de funções. A implementação de algoritmos em hardware permite a paralelização de etapas e, então, a aceleração de processamento. Este trabalho propõe uma arquitetura de hardware de propósito geral para a execução de RNA em dispositivos FPGA. Implementada através da linguagem VHDL, a arquitetura proposta processa uma camada em média a cada 3 ciclos de clock. Simulada no dispositivo EP3C25F324C6, foi atingida a frequência de clock de 106.53 MHz e necessários 65.5 Kb de memória.
{"title":"Arquitetura Adaptável para Execução de Redes Neurais Artificiais em Dispositivos FPGA","authors":"W. Castro, M. Heinen, Bruno Neves","doi":"10.5753/wscad_estendido.2019.8696","DOIUrl":"https://doi.org/10.5753/wscad_estendido.2019.8696","url":null,"abstract":"Dentro do campo de Inteligências Artificiais, as Redes Neurais Artificiais (RNA) recebem destaque pela capacidade de aprender através de processos de treinamento e sua pluralidade de aplicações, que vão desde a classificação de padrões até o cálculo de funções. A implementação de algoritmos em hardware permite a paralelização de etapas e, então, a aceleração de processamento. Este trabalho propõe uma arquitetura de hardware de propósito geral para a execução de RNA em dispositivos FPGA. Implementada através da linguagem VHDL, a arquitetura proposta processa uma camada em média a cada 3 ciclos de clock. Simulada no dispositivo EP3C25F324C6, foi atingida a frequência de clock de 106.53 MHz e necessários 65.5 Kb de memória.","PeriodicalId":280012,"journal":{"name":"Anais Estendidos do Simpósio em Sistemas Computacionais de Alto Desempenho (WSCAD)","volume":"119 4 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-11-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116600596","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2019-11-12DOI: 10.5753/wscad_estendido.2019.8707
Maicon Melo Alves, Lúcia M. A. Drummond
The cross-interference problem may occur when applications are executed in virtual machines placed in a same physical machine. Although many previous works have proposed several different strategies for Virtual Machine Placement, neither of them have employed a suitable method for predicting cross-interference nor have considered the minimization of the number of used physical machines at the same time. In this thesis, we define the Interference-aware Virtual Machine Placement Problem for small-scale HPC applications in Clouds (IVMPP) that tackles both problems by minimizing, at the same time, the cross-interference of small-scale HPC applications, that can share physical machines, and the number of physical machines used to allocate them. We propose a mathematical formulation and a strategy based on the Iterated Local Search framework to solve this problem. Moreover, we also propose a quantitative and multivariate model to predict interference for a set of applications allocated to the same physical machine. Experiments executed in a real scenario, by using applications from the oil and gas industry and the HPCC benchmark suite, showed that our method outperforms several heuristics from the related literature in terms of interference, while using the same number of physical machines.
{"title":"An Interference-aware Virtual Machine Placement Strategy for Small-scale HPC Applications in Clouds","authors":"Maicon Melo Alves, Lúcia M. A. Drummond","doi":"10.5753/wscad_estendido.2019.8707","DOIUrl":"https://doi.org/10.5753/wscad_estendido.2019.8707","url":null,"abstract":"The cross-interference problem may occur when applications are executed in virtual machines placed in a same physical machine. Although many previous works have proposed several different strategies for Virtual Machine Placement, neither of them have employed a suitable method for predicting cross-interference nor have considered the minimization of the number of used physical machines at the same time. In this thesis, we define the Interference-aware Virtual Machine Placement Problem for small-scale HPC applications in Clouds (IVMPP) that tackles both problems by minimizing, at the same time, the cross-interference of small-scale HPC applications, that can share physical machines, and the number of physical machines used to allocate them. We propose a mathematical formulation and a strategy based on the Iterated Local Search framework to solve this problem. Moreover, we also propose a quantitative and multivariate model to predict interference for a set of applications allocated to the same physical machine. Experiments executed in a real scenario, by using applications from the oil and gas industry and the HPCC benchmark suite, showed that our method outperforms several heuristics from the related literature in terms of interference, while using the same number of physical machines.","PeriodicalId":280012,"journal":{"name":"Anais Estendidos do Simpósio em Sistemas Computacionais de Alto Desempenho (WSCAD)","volume":"13 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-11-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116924941","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2019-11-12DOI: 10.5753/wscad_estendido.2019.8703
B. S. Munhão, Bianca de Almeida Dantas, Edson Norberto Cáceres, Henrique Mongelli
Um dos problemas mais conhecidos de otimização combinatória, que possui diversas aplicações práticas, é o problema da mochila multidimensional (MKP). Apesar de sua popularidade e da demanda por soluções de alta qualidade, este é um problema N P-difı́cil, o que leva à necessidade de buscar estratégias alternativas para obtenção de boas soluções em tempo viável. Neste contexto, as metaheurı́sticas se destacam, visto que têm sido bem sucedidas na resolução de diferentes problemas difı́ceis, inclusive do MKP. Neste trabalho, são propostas duas implementações usando GPGPU do algoritmo de otimização por enxame de partı́culas (PSO). A redução nos tempos de execução dos programas GPGPU em comparação com a versão sequencial foi relevante, o que mostrou a eficácia do uso de estratégias de paralelização com a metaheurı́stica estudada.
{"title":"Implementações GPGPU do Algoritmo de Otimização por Enxame de Partı́culas para o Problema da Mochila Multidimensional","authors":"B. S. Munhão, Bianca de Almeida Dantas, Edson Norberto Cáceres, Henrique Mongelli","doi":"10.5753/wscad_estendido.2019.8703","DOIUrl":"https://doi.org/10.5753/wscad_estendido.2019.8703","url":null,"abstract":"Um dos problemas mais conhecidos de otimização combinatória, que possui diversas aplicações práticas, é o problema da mochila multidimensional (MKP). Apesar de sua popularidade e da demanda por soluções de alta qualidade, este é um problema N P-difı́cil, o que leva à necessidade de buscar estratégias alternativas para obtenção de boas soluções em tempo viável. Neste contexto, as metaheurı́sticas se destacam, visto que têm sido bem sucedidas na resolução de diferentes problemas difı́ceis, inclusive do MKP. Neste trabalho, são propostas duas implementações usando GPGPU do algoritmo de otimização por enxame de partı́culas (PSO). A redução nos tempos de execução dos programas GPGPU em comparação com a versão sequencial foi relevante, o que mostrou a eficácia do uso de estratégias de paralelização com a metaheurı́stica estudada.","PeriodicalId":280012,"journal":{"name":"Anais Estendidos do Simpósio em Sistemas Computacionais de Alto Desempenho (WSCAD)","volume":"13 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-11-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124321776","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2019-11-12DOI: 10.5753/wscad_estendido.2019.8694
Tulio Bitencourt, B. Neves
Este artigo descreve o processo de desenvolvimento de um processador capaz de executar algoritmos escritos em Python. Esse processador foi desenvolvido utilizando-se a linguagem de descrição de hardware chamada VHDL e seu principal objetivo era seguir a documentação Python e executar seu respectivo código Assembly. Foi alcançado, como resultado desta primeira versão, uma arquitetura de propósito geral funcional.
{"title":"pamPython: proposta de um processador para executar algoritmos Python","authors":"Tulio Bitencourt, B. Neves","doi":"10.5753/wscad_estendido.2019.8694","DOIUrl":"https://doi.org/10.5753/wscad_estendido.2019.8694","url":null,"abstract":"Este artigo descreve o processo de desenvolvimento de um processador capaz de executar algoritmos escritos em Python. Esse processador foi desenvolvido utilizando-se a linguagem de descrição de hardware chamada VHDL e seu principal objetivo era seguir a documentação Python e executar seu respectivo código Assembly. Foi alcançado, como resultado desta primeira versão, uma arquitetura de propósito geral funcional.","PeriodicalId":280012,"journal":{"name":"Anais Estendidos do Simpósio em Sistemas Computacionais de Alto Desempenho (WSCAD)","volume":"201 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-11-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123267413","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2019-11-12DOI: 10.5753/WSCAD_ESTENDIDO.2019.8713
M. L. Silva, Joubert de Castro Lima
Neste trabalho apresentamos duas contribuições para a literatura de redes de sensores sem fio(WSN). A primeira é um modelo geral para alcançar a reprodutibilidade no nível do kernelem simuladores paralelos. Infelizmente, os usuários devem implementar do zero como suassimulações se repetem em simuladores WSN, mas uma simulação paralela ou distribuída im-põe o princípio de concorrência, não trivial de ser implementada por não especialistas. Testesusando o simulador chamadoJSensorcomprovaram que o modelo garante o nível mais restritode reprodutibilidade, mesmo quando as simulações adotam diferentes números de threads oudiferentes máquinas em múltiplas execuções. A segunda contribuição é o simuladorJSensor,um simulador paralelo de uso geral para aplicações WSN de grande escala e algoritmos dis-tribuídos de alto nível. OJSensorintroduz elementos de simulação mais realistas, como oambiente representado por células personalizáveis e eventos de aplicação que representam fenô-menos naturais, como raios, vento, sol, chuva e muito mais. As células são colocadas em umagrade que representa o ambiente com características do espaço definido pelos usuários, comotemperatura, pressão e qualidade do ar. Avaliações experimentais mostram que oJSensortem boa escalabilidade em arquiteturas de computadores multi-core, alcançando umspeedupde 7,45 em uma máquina com 16 núcleos com tecnologiaHyper-Threading, portanto 50% dosnúcleos são virtuais. O JSensor também provou ser 21% mais rápido que oOMNeT++aosimular um modelo do tipo flooding.
{"title":"Simplicity, Reproducibility And Scalabilityfor Huge Wireless Sensor Network Simulations","authors":"M. L. Silva, Joubert de Castro Lima","doi":"10.5753/WSCAD_ESTENDIDO.2019.8713","DOIUrl":"https://doi.org/10.5753/WSCAD_ESTENDIDO.2019.8713","url":null,"abstract":"Neste trabalho apresentamos duas contribuições para a literatura de redes de sensores sem fio(WSN). A primeira é um modelo geral para alcançar a reprodutibilidade no nível do kernelem simuladores paralelos. Infelizmente, os usuários devem implementar do zero como suassimulações se repetem em simuladores WSN, mas uma simulação paralela ou distribuída im-põe o princípio de concorrência, não trivial de ser implementada por não especialistas. Testesusando o simulador chamadoJSensorcomprovaram que o modelo garante o nível mais restritode reprodutibilidade, mesmo quando as simulações adotam diferentes números de threads oudiferentes máquinas em múltiplas execuções. A segunda contribuição é o simuladorJSensor,um simulador paralelo de uso geral para aplicações WSN de grande escala e algoritmos dis-tribuídos de alto nível. OJSensorintroduz elementos de simulação mais realistas, como oambiente representado por células personalizáveis e eventos de aplicação que representam fenô-menos naturais, como raios, vento, sol, chuva e muito mais. As células são colocadas em umagrade que representa o ambiente com características do espaço definido pelos usuários, comotemperatura, pressão e qualidade do ar. Avaliações experimentais mostram que oJSensortem boa escalabilidade em arquiteturas de computadores multi-core, alcançando umspeedupde 7,45 em uma máquina com 16 núcleos com tecnologiaHyper-Threading, portanto 50% dosnúcleos são virtuais. O JSensor também provou ser 21% mais rápido que oOMNeT++aosimular um modelo do tipo flooding.","PeriodicalId":280012,"journal":{"name":"Anais Estendidos do Simpósio em Sistemas Computacionais de Alto Desempenho (WSCAD)","volume":"119 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-11-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131289199","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2019-11-12DOI: 10.5753/WSCAD_ESTENDIDO.2019.8708
Daniel Oliveira, P. Rech, P. Navaux
HPC devices reliability is one of the major concerns for supercomputers today and for the next generation. In fact, the high number of devices in large data centers makes the probability of having at least a device corrupted to be very high. In this work, we first evaluate the problem by performing radiation experiments. The data from the experiments give us realistic error rate of HPC devices. Moreover, we evaluate a representative set of algorithms deriving general insights of parallel algorithms and programming approaches reliability. To understand better the problem, we propose a novel methodology to go beyond the quantification of the problem. We qualify the error by evaluating the criticality of each corrupted execution through a dedicated set of metrics. We show that, as long as imprecise computing is concerned, the simple mismatch detection is not sufficient to evaluate and compare the radiation sensitivity of HPC devices and algorithms. Our analysis quantifies and qualifies radiation effects on applications output correlating the number of corrupted elements with their spatial locality. We also provide the mean relative error (dataset-wise) to evaluate radiation-induced error magnitude. Furthermore, we designed a homemade fault-injector, CAROL-FI, to understand further the problem by collecting information using fault injection campaigns that is not possible through radiation experiments. We inject different fault models to analyze the sensitivity of given applications. We show that portions of applications can be graded by different criticalities. Mitigation techniques can then be relaxed or hardened based on the criticality of the particular portions. This work also evaluates the reliability behaviors of six different architectures, ranging from HPC devices to embedded ones, with the aim to isolate code- and architecture-dependent behaviors. For this evaluation, we present and discuss radiation experiments that cover a total of more than 352,000 years of natural exposure and fault-injection analysis based on a total of more than 120,000 injections. Finally, Error-Correcting Code, Algorithm-Based Fault Tolerance, and Duplication With Comparison hardening strategies are presented and evaluated on HPC devices through radiation experiments. We present and compare both the reliability improvement and imposed overhead of the selected hardening solutions. Then, we propose and analyze the impact of selective hardening for HPC algorithms. We perform fault-injection campaigns to identify the most critical source code variables and present how to select the best candidates to maximize the reliability/overhead ratio.
{"title":"Hardening Strategies for HPC Applications","authors":"Daniel Oliveira, P. Rech, P. Navaux","doi":"10.5753/WSCAD_ESTENDIDO.2019.8708","DOIUrl":"https://doi.org/10.5753/WSCAD_ESTENDIDO.2019.8708","url":null,"abstract":"HPC devices reliability is one of the major concerns for supercomputers today and for the next generation. In fact, the high number of devices in large data centers makes the probability of having at least a device corrupted to be very high. In this work, we first evaluate the problem by performing radiation experiments. The data from the experiments give us realistic error rate of HPC devices. Moreover, we evaluate a representative set of algorithms deriving general insights of parallel algorithms and programming approaches reliability. To understand better the problem, we propose a novel methodology to go beyond the quantification of the problem. We qualify the error by evaluating the criticality of each corrupted execution through a dedicated set of metrics. We show that, as long as imprecise computing is concerned, the simple mismatch detection is not sufficient to evaluate and compare the radiation sensitivity of HPC devices and algorithms. Our analysis quantifies and qualifies radiation effects on applications output correlating the number of corrupted elements with their spatial locality. We also provide the mean relative error (dataset-wise) to evaluate radiation-induced error magnitude. Furthermore, we designed a homemade fault-injector, CAROL-FI, to understand further the problem by collecting information using fault injection campaigns that is not possible through radiation experiments. We inject different fault models to analyze the sensitivity of given applications. We show that portions of applications can be graded by different criticalities. Mitigation techniques can then be relaxed or hardened based on the criticality of the particular portions. This work also evaluates the reliability behaviors of six different architectures, ranging from HPC devices to embedded ones, with the aim to isolate code- and architecture-dependent behaviors. For this evaluation, we present and discuss radiation experiments that cover a total of more than 352,000 years of natural exposure and fault-injection analysis based on a total of more than 120,000 injections. Finally, Error-Correcting Code, Algorithm-Based Fault Tolerance, and Duplication With Comparison hardening strategies are presented and evaluated on HPC devices through radiation experiments. We present and compare both the reliability improvement and imposed overhead of the selected hardening solutions. Then, we propose and analyze the impact of selective hardening for HPC algorithms. We perform fault-injection campaigns to identify the most critical source code variables and present how to select the best candidates to maximize the reliability/overhead ratio.","PeriodicalId":280012,"journal":{"name":"Anais Estendidos do Simpósio em Sistemas Computacionais de Alto Desempenho (WSCAD)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-11-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130624411","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2019-11-12DOI: 10.5753/wscad_estendido.2019.8712
Rodolfo Pereira Araujo, Igor M. Coelho, Leandro A. J. Marzulo
Problemas de otimização são de grande importância para diversos setores da indústria, desde o planejamento de produção até escoamento e transporte de produtos. Diversos problemas de interesse se enquadram na classe NP-Difícil, sendo desconhecidos algoritmos para resolvê-los de forma exata em tempo polinomial. Assim, estratégias heurísticas com capacidade de escapar de ótimos locais de baixa qualidade (meta-heurísticas) são geralmente empregadas. A busca local é, em geral, a etapa mais custosa, em termos de tempo computacional, do processo de uma meta-heurística. Desta forma torna-se muito importante fazer bom uso dos recursos nela utilizados. Esta dissertação estuda o emprego de múltiplas estratégias de vizinhança utilizadas paralelamente para explorar um espaço de vizinhança maior e com melhor aproveitamento dos recursos computacionais. O processamento paralelo das estratégias de vizinhança é implementado em nível de grão fino, através de processamento em GPU, e grão grosso, por meio de processamento multi core e processamento em rede, sendo os dois níveis combinados num ambiente heterogêneo, para arquiteturas von Neumann e Dataflow.
{"title":"Estratégias de exploração de vizinhança com GPU para problemas de otimização","authors":"Rodolfo Pereira Araujo, Igor M. Coelho, Leandro A. J. Marzulo","doi":"10.5753/wscad_estendido.2019.8712","DOIUrl":"https://doi.org/10.5753/wscad_estendido.2019.8712","url":null,"abstract":"Problemas de otimização são de grande importância para diversos setores da indústria, desde o planejamento de produção até escoamento e transporte de produtos. Diversos problemas de interesse se enquadram na classe NP-Difícil, sendo desconhecidos algoritmos para resolvê-los de forma exata em tempo polinomial. Assim, estratégias heurísticas com capacidade de escapar de ótimos locais de baixa qualidade (meta-heurísticas) são geralmente empregadas. A busca local é, em geral, a etapa mais custosa, em termos de tempo computacional, do processo de uma meta-heurística. Desta forma torna-se muito importante fazer bom uso dos recursos nela utilizados. Esta dissertação estuda o emprego de múltiplas estratégias de vizinhança utilizadas paralelamente para explorar um espaço de vizinhança maior e com melhor aproveitamento dos recursos computacionais. O processamento paralelo das estratégias de vizinhança é implementado em nível de grão fino, através de processamento em GPU, e grão grosso, por meio de processamento multi core e processamento em rede, sendo os dois níveis combinados num ambiente heterogêneo, para arquiteturas von Neumann e Dataflow.","PeriodicalId":280012,"journal":{"name":"Anais Estendidos do Simpósio em Sistemas Computacionais de Alto Desempenho (WSCAD)","volume":"73 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-11-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126003471","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2019-11-12DOI: 10.5753/wscad_estendido.2019.8701
F. Vilasbôas, Calebe P. Bianchini, Rodrigo Pasti, L. Castro
On the one hand, Deep Neural Networks have emerged as a powerful tool for solving complex problems in image and text analysis. On the other, they are sophisticated learning machines that require deep programming and math skills to be understood and implemented. Therefore, most researchers employ toolboxes and frameworks to design and implement such architectures. This paper performs an execution analysis of TensorFlow, one of the most used deep network frameworks available, on a shared memory system. To do so, we chose a text classification problem based on tweets sentiment analysis. The focus of this work is to identify the best environment configuration for training neural networks on a shared memory system. We set five different configurations using environment variables to modify the TensorFlow execution behavior. The results on an Intel Xeon Platinum 8000 processors series show that the default environment configuration of the TensorFlow can increase the speed up to 5.8. But, fine-tuning this environment can improve the speedup at least 37%.
{"title":"Optimizing Neural Network Training through TensorFlow Profile Analysis in a Shared Memory System","authors":"F. Vilasbôas, Calebe P. Bianchini, Rodrigo Pasti, L. Castro","doi":"10.5753/wscad_estendido.2019.8701","DOIUrl":"https://doi.org/10.5753/wscad_estendido.2019.8701","url":null,"abstract":"On the one hand, Deep Neural Networks have emerged as a powerful tool for solving complex problems in image and text analysis. On the other, they are sophisticated learning machines that require deep programming and math skills to be understood and implemented. Therefore, most researchers employ toolboxes and frameworks to design and implement such architectures. This paper performs an execution analysis of TensorFlow, one of the most used deep network frameworks available, on a shared memory system. To do so, we chose a text classification problem based on tweets sentiment analysis. The focus of this work is to identify the best environment configuration for training neural networks on a shared memory system. We set five different configurations using environment variables to modify the TensorFlow execution behavior. The results on an Intel Xeon Platinum 8000 processors series show that the default environment configuration of the TensorFlow can increase the speed up to 5.8. But, fine-tuning this environment can improve the speedup at least 37%.","PeriodicalId":280012,"journal":{"name":"Anais Estendidos do Simpósio em Sistemas Computacionais de Alto Desempenho (WSCAD)","volume":"2 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-11-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124438693","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}